diff options
-rwxr-xr-x | Compose/compose_gui.sh | 102 | ||||
-rw-r--r-- | Compose/src/base.module | 2 | ||||
-rw-r--r-- | Compose/src/greek.module | 2 | ||||
-rw-r--r-- | Compose/src/klingon.module | 2 | ||||
-rw-r--r-- | Compose/src/lang.module | 2 | ||||
-rw-r--r-- | Compose/src/math.module | 2 | ||||
-rw-r--r-- | Compose/src/roman.module | 2 |
7 files changed, 69 insertions, 45 deletions
diff --git a/Compose/compose_gui.sh b/Compose/compose_gui.sh index bc190e7..127f45e 100755 --- a/Compose/compose_gui.sh +++ b/Compose/compose_gui.sh @@ -8,13 +8,15 @@ SRC=./src # Source directory CONFFILE=.config -typeset -i anzahl if [ "X:$KDE_FULL_SESSION" = "X:true" ] then + ADD_TO_LIST() { + list=("${list[@]}" "$1" "$2" "$3") + } CHECKLIST() { - kdialog --title Compose-Module --checklist "$1<br>$2<br><br>$3" $5 + kdialog --title Compose-Module --checklist "Die Neo-Tastaturbelegung hat etliche Erweiterungen für Compose (Mod3+Tab) erstellt,<br>wodurch Zeichen wie ≙ έ ʒ ermöglicht werden.<br>Wählen Sie die Compose-Module von Neo aus, die Sie verwenden möchten." "${list[@]}" } MSGBOX() { kdialog --title Compose-Module --msgbox "$1" @@ -23,8 +25,11 @@ then kdialog --title Compose-Module --yesno "$1" } else + ADD_TO_LIST() { + list=("${list[@]}" "$1" "$2") + } CHECKLIST() { - zenity --title Compose-Module --width=610 --height=320 --list --multiple --column Modulname --column Modulebeschreibung --separator=_ --text "$1\n$2\n\n$3\n$4" $6 + zenity --title Compose-Module --width=610 --height=320 --list --multiple --column Modulname --column Modulebeschreibung --separator=_ --text "Die Neo-Tastaturbelegung hat etliche Erweiterungen für Compose (Mod3+Tab) erstellt,\nwodurch Zeichen wie ≙ έ ʒ ermöglicht werden.\nWählen Sie die Compose-Module von Neo aus, die Sie verwenden möchten.\nFür mehrere Module STRG bzw. CTRL gedrückt halten." "${list[@]}" } MSGBOX() { zenity --title Compose-Module --info --text "$1" @@ -35,10 +40,41 @@ else fi -if [ -f $HOME/.XCompose ] -then - YESNO "Es gibt bereits eine Compose-Datei (z.B. durch eine ältere Neo-Installation).\nSollten Sie eigene Definitionen in der Datei ~/.XCompose vorgenommen haben, dann brechen Sie jetzt ab und schreiben Ihre eigenen Definitionen in eine Datei (z.B. user.module) im Ordner src.\n\nAnderenfalls können Sie das Skript bedenkenlos fortsetzen.\nWollen Sie fortfahren?" || exit -fi +while [ ! "$nohelp" ] +do + case ${1-" "} in + " ") + nohelp=ok + ;; + *) + echo Aufruf: compose.sh + echo Mit »compose.sh« können die Compose-Module von Neo zusammengesetzt werden. + echo Folgende Module sind verfügbar: + for j in `ls $SRC/*.module`; do + i=$(basename $j .module) + sed -n " +/^#configinfo[ \t]*/{ + s/// + b print +} + +\$! b + +s/.*/(ohne Beschreibung)/ +: print + +x +s/^/$i / +G +s/^\(.\{9\}\).*\n\(.\{1,69\}\).*/\1 \2/ # 80-Zeichen-Terminal-Grenze +p +q +" ${SRC}/${i}.module + done + exit;; + esac +done + auswahl=XCompose_enUS_base @@ -48,51 +84,39 @@ do name=$(basename $i .module) # name of modul if [ ! "$name" = "base" -a ! "$name" = "enUS" ] then - anzahl=anzahl+1 - m[$anzahl]=$name - b[$anzahl]=$(sed -n " + description=$(sed -n " /^#configinfo[ \t]*/{ s/// - s/^\(.\{10\}\) */\1/ - p;q + b print } -\${ - s/.*/ohne Beschreibung/ - s/^\(.\{10\}\) */\1/ - p -}" $SRC/$name.module) # description of module +\$! b + +s/.*/(ohne Beschreibung)/ +: print +p +q +" $SRC/$name.module) # description of module if grep -qs $name $CONFFILE then - a[$anzahl]=on # default value for this module + default=on # default value for this module else - a[$anzahl]=off + default=off fi + ADD_TO_LIST "$name" "$description" "$default" fi - klist=$klist\ ${m[$anzahl]}\ ${b[$anzahl]}\ ${a[$anzahl]} - glist=$glist\ ${m[$anzahl]}\ ${b[$anzahl]} done -while [ ! "$module" ] -do - case ${1-" "} in - " ") - module=ausgewählt - ;; - *) - echo Aufruf: compose.sh - echo Mit »compose.sh« können die Compose-Module von Neo zusammengesetzt werden. - echo Folgende Module sind verfügbar: - for i in $(seq 1 $anzahl) - do - echo -e " ${m[$i]}\t\t${b[$i]}" - done - exit;; - esac -done -menu=`CHECKLIST "Die Neo-Tastaturbelegung hat etliche Erweiterungen für Compose (Mod3+Tab) erstellt," "wodurch Zeichen wie ∮ έ ʒ ermöglicht werden." "Wählen Sie die Compose-Module von Neo aus, die Sie verwenden möchten." "Für mehrere Module STRG bzw. CTRL gedrückt halten." "$klist" "$glist" | sed -e 's/\"//g' | sed -e 's/\ /_/g'` + + +if [ -f $HOME/.XCompose ] +then + YESNO "Es gibt bereits eine Compose-Datei (z.B. durch eine ältere Neo-Installation).\nSollten Sie eigene Definitionen in der Datei ~/.XCompose vorgenommen haben, dann brechen Sie jetzt ab und schreiben Ihre eigenen Definitionen in eine Datei (z.B. user.module) im Ordner src.\n\nAnderenfalls können Sie das Skript bedenkenlos fortsetzen.\nWollen Sie fortfahren?" || exit +fi + +menu=`CHECKLIST | sed -e 's/\"//g' | sed -e 's/\ /_/g'` if [ $menu ] then diff --git a/Compose/src/base.module b/Compose/src/base.module index 27ac73d..fb3c991 100644 --- a/Compose/src/base.module +++ b/Compose/src/base.module @@ -1,4 +1,4 @@ -#configinfo Standard-Erweiterung der Compose-Definitionen +#configinfo Standard-Erweiterung der Compose-Definitionen # standard Definitions by Neo keyboard layout # diacritical marks diff --git a/Compose/src/greek.module b/Compose/src/greek.module index eb63600..6f19fa3 100644 --- a/Compose/src/greek.module +++ b/Compose/src/greek.module @@ -1,4 +1,4 @@ -#configinfo Griechische Buchstaben mit Akzenten (A ἀ) +#configinfo Griechische Buchstaben mit Akzenten (A ἀ) # additional Definitions by Neo keyboard layout - greek letters diff --git a/Compose/src/klingon.module b/Compose/src/klingon.module index 86fa594..84b835c 100644 --- a/Compose/src/klingon.module +++ b/Compose/src/klingon.module @@ -6,7 +6,7 @@ # Licence (short name): CC-BY-SA 3.0 DE # Licence (full name): Creative Commons Namensnennung-Weitergabe unter gleichen Bedingungen 3.0 Deutschland # Licence-URL: http://creativecommons.org/licenses/by-sa/3.0/de/ -#configinfo klingonische Zahlen 0 bis 3999 (1984→wa'SaD Hutvatlh chorghmaH loS) +#configinfo klingonische Zahlen 0 bis 3999 (1984→wa'SaD Hutvatlh chorghmaH loS) <Multi_key> <k> <0> <space> : "pagh" # KLINGON NUMERAL 0 diff --git a/Compose/src/lang.module b/Compose/src/lang.module index 07e16fd..a8241aa 100644 --- a/Compose/src/lang.module +++ b/Compose/src/lang.module @@ -1,4 +1,4 @@ -#configinfo IPA (int. phonetic alphabet) und weitere Sprachen ([neːo] Ɱɐ ẻ ʔ) +#configinfo IPA (int. phonetic alphabet) und weitere Sprachen ([neːo] Ɱɐ ẻ ʔ) # IPA-Compose by aleχ, 2009, CC-BY-SA DE 3. # turned letters (most African and IPA usage) diff --git a/Compose/src/math.module b/Compose/src/math.module index 5b36361..fe0a979 100644 --- a/Compose/src/math.module +++ b/Compose/src/math.module @@ -1,4 +1,4 @@ -#configinfo mathematische und physikalische Zeichen (≥ ∉ ℏ ℃) +#configinfo mathematische und physikalische Zeichen (≥ ∉ ℏ ℃) # additional Definitions by Neo keyboard layout - mathematical symbols diff --git a/Compose/src/roman.module b/Compose/src/roman.module index 4dcb30f..23b14ad 100644 --- a/Compose/src/roman.module +++ b/Compose/src/roman.module @@ -6,7 +6,7 @@ # Licence (short name): CC-BY-SA 3.0 DE # Licence (full name): Creative Commons Namensnennung-Weitergabe unter gleichen Bedingungen 3.0 Deutschland # Licence-URL: http://creativecommons.org/licenses/by-sa/3.0/de/ -#configinfo römische Zahlen 13 bis 3999 (1868→ⅿⅾⅽⅽⅽⅼⅹⅴⅰⅰⅰ) +#configinfo römische Zahlen 13 bis 3999 (1868→ⅿⅾⅽⅽⅽⅼⅹⅴⅰⅰⅰ) <Multi_key> <r> <1> <space> : "ⅰ" # SMALL ROMAN NUMERAL 1 |