From 855901347531ef92aae521e4e78ef13673c73bd1 Mon Sep 17 00:00:00 2001 From: Roman Moravcik Date: Wed, 26 Jan 2011 12:13:24 +0100 Subject: [PATCH] Added Spanish Dvorak on-screen keyboard layout requested by Joaquin Alberto Rincon-Ramirez. --- cpanel/langset.c | 1 + debian/control | 10 +- debian/ukeyboard.postinst | 2 +- debian/ukeyboard.postrm | 2 +- keyboards/Makefile | 1 + keyboards/es-dvorak.def | 332 ++++++++++++++++++++++++++++++++++++++++++++++ keyboards/es-qwerty.def | 332 ++++++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 673 insertions(+), 7 deletions(-) create mode 100644 keyboards/es-dvorak.def create mode 100644 keyboards/es-qwerty.def diff --git a/cpanel/langset.c b/cpanel/langset.c index 9e2c9ab..5da57b5 100644 --- a/cpanel/langset.c +++ b/cpanel/langset.c @@ -95,6 +95,7 @@ GList *get_dicts(GList *langs) if (lang->ext) { if ((strcmp(lang->fname, "cz-qwertz")) && (strcmp(lang->fname, "de-qwertz")) && + (strcmp(lang->fname, "es-qwerty")) && (strcmp(lang->fname, "ru-windows"))) continue; } diff --git a/debian/control b/debian/control index 7a34fa8..b0469e6 100644 --- a/debian/control +++ b/debian/control @@ -30,11 +30,11 @@ Description: Additional on-screen keyboard layouts English (Dvorak), Esperanto (QWERTY), German (QWERTY & Neo2), Georgian (QWERTY), Hebrew (Basic & Phonetic), Hungarian (QWERTY & QWERTZ), Icelandic, Khmer, Latvian, Macedonian, Persian, Punjabi, Romanian, Russian (Phonetic), Serbian (Cyrillic & Latin), - Slovak (QWERTY & QWERTZ), Slovenian (QWERTY & QWERTZ), Thai, Turkish, Ukrainian (Basic & Phonetic), - Uyghur and Vietnamese on-screen keyboard layouts and Arabic, Bulgarian (Phonetic), - Czech (QWERTY), Dvorak, Greek, Georgian, Hebrew (Basic & Phonetic), Latvian, Macedonian, - Persian, Romanian, Russian (Phonetic) and Slovak (QWERTY & QWERTZ), Ukrainian (Basic & Phonetic) - hardware keyboard layouts. + Slovak (QWERTY & QWERTZ), Slovenian (QWERTY & QWERTZ), Spanish (Dvorak), Thai, Turkish, + Ukrainian (Basic & Phonetic), Uyghur and Vietnamese on-screen keyboard layouts and Arabic, + Bulgarian (Phonetic), Czech (QWERTY), Dvorak, Greek, Georgian, Hebrew (Basic & Phonetic), + Latvian, Macedonian, Persian, Romanian, Russian (Phonetic) and Slovak (QWERTY & QWERTZ), + Ukrainian (Basic & Phonetic) hardware keyboard layouts. Package: ukbdcreator Architecture: any diff --git a/debian/ukeyboard.postinst b/debian/ukeyboard.postinst index 5d135fb..d135056 100755 --- a/debian/ukeyboard.postinst +++ b/debian/ukeyboard.postinst @@ -16,7 +16,7 @@ fi update-sudoers # temporary disable keyboard layouts that are provided also with ukeyboard -layouts="cs_CZ de_DE ru_RU" +layouts="cs_CZ de_DE es_ES ru_RU" for i in $layouts; do if [ -f /usr/share/keyboards/$i.vkb ]; then if [ ! -h /usr/share/keyboards/$i.vkb ]; then diff --git a/debian/ukeyboard.postrm b/debian/ukeyboard.postrm index 769e0a6..ae84de9 100755 --- a/debian/ukeyboard.postrm +++ b/debian/ukeyboard.postrm @@ -20,7 +20,7 @@ case "$1" in esac # rename all *.vkb.removed files back to *.vkb -layouts="cs_CZ de_DE ru_RU" +layouts="cs_CZ de_DE es_ES ru_RU" for i in $layouts; do if [ -f /usr/share/keyboards/$i.vkb.removed ]; then if [ ! -h /usr/share/keyboards/$i.vkb ]; then diff --git a/keyboards/Makefile b/keyboards/Makefile index 5220fd0..7f0dcaf 100644 --- a/keyboards/Makefile +++ b/keyboards/Makefile @@ -9,6 +9,7 @@ layouts = \ dz.vkb \ en-dvorak.vkb \ eo-qwerty.vkb \ + es-dvorak.vkb es-qwerty.vkb \ fa-isiri9147.vkb \ he-phonetic.vkb he-qwerty.vkb \ hr-qwerty.vkb hr-qwertz.vkb \ diff --git a/keyboards/es-dvorak.def b/keyboards/es-dvorak.def new file mode 100644 index 0000000..00268b2 --- /dev/null +++ b/keyboards/es-dvorak.def @@ -0,0 +1,332 @@ +# title: Spanish layout +# author: Roman Moravcik + +header { +name "Español (España) - Dvorak" +lang "es_ES" +wc "es_ES" + +size 0 { width 35 height 35 textpos 26 left 0 top 0 } +size 1 { width 50 height 35 textpos 26 left 0 top 0 } +size 2 { width 55 height 35 textpos 26 left 0 top 0 } +size 3 { width 72 height 55 textpos 41 left 0 top 0 } +size 4 { width 143 height 55 textpos 41 left 0 top 0 } +} + +kbd_normal { +lowercase { + margin 0 0 0 0 + default_size 0 + row { + key q alpha size 2 + key w alpha + key e alpha hexa + key r alpha + key t alpha + key y alpha + key u alpha + key i alpha + key o alpha + key p alpha tele + key ' special size 1 + } + row { + key a alpha hexa + key s alpha + key d alpha hexa + key f alpha hexa + key g alpha + key h alpha + key j alpha + key k alpha + key l alpha + key ñ alpha + key ´ alpha special dead + key ç alpha + } + row { + key z alpha size 2 + key x alpha + key c alpha hexa + key v alpha + key b alpha hexa + key n alpha + key m alpha + key , special + key . special + key - num special + key ! special size 1 + } +} +lowercase_num { + margin 0 0 0 9 + default_size 0 + row { + key 1 num hexa tele + key 2 num hexa tele + key 3 num hexa tele + } + row { + key 4 num hexa tele + key 5 num hexa tele + key 6 num hexa tele + } + row { + key 7 num hexa tele + key 8 num hexa tele + key 9 num hexa tele + } + row { + key @ special + key 0 num hexa tele + key ? special + } +} +uppercase { + margin 0 0 0 0 + default_size 0 + row { + key Q alpha size 2 + key W alpha + key E alpha hexa + key R alpha + key T alpha + key Y alpha + key U alpha + key I alpha + key O alpha + key P alpha tele + key ` alpha special dead size 1 + } + row { + key A alpha hexa + key S alpha + key D alpha hexa + key F alpha hexa + key G alpha + key H alpha + key J alpha + key K alpha + key L alpha + key Ñ alpha + key ¨ alpha special dead + key Ç alpha + } + row { + key Z alpha size 2 + key X alpha + key C alpha hexa + key V alpha + key B alpha hexa + key N alpha + key M alpha + key ; special + key : special + key _ special + key ¡ special size 1 + } +} +uppercase_num { + margin 0 0 0 9 + default_size 0 + row { + key " special + key · special + key % special + } + row { + key * special tele + key + special tele + key & special + } + row { + key / special + key ( special + key ) special + } + row { + key € special + key = special + key ¿ special + } +} +} + +kbd_thumb { +lowercase { + name "abc" + margin 0 0 0 0 + default_size 3 + row { + key . special + key ? special + key ñ alpha + key p alpha tele + key y alpha + key f alpha hexa + key g alpha + key c alpha hexa + key h alpha + key l alpha + key ´ alpha special dead + } + row { + key a alpha hexa + key o alpha + key e alpha hexa + key u alpha + key i alpha + key d alpha hexa + key r alpha + key t alpha + key n alpha + key s alpha + key ! special + } + row { + shift + key q alpha + key j alpha + key k alpha + key x alpha + key b alpha hexa + key m alpha + key w alpha + key v alpha + key z alpha + backspace + } +} +uppercase { + name "ABC" + margin 0 0 0 0 + default_size 3 + row { + key , special + key ¿ special + key Ñ alpha + key P alpha tele + key Y alpha + key F alpha hexa + key G alpha + key C alpha hexa + key H alpha + key L alpha + key ´ alpha special dead + } + row { + key A alpha hexa + key O alpha + key E alpha hexa + key U alpha + key I alpha + key D alpha hexa + key R alpha + key T alpha + key N alpha + key S alpha + key ¡ special + } + row { + shift + key Q alpha + key J alpha + key K alpha + key X alpha + key B alpha hexa + key M alpha + key W alpha + key V alpha + key Z alpha + backspace + } +} +special { + name "1#+" + margin 0 0 0 0 + default_size 3 + row { + key 1 num hexa tele + key 2 num hexa tele + key 3 num hexa tele + key 4 num hexa tele + key 5 num hexa tele + key 6 num hexa tele + key 7 num hexa tele + key 8 num hexa tele + key 9 num hexa tele + key 0 num hexa tele + key = special + } + row { + key + special tele + key - special num + key _ special + key # special tele + key * special tele + key % special + key € special + key £ special + key $ special + key ¥ special + key ¤ special + } + row { + shift + key , special + key . special + key @ special + key / special + key \ special + key ~ alpha special dead + key ^ alpha special dead + key ( special + key ) special + backspace + } +} +special { + name "*§¿" + margin 0 0 0 0 + default_size 3 + row { + key ´ alpha special dead + key ` alpha special dead + key ¨ alpha special dead + key ^ alpha special dead + key ~ alpha special dead + key ' special + key " special + key “ special + key ” special + key ° special + key & special + } + row { + key ± special + key § special + key ½ special + key ¹ special + key ² special + key ³ special + key < special + key > special + key « special + key » special + key | special + } + row { + shift + key ; special + key : special + key [ special + key ] special + key { special + key } special + key ç alpha + key º special + key ª special + backspace + } +} +} diff --git a/keyboards/es-qwerty.def b/keyboards/es-qwerty.def new file mode 100644 index 0000000..962bbaf --- /dev/null +++ b/keyboards/es-qwerty.def @@ -0,0 +1,332 @@ +# title: Spanish layout +# author: Roman Moravcik + +header { +name "Español (España)" +lang "es_ES" +wc "es_ES" + +size 0 { width 35 height 35 textpos 26 left 0 top 0 } +size 1 { width 50 height 35 textpos 26 left 0 top 0 } +size 2 { width 55 height 35 textpos 26 left 0 top 0 } +size 3 { width 72 height 55 textpos 41 left 0 top 0 } +size 4 { width 143 height 55 textpos 41 left 0 top 0 } +} + +kbd_normal { +lowercase { + margin 0 0 0 0 + default_size 0 + row { + key q alpha size 2 + key w alpha + key e alpha hexa + key r alpha + key t alpha + key y alpha + key u alpha + key i alpha + key o alpha + key p alpha tele + key ' special size 1 + } + row { + key a alpha hexa + key s alpha + key d alpha hexa + key f alpha hexa + key g alpha + key h alpha + key j alpha + key k alpha + key l alpha + key ñ alpha + key ´ alpha special dead + key ç alpha + } + row { + key z alpha size 2 + key x alpha + key c alpha hexa + key v alpha + key b alpha hexa + key n alpha + key m alpha + key , special + key . special + key - num special + key ! special size 1 + } +} +lowercase_num { + margin 0 0 0 9 + default_size 0 + row { + key 1 num hexa tele + key 2 num hexa tele + key 3 num hexa tele + } + row { + key 4 num hexa tele + key 5 num hexa tele + key 6 num hexa tele + } + row { + key 7 num hexa tele + key 8 num hexa tele + key 9 num hexa tele + } + row { + key @ special + key 0 num hexa tele + key ? special + } +} +uppercase { + margin 0 0 0 0 + default_size 0 + row { + key Q alpha size 2 + key W alpha + key E alpha hexa + key R alpha + key T alpha + key Y alpha + key U alpha + key I alpha + key O alpha + key P alpha tele + key ` alpha special dead size 1 + } + row { + key A alpha hexa + key S alpha + key D alpha hexa + key F alpha hexa + key G alpha + key H alpha + key J alpha + key K alpha + key L alpha + key Ñ alpha + key ¨ alpha special dead + key Ç alpha + } + row { + key Z alpha size 2 + key X alpha + key C alpha hexa + key V alpha + key B alpha hexa + key N alpha + key M alpha + key ; special + key : special + key _ special + key ¡ special size 1 + } +} +uppercase_num { + margin 0 0 0 9 + default_size 0 + row { + key " special + key · special + key % special + } + row { + key * special tele + key + special tele + key & special + } + row { + key / special + key ( special + key ) special + } + row { + key € special + key = special + key ¿ special + } +} +} + +kbd_thumb { +lowercase { + name "abc" + margin 0 0 0 0 + default_size 3 + row { + key q alpha + key w alpha + key e alpha hexa + key r alpha + key t alpha + key y alpha + key u alpha + key i alpha + key o alpha + key p alpha tele + key ´ alpha special dead + } + row { + key a alpha hexa + key s alpha + key d alpha hexa + key f alpha hexa + key g alpha + key h alpha + key j alpha + key k alpha + key l alpha + key ñ alpha + key ! special + } + row { + shift + key z alpha + key x alpha + key c alpha hexa + key v alpha + key b alpha hexa + key n alpha + key m alpha + key ? special + key . special + backspace + } +} +uppercase { + name "ABC" + margin 0 0 0 0 + default_size 3 + row { + key Q alpha + key W alpha + key E alpha hexa + key R alpha + key T alpha + key Y alpha + key U alpha + key I alpha + key O alpha + key P alpha tele + key ´ alpha special dead + } + row { + key A alpha hexa + key S alpha + key D alpha hexa + key F alpha hexa + key G alpha + key H alpha + key J alpha + key K alpha + key L alpha + key Ñ alpha + key ¡ special + } + row { + shift + key Z alpha + key X alpha + key C alpha hexa + key V alpha + key B alpha hexa + key N alpha + key M alpha + key ¿ special + key , special + backspace + } +} +special { + name "1#+" + margin 0 0 0 0 + default_size 3 + row { + key 1 num hexa tele + key 2 num hexa tele + key 3 num hexa tele + key 4 num hexa tele + key 5 num hexa tele + key 6 num hexa tele + key 7 num hexa tele + key 8 num hexa tele + key 9 num hexa tele + key 0 num hexa tele + key = special + } + row { + key + special tele + key - special num + key _ special + key # special tele + key * special tele + key % special + key € special + key £ special + key $ special + key ¥ special + key ¤ special + } + row { + shift + key , special + key . special + key @ special + key / special + key \ special + key ~ alpha special dead + key ^ alpha special dead + key ( special + key ) special + backspace + } +} +special { + name "*§¿" + margin 0 0 0 0 + default_size 3 + row { + key ´ alpha special dead + key ` alpha special dead + key ¨ alpha special dead + key ^ alpha special dead + key ~ alpha special dead + key ' special + key " special + key “ special + key ” special + key ° special + key & special + } + row { + key ± special + key § special + key ½ special + key ¹ special + key ² special + key ³ special + key < special + key > special + key « special + key » special + key | special + } + row { + shift + key ; special + key : special + key [ special + key ] special + key { special + key } special + key ç alpha + key º special + key ª special + backspace + } +} +} -- 2.11.4.GIT