HardenedBSD/share/vt/keymaps/ch.macbook.acc.kbd
Stefan Eßer 7ba08f8145 Attempt at converting the SYSCONS keymaps to Unicode for use with NEWCONS.
I have spent many hours comparing source and destination formats, and hope
to have caught the most severe conversion errors.

Files were converted with a Perl script which I'll shortly commit to the
tools directory. This script is a much enhanced version of the one
provided by ray@ and is expected to support the full kbdmap(5) syntax.

The naming convention used is:

 <2-letter country code>.<variant>.kbd

Only if there are multiple layouts for different languages:

 <2-letter country code>-<2-letter language code>.<variant>.kbd

In nearly all cases, the keyboards are country specific, only. Currently
there is only one case where the language was added ("ch-fr.kbd" for
the Swiss-French keyboard layout).

I choose to write Unicode character codes as hex numbers. While this
increases the diff to the SYSCONS keymap files for the trivial cases
(conversion from ISO8859-1), it really helps to verify the more complex
cases against a Unicode table (which is indexed by hex numbers).

This commit does not cover all files that have been converted, since I
need to sort out which ones to use, if there were several with different
source encodings to choose from.

Review and test of the keymap files is highly desirable before 10.1 is
released. I'd also appreciate educated opinions regarding the optimum
variant (to be made available as the default for each language).

Since there are no NEWCONS keymaps in 10-STABLE, I plan to MFC after
the minimum allowed delay of 3 days, to allow at least a few weeks to
test and improve what will be in the next release.

MFC after:	3 days
2014-08-17 19:54:21 +00:00

139 lines
8.7 KiB
Plaintext

# $FreeBSD$
#
# swissgerman Macbook/Macbook PRO keymap, with accent keys
# derived from swissgerman.iso.acc.kbd
# 06.08.2010 by Andreas Tobler <andreast@fgznet.ch>
# alt
# scan cntrl alt alt cntrl lock
# code base shift cntrl shift alt shift cntrl shift state
# ------------------------------------------------------------------
000 nop nop nop nop nop nop nop nop O
001 esc esc esc esc esc esc debug esc O
002 '1' '+' nop nop '1' '1' nop nop O
003 '2' '"' nul nul '2' '2' nul nul O
004 '3' '*' nop nop '#' '#' nop nop O
005 '4' 0xe7 nop nop '4' 0xe7 nop nop O
006 '5' '%' nop nop '[' '[' nop nop O
007 '6' '&' nop nop ']' ']' nop nop O
008 '7' '/' nop nop '|' '\' nop nop O
009 '8' '(' esc esc '{' '{' nop nop O
010 '9' ')' gs gs '}' '}' nop nop O
011 '0' '=' nop nop '0' '=' nop nop O
012 ''' '?' fs fs dacu dacu fs fs O
013 dcir dgra nop nop dtil dtil nop nop O
014 bs bs del del bs bs del del O
015 ht btab nop nop ht btab nop nop O
016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C
017 'w' 'W' etb etb 'w' 'W' etb etb C
018 'e' 'E' enq enq 0x20ac 'E' enq enq C
019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C
020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C
021 'z' 'Z' sub sub 'z' 'Z' sub sub C
022 'u' 'U' nak nak 'u' 'U' nak nak C
023 'i' 'I' ht ht 'i' 'I' ht ht C
024 'o' 'O' si si 'o' 'O' si si C
025 'p' 'P' dle dle 'p' 'P' dle dle C
026 dgra duml esc esc '[' 0xdc esc esc C
027 duml '!' gs gs ']' ']' gs gs O
028 cr cr nl nl cr cr nl nl O
029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O
030 'a' 'A' soh soh 'a' 'A' soh soh C
031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C
032 'd' 'D' eot eot 'd' 'D' eot eot C
033 'f' 'F' ack ack 'f' 'F' ack ack C
034 'g' 'G' bel bel '@' '@' bel bel C
035 'h' 'H' bs bs 'h' 'H' bs bs C
036 'j' 'J' nl nl 'j' 'J' nl nl C
037 'k' 'K' vt vt 'k' 'K' vt vt C
038 'l' 'L' ff ff 'l' 'L' ff ff C
039 0xe9 0xe9 nop nop 0xf6 0xd6 nop nop C
040 0xe0 0xe0 nop nop '{' 0xc4 nop nop C
041 '<' '>' nop nop nop nop nop nop O
042 lshift lshift lshift lshift lshift lshift lshift lshift O
043 '$' 0xa3 rs rs '}' '}' rs rs O
044 'y' 'Y' em em 'y' 'Y' em em C
045 'x' 'X' can can 'x' 'X' can can C
046 'c' 'C' etx etx 'c' 'C' etx etx C
047 'v' 'V' syn syn 'v' 'V' syn syn C
048 'b' 'B' stx stx 'b' 'B' stx stx C
049 'n' 'N' so so '~' '~' so so C
050 'm' 'M' cr cr 0xb5 0xb5 cr cr C
051 ',' ';' nop nop ',' ';' nop nop O
052 '.' ':' nop nop '.' ':' nop nop O
053 '-' '_' us us '-' '_' us us O
054 rshift rshift rshift rshift rshift rshift rshift rshift O
055 '*' '*' '*' '*' '*' '*' '*' '*' O
056 lalt lalt lalt lalt lalt lalt lalt lalt O
057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O
058 clock clock clock clock clock clock clock clock O
059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O
060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O
061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O
062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O
063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O
064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O
065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O
066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O
067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O
068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O
069 nlock nlock nlock nlock nlock nlock nlock nlock O
070 slock slock slock slock slock slock slock slock O
071 fkey49 '7' '7' '7' '7' '7' '7' '7' N
072 fkey50 '8' '8' '8' '8' '8' '8' '8' N
073 fkey51 '9' '9' '9' '9' '9' '9' '9' N
074 fkey52 '-' '-' '-' '-' '-' '-' '-' N
075 fkey53 '4' '4' '4' '4' '4' '4' '4' N
076 fkey54 '5' '5' '5' '5' '5' '5' '5' N
077 fkey55 '6' '6' '6' '6' '6' '6' '6' N
078 fkey56 '+' '+' '+' '+' '+' '+' '+' N
079 fkey57 '1' '1' '1' '1' '1' '1' '1' N
080 fkey58 '2' '2' '2' '2' '2' '2' '2' N
081 fkey59 '3' '3' '3' '3' '3' '3' '3' N
082 fkey60 '0' '0' '0' '0' '0' '0' '0' N
083 del '.' '.' '.' '.' '.' boot boot N
084 nop nop nop nop nop nop nop nop O
085 nop nop nop nop nop nop nop nop O
086 '<' '>' nop nop '\' '\' nop nop O
087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O
088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O
089 cr cr nl nl cr cr nl nl O
090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O
091 '/' '/' '/' '/' '/' '/' '/' '/' N
092 nscr pscr debug debug nop nop nop nop O
093 ralt ralt ralt ralt ralt ralt ralt ralt O
094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O
095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O
096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O
097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O
098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O
099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O
100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O
101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O
102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O
103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O
104 slock saver slock saver susp nop susp nop O
105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O
106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O
107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O
108 nop nop nop nop nop nop nop nop O
dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 )
( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 )
( 'u' 0xfa ) ( 'U' 0xda ) ( 'c' 0xe7 ) ( 'C' 0xc7 )
( 'y' 0xfd ) ( 'Y' 0xdd )
dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 )
( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 )
( 'u' 0xf9 ) ( 'U' 0xd9 )
dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca )
( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 )
( 'u' 0xfb ) ( 'U' 0xdb )
dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'o' 0xf5 ) ( 'O' 0xd5 )
( 'n' 0xf1 ) ( 'N' 0xd1 )
duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb )
( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 )
( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff )