UI-KeyboardLayout
view release on metacpan or search on metacpan
lib/UI/KeyboardLayout.pm view on Meta::CPAN
http://www.annoyances.org/exec/forum/winxp/r1017256194
http://web.archive.org/web/20030211001441/http://www.microsoft.com/hwdev/tech/input/w2kscan-map.asp
http://msdn.microsoft.com/en-us/windows/hardware/gg463447
http://www.annoyances.org/exec/forum/winxp/1034644655
???
http://netj.org/2004/07/windows_keymap
the free remapkey.exe utility that's in Microsoft NT / 2000 resource kit.
perl -wlne "BEGIN{$t = {T => q(), qw( X e0 Y e1 )}} print qq( $t->{$1}$2\t$3) if /^#define\s+([TXY])([0-9a-f]{2})\s+(?:_EQ|_NE)\((?:(?:\s*\w+\s*,){3})?\s*([^\W_]\w*)\s*(?:(?:,\s*\w+\s*){2})?\)\s*(?:\/\/.*)?$/i" kbd.h >ll2
then select stuff up to the first e1 key (but DECIMAL is not there T53 is DELETE??? take from MSKLC help/using/advanced/scancodes)
CapsLock as on typewriter:
http://web.archive.org/web/20120717083202/http://www.annoyances.org/exec/forum/winxp/1071197341
Scancodes visible on the low level:
http://openbsd.7691.n7.nabble.com/Patch-Support-F13-F24-on-PC-122-terminal-keyboard-td224992.html
http://www.seasip.info/Misc/1227T.html
Scancodes visible on Windows (with USB)
http://download.microsoft.com/download/1/6/1/161ba512-40e2-4cc9-843a-923143f3456c/translate.pdf
Detailed description of production of scancodes (see after C<===>), including C<0x80xx> codes (and C<0xe2> Logitech prefix):
http://www.fysh.org/~zefram/keyboard/xt_scancodes.txt
Ultra-exotic virtual keys
See
https://learn.microsoft.com/en-us/previous-versions/aa931968(v=msdn.10)
(note that C<OEM_ATTN OEM_COPY OEM_CUSEL OEM_ENLW> do not seem to have any scancodes assigned anywhereâ¦).
See also L<this discussion|https://stackoverflow.com/questions/11740958/js-what-keyboard-keys-are-specified-for-key-codes-in-intervals-146-185-193-218>.
and L<these lists and references|https://bsakatu.net/doc/virtual-key-of-windows/>.
(L<One of (industrial) keyboards with C<OEM_FJ_000>-key|https://geekhack.org/index.php?topic=60355.0> is a part of
L<a huge family|https://telcontar.net/KBK/Fujitsu/series>.
The less exotic âlargishâ keyboards are discussed in
L<"Issues with support of European(ISO)/Brazilian(ABNT2)/Japanese(JIS) physical keyboards">.
X11 XKB docs:
https://www.x.org/releases/X11R7.7/doc/kbproto/xkbproto.html
ftp://www.x.org/pub/xorg/X11R7.5/doc/input/XKB-Enhancing.html (what is caps:shift* ???)
https://wiki.gentoo.org/wiki/Keyboard_layout_switching
http://webkeys.platonix.co.il/about/use_xkb/#caps-key-types
https://apt-browse.org/browse/debian/wheezy/main/all/xkb-data/2.5.1-3/file/usr/share/X11/xkb/symbols/keypad
http://misc.openbsd.narkive.com/UK2Xlptl/shift-backspace-in-x
NoSymbol (do not change; do not make array longer; if alphabetic, may be extended to width 2)
vs VoidSymbol (undefine; may actually extend the array. Undocumented in xkbproto??? )
compare with http://kotoistus.tksoft.com/linux/void_no_symbol-en.html
overlay1=<KO7> overlay2=<KO7> How to switch to overlay: see compat/keypad
RadioGroup ???
Problems on X11:
http://www.x.org/releases/X11R7.7/doc/kbproto/xkbproto.html (definition of XKB protocol)
http://www.x.org/releases/current/doc/kbproto/xkbproto.html
http://web.archive.org/web/20050306001520/http://pascal.tsu.ru/en/xkb/
Some features are removed in libxkbcommon, which is used by many toolkits now:
https://xkbcommon.org/doc/current/md_doc_compat.html
But XKB is implemented in the server???
http://wiki.linuxquestions.org/wiki/Configuring_keyboards (current???)
http://wiki.linuxquestions.org/wiki/Accented_Characters (current???)
http://wiki.linuxquestions.org/wiki/Altering_or_Creating_Keyboard_Maps (current???)
https://help.ubuntu.com/community/ComposeKey (documents almost 1/2 of the needed stuff)
http://www.gentoo.org/doc/en/utf-8.xml (2005++ ???)
http://en.gentoo-wiki.com/wiki/X.Org/Input_drivers (2009++ HAS: How to make CapsLock change layouts)
http://www.freebsd.org/cgi/man.cgi?query=setxkbmap&sektion=1&manpath=X11R7.4
http://people.uleth.ca/~daniel.odonnell/Blog/custom-keyboard-in-linuxx11
http://shtrom.ssji.net/skb/xorg-ligatures.html (of 2008???)
http://tldp.org/HOWTO/Danish-HOWTO-2.html (of 2005???)
http://www.tux.org/~balsa/linux/deadkeys/index.html (of 1999???)
http://www.x.org/releases/X11R7.6/doc/libX11/Compose/en_US.UTF-8.html
http://cgit.freedesktop.org/xorg/proto/xproto/plain/keysymdef.h
EIGHT_LEVEL FOUR_LEVEL_ALPHABETIC FOUR_LEVEL_SEMIALPHABETIC PC_SYSRQ : see
http://cafbit.com/resource/mackeyboard/mackeyboard.xkb
./xkb in /etc/X11 /usr/local/X11 /usr/share/local/X11 /usr/share/X11
(maybe it is more productive to try
ls -d /*/*/xkb /*/*/*/xkb
?)
but what dead_diaeresis means is defined here:
Apparently, may be in /usr/X11R6/lib/X11/locale/en_US.UTF-8/Compose /usr/share/X11/locale/en_US.UTF-8/Compose
http://wiki.maemo.org/Remapping_keyboard
http://www.x.org/releases/current/doc/man/man8/mkcomposecache.8.xhtml
B<Note:> have XIM input method in GTK disables Control-Shift-u way of entering HEX unicode.
How to contribute:
http://www.freedesktop.org/wiki/Software/XKeyboardConfig/Rules
B<Note:> the problems with handling deadkeys via .Compose are that: .Compose is handled by
applications, while keymaps by server (since they may be on different machines, things can
easily get out of sync); .Compose knows nothing about the current "Keyboard group" or of
the state of CapsLock etc (therefore emulating "group switch" via composing is impossible).
JS code to add "insert these chars": google for editpage_specialchars_cyrilic, or
http://en.wikipedia.org/wiki/User:TEB728/monobook.jsx
Latin paleography
http://en.wikipedia.org/wiki/Latin_alphabet
http://tlt.its.psu.edu/suggestions/international/bylanguage/oenglish.html
http://guindo.pntic.mec.es/~jmag0042/LATIN_PALEOGRAPHY.pdf
http://www.evertype.com/standards/wynnyogh/ezhyogh.html
http://www.wordorigins.org/downloads/OELetters.doc
( run in 0.840 second using v1.01-cache-2.11-cpan-e1769b4cff6 )