summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpascal <pascal@b9310e46-f624-0410-8ea1-cfbb3a30dc96>2009-07-31 13:10:21 +0000
committerpascal <pascal@b9310e46-f624-0410-8ea1-cfbb3a30dc96>2009-07-31 13:10:21 +0000
commit52129daf8f3abb61dff2feba5e8c8e5be86df1df (patch)
tree7f2aec1d5135727046c52649ae63b3e3c25a2674
parentf2a57c7f586b5a74a4681f450473363bf4933814 (diff)
compose_gui.sh verbessert. Keine geschützten Leerzeichen in den Modulen mehr notwendig.
git-svn-id: https://svn.neo-layout.org@2017 b9310e46-f624-0410-8ea1-cfbb3a30dc96
-rwxr-xr-xCompose/compose_gui.sh102
-rw-r--r--Compose/src/base.module2
-rw-r--r--Compose/src/greek.module2
-rw-r--r--Compose/src/klingon.module2
-rw-r--r--Compose/src/lang.module2
-rw-r--r--Compose/src/math.module2
-rw-r--r--Compose/src/roman.module2
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