
Diese Frage wurde bereits gestelltHier7 Monate, aber keine richtige Antwort. Daher möchte ich nochmal fragen: Gibt es eine Alternative zu AutoKey, die Texterweiterungen ausführt, wenn bestimmte Abkürzungen eingetippt werden? Mein Problem ist, dass AutoKey zufällig Buchstaben überspringt, wenn ich diese Funktion in Thunderbird verwende, während es in einem Texteditor immer einwandfrei funktioniert. Dieses Problem tritt seit Ubuntu 13.10 auf.
Antwort1
Snippy scheint bei mir ganz gut zu funktionieren. Keine GUI, aber recht funktional. Ich bin froh, dass ich endlich einen Ersatz gefunden habe.
Der Link erwähnt in den Kommentaren auch eine andere Wahl.
Snippy selbst ist über eine TinyURL verfügbar und die Installation erfolgt wie folgt:
curl -L "http://tinyurl.com/o9d6ch5" > snippy.sh
chmod 755 snippy.sh
./snippy.sh
Alternativ scheint es eine erweiterte Version zu geben, die sich befindethier in github
Die Installation funktioniert genauso.
Antwort2
Snippy hat sich tatsächlich als sehr gute Idee erwiesen, jetzt habe ich ein Menü mit Skripten auf dem Desktop.
Eine Umstrukturierung erwies sich jedoch als notwendig, da xdotool heutzutage nicht mehr so gut mit Fensternamen funktioniert (und ich habe jede mögliche Lösung ausprobiert – mein Betriebssystem ist Ubuntu 22.04 mit XFCE).
Ich habe nur dmenu behalten:
#!/bin/bash
# snippy re-engineered
DIR=${HOME}/.snippy
APPS="dmenu"
DMENU_ARGS="-b"
TERMINAL=tilix # change to your favorite
init(){
for APP in $APPS; do
which $APP >/dev/null 2>&1 || {
read -p "install the following required utils? : $APPS (y/n)" reply
if [ "$reply" == "y" ]; then
sudo apt install --assume-yes ${APPS};
fi
}
done
if [ ! -d "$DIR" ]; then
echo -e "created $DIR\n";
mkdir "$DIR";
printf 'hi it is $(date)' > "$DIR""/test";
fi
return 0
}
run(){
# Use the filenames in the snippy directory as menu entries.
cd ${DIR}
# Get the menu selection from the user.
FILE=`find -L . -type f | grep -v '^\.$' | sed 's!\.\/!!' | sort | /usr/bin/dmenu ${DMENU_ARGS}`
# open terminal and execute
if [ -z "$FILE" ]; then
exit
else
${TERMINAL} --title=$FILE --command="$SHELL $DIR/$FILE"
fi
}
init && run
Dieses Update erfolgt nach vielen Jahren, hat sich aber als hilfreich erwiesen.