1// 10-dot patterns on the home row + v and n
2default partial alphanumeric_keys
3xkb_symbols "home_row" {
4    include "brai(keypad)"
5
6    name[Group1]="Braille";
7
8    key <AC04>	{ [ braille_dot_1 ] };
9    key <AC03>	{ [ braille_dot_2 ] };
10    key <AC02>	{ [ braille_dot_3 ] };
11    key <AC07>	{ [ braille_dot_4 ] };
12    key <AC08>	{ [ braille_dot_5 ] };
13    key <AC09>	{ [ braille_dot_6 ] };
14    key <AC01>	{ [ braille_dot_7 ] };
15    key <AC10>	{ [ braille_dot_8 ] };
16    key <AB04>	{ [ braille_dot_9 ] };
17    key <AB06>	{ [ braille_dot_10 ] };
18};
19
20// 6-dot patterns for the left hand
21partial alphanumeric_keys
22xkb_symbols "left_hand" {
23    include "brai(keypad_left)"
24
25    name[Group1]="Braille (left-handed)";
26
27    key <AC03>	{ [ braille_dot_1 ] };
28    key <AC02>	{ [ braille_dot_2 ] };
29    key <AC01>	{ [ braille_dot_3 ] };
30    key <AC04>	{ [ braille_dot_4 ] };
31    key <AB04>	{ [ braille_dot_5 ] };
32    key <AB05>	{ [ braille_dot_6 ] };
33};
34
35// 6-dot patterns for the left hand
36partial alphanumeric_keys
37xkb_symbols "left_hand_invert" {
38    include "brai(left_hand)"
39
40    name[Group1]="Braille (left-handed inverted thumb)";
41
42    key <AB05>	{ [ braille_dot_5 ] };
43    key <AB04>	{ [ braille_dot_6 ] };
44};
45
46// 6-dot patterns for the right hand
47partial alphanumeric_keys
48xkb_symbols "right_hand" {
49    include "brai(keypad)"
50
51    name[Group1]="Braille (right-handed)";
52
53    key <AC07>	{ [ braille_dot_1 ] };
54    key <AB06>	{ [ braille_dot_2 ] };
55    key <AB05>	{ [ braille_dot_3 ] };
56    key <AC08>	{ [ braille_dot_4 ] };
57    key <AC10>	{ [ braille_dot_5 ] };
58    key <AC09>	{ [ braille_dot_6 ] };
59};
60
61// 6-dot patterns for the right hand
62partial alphanumeric_keys
63xkb_symbols "right_hand_invert" {
64    include "brai(right_hand)"
65
66    name[Group1]="Braille (right-handed inverted thumb)";
67
68    key <AB05>	{ [ braille_dot_2 ] };
69    key <AB06>	{ [ braille_dot_3 ] };
70};
71
72// 6-dot patterns on the keypad
73hidden partial keypad_keys
74xkb_symbols "keypad" {
75    key <KP4>	{ [ braille_dot_1 ] };
76    key <KP1>	{ [ braille_dot_2 ] };
77    key <KP0>	{ [ braille_dot_3 ] };
78    key <KP5>	{ [ braille_dot_4 ] };
79    key <KP6>	{ [ braille_dot_5 ] };
80    key <KPAD>	{ [ braille_dot_6 ] };
81};
82
83// 6-dot patterns on the keypad with left hand
84hidden partial keypad_keys
85xkb_symbols "keypad_left" {
86    key <KPMU>	{ [ braille_dot_1 ] };
87    key <KPDV>	{ [ braille_dot_2 ] };
88    key <NMLK>	{ [ braille_dot_3 ] };
89    key <KPSU>	{ [ braille_dot_4 ] };
90    key <KPAD>	{ [ braille_dot_5 ] };
91    key <KPEN>	{ [ braille_dot_6 ] };
92};
93