#!/bin/bash

param="$@"

if [[ "$param" =~ "s" ]]; then sel="s"; else sel="b"; fi
if [[ "$param" =~ "x" ]]; then cut=true; else cut=false; fi

clpb="$(xsel -b; echo -n '#')"; clpb="${clpb::-1}"

sleep 0.2

clp=$(xsel -op; echo -n '#'); clp="${clp::-1}"	
clp="${clp//‖/\&#x2016;}"
if $cut; then
    xdotool sleep 0.2 key Control+x
else
    xsel -op | xsel -ib
fi

sleep 0.2

if [ $sel = "s" ]; then
    clip_file=$HOME/.local/share/clipboard/secondary
else
    clip_file=$HOME/.local/share/clipboard/tertiary
fi
cont="$(cat $clip_file)"
clip="${cont%%‖*}"
cont="‖$cont‖"
[ "$clp" = "$clip" ] && clp=""
clp="${clp//\\/\\\\}"
[ -n "$clp" ] && clp="$clp‖" && cont="${cont//‖$clp/‖}" && cont="${cont:1:-1}" && echo -n "${clp//\\\\/\\}$cont" > $clip_file
[ $sel = "s" ] && echo -n "$clpb" | xsel -ib

prim="$(cat $HOME/.local/share/clipboard/primary)"
prim="${prim%%‖*}"
echo -n "$prim" | xsel -ip

