From 57bad36fc118bd91218f8df7dd06a619f1e7eaed Mon Sep 17 00:00:00 2001 From: Anthony Perkins Date: Wed, 17 Jun 2020 23:51:48 +0100 Subject: [PATCH] Use the CMS layout at the console --- roles/debian/files/ca.map | 98 +++++++++++++++++++++++++++++++++ roles/debian/tasks/keyboard.yml | 21 ++++++- 2 files changed, 118 insertions(+), 1 deletion(-) create mode 100644 roles/debian/files/ca.map diff --git a/roles/debian/files/ca.map b/roles/debian/files/ca.map new file mode 100644 index 0000000..121b2ea --- /dev/null +++ b/roles/debian/files/ca.map @@ -0,0 +1,98 @@ +# Canadian Multilingual keyboard +# +# Built from the Canadian-French keymap +# Christian Perrier +# 2008 +# +# Changes to line up with the XKB layout +# Anthony Perkins +# 2020 +# + +keymaps 0-6,8-9,12 +include "qwerty-layout" +include "linux-with-alt-and-altgr" +strings as usual +compose as usual for "iso-8859-1" + +keycode 1 = Escape Escape + alt keycode 1 = Meta_Escape +keycode 2 = one exclam plusminus + alt keycode 2 = Meta_one + shift alt keycode 2 = Meta_exclam +keycode 3 = two at at + control keycode 3 = nul + shift control keycode 3 = nul + alt keycode 3 = Meta_two + shift alt keycode 3 = Meta_at +keycode 4 = three numbersign sterling + control keycode 4 = Escape + alt keycode 4 = Meta_three + shift alt keycode 4 = Meta_numbersign +keycode 5 = four dollar cent + alt keycode 5 = Meta_four + shift alt keycode 5 = Meta_dollar +keycode 6 = five percent currency + alt keycode 6 = Meta_five + shift alt keycode 6 = Meta_percent +keycode 7 = six question + shift control keycode 7 = Delete + alt keycode 7 = Meta_six + shift alt keycode 7 = Meta_question +keycode 8 = seven ampersand braceleft + alt keycode 8 = Meta_seven + shift alt keycode 8 = Meta_ampersand +keycode 9 = eight asterisk braceright + alt keycode 9 = Meta_eight + shift alt keycode 9 = Meta_asterisk +keycode 10 = nine parenleft bracketleft + control keycode 10 = Escape + alt keycode 10 = Meta_nine +keycode 11 = zero parenright bracketright + control keycode 11 = Control_bracketright + alt keycode 11 = Meta_zero +keycode 12 = minus underscore onehalf + control keycode 12 = Control_underscore + alt keycode 12 = Meta_minus +keycode 13 = equal plus notsign + alt keycode 13 = Meta_equal +keycode 14 = Delete Delete + control keycode 14 = BackSpace + alt keycode 14 = Meta_Delete +keycode 15 = Tab Tab + alt keycode 15 = Meta_Tab +keycode 24 = +o +O section +keycode 25 = +p +P paragraph +keycode 26 = dead_circumflex dead_diaeresis dead_grave + control keycode 26 = Control_asciicircum +keycode 27 = ccedilla Ccedilla tilde +keycode 28 = Return + alt keycode 28 = Meta_Control_m +keycode 29 = Control +keycode 39 = semicolon colon degree +keycode 40 = egrave Egrave +keycode 41 = slash backslash bar + shift control keycode 41 = Control_backslash +keycode 42 = Shift +keycode 43 = agrave Agrave +keycode 44 = +z +Z guillemotleft +keycode 45 = +x +X guillemotright +keycode 50 = +m +M mu +keycode 51 = comma apostrophe less + control keycode 51 = Control_g + alt keycode 51 = Meta_comma + shift alt keycode 51 = Meta_apostrophe +keycode 52 = period quotedbl greater + control keycode 52 = Compose + alt keycode 52 = Meta_period + shift alt keycode 52 = Meta_quotedbl +keycode 53 = +eacute +Eacute dead_acute + alt keycode 53 = Meta_slash +keycode 54 = Shift +keycode 56 = Alt +keycode 57 = space space nobreakspace + control keycode 57 = nul + alt keycode 57 = Meta_space +keycode 58 = Caps_Lock +keycode 86 = ugrave Ugrave +keycode 97 = Control diff --git a/roles/debian/tasks/keyboard.yml b/roles/debian/tasks/keyboard.yml index 28d80d7..298365d 100644 --- a/roles/debian/tasks/keyboard.yml +++ b/roles/debian/tasks/keyboard.yml @@ -1,6 +1,25 @@ --- -- name: set keyboard layout +- name: set default Xorg/Wayland keyboard layout become: true copy: src: keyboard dest: /etc/default/keyboard +- name: copy CMS keyboard layout + become: true + copy: + src: ca.map + dest: /usr/share/keymaps/i386/qwerty/ca.kmap +- name: enable CMS layout for the console + become: true + lineinfile: + path: /etc/vconsole.conf + regexp: KEYMAP=.* + line: KEYMAP=ca + create: yes +- name: use a better font for French characters + become: true + lineinfile: + path: /etc/vconsole.conf + regexp: FONT=.* + line: FONT=eurlatgr + create: yes