vn revision bb3a541c
1bb3a541cSmrg// Vietnamese keyboard layout, somehow based on TCVN 5712:1993.
2bb3a541cSmrg// Originally by Le Hong Boi <le.hong.boi@bigfoot.com>
3154daed1Smrg// August 1999
4154daed1Smrg// Further modified by Ashley Clark <aclark@debian.org>
5154daed1Smrg// July 2000 for X 4.0
6bb3a541cSmrg// Changed accents into combining marks by Samuel Thibault <samuel.thibault@ens-lyon.org>
7c067fea9Sghen// July 2009
8154daed1Smrg
98157b447Smrgdefault partial alphanumeric_keys
10154daed1Smrgxkb_symbols "basic" {
11154daed1Smrg
12154daed1Smrg    include "us"
13154daed1Smrg
14bfd7cbc1Smrg    name[Group1]= "Vietnamese";
15154daed1Smrg
16797b363dSmrg    key <TLDE> { [	   grave, 	asciitilde	] };
17154daed1Smrg    key <AE01> { [	   abreve,	Abreve		] };
18154daed1Smrg    key <AE02> { [	   acircumflex,  Acircumflex	] };
19154daed1Smrg    key <AE03> { [	   ecircumflex,	Ecircumflex	] };
20154daed1Smrg    key <AE04> { [	   ocircumflex,	Ocircumflex	] };
21c067fea9Sghen    key <AE05> { [	   0x1000300,	percent,	dead_grave,	percent		] };
22c067fea9Sghen    key <AE06> { [	   0x1000309,	asciicircum,	dead_hook,	asciicircum	] };
23c067fea9Sghen    key <AE07> { [	   0x1000303,	ampersand,	dead_tilde,	ampersand	] };
24c067fea9Sghen    key <AE08> { [	   0x1000301,	asterisk,	dead_acute,	asterisk	] };
25c067fea9Sghen    key <AE09> { [	   0x1000323,	parenleft,	dead_belowdot,	parenleft	] };
26154daed1Smrg    key <AE10> { [	   dstroke,	Dstroke		] };
27154daed1Smrg    key <AE11> { [     minus, underscore  ]	};
28154daed1Smrg    key <AE12> { [     DongSign, plus ]	};
29154daed1Smrg
30154daed1Smrg    key <AD11> { [ uhorn,	Uhorn	] };
31154daed1Smrg    key <AD12> { [ ohorn,	Ohorn	] };
32154daed1Smrg
33154daed1Smrg    include "level3(ralt_switch)"
34154daed1Smrg};
35143081caSmrg
36143081caSmrg
37143081caSmrg// US keyboard made Vietnamese
38143081caSmrg//
39143081caSmrg// Copyright (C) 2018, Florent Gallaire Phong <f@gallai.re>
40143081caSmrg
41143081caSmrgpartial alphanumeric_keys
42143081caSmrgxkb_symbols "us" {
43143081caSmrg
44143081caSmrg    include "us(euro)"
458157b447Smrg    name[Group1]= "Vietnamese (US)";
46143081caSmrg
47143081caSmrg    key <TLDE> { [dead_grave, dead_tilde,              grave,          asciitilde ] };
48143081caSmrg    key <AE04> { [         4,     dollar,           DongSign,            currency ] }; // ₫ ¤
49143081caSmrg
50143081caSmrg    key <AD03> { [         e,          E,        ecircumflex,         Ecircumflex ] }; // ê Ê
51143081caSmrg    key <AD07> { [         u,          U,              uhorn,               Uhorn ] }; // ư Ư
52143081caSmrg    key <AD09> { [         o,          O,        ocircumflex,         Ocircumflex ] }; // ô Ô
53143081caSmrg    key <AD10> { [         p,          P,              ohorn,               Ohorn ] }; // ơ Ơ
54143081caSmrg
55143081caSmrg    key <AC01> { [         a,          A,        acircumflex,         Acircumflex ] }; // â Â
56143081caSmrg    key <AC02> { [         s,          S,             abreve,              Abreve ] }; // ă Ă
57143081caSmrg    key <AC03> { [         d,          D,            dstroke,             Dstroke ] }; // đ Đ
58143081caSmrg    key <AC11> { [dead_acute,   quotedbl,         apostrophe ] };
59143081caSmrg
60143081caSmrg    key <AB09> { [dead_belowdot, greater,             period ] };
61143081caSmrg    key <AB10> { [ dead_hook,   question,              slash ] };
62143081caSmrg};
63143081caSmrg
64143081caSmrg// French keyboard made Vietnamese
65143081caSmrg//
66143081caSmrg// Copyright (C) 2018, Florent Gallaire Phong <f@gallai.re>
67143081caSmrg
68143081caSmrgpartial alphanumeric_keys
69143081caSmrgxkb_symbols "fr" {
70143081caSmrg
71143081caSmrg    include "fr(basic)"
72143081caSmrg
738157b447Smrg    name[Group1]="Vietnamese (French)";
74143081caSmrg
75143081caSmrg    key <AE02> { [dead_tilde,          2,             eacute,          asciitilde ] };
76143081caSmrg    key <AE04> { [dead_acute,          4,         apostrophe,           braceleft ] };
77143081caSmrg    key <AE07> { [dead_grave,          7,             egrave,               grave ] };
78143081caSmrg
79143081caSmrg    key <AD01> { [         a,          A,             abreve,              Abreve ] }; // ă Ă
80143081caSmrg    key <AD07> { [         u,          U,              uhorn,               Uhorn ] }; // ư Ư
81143081caSmrg    key <AD09> { [         o,          O,              ohorn,               Ohorn ] }; // ơ Ơ
82143081caSmrg    key <AD12> { [    dollar,   sterling,           DongSign,            currency ] }; // ₫ ¤
83143081caSmrg
84143081caSmrg    key <AC03> { [         d,          D,            dstroke,             Dstroke ] }; // đ Đ
85143081caSmrg
86143081caSmrg    key <AB07> { [ dead_hook,   question,          comma ] };
87143081caSmrg    key <AB08> { [dead_belowdot,  period,      semicolon ] };
88143081caSmrg};
89143081caSmrg
90143081caSmrg
91143081caSmrg// EXTRAS:
92143081caSmrg
93143081caSmrg// Vietnamese AÐERTY (60s typewriters adaptation)
94143081caSmrg//
95143081caSmrg// Copyright (C) 2018, Florent Gallaire Phong <f@gallai.re>
96143081caSmrg
97143081caSmrgpartial alphanumeric_keys
98143081caSmrgxkb_symbols "aderty" {
99143081caSmrg
100143081caSmrg    include "fr(basic)"
101143081caSmrg
102143081caSmrg    name[Group1]="Vietnamese (AÐERTY)";
103143081caSmrg
104143081caSmrg    key <AE02> { [dead_tilde,          2,             eacute,          asciitilde ] };
105143081caSmrg    key <AE04> { [dead_acute,          4,         apostrophe,           braceleft ] };
106143081caSmrg    key <AE07> { [dead_grave,          7,             egrave,               grave ] };
107143081caSmrg
108143081caSmrg    key <AD02> { [   dstroke,    Dstroke,                  z,                   Z ] }; // đ Đ
109143081caSmrg    key <AD12> { [    dollar,   sterling,           DongSign,            currency ] }; // ₫ ¤
110143081caSmrg
111143081caSmrg    key <AC04> { [     uhorn,      Uhorn,                  f,                   F ] }; // ư Ư
112143081caSmrg    key <AC07> { [     ohorn,      Ohorn,                  j,                   J ] }; // ơ Ơ
113143081caSmrg
114143081caSmrg    key <AB01> { [    abreve,     Abreve,                  w,                   W ] }; // ă Ă
115143081caSmrg    key <AB07> { [ dead_hook,   question,          comma ] };
116143081caSmrg    key <AB08> { [dead_belowdot,  period,      semicolon ] };
117143081caSmrg};
118143081caSmrg
119143081caSmrg// Vietnamese QĐERTY (AĐERTY qwertification)
120143081caSmrg//
121143081caSmrg// Copyright (C) 2018, Florent Gallaire Phong <f@gallai.re>
122143081caSmrg
123143081caSmrgpartial alphanumeric_keys
124143081caSmrgxkb_symbols "qderty" {
125143081caSmrg
126143081caSmrg    include "us(euro)"
127143081caSmrg    name[Group1]= "Vietnamese (QĐERTY)";
128143081caSmrg
129143081caSmrg    key <TLDE> { [dead_grave, dead_tilde,              grave,          asciitilde ] };
130143081caSmrg    key <AE04> { [         4,     dollar,           DongSign,            currency ] }; // ₫ ¤
131143081caSmrg
132143081caSmrg    key <AD02> { [   dstroke,    Dstroke,                  w,                   W ] }; // đ Đ
133143081caSmrg    key <AD03> { [         e,          E,        ecircumflex,         Ecircumflex ] }; // ê Ê
134143081caSmrg    key <AD09> { [         o,          O,        ocircumflex,         Ocircumflex ] }; // ô Ô
135143081caSmrg
136143081caSmrg    key <AC01> { [         a,          A,        acircumflex,         Acircumflex ] }; // â Â
137143081caSmrg    key <AC04> { [     uhorn,      Uhorn,                  f,                   F ] }; // ư Ư
138143081caSmrg    key <AC07> { [     ohorn,      Ohorn,                  j,                   J ] }; // ơ Ơ
139143081caSmrg    key <AC11> { [dead_acute,   quotedbl,         apostrophe ] };
140143081caSmrg
141143081caSmrg    key <AB01> { [    abreve,     Abreve,                  z,                   Z ] }; // ă Ă
142143081caSmrg    key <AB09> { [dead_belowdot, greater,             period ] };
143143081caSmrg    key <AB10> { [ dead_hook,   question,              slash ] };
144143081caSmrg};
145