Keyboard firmwares for Atmel AVR and Cortex-M
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

unimap.txt 2.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. Unimap
  2. ======
  3. universal keymapping framework
  4. using logical 128-key keyboard layout independent from physical keyboad matrix
  5. unimap is actually an actionmap whose size is row:8xcol:16.
  6. /* Keymapping with 16bit action codes */
  7. extern const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS];
  8. /* Universal 128-key keyboard layout(8x16)
  9. ,-----------------------------------------------.
  10. |F13|F14|F15|F16|F17|F18|F19|F20|F21|F22|F23|F24|
  11. ,---. |-----------------------------------------------| ,-----------. ,-----------.
  12. |Esc| |F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12| |PrS|ScL|Pau| |VDn|VUp|Mut|
  13. `---' `-----------------------------------------------' `-----------' `-----------'
  14. ,-----------------------------------------------------------. ,-----------. ,---------------.
  15. | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|JPY|Bsp| |Ins|Hom|PgU| |NmL| /| *| -|
  16. |-----------------------------------------------------------| |-----------| |---------------|
  17. |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ | |Del|End|PgD| | 7| 8| 9| +|
  18. |-----------------------------------------------------------| `-----------' |---------------|
  19. |CapsL | A| S| D| F| G| H| J| K| L| ;| '| #|Retn| | 4| 5| 6|KP,|
  20. |-----------------------------------------------------------| ,---. |---------------|
  21. |Shft| <| Z| X| C| V| B| N| M| ,| ,| /| RO|Shift | |Up | | 1| 2| 3|KP=|
  22. |-----------------------------------------------------------| ,-----------. |---------------|
  23. |Ctl|Gui|Alt|MHEN| Space |HENK|KANA|Alt|Gui|App|Ctl| |Lef|Dow|Rig| | 0 | .|Ent|
  24. `-----------------------------------------------------------' `-----------' `---------------'
  25. App: Windows Menu key
  26. Gui: Windows key, Mac ⌘ key or Meta key
  27. VDn Vup Mut: Volume control
  28. < #: ISO keys(in UK legend)
  29. KP=: Keypad = for Mac
  30. KP,: Brazilian Keypad Comma
  31. JPY: Japanese Yen(¥)
  32. RO: Japanese ろ(Ro) or Brazilian /(Slash)
  33. MHEN: Japanese 無変換(Non Conversion) or Korean Hanja
  34. HENK: Japanese 変換(Conversion) or Korean Hangul/English
  35. KANA: Japanese かな(Hiragana/Katakana)
  36. https://en.wikipedia.org/wiki/Keyboard_layout#Japanese
  37. https://en.wikipedia.org/wiki/Keyboard_layout#Hangul_.28for_Korean.29
  38. */
  39. when refering to keymapping physical matrix position needed to be translated into logical one on unimap
  40. the translation is defined in unimap array
  41. row and col of unimap positon is encoded as follows
  42. position = (row << 4) | col
  43. // table translates matrix to universal keymap
  44. extern const uint8_t unimap_trans[MATRIX_ROWS][MATRIX_COLS];