1# Maintained by: Mark Müller <markmueller86@gmail.com>
2---
3outlines:
4    default: { width: 62, height: 42 }
5    default-wide: { width: 62, height: 42 }
6    altline: { width: 62, height: 42 }
7    wide: { width: 62, height: 42 }
8    special: { width: 62, height: 42 }
9
10views:
11    base: # hiragana
12        - "preferences _a ka sa BackSpace"
13        - "Left ta na ha Right"
14        - "カタカナ ma ya ra space"
15        - "switch2roman symbols wa punct Return"
16    _a:
17        - "preferences dummykey _a dummykey BackSpace"
18        - "あ い う え お"
19        - "ぁ ぃ ぅ ぇ ぉ" # 2 code points each
20        - "dummykey dummykey ゔ dummykey dummykey"
21    ka:
22        - "preferences dummykey ka dummykey BackSpace"
23        - "か き く け こ"
24        - "が ぎ ぐ げ ご"
25        - "ゕ dummykey dummykey ゖ dummykey"
26    sa:
27        - "preferences dummykey sa dummykey BackSpace"
28        - "さ し す せ そ"
29        - "ざ じ ず ぜ ぞ"
30    ta:
31        - "preferences dummykey ta dummykey BackSpace"
32        - "た ち つ て と"
33        - "だ ぢ づ で ど"
34        - "dummykey dummykey っ dummykey dummykey"
35    na:
36        - "preferences dummykey na dummykey BackSpace"
37        - "な に ぬ ね の"
38    ha:
39        - "preferences dummykey ha dummykey BackSpace"
40        - "は ひ ふ へ ほ"
41        - "ば び ぶ べ ぼ"
42        - "ぱ ぴ ぷ ぺ ぽ"
43    ma:
44        - "preferences dummykey ma dummykey BackSpace"
45        - "ま み む め も"
46    ya:
47        - "preferences dummykey ya dummykey BackSpace"
48        - "や dummykey ゆ dummykey よ"
49        - "ゃ dummykey ゅ dummykey ょ"
50    ra:
51        - "preferences dummykey ra dummykey BackSpace"
52        - "ら り る れ ろ"
53    wa:
54        - "preferences dummykey wa dummykey BackSpace"
55        - "わ ゐ dummykey ゑ を"
56        - "ゎ dummykey ん dummykey dummykey"
57    symbols:
58        - "preferences dummykey symbols dummykey BackSpace"
59        - "「 」 ( ) §"
60        - "【 】 < > ="
61        - "+ * & % $ "
62    punct:
63        - "preferences dummykey punct dummykey BackSpace"
64        - "。 、 ? ! ー"
65
66        - ": ; ・ 〜 …"
67        - "♪ ” ’ ゙ ゚"
68
69#a 	あア 	かカ 	さサ 	たタ 	なナ 	はハ 	まマ 	やヤ 	らラ 	わワ
70#i 	いイ 	きキ 	しシ 	ちチ 	にニ 	ひヒ 	みミ 	※      りリ 	ゐヰ
71#u 	うウ 	くク 	すス 	つツ 	ぬヌ 	ふフ 	むム 	ゆユ 	るル 	※
72#e 	えエ 	けケ 	せセ 	てテ 	ねネ 	へヘ 	めメ 	※      れレ 	ゑヱ
73#o 	おオ 	こコ 	そソ 	とト 	のノ 	ほホ 	もモ 	よヨ 	ろロ 	をヲ
74
75#      g       z       d       b       p      n
76#a 	が ガ 	ざ ザ 	だ ダ 	ば バ 	ぱ パ   ん ン
77#i 	ぎ ギ 	じ ジ 	ぢ ヂ 	び ビ 	ぴ ピ
78#u 	ぐ グ 	ず ズ 	づ ヅ 	ぶ ブ 	ぷ プ
79#e 	げ ゲ 	ぜ ゼ 	で デ 	べ ベ 	ぺ ペ
80#o 	ご ゴ 	ぞ ゾ 	ど ド 	ぼ ボ 	ぽ ポ
81
82    カタカナ: # katakana
83        - "preferences _A KA SA BackSpace"
84        - "Left TA NA HA Right"
85        - "ひらがな MA YA RA space"
86        - "switch2roman SYMBOLS WA PUNCT Return"
87    _A:
88        - "preferences DUMMYKEY _A DUMMYKEY BackSpace"
89        - "ア イ ウ エ オ"
90        - "ァ ィ ゥ ェ ォ"
91        - "DUMMYKEY DUMMYKEY ヴ DUMMYKEY DUMMYKEY"
92    KA:
93        - "preferences DUMMYKEY KA DUMMYKEY BackSpace"
94        - "カ キ ク ケ コ"
95        - "ガ ギ グ ゲ ゴ"
96        - "ヵ DUMMYKEY ㇰ ヶ DUMMYKEY"
97    SA:
98        - "preferences DUMMYKEY SA DUMMYKEY BackSpace"
99        - "サ シ ス セ ソ"
100        - "ザ ジ ズ ゼ ゾ"
101        - "DUMMYKEY ㇱ ㇲ DUMMYKEY DUMMYKEY"
102    TA:
103        - "preferences DUMMYKEY TA DUMMYKEY BackSpace"
104        - "タ チ ツ テ ト"
105        - "ダ ヂ ヅ デ ド"
106        - "DUMMYKEY DUMMYKEY ッ DUMMYKEY ㇳ"
107    NA:
108        - "preferences DUMMYKEY NA DUMMYKEY BackSpace"
109        - "ナ ニ ヌ ネ ノ"
110        - "DUMMYKEY DUMMYKEY ㇴ DUMMYKEY DUMMYKEY"
111    HA:
112        - "preferences DUMMYKEY HA DUMMYKEY BackSpace"
113        - "ハ ヒ フ ヘ ホ"
114        - "バ ビ ブ ベ ボ"
115        - "パ ピ プ ペ ポ"
116    MA:
117        - "preferences DUMMYKEY MA DUMMYKEY BackSpace"
118        - "マ ミ ム メ モ"
119        - "DUMMYKEY DUMMYKEY ㇺ DUMMYKEY DUMMYKEY"
120    YA:
121        - "preferences DUMMYKEY YA DUMMYKEY BackSpace"
122        - "ヤ DUMMYKEY ユ DUMMYKEY ヨ"
123        - "ャ DUMMYKEY ュ DUMMYKEY ョ"
124    RA:
125        - "preferences DUMMYKEY RA DUMMYKEY BackSpace"
126        - "ラ リ ル レ ロ"
127        - "ㇻ ㇼ ㇽ ㇾ ㇿ"
128    WA:
129        - "preferences DUMMYKEY WA DUMMYKEY BackSpace"
130        - "ワ ヰ DUMMYKEY ヱ ヲ"
131        - "ヮ ヸ ン ヹ ヺ"
132    # numbers view
133    numbers:
134        - "preferences 1 2 3 BackSpace"
135        - "Left 4 5 6 Right"
136        - "roman 7 8 9 space"
137        - "switch2kana * 0 # Return"
138    # Roman alphabet view
139    roman:
140        - "preferences RSYM1 ABC DEF BackSpace"
141        - "Left GHI JKL MNO Right"
142        - "ひらがな PQRS TUV WXYZ space"
143        - "switch2num RSYM2 RSYM3 RSYM4 Return"
144    RSYM1:
145        - "preferences dummykey RSYM1 dummykey BackSpace"
146        - "@ # $ § :"
147        - "| € ¥ £ 1"
148    ABC:
149        - "preferences dummykey ABC dummykey BackSpace"
150        - "A B C Ä ç"
151        - "a b c ä 2"
152    DEF:
153        - "preferences dummykey DEF dummykey BackSpace"
154        - "D E F dummykey"
155        - "d e f 3"
156    GHI:
157        - "preferences dummykey GHI dummykey BackSpace"
158        - "G H I dummykey"
159        - "g h i 4"
160    JKL:
161        - "preferences dummykey JKL dummykey BackSpace"
162        - "J K L dummykey"
163        - "j k l 5"
164    MNO:
165        - "preferences dummykey MNO dummykey BackSpace"
166        - "M N O Ö dummykey"
167        - "m n o ö 6"
168    PQRS:
169        - "preferences dummykey PQRS dummykey BackSpace"
170        - "P Q R S ß"
171        - "p q r s 7"
172    TUV:
173        - "preferences dummykey TUV dummykey BackSpace"
174        - "T U V Ü dummykey"
175        - "t u v ü 8"
176    WXYZ:
177        - "preferences dummykey WXYZ dummykey BackSpace"
178        - "W X Y Z dummykey"
179        - "w x y z 9"
180    RSYM2:
181        - "preferences dummykey RSYM2 dummykey BackSpace"
182        - "( ) ' \" ~"
183        - "[ ] { } _"
184    RSYM3:
185        - "preferences dummykey RSYM3 dummykey BackSpace"
186        - "+ - * / ="
187        - "< > ^ ° 0"
188    RSYM4:
189        - "preferences dummykey RSYM4 dummykey BackSpace"
190        - ", . ? ! ;"
191        - "\\ ´ ` · ¶"
192
193buttons:
194    # following 4 buttons use the corresponding xkb name as keysym
195    BackSpace:
196        outline: "wide"
197        icon: "edit-clear-symbolic"
198        action: erase
199    Return:
200        outline: "wide"
201        icon: "key-enter"
202        keysym: "Return"
203    Left:
204        outline: "wide"
205        label: "←"
206        keysym: "Left"
207    Right:
208        outline: "wide"
209        label: "→"
210        keysym: "Right"
211    # special button "preferences" is handled in the code
212    preferences:
213        action: "show_prefs"
214        outline: "special"
215        icon: "keyboard-mode-symbolic"
216    # space button using text tag for ideographic space
217    space:
218        outline: "default-wide"
219        label: "␣"
220        text: " "
221    # switch to number view
222    numbers:
223        action:
224            set_view: "numbers"
225        outline: "wide"
226        label: "123"
227    # switch to latin characters
228    roman:
229        action:
230            set_view: "roman"
231        outline: "wide"
232        label: "ᴀʙᴄ"
233    # toggle button with 3 different states
234    switch2roman: # switch from kana to latin characters view
235        action:
236            set_view: "roman"
237        outline: "wide"
238        label: "あᴀ₁"
239    switch2num: # switch from latin characters to numbers view
240        action:
241            set_view: "numbers"
242        outline: "wide"
243        label: "ぁA₁"
244    switch2kana: # switch from numbers to hiragana view
245        action:
246            set_view: "base"
247        outline: "wide"
248        label: "ぁᴀ1"
249    # Buttons for katakana and symbols
250    ひらがな:
251        action:
252            set_view: "base"
253        outline: "wide"
254        label: "あさ"
255    _a:
256        action:
257            locking:
258                lock_view: "_a"
259                unlock_view: "base"
260        outline: "altline"
261        label: "あ"
262    ka:
263        action:
264            locking:
265                lock_view: "ka"
266                unlock_view: "base"
267        outline: "altline"
268        label: "か"
269    sa:
270        action:
271            locking:
272                lock_view: "sa"
273                unlock_view: "base"
274        outline: "altline"
275        label: "さ"
276    ta:
277        action:
278            locking:
279                lock_view: "ta"
280                unlock_view: "base"
281        outline: "altline"
282        label: "た"
283    na:
284        action:
285            locking:
286                lock_view: "na"
287                unlock_view: "base"
288        outline: "altline"
289        label: "な"
290    ha:
291        action:
292            locking:
293                lock_view: "ha"
294                unlock_view: "base"
295        outline: "altline"
296        label: "は"
297    ma:
298        action:
299            locking:
300                lock_view: "ma"
301                unlock_view: "base"
302        outline: "altline"
303        label: "ま"
304    ya:
305        action:
306            locking:
307                lock_view: "ya"
308                unlock_view: "base"
309        outline: "altline"
310        label: "や"
311    ra:
312        action:
313            locking:
314                lock_view: "ra"
315                unlock_view: "base"
316        outline: "altline"
317        label: "ら"
318    wa:
319        action:
320            locking:
321                lock_view: "wa"
322                unlock_view: "base"
323        outline: "altline"
324        label: "わ"
325    dummykey:
326        action:
327            set_view: "base"
328        outline: "altline"
329        label: ""
330    # buttons available on different views like symbols and punct should go
331    # back to their corresponding view
332    symbols:
333        action:
334            locking:
335                lock_view: "symbols"
336                unlock_view: "base"
337        outline: "altline"
338        label: "()"
339    punct:
340        action:
341            locking:
342                lock_view: "punct"
343                unlock_view: "base"
344        outline: "altline"
345        label: "。"
346    # Buttons for katakana and symbols
347    カタカナ:
348        action:
349            set_view: "カタカナ"
350        outline: "wide"
351        label: "アサ"
352    _A:
353        action:
354            locking:
355                lock_view: "_A"
356                unlock_view: "カタカナ"
357        outline: "altline"
358        label: "ア"
359    KA:
360        action:
361            locking:
362                lock_view: "KA"
363                unlock_view: "カタカナ"
364        outline: "altline"
365        label: "カ"
366    SA:
367        action:
368            locking:
369                lock_view: "SA"
370                unlock_view: "カタカナ"
371        outline: "altline"
372        label: "サ"
373    TA:
374        action:
375            locking:
376                lock_view: "TA"
377                unlock_view: "カタカナ"
378        outline: "altline"
379        label: "タ"
380    NA:
381        action:
382            locking:
383                lock_view: "NA"
384                unlock_view: "カタカナ"
385        outline: "altline"
386        label: "ナ"
387    HA:
388        action:
389            locking:
390                lock_view: "HA"
391                unlock_view: "カタカナ"
392        outline: "altline"
393        label: "ハ"
394    MA:
395        action:
396            locking:
397                lock_view: "MA"
398                unlock_view: "カタカナ"
399        outline: "altline"
400        label: "マ"
401    YA:
402        action:
403            locking:
404                lock_view: "YA"
405                unlock_view: "カタカナ"
406        outline: "altline"
407        label: "ヤ"
408    RA:
409        action:
410            locking:
411                lock_view: "RA"
412                unlock_view: "カタカナ"
413        outline: "altline"
414        label: "ラ"
415    WA:
416        action:
417            locking:
418                lock_view: "WA"
419                unlock_view: "カタカナ"
420        outline: "altline"
421        label: "ワ"
422    DUMMYKEY:
423        action:
424            set_view: "カタカナ"
425        outline: "altline"
426        label: ""
427    SYMBOLS:
428        action:
429            locking:
430                lock_view: "symbols"
431                unlock_view: "カタカナ"
432        outline: "altline"
433        label: "()"
434    PUNCT:
435        action:
436            locking:
437                lock_view: "punct"
438                unlock_view: "カタカナ"
439        outline: "altline"
440        label: "。"
441    # Buttons for Latin characters
442    RSYM1:
443        action:
444            locking:
445                lock_view: "RSYM1"
446                unlock_view: "roman"
447        outline: "altline"
448        label: "@#"
449    ABC:
450        action:
451            locking:
452                lock_view: "ABC"
453                unlock_view: "roman"
454        outline: "altline"
455        label: "ᴀʙᴄ"
456    DEF:
457        action:
458            locking:
459                lock_view: "DEF"
460                unlock_view: "roman"
461        outline: "altline"
462        label: "ᴅᴇꜰ"
463    GHI:
464        action:
465            locking:
466                lock_view: "GHI"
467                unlock_view: "roman"
468        outline: "altline"
469        label: "ɢʜɪ"
470    JKL:
471        action:
472            locking:
473                lock_view: "JKL"
474                unlock_view: "roman"
475        outline: "altline"
476        label: "ᴊᴋʟ"
477    MNO:
478        action:
479            locking:
480                lock_view: "MNO"
481                unlock_view: "roman"
482        outline: "altline"
483        label: "ᴍɴᴏ"
484    PQRS:
485        action:
486            locking:
487                lock_view: "PQRS"
488                unlock_view: "roman"
489        outline: "altline"
490        label: "ᴘǫʀs"
491    TUV:
492        action:
493            locking:
494                lock_view: "TUV"
495                unlock_view: "roman"
496        outline: "altline"
497        label: "ᴛᴜᴠ"
498    WXYZ:
499        action:
500            locking:
501                lock_view: "WXYZ"
502                unlock_view: "roman"
503        outline: "altline"
504        label: "ᴡxʏᴢ"
505    RSYM2:
506        action:
507            locking:
508                lock_view: "RSYM2"
509                unlock_view: "roman"
510        outline: "altline"
511        label: "()"
512    RSYM3:
513        action:
514            locking:
515                lock_view: "RSYM3"
516                unlock_view: "roman"
517        outline: "altline"
518        label: "+-"
519    RSYM4:
520        action:
521            locking:
522                lock_view: "RSYM4"
523                unlock_view: "roman"
524        outline: "altline"
525        label: ",.?"
526