diff options
author | dennis <dennis@b9310e46-f624-0410-8ea1-cfbb3a30dc96> | 2008-11-19 21:52:38 +0000 |
---|---|---|
committer | dennis <dennis@b9310e46-f624-0410-8ea1-cfbb3a30dc96> | 2008-11-19 21:52:38 +0000 |
commit | a8a7e8d2c940aef18b9f6e93dd51671b7268909e (patch) | |
tree | 638ae909bd6c2927ae076df8a3f6e36503c54bbe /linux/bin | |
parent | 15c7a806d41d8544a90813387691fb539a44c808 (diff) | |
download | neo-layout-a8a7e8d2c940aef18b9f6e93dd51671b7268909e.tar.gz neo-layout-a8a7e8d2c940aef18b9f6e93dd51671b7268909e.tar.bz2 neo-layout-a8a7e8d2c940aef18b9f6e93dd51671b7268909e.zip |
Verbesserung von Björn Seifert: Die neo-compose wurde so umgeschrieben, dass sie das gleiche System von Konfigurationsdateien und -variablen wie die asdf/uiae-Skripte verwendet.
Das heißt, dass in der config-Datei jetzt die Variablen $NEO_COMPOSE und $NEO_ORIG_COMPOSE auf die richtigen Pfade zeigen müssen.
Sollte eine Variable $NEO_OWN_COMPOSE definiert sein, die zu einer Datei mit eigenen Compose-Änderungen zeigt, dann wird diese auch berücksichtigt.
git-svn-id: https://svn.neo-layout.org@1229 b9310e46-f624-0410-8ea1-cfbb3a30dc96
Diffstat (limited to 'linux/bin')
-rwxr-xr-x | linux/bin/neo-compose | 44 |
1 files changed, 36 insertions, 8 deletions
diff --git a/linux/bin/neo-compose b/linux/bin/neo-compose index 01742b4..2f31bfb 100755 --- a/linux/bin/neo-compose +++ b/linux/bin/neo-compose @@ -1,16 +1,44 @@ #!/bin/sh -# Was hier passiert: Zusammenfügen der alten Compose und der Neo-Ergänzungen +# Was hier passiert: Zusammenf체gen der alten Compose und der Neo-Erg채nzungen # in die Datei ~/.XCompose, die normalerweise beim Starten der Desktopumgebung # geladen wird. -# In der Datei ~/.Compose.eigene kann man noch eigene Ergänzungen der Compose -# hinzufügen, falls einem die Erweiterungen durch Neo-Compose nicht ausreichen. +# Der Pfad zu den Dateien wird in den Umgebungsvariablen $NEO_COMPOSE und +# $NEO_ORIG_COMPOSE festgelegt, wobei bei letzterer der Default-Pfad ausreichend +# sein sollte. +# In der Variablen $NEO_OWN_COMPOSE kann eine Datei definiert werden, in der +# man noch eigene Erg채nzungen der Compose hinzuf체gen kann, falls einem die +# Erweiterungen durch Neo-Compose nicht ausreichen. -# Verzeichnis, in dem sich die originale Compose befindet (hier Bsp. Fedora): -COMP_ALT=/usr/share/X11/locale/en_US.UTF-8/Compose +if [ -f "${NEO_CONFIG}" ]; then + . "${NEO_CONFIG}" || die "Failed to source ${NEO_CONFIG}" +elif [ -f "${HOME}"/.neorc ]; then + . "${HOME}"/.neorc || die "Failed to source ${HOME}/.neorc" +elif [ -f /etc/neo.conf ]; then + . /etc/neo.conf || die "Failed to source /etc/neo.conf" +else + echo "No configuration file found. Using default values, this might fail!" +fi -# Verzeichnis, in dem sich die Datei Compose.neo befindet: -COMP_NEO=~/programmieren/Projekt/NEO/svn-neo/neo-layout.org/Compose/Compose.neo +# Default values +NEO_COMPOSE=${NEO_COMPOSE:-$HOME/neo/Compose.neo} +NEO_ORIG_COMPOSE=${NEO_ORIG_COMPOSE:-/usr/share/X11/locale/en_US.UTF-8/Compose} -cat $COMP_ALT $COMP_NEO ~/.Compose.eigene > ~/.XCompose +die() { + echo "$@" >&2 + exit 1 +} + + +if [ ! -f "${NEO_COMPOSE}" ]; then + die "Failed to read ${NEO_COMPOSE}. Check your configuration!" +elif [ ! -f "${NEO_ORIG_COMPOSE}" ]; then + die "Failed to read ${NEO_ORIG_COMPOSE}. Check your configuration!" +elif [ ! "a${NEO_OWN_COMPOSE}" = "a" ]; then + if [ ! -f "${NEO_OWN_COMPOSE}" ]; then + die "Failed to read ${NEO_OWN_COMPOSE}. Check your configuration!" + fi +fi + +cat "${NEO_ORIG_COMPOSE}" "${NEO_COMPOSE}" "${NEO_OWN_COMPOSE}" > ~/.XCompose |