logo

oasis-root

Compiled tree of Oasis Linux based on own branch at <https://hacktivis.me/git/oasis/> git clone https://anongit.hacktivis.me/git/oasis-root.git

typematrix (21188B)


  1. // -*- indent-tabs-mode: nil -*-
  2. // Created by Frédéric Boiteux <fboiteux (at) free (dot) fr>
  3. // and Gildas Cotomale <gildas (dot) cotomale (at) gmail (dot) com>
  4. // Note : the special/multimedia keys (Calc, WWW, Desktop…) have a keycode
  5. // <I[XX]>, found in definition file /usr/share/X11/xkb/keycodes/evdev.
  6. // Fn = <I120>;
  7. // Calc = <I148>;
  8. // WWW = <I158>;
  9. // CycleWindows = <I162>;
  10. // Mail = <I163>;
  11. // PlayPause = <I172>;
  12. // Desktop = <I243>;
  13. xkb_geometry "tm2020" {
  14. description = "TypeMatrix EZ-Reach 2020";
  15. // Keyboard total size :
  16. width = 308;
  17. height = 152;
  18. // Background / foreground colours
  19. baseColor = "white";
  20. labelColor = "black";
  21. // Key shapes: base key = 16 mm each side
  22. shape "NORM" { cornerRadius=1, { [16, 16] }, { [1, 1], [15, 15] }};
  23. shape "ALPL" { cornerRadius=1, { [24.25, 16] }, { [1, 1], [23, 15] }};
  24. shape "DHAL" { cornerRadius=1, { [24.25, 32.5] }, { [1, 1], [23, 31.5] }};
  25. shape "FUNC" { cornerRadius=1, { [16, 12] }, { [2.5, 0], [13.5, 10] }};
  26. shape "FUNL" { cornerRadius=1, { [24.25, 12] }, { [2.5, 0], [21.5, 10] }};
  27. shape "SPCE" { cornerRadius=1, { [57, 26] }, { [2.5, 1], [54.5, 24] }};
  28. shape "DBLA" { cornerRadius=1, { [32.5, 16] }, { [1, 1], [31, 15] }};
  29. shape "LED" { cornerRadius=2, { [4, 4] }};
  30. shape "DECO" { cornerRadius=1, { [3, 18] }};
  31. section "Function" {
  32. left = 4;
  33. top = 24;
  34. key.gap = 0.5;
  35. key.color = "grey10";
  36. key.shape = "FUNC";
  37. row {
  38. keys { { <ESC>, "FUNL" },
  39. <FK01>, <FK02>, <FK03>, <FK04>, <FK05> };
  40. key.color = "grey20";
  41. keys { { <NMLK>, "FUNL" } };
  42. };
  43. row {
  44. left = 150;
  45. key.color = "red";
  46. keys { { <DELE>, "FUNL" } };
  47. key.color = "grey10";
  48. keys { <FK06>, <FK07>, <FK08>, <FK09>, <FK10>, <FK11>,
  49. { <FK12>, "FUNL" } };
  50. };
  51. };
  52. section "Alpha" {
  53. left = 4;
  54. top = 36.5;
  55. key.gap = 0.5;
  56. key.color = "grey10";
  57. key.shape = "NORM";
  58. row {
  59. top = 0;
  60. keys { { <TLDE>, "ALPL" },
  61. <AE01>, <AE02>, <AE03>, <AE04>, <AE05>,
  62. { <BKSP>, "DHAL" } };
  63. };
  64. row {
  65. top = 16.5;
  66. keys { { <TAB>, "ALPL" },
  67. <AD01>, <AD02>, <AD03>, <AD04>, <AD05> };
  68. };
  69. row {
  70. top = 33;
  71. keys { { <LFSH>, "DHAL" },
  72. <AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
  73. { <TAB>, "DHAL" } };
  74. };
  75. row {
  76. top = 49.5;
  77. left = 24.5;
  78. keys { <AB01>, <AB02>, <AB03>, <AB04>, <AB05> };
  79. };
  80. row {
  81. top = 0;
  82. left = 150;
  83. keys { { <BKSP>, "DHAL" },
  84. <AE06>, <AE07>, <AE08> };
  85. key.color = "grey20";
  86. keys { <AE09>, <AE10>, <AE11>, { <AE12>, "ALPL" } };
  87. };
  88. row {
  89. top = 16.5;
  90. left = 174.5;
  91. keys { <AD06>, <AD07>, <AD08> };
  92. key.color = "grey20";
  93. keys { <AD09>, <AD10>, <AD11>, { <AD12>, "ALPL" } };
  94. };
  95. row {
  96. top = 33;
  97. left = 150;
  98. keys { { <RTRN>, "DHAL" },
  99. <AC06>, <AC07>, <AC08> };
  100. key.color = "grey20";
  101. keys { <AC09>, <AC10>, <AC11>, { <RTSH>, "DHAL" } };
  102. };
  103. row {
  104. top = 49.5;
  105. left = 174.5;
  106. keys { <AB06>, <AB07>, <AB08> };
  107. key.color = "grey20";
  108. keys { <AB09>, <AB10>, <BKSL> };
  109. };
  110. };
  111. section "Control" {
  112. left = 4;
  113. top = 102.5;
  114. key.gap = 0.5;
  115. key.color = "grey10";
  116. key.shape = "ALPL";
  117. row {
  118. top = 0;
  119. keys { <LCTL>, <LALT>, <CAPS> };
  120. keys { { <SPCE>, "SPCE"} };
  121. };
  122. row {
  123. top = 16.5;
  124. keys { <I120>, <LWIN>, <MENU> };
  125. };
  126. row {
  127. top = 0;
  128. left = 150;
  129. key.shape = "NORM";
  130. keys { { <SPCE>, "SPCE"}, <RALT> };
  131. key.color = "grey20";
  132. keys { <RCTL>, <UP>, <I162>, { <KPEN>, "DHAL" } };
  133. };
  134. row {
  135. top = 16.5;
  136. left = 207.5;
  137. key.shape = "NORM";
  138. key.color = "grey20";
  139. keys { { <LEFT>, "DBLA" }, <DOWN>, <RGHT> };
  140. };
  141. };
  142. // Leds
  143. indicator.top = 12;
  144. indicator.onColor = "green";
  145. indicator.offColor = "grey10";
  146. indicator.shape = "LED";
  147. indicator "Num Lock" { left = 252; };
  148. indicator "Caps Lock" { left = 266; };
  149. indicator "Misc" { left = 280; };
  150. text.top= 5;
  151. text.color= "black";
  152. text "NumLockLabel" { left= 252; text="1"; };
  153. text "CapsLockLabel" { left= 266; text="A"; };
  154. text "MiscLabel" { left= 280; text="D"; };
  155. text "Logo" { left = 29; top = 10; text="TypeMatrix™"; };
  156. // Other decorations: drawings
  157. solid "rainure1" { shape = "DECO"; top = 1; left = 110; color = "grey10";};
  158. solid "rainure2" { shape = "DECO"; top = 1; left = 115; color = "grey10";};
  159. solid "rainure3" { shape = "DECO"; top = 1; left = 120; color = "grey10";};
  160. solid "rainure4" { shape = "DECO"; top = 1; left = 125; color = "grey10";};
  161. solid "rainure5" { shape = "DECO"; top = 1; left = 130; color = "grey10";};
  162. solid "rainure6" { shape = "DECO"; top = 1; left = 135; color = "grey10";};
  163. solid "rainure7" { shape = "DECO"; top = 1; left = 140; color = "grey10";};
  164. solid "rainure8" { shape = "DECO"; top = 1; left = 145; color = "grey10";};
  165. solid "rainure9" { shape = "DECO"; top = 1; left = 150; color = "grey10";};
  166. solid "rainure10" { shape = "DECO"; top = 1; left = 155; color = "grey10";};
  167. solid "rainure11" { shape = "DECO"; top = 1; left = 160; color = "grey10";};
  168. solid "rainure12" { shape = "DECO"; top = 1; left = 165; color = "grey10";};
  169. solid "rainure13" { shape = "DECO"; top = 1; left = 170; color = "grey10";};
  170. }; // geometry tm2020
  171. xkb_geometry "tm2030_shape" {
  172. // Keyboard total size
  173. width = 320;
  174. height = 130;
  175. // Background / foreground colours
  176. baseColor = "white";
  177. labelColor = "black";
  178. // Key shapes: base key = 20 mm each side
  179. shape "NORM" { cornerRadius=1, { [18, 18] }, { [1.5, 1.5], [16.5, 14] } };
  180. shape "FUNC" { cornerRadius=1, { [18, 12] }, { [2.5, 0], [15.5, 10] } };
  181. shape "LFSH" { cornerRadius=1, { [18, 36.5] }, { [2.5, 0], [15.5, 30] } };
  182. shape "ALT1" { cornerRadius=1, { [27.5, 18] }, { [2.5, 0], [23.5, 14] } };
  183. shape "BKSP" { cornerRadius=1, { [18, 30.5] }, { [1.5, 1.5], [16.5, 29] } };
  184. shape "SPCE" { cornerRadius=1, { [92, 25] }, { [1.5, 1.5], [90.5, 22] } };
  185. shape "LED" { cornerRadius=2, { [4, 4] } };
  186. shape "PAN1" { cornerRadius=1, { [27, 126.5] } };
  187. shape "PAN2" { cornerRadius=1, { [92, 13] } };
  188. // Other decorations: panels
  189. solid "panneau1" {
  190. shape = "PAN1";
  191. left = 0;
  192. top = 0;
  193. color = "grey40";
  194. };
  195. solid "panneau2" {
  196. shape = "PAN2";
  197. left = 101.5;
  198. top = 113.5;
  199. color = "grey40";
  200. };
  201. // Leds: they must be put after panels, otherwise the panels overwrite them
  202. indicator.left = 6;
  203. indicator.onColor = "green";
  204. indicator.offColor = "grey10";
  205. indicator.shape = "LED";
  206. indicator "Num Lock" { top = 11 ; };
  207. indicator "Caps Lock" { top = 27.5; };
  208. indicator "Scroll Lock" { top = 44 ; };
  209. text.left = 12;
  210. text.color = "black";
  211. text "NumLockLabel" { top = 11; text="num"; };
  212. text "CapsLockLabel" { top = 27.5; text="caps"; };
  213. text "SrollLockLabel" { top = 44; text="scroll"; };
  214. }; // geometry tm2030_shape
  215. xkb_geometry "tm2030_MiscDiod_dvk" {
  216. text "ModeLabel" { left = 12; top = 58; color = "black"; text="Dvorak"; };
  217. };
  218. xkb_geometry "tm2030_MiscDiod_102" {
  219. text "ModeLabel" { left = 12; top = 58; color = "black"; text="102"; };
  220. };
  221. xkb_geometry "tm2030_MiscDiod_106" {
  222. text "ModeLabel" { left = 12; top = 58; color = "black"; text="106"; };
  223. };
  224. xkb_geometry "tm2030_MiscDiod_off" {
  225. indicator "Misc" { left = 6; top = 60.5; shape = "LED";
  226. offColor = "grey10"; onColor = "grey10"; };
  227. };
  228. xkb_geometry "tm2030_MiscDiod_on" {
  229. indicator "Misc" { left = 6; top = 60.5; shape = "LED";
  230. offColor = "green"; onColor = "green"; };
  231. };
  232. xkb_geometry "tm2030USB_func" {
  233. section "Function" {
  234. left = 27;
  235. top = 1.5;
  236. key.gap = 0.5;
  237. key.color = "grey30";
  238. key.shape = "FUNC";
  239. row {
  240. keys { <ESC>, <FK01>, <FK02>, <FK03>, <FK04>, <FK05> };
  241. };
  242. row {
  243. left = 129.5;
  244. keys { <FK06>, <FK07>, <FK08>, <FK09>, <FK10>, <FK11>,
  245. <FK12>, <NMLK> };
  246. };
  247. };
  248. }; // geometry tm2030USB_func
  249. xkb_geometry "tm2030USB_alpha" {
  250. section "Alpha" {
  251. left = 27;
  252. top = 14;
  253. key.gap = 0.5;
  254. key.color = "grey10";
  255. key.shape = "NORM";
  256. row {
  257. top = 0;
  258. keys { <TLDE>, <AE01>, <AE02>, <AE03>, <AE04>, <AE05> };
  259. };
  260. row {
  261. top = 18.5;
  262. keys { <TAB>, <AD01>, <AD02>, <AD03>, <AD04>, <AD05> };
  263. };
  264. row {
  265. top = 37;
  266. keys { { <LFSH>, "LFSH" }, <AC01>, <AC02>, <AC03>, <AC04>, <AC05> };
  267. };
  268. row {
  269. top = 55.5;
  270. left = 18.5;
  271. keys { <AB01>, <AB02>, <AB03>, <AB04>, <AB05> };
  272. };
  273. row {
  274. top = 0;
  275. left = 129.5;
  276. keys { <AE06>, <AE07>, <AE08>, <AE09>, <AE10>, <AE11>, <AE12>, <I148> };
  277. };
  278. row {
  279. top = 18.5;
  280. left = 129.5;
  281. keys { <AD06>, <AD07>, <AD08>, <AD09>, <AD10>, <AD11>, <AD12>, <I163> };
  282. };
  283. row {
  284. top = 37;
  285. left = 129.5;
  286. keys { <AC06>, <AC07>, <AC08>, <AC09>, <AC10>, <AC11>, { <RTSH>, "LFSH" }, <CAPS> };
  287. };
  288. row {
  289. top = 55.5;
  290. left = 129.5;
  291. keys { <AB06>, <AB07>, <AB08>, <AB09>, <AB10>, <BKSL> };
  292. };
  293. row {
  294. top = 55.5;
  295. left = 259;
  296. keys { <I158> };
  297. };
  298. row {
  299. top = 74;
  300. left = 74;
  301. keys { { <SPCE>, "SPCE" } };
  302. };
  303. };
  304. }; // geometry tm2030USB_alpha
  305. xkb_geometry "tm2030USB_ctrl" {
  306. section "Control" {
  307. left = 27;
  308. top = 0;
  309. key.gap = 0.5;
  310. key.color = "grey30";
  311. key.shape = "NORM";
  312. row {
  313. top = 88;
  314. keys { <LCTL>, <I172>, <MENU>, <I162> };
  315. };
  316. row {
  317. top = 106.5;
  318. keys { <I120>, { <LWIN>, "ALT1" }, { <LALT>, "ALT1" } };
  319. };
  320. row {
  321. top = 88;
  322. left = 166.5;
  323. keys { <I243>, <HOME>, <UP>, <END>, { <RCTL>, "LFSH"}, <PGUP> };
  324. };
  325. row {
  326. top = 106.5;
  327. left = 166.5;
  328. keys { <RALT>, <LEFT>, <DOWN>, <RGHT> };
  329. };
  330. row {
  331. top = 106.5;
  332. left = 259;
  333. keys { <PGDN> };
  334. };
  335. row {
  336. top = 1;
  337. left = 111.5;
  338. vertical = true;
  339. keys { <DELE>, { <BKSP>, "BKSP" }, { <RTRN>, "LFSH" } };
  340. };
  341. };
  342. }; // geometry tm2030USB_ctrl
  343. xkb_geometry "tm2030PS2" {
  344. include "typematrix(tm2030_shape)"
  345. include "typematrix(tm2030_MiscDiod_dvk)"
  346. include "typematrix(tm2030_MiscDiod_off)"
  347. description = "TypeMatrix EZ-Reach 2030 PS2";
  348. section "Function" {
  349. left = 27;
  350. top = 1.5;
  351. key.gap = 0.5;
  352. key.color = "grey10";
  353. key.shape = "FUNC";
  354. row {
  355. key.color = "grey30";
  356. keys { <ESC> };
  357. };
  358. row {
  359. left = 18.5;
  360. keys { <FK01>, <FK02>, <FK03>, <FK04> };
  361. };
  362. row {
  363. left = 92.5;
  364. key.color = "grey30";
  365. keys { <FK05> };
  366. };
  367. row {
  368. left = 129.5;
  369. key.color = "grey30";
  370. keys { <FK06>, <FK07>, <FK08> };
  371. };
  372. row {
  373. left = 185;
  374. keys { <FK09>, <FK10>, <FK11>, <FK12> };
  375. };
  376. row {
  377. left = 259;
  378. key.color = "grey30";
  379. keys { <NMLK> };
  380. };
  381. };
  382. section "Alpha" {
  383. left = 27;
  384. top = 14;
  385. key.gap = 0.5;
  386. key.color = "grey10";
  387. key.shape = "NORM";
  388. row {
  389. top = 0;
  390. keys { <TLDE>, <AE01>, <AE02>, <AE03>, <AE04>, <AE05> };
  391. };
  392. row {
  393. top = 18.5;
  394. keys { <TAB>, <AD01>, <AD02>, <AD03>, <AD04>, <AD05> };
  395. };
  396. row {
  397. top = 37;
  398. keys { { <LFSH>, "LFSH" }, <AC01>, <AC02>, <AC03>, <AC04>, <AC05> };
  399. };
  400. row {
  401. top = 55.5;
  402. left = 18.5;
  403. keys { <AB01>, <AB02>, <AB03>, <AB04>, <AB05> };
  404. };
  405. row {
  406. top = 0;
  407. left = 129.5;
  408. keys { <AE06>, <AE07>, <AE08>, <AE09>, <AE10>, <AE11>, <AE12>, <I120> };
  409. };
  410. row {
  411. top = 18.5;
  412. left = 129.5;
  413. keys { <AD06>, <AD07>, <AD08> };
  414. };
  415. row {
  416. top = 18.5;
  417. left = 185;
  418. key.color = "grey30";
  419. keys { <AD09>, <AD10>, <AD11>, <AD12>};
  420. };
  421. row {
  422. top = 18.5;
  423. left = 259;
  424. keys { <BKSP> };
  425. };
  426. row {
  427. top = 37;
  428. left = 129.5;
  429. keys { <AC06>, <AC07>, <AC08> };
  430. };
  431. row {
  432. top = 37;
  433. left = 185;
  434. key.color = "grey30";
  435. keys { <AC09>, <AC10>, <AC11>, { <RTSH>, "LFSH" },
  436. {<DELE>, key.color="red"} };
  437. };
  438. row {
  439. top = 55.5;
  440. left = 129.5;
  441. keys { <AB06>, <AB07>, <AB08> };
  442. };
  443. row {
  444. top = 55.5;
  445. left = 185;
  446. key.color = "grey30";
  447. keys { <AB09>, <AB10>, <BKSL> };
  448. };
  449. row {
  450. top = 55.5;
  451. left = 259;
  452. keys { <INS> };
  453. };
  454. row {
  455. top = 74;
  456. left = 74;
  457. keys { { <SPCE>, "SPCE" } };
  458. };
  459. };
  460. section "Control" {
  461. left = 27;
  462. top = 0;
  463. key.gap = 0.5;
  464. key.color = "grey10";
  465. key.shape = "NORM";
  466. row {
  467. top = 88;
  468. keys { <I120>, <LWIN>, <MENU>, <I162> };
  469. };
  470. row {
  471. top = 106.5;
  472. keys { <LCTL>, { <LALT>, "ALT1" }, { <LTSH>, "ALT1" } };
  473. };
  474. row {
  475. top = 88;
  476. left = 166.5;
  477. keys { <PGUP> };
  478. };
  479. row {
  480. top = 88;
  481. left = 185;
  482. key.color = "grey30";
  483. keys { <HOME>, <UP>, <END>, { <KPEN>, "LFSH"} };
  484. };
  485. row {
  486. top = 88;
  487. left = 259;
  488. keys { <RCTL> };
  489. };
  490. row {
  491. top = 106.5;
  492. left = 166.5;
  493. keys { <PGDN> };
  494. };
  495. row {
  496. top = 106.5;
  497. left = 185;
  498. key.color = "grey30";
  499. keys { <LEFT>, <DOWN>, <RGHT> };
  500. };
  501. row {
  502. top = 106.5;
  503. left = 259;
  504. keys { <RALT> };
  505. };
  506. row {
  507. top = 1;
  508. left = 111.5;
  509. key.color = "grey10";
  510. vertical = true;
  511. keys { <CAPS>, { <BKSP>, "BKSP" }, { <RTRN>, "LFSH" } };
  512. };
  513. };
  514. }; // geometry tm2030PS2
  515. xkb_geometry "tm2030USB" {
  516. include "typematrix(tm2030_shape)"
  517. include "typematrix(tm2030_MiscDiod_102)"
  518. include "typematrix(tm2030_MiscDiod_off)"
  519. description = "TypeMatrix EZ-Reach 2030 USB";
  520. include "typematrix(tm2030USB_func)"
  521. include "typematrix(tm2030USB_alpha)"
  522. include "typematrix(tm2030USB_ctrl)"
  523. }; // geometry tm2030USB
  524. // European 102/105 keys mode.
  525. // Same as the standard keyboard, except for one key: Play becomes LSGT.
  526. xkb_geometry "tm2030USB-102" {
  527. include "typematrix(tm2030_shape)"
  528. include "typematrix(tm2030_MiscDiod_102)"
  529. include "typematrix(tm2030_MiscDiod_on)"
  530. description = "TypeMatrix EZ-Reach 2030 USB (102/105:EU mode)";
  531. include "typematrix(tm2030USB_func)"
  532. include "typematrix(tm2030USB_alpha)"
  533. section "Control" {
  534. left = 27;
  535. top = 0;
  536. key.gap = 0.5;
  537. key.color = "grey30";
  538. key.shape = "NORM";
  539. row {
  540. top = 88;
  541. keys { <LCTL>, <LSGT>, <MENU>, <I162> };
  542. };
  543. row {
  544. top = 106.5;
  545. keys { <I120>, { <LWIN>, "ALT1" }, { <LALT>, "ALT1" } };
  546. };
  547. row {
  548. top = 88;
  549. left = 166.5;
  550. keys { <I243>, <HOME>, <UP>, <END>, { <RCTL>, "LFSH"}, <PGUP> };
  551. };
  552. row {
  553. top = 106.5;
  554. left = 166.5;
  555. keys { <RALT>, <LEFT>, <DOWN>, <RGHT> };
  556. };
  557. row {
  558. top = 106.5;
  559. left = 259;
  560. keys { <PGDN> };
  561. };
  562. row {
  563. top = 1;
  564. left = 111.5;
  565. vertical = true;
  566. keys { <DELE>, { <BKSP>, "BKSP" }, { <RTRN>, "LFSH" } };
  567. };
  568. };
  569. }; // geometry tm2030USB-102
  570. // Japan / Korean 106 keys mode.
  571. // Same as the standard keyboard, except for the following keys:
  572. // – <TLDE> is replaced by <HZTG>
  573. // – WWW key becomes <HKTG>
  574. // — Calc key becomes <AE13>
  575. // — <BKSL> key becomes <AB11>
  576. // — and Mail key becomes <BKSL>
  577. // About control keys:
  578. // NFER/MEHU and XFER/KANJ: TMx keeps LWIN (and RWIN if it happens to exist).
  579. // HKTG/HIRA: TMx keeps MENU/COMP, but locates this key in alpha section (see above).
  580. xkb_geometry "tm2030USB-106" {
  581. include "typematrix(tm2030_shape)"
  582. include "typematrix(tm2030_MiscDiod_106)"
  583. include "typematrix(tm2030_MiscDiod_on)"
  584. description = "TypeMatrix EZ-Reach 2030 USB (106:JP mode)";
  585. include "typematrix(tm2030USB_func)"
  586. section "Alpha" {
  587. left = 27;
  588. top = 14;
  589. key.gap = 0.5;
  590. key.color = "grey10";
  591. key.shape = "NORM";
  592. row {
  593. top = 0;
  594. keys { <HZTG>, <AE01>, <AE02>, <AE03>, <AE04>, <AE05> };
  595. };
  596. row {
  597. top = 18.5;
  598. keys { <TAB>, <AD01>, <AD02>, <AD03>, <AD04>, <AD05> };
  599. };
  600. row {
  601. top = 37;
  602. keys { { <LFSH>, "LFSH" }, <AC01>, <AC02>, <AC03>, <AC04>, <AC05> };
  603. };
  604. row {
  605. top = 55.5;
  606. left = 18.5;
  607. keys { <AB01>, <AB02>, <AB03>, <AB04>, <AB05> };
  608. };
  609. row {
  610. top = 0;
  611. left = 129.5;
  612. keys { <AE06>, <AE07>, <AE08>, <AE09>, <AE10>, <AE11>, <AE12>, <AE13> };
  613. };
  614. row {
  615. top = 18.5;
  616. left = 129.5;
  617. keys { <AD06>, <AD07>, <AD08>, <AD09>, <AD10>, <AD11>, <AD12>, <BKSL> };
  618. };
  619. row {
  620. top = 37;
  621. left = 129.5;
  622. keys { <AC06>, <AC07>, <AC08>, <AC09>, <AC10>, <AC11>, { <RTSH>, "LFSH" }, <CAPS> };
  623. };
  624. row {
  625. top = 55.5;
  626. left = 129.5;
  627. keys { <AB06>, <AB07>, <AB08>, <AB09>, <AB10>, <AB11> };
  628. };
  629. row {
  630. top = 55.5;
  631. left = 259;
  632. keys { <HKTG> };
  633. };
  634. row {
  635. top = 74;
  636. left = 74;
  637. keys { { <SPCE>, "SPCE" } };
  638. };
  639. };
  640. section "Control" {
  641. left = 27;
  642. top = 0;
  643. key.gap = 0.5;
  644. key.color = "grey30";
  645. key.shape = "NORM";
  646. row {
  647. top = 88;
  648. keys { <LCTL>, <I172>, <MENU>, <I162> };
  649. };
  650. row {
  651. top = 106.5;
  652. keys { <I120>, { <LWIN>, "ALT1" }, { <LALT>, "ALT1" } };
  653. };
  654. row {
  655. top = 88;
  656. left = 166.5;
  657. keys { <I243>, <HOME>, <UP>, <END>, { <RCTL>, "LFSH"}, <PGUP> };
  658. };
  659. row {
  660. top = 106.5;
  661. left = 166.5;
  662. keys { <RALT>, <LEFT>, <DOWN>, <RGHT> };
  663. };
  664. row {
  665. top = 106.5;
  666. left = 259;
  667. keys { <PGDN> };
  668. };
  669. row {
  670. top = 1;
  671. left = 111.5;
  672. vertical = true;
  673. keys { <DELE>, { <BKSP>, "BKSP" }, { <RTRN>, "LFSH" } };
  674. };
  675. };
  676. }; // geometry tm2030USB-106