diff options
Diffstat (limited to 'linux-vt-keyboard')
-rw-r--r-- | linux-vt-keyboard/.gitignore | 1 | ||||
-rw-r--r-- | linux-vt-keyboard/LICENSE | 15 | ||||
-rw-r--r-- | linux-vt-keyboard/Makefile | 26 | ||||
-rw-r--r-- | linux-vt-keyboard/README | 20 | ||||
-rw-r--r-- | linux-vt-keyboard/sv-maandree.map | 581 |
5 files changed, 643 insertions, 0 deletions
diff --git a/linux-vt-keyboard/.gitignore b/linux-vt-keyboard/.gitignore new file mode 100644 index 0000000..10d00b5 --- /dev/null +++ b/linux-vt-keyboard/.gitignore @@ -0,0 +1 @@ +*.gz diff --git a/linux-vt-keyboard/LICENSE b/linux-vt-keyboard/LICENSE new file mode 100644 index 0000000..e765484 --- /dev/null +++ b/linux-vt-keyboard/LICENSE @@ -0,0 +1,15 @@ +ISC License + +© 2012, 2013, 2021 Mattias Andrée <maandree@kth.se> + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/linux-vt-keyboard/Makefile b/linux-vt-keyboard/Makefile new file mode 100644 index 0000000..81c0b7b --- /dev/null +++ b/linux-vt-keyboard/Makefile @@ -0,0 +1,26 @@ +.POSIX: + +PREFIX = /usr +NAME = sv-maandree + + +all: sv-maandree.map.gz + +sv-maandree.map.gz: sv-maandree.map + gzip -9f < sv-maandree.map > sv-maandree.map.gz + +install: sv-maandree.map.gz + mkdir -p -- "$(DESTDIR)$(PREFIX)/share/kbd/keymaps/i386/qwerty/" + cp -- sv-maandree.map.gz "$(DESTDIR)$(PREFIX)/share/kbd/keymaps/i386/qwerty/$(NAME).map.gz" + +uninstall: + -rm -f -- "$(DESTDIR)$(PREFIX)/share/kbd/keymaps/i386/qwerty/$(NAME).map.gz" + -rm -f -- "$(DESTDIR)$(PREFIX)/share/kbd/keymaps/i386/qwerty/$(NAME).map" + +clean: + -rm -f -- sv-maandree.map.gz + +use: + loadkeys ./sv-maandree.map + +.PHONY: all install uninstall clean use diff --git a/linux-vt-keyboard/README b/linux-vt-keyboard/README new file mode 100644 index 0000000..bd61181 --- /dev/null +++ b/linux-vt-keyboard/README @@ -0,0 +1,20 @@ +My customised Swedish keyboard layout + +FEATURES: +• xterm compatible, Emacs is better if it thinks you are using xterm +• switch to any of the 63 VT:s +• swapped left control with caps lock +• swapped (left alternative → less → q) +• swapped § and 0 for level 1 and for alternative +• circumflex and title are dead +• control+shift+[a-z] as alternative to meta+[a-z], for some reason C-S-x does not work +• mapped meta+shift+[0-9] +• mapped alt+control+[left|right] to control+x,[left|right] +• mapped right supper to home +• mapped menu to end +• mapped shift+left super to compose (sysreq is still also compose) +• control, shift, control+shift support for up,left,right,down +• some support for o[control|shift|control+shift]+[home|end] +• mapped meta+page[up|down], scrolls next buffer in Emacs +• mapped altgr+shift+less to slash +• heavier use of [shift +] alt graph diff --git a/linux-vt-keyboard/sv-maandree.map b/linux-vt-keyboard/sv-maandree.map new file mode 100644 index 0000000..0228dcb --- /dev/null +++ b/linux-vt-keyboard/sv-maandree.map @@ -0,0 +1,581 @@ +#!sudo loadkeys +#Install to /usr/share/kbd/keymaps/i386/qwerty/sv-maandree.map[.gz] + +charset "iso-8859-1" +keymaps 0-6,8-14 +include "qwerty-layout" +include "linux-with-alt-and-altgr" + plain keycode 83 = KP_Comma +strings as usual + + + + +## reflect <shift>{up,down,right,left} + +shift keycode 103 = F103 +shift keycode 108 = F108 +shift keycode 106 = F106 +shift keycode 105 = F105 + + +## reflect <control>{up,down,right,left} + +control keycode 103 = F113 +control keycode 108 = F118 +control keycode 106 = F116 +control keycode 105 = F115 + + +## reflect <control><shift>{up,down,right,left} + +control shift keycode 103 = F123 +control shift keycode 108 = F128 +control shift keycode 106 = F126 +control shift keycode 105 = F125 + + +## map <alternative><shift>{right,left} to C-x {right,left} +## and <control><alternative>{right,left} to C-x {right,left} + +alt shift keycode 106 = F156 +alt shift keycode 105 = F155 +control alt keycode 106 = F156 +control alt keycode 105 = F155 + + +## map <alternative graph>{right,left} to {end,home} + +altgr keycode 106 = F136 +altgr keycode 105 = F135 + + +## map {menu,R-super} to {end,home} + +keycode 127 = F136 +keycode 126 = F135 + + +## map <alternative>{menu,R-super} to legacy {home,end} + +alt keycode 127 = F146 +alt keycode 126 = F145 + + +## map <alternative>{menu,R-super} to <shift>{home,end} + +shift alt keycode 127 = F168 +shift alt keycode 126 = F167 + + +## map <alternative>{menu,R-super} to <control>{home,end} + +control alt keycode 127 = F178 +control alt keycode 126 = F177 + + +## map <alternative>{menu,R-super} to <control><shift>{home,end} + +control shift alt keycode 127 = F188 +control shift alt keycode 126 = F187 + + +## map <shift>L-super to compose + +shift keycode 125 = Compose + + + +## map <alternative><shift>F{1..12} to console {13..24} + +alt shift keycode 59 = Console_13 +alt shift keycode 60 = Console_14 +alt shift keycode 61 = Console_15 +alt shift keycode 62 = Console_16 +alt shift keycode 63 = Console_17 +alt shift keycode 64 = Console_18 +alt shift keycode 65 = Console_19 +alt shift keycode 66 = Console_20 +alt shift keycode 67 = Console_21 +alt shift keycode 68 = Console_22 +alt shift keycode 87 = Console_23 +alt shift keycode 88 = Console_24 + + +## map <control><shift>F{1..12} to console {13..24} + +control shift keycode 59 = Console_13 +control shift keycode 60 = Console_14 +control shift keycode 61 = Console_15 +control shift keycode 62 = Console_16 +control shift keycode 63 = Console_17 +control shift keycode 64 = Console_18 +control shift keycode 65 = Console_19 +control shift keycode 66 = Console_20 +control shift keycode 67 = Console_21 +control shift keycode 68 = Console_22 +control shift keycode 87 = Console_23 +control shift keycode 88 = Console_24 + + +## map <alternative><control><shift>F{1..12} to console {25..36} + +alt control shift keycode 59 = Console_25 +alt control shift keycode 60 = Console_26 +alt control shift keycode 61 = Console_27 +alt control shift keycode 62 = Console_28 +alt control shift keycode 63 = Console_29 +alt control shift keycode 64 = Console_30 +alt control shift keycode 65 = Console_31 +alt control shift keycode 66 = Console_32 +alt control shift keycode 67 = Console_33 +alt control shift keycode 68 = Console_34 +alt control shift keycode 87 = Console_35 +alt control shift keycode 88 = Console_36 + + +## map <alternative><alternative graph>F{1..12} to console {37..48} + +alt altgr keycode 59 = Console_37 +alt altgr keycode 60 = Console_38 +alt altgr keycode 61 = Console_39 +alt altgr keycode 62 = Console_40 +alt altgr keycode 63 = Console_41 +alt altgr keycode 64 = Console_42 +alt altgr keycode 65 = Console_43 +alt altgr keycode 66 = Console_44 +alt altgr keycode 67 = Console_45 +alt altgr keycode 68 = Console_46 +alt altgr keycode 87 = Console_47 +alt altgr keycode 88 = Console_48 + + +## map <control><alternative graph>F{1..12} to console {37..48} + +control altgr keycode 59 = Console_37 +control altgr keycode 60 = Console_38 +control altgr keycode 61 = Console_39 +control altgr keycode 62 = Console_40 +control altgr keycode 63 = Console_41 +control altgr keycode 64 = Console_42 +control altgr keycode 65 = Console_43 +control altgr keycode 66 = Console_44 +control altgr keycode 67 = Console_45 +control altgr keycode 68 = Console_46 +control altgr keycode 87 = Console_47 +control altgr keycode 88 = Console_48 + + +## map <alternative><alternative graph><shift>F{1..12} to console {49..60} + +alt altgr shift keycode 59 = Console_49 +alt altgr shift keycode 60 = Console_50 +alt altgr shift keycode 61 = Console_51 +alt altgr shift keycode 62 = Console_52 +alt altgr shift keycode 63 = Console_53 +alt altgr shift keycode 64 = Console_54 +alt altgr shift keycode 65 = Console_55 +alt altgr shift keycode 66 = Console_56 +alt altgr shift keycode 67 = Console_57 +alt altgr shift keycode 68 = Console_58 +alt altgr shift keycode 87 = Console_59 +alt altgr shift keycode 88 = Console_60 + + +## map <alternative><alternative graph><shift>F{1..3} to console {61..63} + +alt altgr control keycode 59 = Console_61 +alt altgr control keycode 60 = Console_62 +alt altgr control keycode 61 = Console_63 + + +## map escape and <alternative>escape to esc and M-esc + +keycode 1 = Escape +alt keycode 1 = Meta_Escape + + +## map backspace and <alternative>backspace to backspace and M-backspace + +keycode 14 = Delete +alt keycode 14 = Meta_Delete + + +## map tab, <shift>tab and <alternative>tab to tab, backstab = M-tab and M-tab = backtab + +keycode 15 = Tab +shift keycode 15 = Meta_Tab +alt keycode 15 = Meta_Tab + + +## map space, <shift>space and <alternative graph>space all to space and <shift><alternative graph>space to nbsp +## and <control>space and <alternative>space to C-@ and M-space + +keycode 57 = space space space F190 +control keycode 57 = nul +alt keycode 57 = Meta_space + + + + +## [<normal> <shift> <alternative graph> <shift><alternative graph>] +## [<alternative> <alternative><shift> <alternative><alternative graph> <alternative><shift><alternative graph>] +## [<control> <control><shift> <control><alternative graph> <control><shift><alternative graph>] + +## 0 1 2 3 4 5 6 7 8 9 § + ´ C- <control> +## q w e r t y u i o p å ^ M- <meta> +## a s d f g h j k l ö ä ' D- <dead> +## < z x c v b n m , . - + + + +## 0 = [0 ½ °] [M-0] [C-@] + +keycode 41 = zero onehalf degree +alt keycode 41 = Meta_zero +control keycode 41 = nul + + +## 1 = [1 ! ¡ ¹] [M-1 M-! M-¡ M-¹] [] + +keycode 2 = one exclam F104 F109 +alt keycode 2 = Meta_one +alt shift keycode 2 = F201 +alt altgr keycode 2 = F107 +alt shift altgr keycode 2 = F114 + + +## 2 = [2 " @ ²] [M-2 M-" M-@ M-²] [C-@] + +keycode 3 = two quotedbl at F110 +alt keycode 3 = Meta_two +alt shift keycode 3 = F202 +alt altgr keycode 3 = Meta_at +alt shift altgr keycode 3 = F117 +control keycode 3 = nul + + +## 3 = [3 # £ ³] [M-3 M-# M-£ M-³] [esc] + +keycode 4 = three numbersign sterling F111 +alt keycode 4 = Meta_three +alt shift keycode 4 = F203 +alt altgr keycode 4 = Meta_sterling +alt shift altgr keycode 4 = F119 +control keycode 4 = Escape + + +## 4 = [4 ç $ ¼] [M-4 M-ç M-$ M-¼] [C-\] + +keycode 5 = four ccedilla dollar F112 +alt keycode 5 = Meta_four +alt shift keycode 5 = F204 +alt altgr keycode 5 = Meta_dollar +alt shift altgr keycode 5 = F120 +control keycode 5 = Control_backslash + + +## 5 = [5 % € ¢] [M-5 M-% M-€ M-¢] [C-]] + +keycode 6 = five percent F101 F121 +alt keycode 6 = Meta_five +alt shift keycode 6 = F205 +alt altgr keycode 6 = F102 +alt shift altgr keycode 6 = F122 +control keycode 6 = Control_bracketright + + +## 6 = [6 & ¥ ¬] [M-6 M-& M-¥ M-¬] [C-^] + +keycode 7 = six ampersand F124 notsign +alt keycode 7 = Meta_six +alt shift keycode 7 = F206 +alt altgr keycode 7 = F127 +alt shift altgr keycode 7 = Meta_notsign +control keycode 7 = Control_asciicircum + + +## 7 = [7 / {] [M-7 M-/ M-{] [C-_] + +keycode 8 = seven slash braceleft +alt keycode 8 = Meta_seven +alt shift keycode 8 = F207 +alt altgr keycode 8 = Meta_braceleft +control keycode 8 = Control_underscore + + +## 8 = [8 ( [] [M-8 M-( M-[] [del] + +keycode 9 = eight parenleft bracketleft +alt keycode 9 = Meta_eight +alt shift keycode 9 = F208 +alt altgr keycode 9 = Meta_bracketleft +control keycode 9 = Delete + + +## 9 = [9 ) ]] [M-9 M-) M-]] [] + +keycode 10 = nine parenright bracketright +alt keycode 10 = Meta_nine +alt shift keycode 10 = F209 +alt altgr keycode 10 = Meta_bracketright + + +## § = [§ = }] [M-` M-= M-}] [] + +keycode 11 = section equal braceright +alt keycode 11 = Meta_grave +alt shift keycode 11 = F210 +alt altgr keycode 11 = Meta_braceright + + +## + = [+ ? \] [M--] [C-_] + +keycode 12 = plus question backslash +alt keycode 12 = Meta_minus +control keycode 12 = Control_underscore + + +## ´ = [D-´ D-`] [M-=] [] + +keycode 13 = dead_acute dead_grave +alt keycode 13 = Meta_equal + + +control shift keycode 86 = Meta_q +control shift keycode 17 = Meta_w +control shift keycode 18 = Meta_e +control shift keycode 19 = Meta_r +control shift keycode 20 = Meta_t +control shift keycode 21 = Meta_y +control shift keycode 22 = Meta_u +control shift keycode 23 = Meta_i +control shift keycode 24 = Meta_o +control shift keycode 25 = Meta_p + +keycode 26 = +aring +Aring slash bar +control keycode 26 = Escape +alt keycode 26 = Meta_bracketleft + +keycode 27 = dead_diaeresis dead_circumflex dead_tilde +control keycode 27 = Control_bracketright +alt keycode 27 = Meta_bracketright + +keycode 28 = Return +alt keycode 28 = Meta_Control_m + +keycode 29 = Caps_Lock + +control shift keycode 30 = Meta_a +control shift keycode 31 = Meta_s +control shift keycode 32 = Meta_d +control shift keycode 33 = Meta_f +control shift keycode 34 = Meta_j +control shift keycode 35 = Meta_h +control shift keycode 36 = Meta_l +control shift keycode 37 = Meta_k +control shift keycode 38 = Meta_l + +keycode 39 = +odiaeresis +Odiaeresis +alt keycode 39 = Meta_semicolon + +keycode 40 = +adiaeresis +Adiaeresis slash bar +control keycode 40 = Control_g +alt keycode 40 = Meta_apostrophe + +keycode 42 = Shift + +keycode 43 = apostrophe asterisk +control keycode 43 = Control_backslash +alt keycode 43 = Meta_backslash + +control shift keycode 44 = Meta_z +control shift keycode 45 = Meta_x +control shift keycode 46 = Meta_c +control shift keycode 47 = Meta_v +control shift keycode 48 = Meta_b +control shift keycode 49 = Meta_n +control shift keycode 50 = Meta_m + +keycode 51 = comma semicolon +alt keycode 51 = Meta_comma + +keycode 52 = period colon +alt keycode 52 = Meta_period + +keycode 53 = minus underscore slash backslash +control keycode 53 = Delete +alt keycode 53 = Meta_slash +shift control keycode 53 = Control_underscore + +keycode 54 = Shift + +keycode 56 = less greater bar slash +alt keycode 86 = Meta_less + +keycode 58 = Control + +keycode 16 = Alt +keycode 86 = q + +keycode 97 = Control + +alt keycode 104 = F195 +alt keycode 109 = F196 +control shift keycode 104 = F195 +control shift keycode 109 = F196 + + + + +## map <alternative graph>{qweruasdflzxcvbnm} to {‽ł↑®▄↔←↓→ł«»©“”│µ} + +altgr keycode 16 = F200 +altgr keycode 17 = F201 +altgr keycode 18 = F202 +altgr keycode 19 = F203 +altgr keycode 22 = F236 +altgr keycode 30 = F204 +altgr keycode 31 = F205 +altgr keycode 32 = F206 +altgr keycode 33 = F207 +altgr keycode 38 = F208 +altgr keycode 44 = F209 +altgr keycode 45 = F210 +altgr keycode 46 = F211 +altgr keycode 47 = F212 +altgr keycode 48 = F213 +altgr keycode 49 = F214 +altgr keycode 50 = F215 + + +## map <shift><alternative graph>{qwertyuasdfglzxcvbn} to {⸘Ł┬┼┌┐▀↕├┴┤└┘Ł⁅⁆’⸮‘─} + +shift altgr keycode 16 = F216 +shift altgr keycode 17 = F217 +shift altgr keycode 18 = F218 +shift altgr keycode 19 = F219 +shift altgr keycode 20 = F220 +shift altgr keycode 21 = F221 +shift altgr keycode 22 = F235 +shift altgr keycode 30 = F222 +shift altgr keycode 31 = F223 +shift altgr keycode 32 = F224 +shift altgr keycode 33 = F225 +shift altgr keycode 34 = F226 +shift altgr keycode 35 = F227 +shift altgr keycode 38 = F228 +shift altgr keycode 44 = F229 +shift altgr keycode 45 = F230 +shift altgr keycode 46 = F231 +shift altgr keycode 47 = F232 +shift altgr keycode 48 = F233 +shift altgr keycode 49 = F234 + + + +############################ + +string F103 = "\033[1;2A" +string F108 = "\033[1;2B" +string F106 = "\033[1;2C" +string F105 = "\033[1;2D" + +string F113 = "\033[1;5A" +string F118 = "\033[1;5B" +string F116 = "\033[1;5C" +string F115 = "\033[1;5D" + +string F123 = "\033[1;6A" +string F128 = "\033[1;6B" +string F126 = "\033[1;6C" +string F125 = "\033[1;6D" + +string F156 = "\030\033[C" +string F155 = "\030\033[D" + +string F136 = "\033OF" +string F135 = "\033OH" + +string F146 = "\033[4~" +string F145 = "\033[1~" + +string F168 = "\033[4;2~" +string F167 = "\033[1;2~" + +string F178 = "\033[4;3~" +string F177 = "\033[1;3~" + +string F188 = "\033[4;4~" +string F187 = "\033[1;4~" + +string F195 = "\033\033[5~" +string F196 = "\033\033[6~" + +string F200 = "‽" +string F201 = "ł" +string F202 = "↑" +string F203 = "®" +string F236 = "▄" +string F204 = "↔" +string F205 = "←" +string F206 = "↓" +string F207 = "→" +string F208 = "ł" +string F209 = "«" +string F210 = "»" +string F211 = "©" +string F212 = "“" +string F213 = "”" +string F214 = "│" +string F215 = "µ" + +string F216 = "⸘" +string F217 = "Ł" +string F218 = "┬" +string F219 = "┼" +string F220 = "┌" +string F221 = "┐" +string F235 = "▀" +string F222 = "↕" +string F223 = "├" +string F224 = "┴" +string F225 = "┤" +string F226 = "└" +string F227 = "┘" +string F228 = "Ł" +string F229 = "⁅" +string F230 = "⁆" +string F231 = "⸮" +string F232 = "‘" +string F233 = "’" +string F234 = "─" + +string F190 = " " +string F201 = "\033!" +string F202 = "\033\"" +string F203 = "\033#" +string F204 = "\033ç" +string F205 = "\033%" +string F206 = "\033&" +string F207 = "\033/" +string F208 = "\033(" +string F209 = "\033)" +string F210 = "\033=" + +string F101 = "€" +string F102 = "\033€" +string F104 = "¡" +string F107 = "\033¡" +string F109 = "¹" +string F110 = "²" +string F111 = "³" +string F112 = "¼" +string F114 = "\033¹" +string F117 = "\033²" +string F119 = "\033³" +string F120 = "\033¼" +string F121 = "¢" +string F122 = "\033¢" +string F124 = "¥" +string F127 = "\033¥" |