Portál AbcLinuxu, 9. května 2025 19:12
#! /bin/bash KEY=$1 XDOTOOL=/usr/local/bin/xdotool # id of the currently active window, the original recipient of Ctrl+C/V WINID=$($XDOTOOL getactivewindow) # works for a specific application only (WM_CLASS substring) WORKS_FOR="my_application" # checking if the recipient window is the correct one if xprop -id $WINID WM_CLASS | grep -q $WORKS_FOR ; then if [ "$KEY" == "Ctrl+c" ]; then # copying from primary to clipboard xsel -p -o | xsel -b -i elif [ "$KEY" == "Ctrl+v" ]; then # copying from clipboard to primary xsel -b -o | xsel -p -i fi fi # forwarding the Ctrl+c/v keys to the active window $XDOTOOL key --window $WINID $KEYSkriptík vyžaduje aktuálnější verzi xdotool, než je např. v Ubuntu 10.4 (musí již umět parametr --window). Je to kupa ošklivých hacků, prošíření zkratky má znatelné zpoždění, ale snad to bude stačit.
# copying from primary to clipboard xsel -p -o | iconv -f LATIN2 -t UTF-8 | xsel -b -iNazpátek to překvapivě není potřeba. Proč netuším, neřeším :) Na rychlém PC nemá takto komplikované Ctrl+C/V skoro žádné zpoždění. Mám radost, další problém vyřešen :)
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.