├── po ├── .null ├── da.po ├── .gitignore └── update-potfiles ├── COPYING ├── README ├── AUTHORS ├── NEWS ├── ChangeLog ├── CONTRIBUTING.md ├── data ├── keymaps │ ├── i386 │ │ ├── qwertz │ │ │ ├── sr-latin.map │ │ │ ├── cz.map │ │ │ ├── hu.map │ │ │ ├── sk-qwertz.map │ │ │ ├── cz-us-qwertz.map │ │ │ ├── de_CH-latin1.map │ │ │ ├── sk-prog-qwertz.map │ │ │ ├── de-latin1-nodeadkeys.map │ │ │ └── de-mobii.map │ │ ├── olpc │ │ │ └── pt.map │ │ ├── qwerty │ │ │ ├── cz.map │ │ │ ├── gr.map │ │ │ ├── lt.map │ │ │ ├── mk.map │ │ │ ├── gr-pc.map │ │ │ ├── lt.l4.map │ │ │ ├── ro_win.map │ │ │ ├── br-abnt.map │ │ │ ├── cz-lat2.map │ │ │ ├── es-cp850.map │ │ │ ├── hypermap.m4 │ │ │ ├── se-lat6.map │ │ │ ├── bg_bds-utf8.map │ │ │ ├── bg_pho-utf8.map │ │ │ ├── cz-cp1250.map │ │ │ ├── defkeymap.map │ │ │ ├── il-phonetic.map │ │ │ ├── mk-cp1251.map │ │ │ ├── no-latin1.doc │ │ │ ├── pt-latin1.map │ │ │ ├── pt-latin9.map │ │ │ ├── sk-qwerty.map │ │ │ ├── us-acentos.map │ │ │ ├── bg_bds-cp1251.map │ │ │ ├── bg_pho-cp1251.map │ │ │ ├── cz-lat2-prog.map │ │ │ ├── is-latin1-us.map │ │ │ ├── br-latin1-abnt2.map │ │ │ ├── defkeymap_V1.0.map │ │ │ ├── sk-prog-qwerty.map │ │ │ ├── us1.map │ │ │ ├── et-nodeadkeys.map │ │ │ ├── se-fi-lat6.map │ │ │ ├── se-fi-ir209.map │ │ │ └── pc110.map │ │ ├── include │ │ │ ├── compose.inc │ │ │ ├── backspace.map │ │ │ ├── windowkeys.map │ │ │ ├── linux-with-two-alt-keys.inc │ │ │ ├── ctrl.map │ │ │ ├── euro.map │ │ │ ├── euro1.inc │ │ │ ├── euro1.map │ │ │ ├── euro2.map │ │ │ ├── applkey.map │ │ │ ├── azerty-layout.inc │ │ │ ├── qwerty-layout.inc │ │ │ ├── qwertz-layout.inc │ │ │ └── linux-with-alt-and-altgr.inc │ │ ├── azerty │ │ │ ├── fr-latin9.map │ │ │ └── wangbe.map │ │ ├── dvorak │ │ │ ├── dvorak-de.map │ │ │ └── ANSI-dvorak.map │ │ ├── carpalx │ │ │ └── carpalx-full.map │ │ └── README │ ├── sun │ │ ├── sun-pl.map │ │ ├── sunt4-es.map │ │ ├── sunt6-uk.map │ │ ├── sunt5-cz-us.map │ │ ├── sunt5-us-cz.map │ │ ├── sun-pl-altgraph.map │ │ └── sunt5-de-latin1.map │ ├── atari │ │ ├── atari-de.map │ │ └── atari-se.map │ ├── mac │ │ ├── all │ │ │ ├── mac-fr.map │ │ │ ├── mac-dvorak.map │ │ │ ├── mac-template.map │ │ │ ├── apple-a1243-sv-fn-reverse.map │ │ │ ├── mac-de-latin1-nodeadkeys.map │ │ │ ├── apple-internal-0x0253-sv.map │ │ │ ├── apple-internal-0x0253-sv-fn-reverse.map │ │ │ ├── apple-a1243-sv.map │ │ │ └── mac-pt-latin1.map │ │ └── include │ │ │ ├── mac-euro.map │ │ │ ├── mac-euro2.map │ │ │ ├── mac-azerty-layout.inc │ │ │ ├── mac-qwerty-layout.inc │ │ │ └── mac-qwertz-layout.inc │ └── include │ │ ├── compose.8859_7 │ │ ├── compose.8859_8 │ │ ├── compose.latin │ │ ├── compose.latin1 │ │ ├── compose.latin2 │ │ ├── compose.latin3 │ │ ├── compose.latin4 │ │ └── vim-compose.latin1 ├── unimaps │ ├── empty.uni │ ├── koi8u.uni │ ├── README │ ├── cp437.00-1f.uni │ ├── iso01.uni │ └── iso09.uni ├── consolefonts │ ├── 161.cp │ ├── 162.cp │ ├── 163.cp │ ├── 164.cp │ ├── 165.cp │ ├── 737.cp │ ├── 880.cp │ ├── 928.cp │ ├── 972.cp │ ├── alt-8x8 │ ├── t.fnt │ ├── Mik_8x16 │ ├── alt-8x14 │ ├── alt-8x16 │ ├── altc-8x16 │ ├── arm8.fnt │ ├── cp857.08 │ ├── cp857.14 │ ├── cp857.16 │ ├── koi8r-8x8 │ ├── t850b.fnt │ ├── Goha-12.psfu │ ├── Goha-14.psfu │ ├── Goha-16.psfu │ ├── aply16.psf │ ├── cp1250.psfu │ ├── koi8-14.psf │ ├── koi8c-8x16 │ ├── koi8r-8x14 │ ├── koi8r-8x16 │ ├── lat0-08.psfu │ ├── lat0-10.psfu │ ├── lat0-12.psfu │ ├── lat0-14.psfu │ ├── lat0-16.psfu │ ├── lat1-08.psfu │ ├── lat1-10.psfu │ ├── lat1-12.psfu │ ├── lat1-14.psfu │ ├── lat1-16.psfu │ ├── lat2-08.psfu │ ├── lat2-10.psfu │ ├── lat2-12.psfu │ ├── lat2-14.psfu │ ├── lat2-16.psfu │ ├── lat4-08.psfu │ ├── lat4-10.psfu │ ├── lat4-12.psfu │ ├── lat4-14.psfu │ ├── lat4-16.psfu │ ├── lat4-19.psfu │ ├── lat5-12.psfu │ ├── lat5-14.psfu │ ├── lat5-16.psfu │ ├── lat7-14.psfu │ ├── lat7a-16.psf │ ├── lat9-08.psf │ ├── lat9-10.psf │ ├── lat9-12.psf │ ├── lat9-14.psf │ ├── lat9-16.psf │ ├── tcvn8x16.psf │ ├── Cyr_a8x14.psfu │ ├── Cyr_a8x16.psfu │ ├── Cyr_a8x8.psfu │ ├── UniCyr_8x8.psf │ ├── cp850-8x8.psfu │ ├── cp865-8x8.psfu │ ├── cp866-8x14.psf │ ├── cp866-8x16.psf │ ├── cp866-8x8.psf │ ├── cybercafe.fnt │ ├── cyr-sun16.psfu │ ├── drdos8x14.psfu │ ├── drdos8x16.psfu │ ├── drdos8x6.psfu │ ├── drdos8x8.psfu │ ├── eurlatgr.psfu │ ├── iso07u-16.psfu │ ├── koi8r.8x8.psfu │ ├── koi8u_8x8.psfu │ ├── lat2a-16.psfu │ ├── lat4-16+.psfu │ ├── lat4a-08.psfu │ ├── lat4a-10.psfu │ ├── lat4a-12.psfu │ ├── lat4a-14.psfu │ ├── lat4a-16+.psfu │ ├── lat4a-16.psfu │ ├── lat4a-19.psfu │ ├── lat7a-14.psfu │ ├── lat9u-08.psfu │ ├── lat9u-10.psfu │ ├── lat9u-12.psfu │ ├── lat9u-14.psfu │ ├── lat9u-16.psfu │ ├── lat9v-08.psfu │ ├── lat9v-10.psfu │ ├── lat9v-12.psfu │ ├── lat9v-14.psfu │ ├── lat9v-16.psfu │ ├── lat9w-08.psfu │ ├── lat9w-10.psfu │ ├── lat9w-12.psfu │ ├── lat9w-14.psfu │ ├── lat9w-16.psfu │ ├── sun12x22.psfu │ ├── UniCyr_8x14.psf │ ├── UniCyr_8x16.psf │ ├── cp850-8x14.psfu │ ├── cp850-8x16.psfu │ ├── cp865-8x14.psfu │ ├── cp865-8x16.psfu │ ├── default8x16.psfu │ ├── default8x9.psfu │ ├── gr737a-8x8.psfu │ ├── gr737a-9x14.psfu │ ├── gr737a-9x16.psfu │ ├── gr737b-8x11.psfu │ ├── gr737c-8x14.psfu │ ├── gr737c-8x16.psfu │ ├── gr737c-8x6.psfu │ ├── gr737c-8x7.psfu │ ├── gr737c-8x8.psfu │ ├── gr737d-8x16.psfu │ ├── gr928-9x14.psfu │ ├── gr928-9x16.psfu │ ├── gr928a-8x14.psfu │ ├── gr928a-8x16.psfu │ ├── gr928b-8x14.psfu │ ├── gr928b-8x16.psfu │ ├── iso01-12x22.psfu │ ├── iso02-12x22.psfu │ ├── koi8u_8x14.psfu │ ├── koi8u_8x16.psfu │ ├── lat0-sun16.psfu │ ├── lat2-sun16.psfu │ ├── ruscii_8x16.psfu │ ├── ruscii_8x8.psfu │ ├── solar24x32.psfu │ ├── GohaClassic-12.psfu │ ├── GohaClassic-14.psfu │ ├── GohaClassic-16.psfu │ ├── LatArCyrHeb-08.psfu │ ├── LatArCyrHeb-14.psfu │ ├── LatArCyrHeb-16.psfu │ ├── LatArCyrHeb-19.psfu │ ├── LatGrkCyr-8x16.psfu │ ├── LatKaCyrHeb-14.psfu │ ├── UniCyrExt_8x16.psf │ ├── viscii10-8x16.psfu │ ├── Lat2-Terminus16.psfu │ ├── LatArCyrHeb-16+.psfu │ ├── LatGrkCyr-12x22.psfu │ ├── gr928-8x16-thin.psfu │ ├── greek-polytonic.psfu │ ├── latarcyrheb-sun16.psfu │ ├── latarcyrheb-sun32.psfu │ ├── pancyrillic.f16.psfu │ ├── LatCyrHebKa-16_GIA.psfu │ ├── iso01.08 │ ├── iso01.14 │ ├── iso01.16 │ ├── iso02.08 │ ├── iso02.14 │ ├── iso02.16 │ ├── iso03.08 │ ├── iso03.14 │ ├── iso03.16 │ ├── iso04.08 │ ├── iso04.14 │ ├── iso04.16 │ ├── iso05.08 │ ├── iso05.14 │ ├── iso05.16 │ ├── iso06.08 │ ├── iso06.14 │ ├── iso06.16 │ ├── iso07.14 │ ├── iso07.16 │ ├── iso08.08 │ ├── iso08.14 │ ├── iso08.16 │ ├── iso09.08 │ ├── iso09.14 │ ├── iso09.16 │ ├── iso10.08 │ ├── iso10.14 │ ├── iso10.16 │ ├── gr737b-9x16-medieval.psfu │ ├── README.Hebrew │ ├── README.12x22 │ ├── ERRORS │ ├── README.drdos │ ├── README.Arabic │ ├── README.cp1250 │ ├── README.psfu │ ├── README.lat7 │ ├── README.lat0 │ ├── README.Greek │ ├── README.Ethiopic │ └── README.cybercafe ├── consoletrans │ └── latin2u.trans └── partialfonts │ ├── ascii.20-7f.08 │ ├── ascii.20-7f.14 │ ├── ascii.20-7f.16 │ ├── cp437.00-1f.08 │ ├── cp437.00-1f.14 │ ├── cp437.00-1f.16 │ ├── none.00-17.08 │ ├── none.00-17.14 │ ├── none.00-17.16 │ ├── 8859-1.a0-ff.08 │ ├── 8859-1.a0-ff.14 │ ├── 8859-1.a0-ff.16 │ ├── 8859-10.a0-ff.08 │ ├── 8859-10.a0-ff.14 │ ├── 8859-10.a0-ff.16 │ ├── 8859-2.a0-ff.08 │ ├── 8859-2.a0-ff.14 │ ├── 8859-2.a0-ff.16 │ ├── 8859-3.a0-ff.08 │ ├── 8859-3.a0-ff.14 │ ├── 8859-3.a0-ff.16 │ ├── 8859-4.a0-ff.08 │ ├── 8859-4.a0-ff.14 │ ├── 8859-4.a0-ff.16 │ ├── 8859-5.a0-ff.08 │ ├── 8859-5.a0-ff.14 │ ├── 8859-5.a0-ff.16 │ ├── 8859-6.a0-ff.08 │ ├── 8859-6.a0-ff.14 │ ├── 8859-6.a0-ff.16 │ ├── 8859-7.a0-ff.08 │ ├── 8859-7.a0-ff.14 │ ├── 8859-7.a0-ff.16 │ ├── 8859-8.a0-ff.08 │ ├── 8859-8.a0-ff.14 │ ├── 8859-8.a0-ff.16 │ ├── 8859-9.a0-ff.08 │ ├── 8859-9.a0-ff.14 │ └── 8859-9.a0-ff.16 ├── docs ├── Makefile.am ├── man │ ├── man5 │ │ └── Makefile.am │ ├── man1misc │ │ ├── Makefile.am │ │ └── splitfont.1 │ ├── Makefile.am │ ├── man8misc │ │ ├── Makefile.am │ │ ├── setvesablank.8 │ │ ├── vcstime.8 │ │ ├── setlogcons.8 │ │ └── clrunimap.8 │ ├── man8 │ │ ├── Makefile.am │ │ ├── getkeycodes.8 │ │ └── showconsolefont.8 │ └── man1 │ │ ├── Makefile.am │ │ ├── unicode_stop.1 │ │ ├── psfgettable.1 │ │ ├── psfstriptable.1 │ │ ├── chvt.1 │ │ └── deallocvt.1 ├── doc │ ├── pine │ │ ├── Ppkb_layout2.png │ │ ├── PP_KB_Front-1024x576.jpg │ │ └── README.md │ ├── dvorak │ │ └── ANSI-dvorak.gif │ ├── keysyms.h.info │ └── font-formats │ │ └── font-formats-5.html ├── reference │ ├── Makefile.am │ └── libkeymap │ │ └── Makefile.am └── process │ ├── README.md │ └── howto-compilation.md ├── tests ├── data │ ├── e2e │ │ ├── kbdinfo-test01.stdout │ │ ├── kbdinfo-test02.stdout │ │ ├── kbdinfo-test03.stdout │ │ ├── kbdinfo-test04.stdout │ │ ├── kbd_mode-test03.calls │ │ ├── kbd_mode-test04.calls │ │ ├── kbdinfo-test01.calls │ │ ├── kbdinfo-test02.calls │ │ ├── kbdinfo-test03.calls │ │ ├── kbdinfo-test04.calls │ │ ├── getunimap-test01.calls │ │ ├── kbd_mode-test03.stderr │ │ ├── clrunimap-test01.calls │ │ ├── kbd_mode-test01.calls │ │ ├── kbd_mode-test02.calls │ │ ├── kbd_mode-test05.calls │ │ ├── kbd_mode-test06.calls │ │ ├── setvtrgb-test01.calls │ │ ├── setvtrgb-test02.calls │ │ └── setvtrgb-test03.calls │ ├── findfile │ │ ├── test_0 │ │ │ └── keymaps │ │ │ │ ├── test0.map │ │ │ │ ├── i386 │ │ │ │ ├── qwertz │ │ │ │ │ ├── test2 │ │ │ │ │ ├── test2.kmap │ │ │ │ │ └── test2.map │ │ │ │ ├── qwerty │ │ │ │ │ ├── test0.map │ │ │ │ │ ├── test3.map │ │ │ │ │ ├── test3.map.bz2 │ │ │ │ │ ├── test3.map.gz │ │ │ │ │ ├── test3.map.xz │ │ │ │ │ └── test3.map.zst │ │ │ │ └── include │ │ │ │ │ ├── qwerty-layout.inc │ │ │ │ │ └── qwertz-layout.inc │ │ │ │ └── include │ │ │ │ ├── compose.latin1 │ │ │ │ └── compose.latin2 │ │ └── test_1 │ │ │ └── consolefonts │ │ │ ├── simple-0.psf.gz │ │ │ ├── simple-1.psf.gz │ │ │ └── simple-2.psf.gz │ ├── libkeymap │ │ ├── include41.map │ │ ├── keymap7.map │ │ ├── keymap1.map │ │ ├── include40.map │ │ ├── keymap6.map │ │ ├── keymap4.map │ │ ├── charset-keymap0.map │ │ ├── keymap0.map │ │ └── keymap3.map │ ├── libcommon │ │ ├── footer.txt │ │ └── options1.txt │ ├── bkeymap-2.0.4 │ │ ├── cz.map.bin │ │ ├── us.map.bin │ │ └── pt-latin9.map.bin │ ├── keymaps │ │ ├── i386 │ │ │ ├── qwerty │ │ │ │ ├── cz.map │ │ │ │ └── pt-latin9.map │ │ │ ├── qwertz │ │ │ │ └── cz.map │ │ │ └── include │ │ │ │ ├── compose.inc │ │ │ │ ├── euro1.map │ │ │ │ ├── qwerty-layout.inc │ │ │ │ └── linux-with-alt-and-altgr.inc │ │ └── include │ │ │ ├── compose.latin │ │ │ └── compose.latin1 │ ├── consolefonts │ │ └── UniCyrExt_8x16.psf │ ├── setvtrgb │ │ ├── vtrgb.ubuntu │ │ └── vtrgb.ubuntu.hex │ ├── alt-is-meta │ │ ├── alt-is-meta.output │ │ └── alt-is-meta.map │ └── dumpkeys-fulltable │ │ └── qwerty-layout.map ├── e2e-memcheck-clrunimap.at ├── e2e-misc-data-keymaps.at ├── syscall-filter.sed ├── e2e-syscalls-clrunimap.at ├── e2e-memcheck-loadunimap.at ├── libcommon │ ├── libcommon-test02.c │ ├── Makefile.am │ ├── libcommon-test03.c │ └── libcommon-test01.c ├── strace.sh ├── e2e-memcheck-setfont.at ├── check.sh ├── e2e-misc-psfxtable.at ├── configure.sh ├── ci │ ├── vm-scp.sh │ ├── vm-ssh.sh │ ├── qemu-run-build-and-tests.sh │ └── qemu-install-dependencies.sh ├── testsuite.at ├── libkbdfile │ ├── libkbdfile-test01.c │ ├── libkbdfile-test10.c │ ├── libkbdfile-test09.c │ ├── Makefile.am │ ├── libkbdfile-test02.c │ ├── libkbdfile-test04.c │ ├── libkbdfile-test05.c │ ├── libkbdfile-test07.c │ ├── libkbdfile-test06.c │ ├── libkbdfile-test12.c │ ├── libkbdfile-test11.c │ └── libkbdfile-test08.c ├── e2e-memcheck-dumpkeys.at ├── valgrind.sh ├── unittest.at ├── e2e-memcheck-getunimap.at ├── e2e-misc-dumpkeys.at ├── helpers │ ├── Makefile.am │ ├── libkeymap-bkeymap.c │ ├── libkeymap-mktable.c │ └── libkeymap-showmaps.c ├── libkeymap │ ├── libkeymap-test16.c │ ├── libkeymap-test04.c │ ├── libkeymap-test14.c │ ├── libkeymap-test18.c │ ├── libkeymap-test15.c │ ├── libkeymap-test12.c │ └── Makefile.am ├── e2e-memcheck-loadkeys.at ├── e2e-memcheck-setvtrgb.at ├── libcommon.at ├── check-data-keymaps.sh ├── e2e-syscalls-getunimap.at ├── e2e-syscalls-loadunimap.at └── e2e-syscalls-setfont.at ├── contrib ├── font2psf ├── vtrgb.ubuntu ├── vtrgb.ubuntu.hex ├── showconsolefont ├── fix_bs_and_del ├── vtrgb-dec2hex.sh ├── psf.magic ├── sti.c ├── psfsplit └── dropkeymaps.c ├── src ├── vlock │ ├── .gitignore │ ├── vlock.pamd │ └── Makefile.am ├── include │ ├── compat │ │ ├── linux-limits.h │ │ └── linux-keyboard.h │ ├── kfont.h │ ├── kbdfile.h │ ├── keymap.h │ ├── kbd │ │ └── keymap │ │ │ └── logging.h │ └── array_size.h ├── libkeymap │ ├── syms.sami.h │ ├── libkeymap.pc.gen │ ├── modifiers.c │ ├── modifiers.h │ └── ksyms.h ├── libcommon │ ├── Makefile.am │ ├── libcommon.h │ ├── error.c │ └── version.c ├── libkfont │ ├── libkfont.pc.gen │ ├── utf8.h │ └── libkfont.map ├── README.cad ├── unicode_stop ├── README.init ├── README.openvt ├── totextmode.c ├── libkbdfile │ └── elf-note.c └── setvesablank.c └── m4 ├── ax_file_escapes.m4 ├── ax_add_am_macro_static.m4 ├── ax_ac_print_to_file.m4 └── ax_ac_append_to_file.m4 /po/.null: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /COPYING: -------------------------------------------------------------------------------- 1 | LICENSE -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | README.md -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- 1 | See CREDITS file. 2 | -------------------------------------------------------------------------------- /NEWS: -------------------------------------------------------------------------------- 1 | See version control history. 2 | -------------------------------------------------------------------------------- /ChangeLog: -------------------------------------------------------------------------------- 1 | See version control history. 2 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | docs/process/howto-contribute.md -------------------------------------------------------------------------------- /data/keymaps/i386/qwertz/sr-latin.map: -------------------------------------------------------------------------------- 1 | slovene.map -------------------------------------------------------------------------------- /data/unimaps/empty.uni: -------------------------------------------------------------------------------- 1 | # empty Unicode table 2 | -------------------------------------------------------------------------------- /docs/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = man reference 2 | -------------------------------------------------------------------------------- /tests/data/e2e/kbdinfo-test01.stdout: -------------------------------------------------------------------------------- 1 | text 2 | -------------------------------------------------------------------------------- /tests/data/e2e/kbdinfo-test02.stdout: -------------------------------------------------------------------------------- 1 | unicode 2 | -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/test0.map: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/data/e2e/kbdinfo-test03.stdout: -------------------------------------------------------------------------------- 1 | escprefix 2 | -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/qwertz/test2: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/data/libkeymap/include41.map: -------------------------------------------------------------------------------- 1 | keycode 18 = e 2 | -------------------------------------------------------------------------------- /tests/data/libkeymap/keymap7.map: -------------------------------------------------------------------------------- 1 | compose as usual 2 | -------------------------------------------------------------------------------- /docs/man/man5/Makefile.am: -------------------------------------------------------------------------------- 1 | dist_man_MANS = keymaps.5 2 | -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/qwerty/test0.map: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/qwertz/test2.kmap: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/qwertz/test2.map: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/include/compose.latin1: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/include/compose.latin2: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/data/libkeymap/keymap1.map: -------------------------------------------------------------------------------- 1 | keycode 16 = q Q 2 | -------------------------------------------------------------------------------- /po/da.po: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/po/da.po -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/include/qwerty-layout.inc: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/include/qwertz-layout.inc: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/qwerty/test3.map: -------------------------------------------------------------------------------- 1 | qwerty 2 | -------------------------------------------------------------------------------- /tests/data/libcommon/footer.txt: -------------------------------------------------------------------------------- 1 | 2 | Report bugs to authors. 3 | 4 | -------------------------------------------------------------------------------- /contrib/font2psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/contrib/font2psf -------------------------------------------------------------------------------- /src/vlock/.gitignore: -------------------------------------------------------------------------------- 1 | vlock 2 | *.[do] 3 | .deps 4 | Makefile 5 | Makefile.in 6 | -------------------------------------------------------------------------------- /tests/data/e2e/kbdinfo-test04.stdout: -------------------------------------------------------------------------------- 1 | scrolllock:off numlock:off capslock:off 2 | -------------------------------------------------------------------------------- /docs/man/man1misc/Makefile.am: -------------------------------------------------------------------------------- 1 | dist_man_MANS = codepage.1 screendump.1 splitfont.1 2 | -------------------------------------------------------------------------------- /tests/data/libkeymap/include40.map: -------------------------------------------------------------------------------- 1 | keycode 17 = w 2 | 3 | include "include41.map" 4 | -------------------------------------------------------------------------------- /tests/data/libkeymap/keymap6.map: -------------------------------------------------------------------------------- 1 | string F1 = "FUNCTION1" 2 | string F2 = "FUNCTION2" 3 | -------------------------------------------------------------------------------- /data/unimaps/koi8u.uni: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/unimaps/koi8u.uni -------------------------------------------------------------------------------- /src/include/compat/linux-limits.h: -------------------------------------------------------------------------------- 1 | #ifndef NAME_MAX 2 | #define NAME_MAX 255 3 | #endif 4 | -------------------------------------------------------------------------------- /tests/data/libkeymap/keymap4.map: -------------------------------------------------------------------------------- 1 | keycode 16 = q 2 | 3 | include "include40.map" 4 | 5 | -------------------------------------------------------------------------------- /data/consolefonts/161.cp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/161.cp -------------------------------------------------------------------------------- /data/consolefonts/162.cp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/162.cp -------------------------------------------------------------------------------- /data/consolefonts/163.cp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/163.cp -------------------------------------------------------------------------------- /data/consolefonts/164.cp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/164.cp -------------------------------------------------------------------------------- /data/consolefonts/165.cp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/165.cp -------------------------------------------------------------------------------- /data/consolefonts/737.cp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/737.cp -------------------------------------------------------------------------------- /data/consolefonts/880.cp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/880.cp -------------------------------------------------------------------------------- /data/consolefonts/928.cp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/928.cp -------------------------------------------------------------------------------- /data/consolefonts/972.cp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/972.cp -------------------------------------------------------------------------------- /data/consolefonts/alt-8x8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/alt-8x8 -------------------------------------------------------------------------------- /data/consolefonts/t.fnt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/t.fnt -------------------------------------------------------------------------------- /src/libkeymap/syms.sami.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/src/libkeymap/syms.sami.h -------------------------------------------------------------------------------- /data/consolefonts/Mik_8x16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/Mik_8x16 -------------------------------------------------------------------------------- /data/consolefonts/alt-8x14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/alt-8x14 -------------------------------------------------------------------------------- /data/consolefonts/alt-8x16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/alt-8x16 -------------------------------------------------------------------------------- /data/consolefonts/altc-8x16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/altc-8x16 -------------------------------------------------------------------------------- /data/consolefonts/arm8.fnt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/arm8.fnt -------------------------------------------------------------------------------- /data/consolefonts/cp857.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp857.08 -------------------------------------------------------------------------------- /data/consolefonts/cp857.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp857.14 -------------------------------------------------------------------------------- /data/consolefonts/cp857.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp857.16 -------------------------------------------------------------------------------- /data/consolefonts/koi8r-8x8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/koi8r-8x8 -------------------------------------------------------------------------------- /data/consolefonts/t850b.fnt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/t850b.fnt -------------------------------------------------------------------------------- /data/keymaps/sun/sun-pl.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/sun/sun-pl.map -------------------------------------------------------------------------------- /data/consolefonts/Goha-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/Goha-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/Goha-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/Goha-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/Goha-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/Goha-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/aply16.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/aply16.psf -------------------------------------------------------------------------------- /data/consolefonts/cp1250.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp1250.psfu -------------------------------------------------------------------------------- /data/consolefonts/koi8-14.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/koi8-14.psf -------------------------------------------------------------------------------- /data/consolefonts/koi8c-8x16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/koi8c-8x16 -------------------------------------------------------------------------------- /data/consolefonts/koi8r-8x14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/koi8r-8x14 -------------------------------------------------------------------------------- /data/consolefonts/koi8r-8x16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/koi8r-8x16 -------------------------------------------------------------------------------- /data/consolefonts/lat0-08.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat0-08.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat0-10.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat0-10.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat0-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat0-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat0-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat0-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat0-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat0-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat1-08.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat1-08.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat1-10.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat1-10.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat1-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat1-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat1-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat1-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat1-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat1-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat2-08.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat2-08.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat2-10.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat2-10.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat2-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat2-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat2-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat2-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat2-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat2-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4-08.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4-08.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4-10.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4-10.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4-19.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4-19.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat5-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat5-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat5-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat5-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat5-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat5-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat7-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat7-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat7a-16.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat7a-16.psf -------------------------------------------------------------------------------- /data/consolefonts/lat9-08.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9-08.psf -------------------------------------------------------------------------------- /data/consolefonts/lat9-10.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9-10.psf -------------------------------------------------------------------------------- /data/consolefonts/lat9-12.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9-12.psf -------------------------------------------------------------------------------- /data/consolefonts/lat9-14.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9-14.psf -------------------------------------------------------------------------------- /data/consolefonts/lat9-16.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9-16.psf -------------------------------------------------------------------------------- /data/consolefonts/tcvn8x16.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/tcvn8x16.psf -------------------------------------------------------------------------------- /data/keymaps/i386/olpc/pt.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/olpc/pt.map -------------------------------------------------------------------------------- /data/keymaps/sun/sunt4-es.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/sun/sunt4-es.map -------------------------------------------------------------------------------- /data/keymaps/sun/sunt6-uk.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/sun/sunt6-uk.map -------------------------------------------------------------------------------- /docs/doc/pine/Ppkb_layout2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/docs/doc/pine/Ppkb_layout2.png -------------------------------------------------------------------------------- /data/consolefonts/Cyr_a8x14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/Cyr_a8x14.psfu -------------------------------------------------------------------------------- /data/consolefonts/Cyr_a8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/Cyr_a8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/Cyr_a8x8.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/Cyr_a8x8.psfu -------------------------------------------------------------------------------- /data/consolefonts/UniCyr_8x8.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/UniCyr_8x8.psf -------------------------------------------------------------------------------- /data/consolefonts/cp850-8x8.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp850-8x8.psfu -------------------------------------------------------------------------------- /data/consolefonts/cp865-8x8.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp865-8x8.psfu -------------------------------------------------------------------------------- /data/consolefonts/cp866-8x14.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp866-8x14.psf -------------------------------------------------------------------------------- /data/consolefonts/cp866-8x16.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp866-8x16.psf -------------------------------------------------------------------------------- /data/consolefonts/cp866-8x8.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp866-8x8.psf -------------------------------------------------------------------------------- /data/consolefonts/cybercafe.fnt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cybercafe.fnt -------------------------------------------------------------------------------- /data/consolefonts/cyr-sun16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cyr-sun16.psfu -------------------------------------------------------------------------------- /data/consolefonts/drdos8x14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/drdos8x14.psfu -------------------------------------------------------------------------------- /data/consolefonts/drdos8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/drdos8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/drdos8x6.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/drdos8x6.psfu -------------------------------------------------------------------------------- /data/consolefonts/drdos8x8.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/drdos8x8.psfu -------------------------------------------------------------------------------- /data/consolefonts/eurlatgr.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/eurlatgr.psfu -------------------------------------------------------------------------------- /data/consolefonts/iso07u-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/iso07u-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/koi8r.8x8.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/koi8r.8x8.psfu -------------------------------------------------------------------------------- /data/consolefonts/koi8u_8x8.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/koi8u_8x8.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat2a-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat2a-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4-16+.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4-16+.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4a-08.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4a-08.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4a-10.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4a-10.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4a-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4a-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4a-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4a-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4a-16+.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4a-16+.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4a-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4a-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat4a-19.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat4a-19.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat7a-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat7a-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9u-08.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9u-08.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9u-10.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9u-10.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9u-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9u-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9u-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9u-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9u-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9u-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9v-08.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9v-08.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9v-10.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9v-10.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9v-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9v-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9v-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9v-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9v-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9v-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9w-08.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9w-08.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9w-10.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9w-10.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9w-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9w-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9w-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9w-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat9w-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat9w-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/sun12x22.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/sun12x22.psfu -------------------------------------------------------------------------------- /data/consoletrans/latin2u.trans: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consoletrans/latin2u.trans -------------------------------------------------------------------------------- /data/keymaps/atari/atari-de.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/atari/atari-de.map -------------------------------------------------------------------------------- /data/keymaps/atari/atari-se.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/atari/atari-se.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/cz.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/cz.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/gr.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/gr.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/lt.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/lt.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/mk.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/mk.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwertz/cz.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwertz/cz.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwertz/hu.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwertz/hu.map -------------------------------------------------------------------------------- /data/keymaps/mac/all/mac-fr.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/mac/all/mac-fr.map -------------------------------------------------------------------------------- /data/keymaps/sun/sunt5-cz-us.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/sun/sunt5-cz-us.map -------------------------------------------------------------------------------- /data/keymaps/sun/sunt5-us-cz.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/sun/sunt5-us-cz.map -------------------------------------------------------------------------------- /data/partialfonts/ascii.20-7f.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/ascii.20-7f.08 -------------------------------------------------------------------------------- /data/partialfonts/ascii.20-7f.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/ascii.20-7f.14 -------------------------------------------------------------------------------- /data/partialfonts/ascii.20-7f.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/ascii.20-7f.16 -------------------------------------------------------------------------------- /data/partialfonts/cp437.00-1f.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/cp437.00-1f.08 -------------------------------------------------------------------------------- /data/partialfonts/cp437.00-1f.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/cp437.00-1f.14 -------------------------------------------------------------------------------- /data/partialfonts/cp437.00-1f.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/cp437.00-1f.16 -------------------------------------------------------------------------------- /data/partialfonts/none.00-17.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/none.00-17.08 -------------------------------------------------------------------------------- /data/partialfonts/none.00-17.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/none.00-17.14 -------------------------------------------------------------------------------- /data/partialfonts/none.00-17.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/none.00-17.16 -------------------------------------------------------------------------------- /docs/doc/dvorak/ANSI-dvorak.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/docs/doc/dvorak/ANSI-dvorak.gif -------------------------------------------------------------------------------- /docs/reference/Makefile.am: -------------------------------------------------------------------------------- 1 | if BUILD_LIBKEYMAP 2 | if HAVE_DOXYGEN 3 | SUBDIRS = libkeymap 4 | endif 5 | endif 6 | -------------------------------------------------------------------------------- /data/consolefonts/UniCyr_8x14.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/UniCyr_8x14.psf -------------------------------------------------------------------------------- /data/consolefonts/UniCyr_8x16.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/UniCyr_8x16.psf -------------------------------------------------------------------------------- /data/consolefonts/cp850-8x14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp850-8x14.psfu -------------------------------------------------------------------------------- /data/consolefonts/cp850-8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp850-8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/cp865-8x14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp865-8x14.psfu -------------------------------------------------------------------------------- /data/consolefonts/cp865-8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/cp865-8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/default8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/default8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/default8x9.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/default8x9.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr737a-8x8.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737a-8x8.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr737a-9x14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737a-9x14.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr737a-9x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737a-9x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr737b-8x11.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737b-8x11.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr737c-8x14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737c-8x14.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr737c-8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737c-8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr737c-8x6.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737c-8x6.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr737c-8x7.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737c-8x7.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr737c-8x8.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737c-8x8.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr737d-8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737d-8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr928-9x14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr928-9x14.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr928-9x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr928-9x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr928a-8x14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr928a-8x14.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr928a-8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr928a-8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr928b-8x14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr928b-8x14.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr928b-8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr928b-8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/iso01-12x22.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/iso01-12x22.psfu -------------------------------------------------------------------------------- /data/consolefonts/iso02-12x22.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/iso02-12x22.psfu -------------------------------------------------------------------------------- /data/consolefonts/koi8u_8x14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/koi8u_8x14.psfu -------------------------------------------------------------------------------- /data/consolefonts/koi8u_8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/koi8u_8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat0-sun16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat0-sun16.psfu -------------------------------------------------------------------------------- /data/consolefonts/lat2-sun16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/lat2-sun16.psfu -------------------------------------------------------------------------------- /data/consolefonts/ruscii_8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/ruscii_8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/ruscii_8x8.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/ruscii_8x8.psfu -------------------------------------------------------------------------------- /data/consolefonts/solar24x32.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/solar24x32.psfu -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/gr-pc.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/gr-pc.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/lt.l4.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/lt.l4.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/ro_win.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/ro_win.map -------------------------------------------------------------------------------- /data/keymaps/include/compose.8859_7: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/include/compose.8859_7 -------------------------------------------------------------------------------- /data/keymaps/include/compose.8859_8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/include/compose.8859_8 -------------------------------------------------------------------------------- /data/keymaps/include/compose.latin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/include/compose.latin -------------------------------------------------------------------------------- /data/keymaps/include/compose.latin1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/include/compose.latin1 -------------------------------------------------------------------------------- /data/keymaps/include/compose.latin2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/include/compose.latin2 -------------------------------------------------------------------------------- /data/keymaps/include/compose.latin3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/include/compose.latin3 -------------------------------------------------------------------------------- /data/keymaps/include/compose.latin4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/include/compose.latin4 -------------------------------------------------------------------------------- /data/keymaps/mac/all/mac-dvorak.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/mac/all/mac-dvorak.map -------------------------------------------------------------------------------- /data/partialfonts/8859-1.a0-ff.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-1.a0-ff.08 -------------------------------------------------------------------------------- /data/partialfonts/8859-1.a0-ff.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-1.a0-ff.14 -------------------------------------------------------------------------------- /data/partialfonts/8859-1.a0-ff.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-1.a0-ff.16 -------------------------------------------------------------------------------- /data/partialfonts/8859-10.a0-ff.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-10.a0-ff.08 -------------------------------------------------------------------------------- /data/partialfonts/8859-10.a0-ff.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-10.a0-ff.14 -------------------------------------------------------------------------------- /data/partialfonts/8859-10.a0-ff.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-10.a0-ff.16 -------------------------------------------------------------------------------- /data/partialfonts/8859-2.a0-ff.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-2.a0-ff.08 -------------------------------------------------------------------------------- /data/partialfonts/8859-2.a0-ff.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-2.a0-ff.14 -------------------------------------------------------------------------------- /data/partialfonts/8859-2.a0-ff.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-2.a0-ff.16 -------------------------------------------------------------------------------- /data/partialfonts/8859-3.a0-ff.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-3.a0-ff.08 -------------------------------------------------------------------------------- /data/partialfonts/8859-3.a0-ff.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-3.a0-ff.14 -------------------------------------------------------------------------------- /data/partialfonts/8859-3.a0-ff.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-3.a0-ff.16 -------------------------------------------------------------------------------- /data/partialfonts/8859-4.a0-ff.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-4.a0-ff.08 -------------------------------------------------------------------------------- /data/partialfonts/8859-4.a0-ff.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-4.a0-ff.14 -------------------------------------------------------------------------------- /data/partialfonts/8859-4.a0-ff.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-4.a0-ff.16 -------------------------------------------------------------------------------- /data/partialfonts/8859-5.a0-ff.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-5.a0-ff.08 -------------------------------------------------------------------------------- /data/partialfonts/8859-5.a0-ff.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-5.a0-ff.14 -------------------------------------------------------------------------------- /data/partialfonts/8859-5.a0-ff.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-5.a0-ff.16 -------------------------------------------------------------------------------- /data/partialfonts/8859-6.a0-ff.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-6.a0-ff.08 -------------------------------------------------------------------------------- /data/partialfonts/8859-6.a0-ff.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-6.a0-ff.14 -------------------------------------------------------------------------------- /data/partialfonts/8859-6.a0-ff.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-6.a0-ff.16 -------------------------------------------------------------------------------- /data/partialfonts/8859-7.a0-ff.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-7.a0-ff.08 -------------------------------------------------------------------------------- /data/partialfonts/8859-7.a0-ff.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-7.a0-ff.14 -------------------------------------------------------------------------------- /data/partialfonts/8859-7.a0-ff.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-7.a0-ff.16 -------------------------------------------------------------------------------- /data/partialfonts/8859-8.a0-ff.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-8.a0-ff.08 -------------------------------------------------------------------------------- /data/partialfonts/8859-8.a0-ff.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-8.a0-ff.14 -------------------------------------------------------------------------------- /data/partialfonts/8859-8.a0-ff.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-8.a0-ff.16 -------------------------------------------------------------------------------- /data/partialfonts/8859-9.a0-ff.08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-9.a0-ff.08 -------------------------------------------------------------------------------- /data/partialfonts/8859-9.a0-ff.14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-9.a0-ff.14 -------------------------------------------------------------------------------- /data/partialfonts/8859-9.a0-ff.16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/partialfonts/8859-9.a0-ff.16 -------------------------------------------------------------------------------- /docs/man/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = man1 man5 man8 2 | if OPTIONAL_PROGS 3 | SUBDIRS += man1misc man8misc 4 | endif 5 | -------------------------------------------------------------------------------- /tests/data/bkeymap-2.0.4/cz.map.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/bkeymap-2.0.4/cz.map.bin -------------------------------------------------------------------------------- /tests/data/bkeymap-2.0.4/us.map.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/bkeymap-2.0.4/us.map.bin -------------------------------------------------------------------------------- /tests/data/libkeymap/charset-keymap0.map: -------------------------------------------------------------------------------- 1 | charset "koi8-r" 2 | charset "iso-8859-1" 3 | charset "iso-8859-2" 4 | 5 | -------------------------------------------------------------------------------- /data/consolefonts/GohaClassic-12.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/GohaClassic-12.psfu -------------------------------------------------------------------------------- /data/consolefonts/GohaClassic-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/GohaClassic-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/GohaClassic-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/GohaClassic-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/LatArCyrHeb-08.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/LatArCyrHeb-08.psfu -------------------------------------------------------------------------------- /data/consolefonts/LatArCyrHeb-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/LatArCyrHeb-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/LatArCyrHeb-16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/LatArCyrHeb-16.psfu -------------------------------------------------------------------------------- /data/consolefonts/LatArCyrHeb-19.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/LatArCyrHeb-19.psfu -------------------------------------------------------------------------------- /data/consolefonts/LatGrkCyr-8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/LatGrkCyr-8x16.psfu -------------------------------------------------------------------------------- /data/consolefonts/LatKaCyrHeb-14.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/LatKaCyrHeb-14.psfu -------------------------------------------------------------------------------- /data/consolefonts/UniCyrExt_8x16.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/UniCyrExt_8x16.psf -------------------------------------------------------------------------------- /data/consolefonts/viscii10-8x16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/viscii10-8x16.psfu -------------------------------------------------------------------------------- /data/keymaps/i386/include/compose.inc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/include/compose.inc -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/br-abnt.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/br-abnt.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/cz-lat2.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/cz-lat2.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/es-cp850.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/es-cp850.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/hypermap.m4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/hypermap.m4 -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/se-lat6.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/se-lat6.map -------------------------------------------------------------------------------- /data/keymaps/sun/sun-pl-altgraph.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/sun/sun-pl-altgraph.map -------------------------------------------------------------------------------- /data/keymaps/sun/sunt5-de-latin1.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/sun/sunt5-de-latin1.map -------------------------------------------------------------------------------- /docs/man/man8misc/Makefile.am: -------------------------------------------------------------------------------- 1 | dist_man_MANS = clrunimap.8 getunimap.8 mk_modmap.8 setlogcons.8 setvesablank.8 vcstime.8 2 | -------------------------------------------------------------------------------- /tests/data/keymaps/i386/qwerty/cz.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/keymaps/i386/qwerty/cz.map -------------------------------------------------------------------------------- /tests/data/keymaps/i386/qwertz/cz.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/keymaps/i386/qwertz/cz.map -------------------------------------------------------------------------------- /data/consolefonts/Lat2-Terminus16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/Lat2-Terminus16.psfu -------------------------------------------------------------------------------- /data/consolefonts/LatArCyrHeb-16+.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/LatArCyrHeb-16+.psfu -------------------------------------------------------------------------------- /data/consolefonts/LatGrkCyr-12x22.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/LatGrkCyr-12x22.psfu -------------------------------------------------------------------------------- /data/consolefonts/gr928-8x16-thin.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr928-8x16-thin.psfu -------------------------------------------------------------------------------- /data/consolefonts/greek-polytonic.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/greek-polytonic.psfu -------------------------------------------------------------------------------- /data/consolefonts/latarcyrheb-sun16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/latarcyrheb-sun16.psfu -------------------------------------------------------------------------------- /data/consolefonts/latarcyrheb-sun32.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/latarcyrheb-sun32.psfu -------------------------------------------------------------------------------- /data/consolefonts/pancyrillic.f16.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/pancyrillic.f16.psfu -------------------------------------------------------------------------------- /data/keymaps/i386/azerty/fr-latin9.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/azerty/fr-latin9.map -------------------------------------------------------------------------------- /data/keymaps/i386/dvorak/dvorak-de.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/dvorak/dvorak-de.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/bg_bds-utf8.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/bg_bds-utf8.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/bg_pho-utf8.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/bg_pho-utf8.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/cz-cp1250.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/cz-cp1250.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/defkeymap.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/defkeymap.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/il-phonetic.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/il-phonetic.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/mk-cp1251.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/mk-cp1251.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/no-latin1.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/no-latin1.doc -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/pt-latin1.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/pt-latin1.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/pt-latin9.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/pt-latin9.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/sk-qwerty.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/sk-qwerty.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/us-acentos.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/us-acentos.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwertz/sk-qwertz.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwertz/sk-qwertz.map -------------------------------------------------------------------------------- /data/keymaps/include/vim-compose.latin1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/include/vim-compose.latin1 -------------------------------------------------------------------------------- /docs/doc/pine/PP_KB_Front-1024x576.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/docs/doc/pine/PP_KB_Front-1024x576.jpg -------------------------------------------------------------------------------- /tests/data/keymaps/include/compose.latin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/keymaps/include/compose.latin -------------------------------------------------------------------------------- /data/consolefonts/LatCyrHebKa-16_GIA.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/LatCyrHebKa-16_GIA.psfu -------------------------------------------------------------------------------- /data/consolefonts/iso01.08: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.08 3 | ascii.20-7f.08 4 | none.00-17.08 5 | 8859-1.a0-ff.08 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso01.14: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.14 3 | ascii.20-7f.14 4 | none.00-17.14 5 | 8859-1.a0-ff.14 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso01.16: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.16 3 | ascii.20-7f.16 4 | none.00-17.16 5 | 8859-1.a0-ff.16 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso02.08: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.08 3 | ascii.20-7f.08 4 | none.00-17.08 5 | 8859-2.a0-ff.08 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso02.14: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.14 3 | ascii.20-7f.14 4 | none.00-17.14 5 | 8859-2.a0-ff.14 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso02.16: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.16 3 | ascii.20-7f.16 4 | none.00-17.16 5 | 8859-2.a0-ff.16 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso03.08: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.08 3 | ascii.20-7f.08 4 | none.00-17.08 5 | 8859-3.a0-ff.08 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso03.14: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.14 3 | ascii.20-7f.14 4 | none.00-17.14 5 | 8859-3.a0-ff.14 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso03.16: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.16 3 | ascii.20-7f.16 4 | none.00-17.16 5 | 8859-3.a0-ff.16 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso04.08: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.08 3 | ascii.20-7f.08 4 | none.00-17.08 5 | 8859-4.a0-ff.08 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso04.14: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.14 3 | ascii.20-7f.14 4 | none.00-17.14 5 | 8859-4.a0-ff.14 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso04.16: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.16 3 | ascii.20-7f.16 4 | none.00-17.16 5 | 8859-4.a0-ff.16 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso05.08: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.08 3 | ascii.20-7f.08 4 | none.00-17.08 5 | 8859-5.a0-ff.08 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso05.14: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.14 3 | ascii.20-7f.14 4 | none.00-17.14 5 | 8859-5.a0-ff.14 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso05.16: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.16 3 | ascii.20-7f.16 4 | none.00-17.16 5 | 8859-5.a0-ff.16 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso06.08: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.08 3 | ascii.20-7f.08 4 | none.00-17.08 5 | 8859-6.a0-ff.08 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso06.14: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.14 3 | ascii.20-7f.14 4 | none.00-17.14 5 | 8859-6.a0-ff.14 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso06.16: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.16 3 | ascii.20-7f.16 4 | none.00-17.16 5 | 8859-6.a0-ff.16 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso07.14: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.14 3 | ascii.20-7f.14 4 | none.00-17.14 5 | 8859-7.a0-ff.14 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso07.16: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.16 3 | ascii.20-7f.16 4 | none.00-17.16 5 | 8859-7.a0-ff.16 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso08.08: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.08 3 | ascii.20-7f.08 4 | none.00-17.08 5 | 8859-8.a0-ff.08 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso08.14: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.14 3 | ascii.20-7f.14 4 | none.00-17.14 5 | 8859-8.a0-ff.14 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso08.16: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.16 3 | ascii.20-7f.16 4 | none.00-17.16 5 | 8859-8.a0-ff.16 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso09.08: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.08 3 | ascii.20-7f.08 4 | none.00-17.08 5 | 8859-9.a0-ff.08 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso09.14: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.14 3 | ascii.20-7f.14 4 | none.00-17.14 5 | 8859-9.a0-ff.14 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso09.16: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.16 3 | ascii.20-7f.16 4 | none.00-17.16 5 | 8859-9.a0-ff.16 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso10.08: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.08 3 | ascii.20-7f.08 4 | none.00-17.08 5 | 8859-10.a0-ff.08 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso10.14: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.14 3 | ascii.20-7f.14 4 | none.00-17.14 5 | 8859-10.a0-ff.14 6 | -------------------------------------------------------------------------------- /data/consolefonts/iso10.16: -------------------------------------------------------------------------------- 1 | # combine partial fonts 2 | none.00-17.16 3 | ascii.20-7f.16 4 | none.00-17.16 5 | 8859-10.a0-ff.16 6 | -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/bg_bds-cp1251.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/bg_bds-cp1251.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/bg_pho-cp1251.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/bg_pho-cp1251.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/cz-lat2-prog.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/cz-lat2-prog.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/is-latin1-us.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/is-latin1-us.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwertz/cz-us-qwertz.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwertz/cz-us-qwertz.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwertz/de_CH-latin1.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwertz/de_CH-latin1.map -------------------------------------------------------------------------------- /src/vlock/vlock.pamd: -------------------------------------------------------------------------------- 1 | #%PAM-1.0 2 | auth include system-auth 3 | account include system-auth 4 | password include system-auth 5 | -------------------------------------------------------------------------------- /tests/data/bkeymap-2.0.4/pt-latin9.map.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/bkeymap-2.0.4/pt-latin9.map.bin -------------------------------------------------------------------------------- /tests/data/consolefonts/UniCyrExt_8x16.psf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/consolefonts/UniCyrExt_8x16.psf -------------------------------------------------------------------------------- /tests/data/keymaps/include/compose.latin1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/keymaps/include/compose.latin1 -------------------------------------------------------------------------------- /data/consolefonts/gr737b-9x16-medieval.psfu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/consolefonts/gr737b-9x16-medieval.psfu -------------------------------------------------------------------------------- /data/keymaps/i386/include/backspace.map: -------------------------------------------------------------------------------- 1 | keycode 14 = Control_h Control_h 2 | alt keycode 14 = Meta_Control_h 3 | -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/br-latin1-abnt2.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/br-latin1-abnt2.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/defkeymap_V1.0.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/defkeymap_V1.0.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/sk-prog-qwerty.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwerty/sk-prog-qwerty.map -------------------------------------------------------------------------------- /data/keymaps/i386/qwertz/sk-prog-qwertz.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/data/keymaps/i386/qwertz/sk-prog-qwertz.map -------------------------------------------------------------------------------- /tests/data/e2e/kbd_mode-test03.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, KDGKBMODE, [K_RAW]) = 0 3 | -------------------------------------------------------------------------------- /tests/data/e2e/kbd_mode-test04.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, KDSKBMODE, K_XLATE) = 0 3 | -------------------------------------------------------------------------------- /tests/data/e2e/kbdinfo-test01.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, KDGETMODE, [KD_TEXT]) = 0 3 | -------------------------------------------------------------------------------- /tests/data/e2e/kbdinfo-test02.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, KDGKBMODE, [K_UNICODE]) = 0 3 | -------------------------------------------------------------------------------- /tests/data/e2e/kbdinfo-test03.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, KDGKBMETA, [K_ESCPREFIX]) = 0 3 | -------------------------------------------------------------------------------- /tests/data/e2e/kbdinfo-test04.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, KDGKBLED, [0]) = 0 3 | -------------------------------------------------------------------------------- /tests/data/keymaps/i386/include/compose.inc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/keymaps/i386/include/compose.inc -------------------------------------------------------------------------------- /tests/data/keymaps/i386/qwerty/pt-latin9.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/keymaps/i386/qwerty/pt-latin9.map -------------------------------------------------------------------------------- /docs/process/README.md: -------------------------------------------------------------------------------- 1 | Introduction 2 | ============ 3 | 4 | This documentation is for those who want to help the project and contribute to it. 5 | -------------------------------------------------------------------------------- /tests/data/e2e/getunimap-test01.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, GIO_UNIMAP, {entry_ct=0 => 0, entries=NULL}) = 0 3 | -------------------------------------------------------------------------------- /tests/data/libkeymap/keymap0.map: -------------------------------------------------------------------------------- 1 | keycode 16 = q 2 | keycode 17 = w 3 | keycode 18 = e 4 | keycode 19 = r 5 | keycode 20 = t 6 | keycode 21 = y 7 | -------------------------------------------------------------------------------- /tests/data/findfile/test_1/consolefonts/simple-0.psf.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/findfile/test_1/consolefonts/simple-0.psf.gz -------------------------------------------------------------------------------- /tests/data/findfile/test_1/consolefonts/simple-1.psf.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/findfile/test_1/consolefonts/simple-1.psf.gz -------------------------------------------------------------------------------- /tests/data/findfile/test_1/consolefonts/simple-2.psf.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/findfile/test_1/consolefonts/simple-2.psf.gz -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/qwerty/test3.map.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/findfile/test_0/keymaps/i386/qwerty/test3.map.bz2 -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/qwerty/test3.map.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/findfile/test_0/keymaps/i386/qwerty/test3.map.gz -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/qwerty/test3.map.xz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/findfile/test_0/keymaps/i386/qwerty/test3.map.xz -------------------------------------------------------------------------------- /tests/data/findfile/test_0/keymaps/i386/qwerty/test3.map.zst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legionus/kbd/HEAD/tests/data/findfile/test_0/keymaps/i386/qwerty/test3.map.zst -------------------------------------------------------------------------------- /data/unimaps/README: -------------------------------------------------------------------------------- 1 | The correspondences given in iso0[1-9].uni are 2 | according to The Unicode Standard, Version 1.0, Vol. 1. 3 | 4 | The remaining ones are phantasy. 5 | -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/us1.map: -------------------------------------------------------------------------------- 1 | include "us.map" 2 | include "linux-with-two-alt-keys" 3 | 4 | alt keycode 15 = Meta_Tab 5 | shift keycode 15 = F26 6 | string F26 = "\033[Z" 7 | -------------------------------------------------------------------------------- /tests/data/e2e/kbd_mode-test03.stderr: -------------------------------------------------------------------------------- 1 | The keyboard is in raw (scancode) mode 2 | Changing to the requested mode may make your keyboard unusable, please use -f to force the change. 3 | -------------------------------------------------------------------------------- /data/consolefonts/README.Hebrew: -------------------------------------------------------------------------------- 1 | Hebrew fonts: 2 | 3 | iso08.* follows ISO 8859-8. 4 | 5 | 972.cp has the Hebrew letters in the same positions, and adds 6 | the (isolated) vowels. 7 | -------------------------------------------------------------------------------- /tests/data/e2e/clrunimap-test01.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, PIO_UNIMAPCLR, {advised_hashsize=0, advised_hashstep=0, advised_hashlevel=0}) = 0 3 | -------------------------------------------------------------------------------- /contrib/vtrgb.ubuntu: -------------------------------------------------------------------------------- 1 | 1,222,57,255,0,118,44,204,128,255,0,255,0,255,0,255 2 | 1,56,181,199,111,38,181,204,128,0,255,255,0,0,255,255 3 | 1,43,74,6,184,113,233,204,128,0,0,0,255,255,255,255 4 | -------------------------------------------------------------------------------- /tests/data/e2e/kbd_mode-test01.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, KDGKBMODE, [K_UNICODE]) = 0 3 | ioctl(, KDSKBMODE, K_XLATE) = 0 4 | -------------------------------------------------------------------------------- /tests/data/e2e/kbd_mode-test02.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, KDGKBMODE, [K_UNICODE]) = 0 3 | ioctl(, KDSKBMODE, K_RAW) = 0 4 | -------------------------------------------------------------------------------- /tests/data/e2e/kbd_mode-test05.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, KDGKBMODE, [K_RAW]) = 0 3 | ioctl(, KDSKBMODE, K_MEDIUMRAW) = 0 4 | -------------------------------------------------------------------------------- /tests/data/e2e/kbd_mode-test06.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, KDGKBMODE, [K_XLATE]) = 0 3 | ioctl(, KDSKBMODE, K_UNICODE) = 0 4 | -------------------------------------------------------------------------------- /src/include/kfont.h: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: LGPL-2.0-or-later 2 | #ifndef _KBD_LIBKFONT_H_ 3 | #define _KBD_LIBKFONT_H_ 4 | 5 | #include 6 | 7 | #endif /* _KBD_LIBKFONT_H_ */ 8 | -------------------------------------------------------------------------------- /tests/data/setvtrgb/vtrgb.ubuntu: -------------------------------------------------------------------------------- 1 | 1,222,57,255,0,118,44,204,128,255,0,255,0,255,0,255 2 | 1,56,181,199,111,38,181,204,128,0,255,255,0,0,255,255 3 | 1,43,74,6,184,113,233,204,128,0,0,0,255,255,255,255 4 | -------------------------------------------------------------------------------- /src/include/kbdfile.h: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: LGPL-2.0-or-later 2 | #ifndef _KBD_LIBKBDFILE_H_ 3 | #define _KBD_LIBKBDFILE_H_ 4 | 5 | #include 6 | 7 | #endif /* _KBD_LIBKBDFILE_H_ */ 8 | -------------------------------------------------------------------------------- /tests/data/libcommon/options1.txt: -------------------------------------------------------------------------------- 1 | 2 | Options: 3 | -C, --console=DEV the console device to be used. 4 | -V, --version print version number. 5 | -h, --help print this usage message. 6 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/windowkeys.map: -------------------------------------------------------------------------------- 1 | # Extra 105 windows keys 2 | 3 | keycode 125 = Decr_Console 4 | keycode 126 = Incr_Console 5 | keycode 127 = Last_Console 6 | 7 | # "keycode 127 = Compose" is also popular 8 | -------------------------------------------------------------------------------- /data/consolefonts/README.12x22: -------------------------------------------------------------------------------- 1 | sun12x22.psfu was taken from the kernel source 2 | iso01-12x22.psfu was derived from sun12x22.psfu by Kurt Garloff 3 | iso02-12x22.psfu was derived from sun12x22.psfu by Jacek Lipkowski 4 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/linux-with-two-alt-keys.inc: -------------------------------------------------------------------------------- 1 | # For keymaps in which both Alt keys are equivalent 2 | # No convention for Hex_* has been established. 3 | 4 | include "linux-keys-bare" 5 | 6 | keycode 100 = Alt 7 | -------------------------------------------------------------------------------- /tests/e2e-memcheck-clrunimap.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([clrunimap]) 2 | AT_KEYWORDS([e2e clrunimap memcheck]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | E2E_MEMCHECK(["$abs_top_builddir/src/clrunimap"]) 5 | AT_CLEANUP 6 | -------------------------------------------------------------------------------- /src/libcommon/Makefile.am: -------------------------------------------------------------------------------- 1 | include $(top_srcdir)/Makefile.common 2 | 3 | libcommon_a_SOURCES = \ 4 | getfd.c \ 5 | error.c \ 6 | version.c \ 7 | nls.h \ 8 | libcommon.h 9 | 10 | noinst_LIBRARIES = libcommon.a 11 | -------------------------------------------------------------------------------- /contrib/vtrgb.ubuntu.hex: -------------------------------------------------------------------------------- 1 | #010101 2 | #de382b 3 | #39b54a 4 | #ffc706 5 | #006fb8 6 | #762671 7 | #2cb5e9 8 | #cccccc 9 | #808080 10 | #ff0000 11 | #00ff00 12 | #ffff00 13 | #0000ff 14 | #ff00ff 15 | #00ffff 16 | #ffffff 17 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/ctrl.map: -------------------------------------------------------------------------------- 1 | keycode 29 = Caps_Lock 2 | keycode 58 = Control 3 | keycode 97 = Compose 4 | # keycode 97 = Control 5 | # Shift keycode 97 = Compose is also popular 6 | # (Right Ctrl + Shift for Compose) 7 | -------------------------------------------------------------------------------- /data/consolefonts/ERRORS: -------------------------------------------------------------------------------- 1 | In iso04.f08 and iso10.f08 the letters K, and k, 2 | (letter k with cedilla) are wrong. 3 | In iso07.f08 and iso10.f08 the horizontal bar is wrong. 4 | 5 | Maybe someone with font editor can correct this. 6 | 7 | -------------------------------------------------------------------------------- /tests/data/setvtrgb/vtrgb.ubuntu.hex: -------------------------------------------------------------------------------- 1 | #010101 2 | #de382b 3 | #39b54a 4 | #ffc706 5 | #006fb8 6 | #762671 7 | #2cb5e9 8 | #cccccc 9 | #808080 10 | #ff0000 11 | #00ff00 12 | #ffff00 13 | #0000ff 14 | #ff00ff 15 | #00ffff 16 | #ffffff 17 | -------------------------------------------------------------------------------- /src/include/compat/linux-keyboard.h: -------------------------------------------------------------------------------- 1 | #ifndef KT_LETTER 2 | #define KT_LETTER KT_LATIN 3 | #endif 4 | 5 | #ifndef MAX_NR_KEYMAPS 6 | #define MAX_NR_KEYMAPS NR_KEYMAPS 7 | #endif 8 | 9 | #ifndef NR_KEYS 10 | #define NR_KEYS 256 11 | #endif 12 | -------------------------------------------------------------------------------- /data/consolefonts/README.drdos: -------------------------------------------------------------------------------- 1 | The four drdos fonts are 448-glyph fonts with Unicode table 2 | more or less mechanically derived from DR-DOS EGA.CPI. 3 | 4 | Older software may have problems with a number of glyphs 5 | that is not 256 or 512. 6 | 7 | aeb 8 | -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/et-nodeadkeys.map: -------------------------------------------------------------------------------- 1 | # Estonian keymap with no dead keys 2 | # Ville Hallik 3 | 4 | include "et.map" 5 | 6 | keycode 13 = apostrophe grave dead_acute dead_grave 7 | keycode 41 = dead_caron tilde dead_caron dead_tilde 8 | -------------------------------------------------------------------------------- /docs/man/man8/Makefile.am: -------------------------------------------------------------------------------- 1 | include $(top_srcdir)/Makefile.common 2 | 3 | gen_MANS = loadunimap.8 mapscrn.8 setfont.8 4 | dist_man_MANS = getkeycodes.8 kbdrate.8 resizecons.8 setkeycodes.8 \ 5 | showconsolefont.8 setvtrgb.8 $(gen_MANS) 6 | 7 | CLEANFILES = $(gen_MANS) 8 | -------------------------------------------------------------------------------- /tests/e2e-misc-data-keymaps.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([check all distributed keymaps for loadability]) 2 | AT_KEYWORDS([loadability]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | AT_CHECK([env BUILDDIR="$abs_top_builddir" "$abs_srcdir/check-data-keymaps.sh"]) 5 | AT_CLEANUP 6 | -------------------------------------------------------------------------------- /tests/syscall-filter.sed: -------------------------------------------------------------------------------- 1 | #!/bin/sed -rnf 2 | 3 | /^ioctl/ { 4 | s/^ioctl\([0-9]+,/ioctl(,/; 5 | s/\<0x([0-9]|[A-Fa-f]){12,}\>//g; 6 | 7 | # Hack for musl 8 | /, TIOCGWINSZ, /d; 9 | 10 | /^ioctl\(, (KD|KIO|TIO|GIO_|PIO_|VT_)[A-Z]+, /p; 11 | } 12 | -------------------------------------------------------------------------------- /tests/e2e-syscalls-clrunimap.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([clrunimap]) 2 | AT_KEYWORDS([e2e clrunimap]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | E2E_CHECK(["$abs_top_builddir/src/clrunimap"]) 5 | E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/clrunimap-test01.calls]) 6 | AT_CLEANUP 7 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/euro.map: -------------------------------------------------------------------------------- 1 | # Euro and cent 2 | # [Say: "loadkeys euro" to get Euro and cent with Alt on the positions 3 | # where many keyboards have E and C. 4 | # To get it displayed, use a latin0 (i.e., latin9) font.] 5 | alt keycode 18 = currency 6 | alt keycode 46 = cent 7 | -------------------------------------------------------------------------------- /po/.gitignore: -------------------------------------------------------------------------------- 1 | stamp-po 2 | remove-potcdate.sin 3 | remove-potcdate.sed 4 | quot.sed 5 | insert-header.sin 6 | *.gmo 7 | en@quot.header 8 | en@boldquot.header 9 | boldquot.sed 10 | Rules-quot 11 | POTFILES 12 | Makevars.template 13 | Makefile.in.in 14 | Makefile.in 15 | Makefile 16 | -------------------------------------------------------------------------------- /tests/e2e-memcheck-loadunimap.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([loadunimap (cp866)]) 2 | AT_KEYWORDS([e2e loadunimap memcheck]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | clrunimap || "$abs_top_builddir/src/clrunimap" 5 | E2E_MEMCHECK(["$abs_top_builddir/src/loadunimap" cp866]) 6 | AT_CLEANUP 7 | -------------------------------------------------------------------------------- /data/keymaps/mac/include/mac-euro.map: -------------------------------------------------------------------------------- 1 | # Euro and cent 2 | # [Say: "loadkeys euro" to get Euro and cent with Alt on the positions 3 | # where many keyboards have E and C. 4 | # To get it displayed, use a latin0 (i.e., latin9) font.] 5 | alt keycode 14 = currency 6 | alt keycode 8 = cent 7 | -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/se-fi-lat6.map: -------------------------------------------------------------------------------- 1 | # se-fi-lat6.map 2 | # Covers ISO 8859-10, 1993 3 | # Modifies se-lat6.map for use in Finland and Sweden 4 | # by 5 | 6 | keycode 39 = +odiaeresis +Odiaeresis +oslash +Ooblique 7 | keycode 40 = +adiaeresis +Adiaeresis +ae +AE 8 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/euro1.inc: -------------------------------------------------------------------------------- 1 | # Euro and cent 2 | # [Say: "loadkeys euro1" to get Euro and cent with AltGr (right alt) 3 | # on the positions where many keyboards have 5 and C. 4 | # To get it displayed, use a latin0 (i.e., latin9) font.] 5 | altgr keycode 6 = currency 6 | altgr keycode 46 = cent 7 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/euro1.map: -------------------------------------------------------------------------------- 1 | # Euro and cent 2 | # [Say: "loadkeys euro1" to get Euro and cent with AltGr (right alt) 3 | # on the positions where many keyboards have 5 and C. 4 | # To get it displayed, use a latin0 (i.e., latin9) font.] 5 | altgr keycode 6 = currency 6 | altgr keycode 46 = cent 7 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/euro2.map: -------------------------------------------------------------------------------- 1 | # Euro and cent 2 | # [Say: "loadkeys euro2" to get Euro and cent with AltGr (right alt) 3 | # on the positions where many keyboards have E and C. 4 | # To get it displayed, use a latin0 (i.e., latin9) font.] 5 | altgr keycode 18 = currency 6 | altgr keycode 46 = cent 7 | -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/se-fi-ir209.map: -------------------------------------------------------------------------------- 1 | # se-fi-ir209.map 2 | # Also used for ir197. 3 | # by 4 | # 5 | # Depends on/Alters se-ir209.map: 6 | keycode 39 = +odiaeresis +Odiaeresis +oslash +Ooblique 7 | keycode 40 = +adiaeresis +Adiaeresis +ae +AE 8 | 9 | # End. 10 | -------------------------------------------------------------------------------- /tests/data/e2e/setvtrgb-test01.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, PIO_CMAP, "\x00\x00\x00\xaa\x00\x00\x00\xaa\x00\xaa\x55\x00\x00\x00\xaa\xaa\x00\xaa\x00\xaa\xaa\xaa\xaa\xaa\x55\x55\x55\xff\x55\x55\x55\xff\x55\xff\xff\x55\x55\x55\xff\xff\x55\xff\x55\xff\xff\xff\xff\xff") = 0 3 | -------------------------------------------------------------------------------- /tests/data/e2e/setvtrgb-test02.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, PIO_CMAP, "\x01\x01\x01\xde\x38\x2b\x39\xb5\x4a\xff\xc7\x06\x00\x6f\xb8\x76\x26\x71\x2c\xb5\xe9\xcc\xcc\xcc\x80\x80\x80\xff\x00\x00\x00\xff\x00\xff\xff\x00\x00\x00\xff\xff\x00\xff\x00\xff\xff\xff\xff\xff") = 0 3 | -------------------------------------------------------------------------------- /tests/data/e2e/setvtrgb-test03.calls: -------------------------------------------------------------------------------- 1 | ioctl(, KDGKBTYPE, [KB_101]) = 0 2 | ioctl(, PIO_CMAP, "\x01\x01\x01\xde\x38\x2b\x39\xb5\x4a\xff\xc7\x06\x00\x6f\xb8\x76\x26\x71\x2c\xb5\xe9\xcc\xcc\xcc\x80\x80\x80\xff\x00\x00\x00\xff\x00\xff\xff\x00\x00\x00\xff\xff\x00\xff\x00\xff\xff\xff\xff\xff") = 0 3 | -------------------------------------------------------------------------------- /tests/data/keymaps/i386/include/euro1.map: -------------------------------------------------------------------------------- 1 | # Euro and cent 2 | # [Say: "loadkeys euro1" to get Euro and cent with AltGr (right alt) 3 | # on the positions where many keyboards have 5 and C. 4 | # To get it displayed, use a latin0 (i.e., latin9) font.] 5 | altgr keycode 6 = currency 6 | altgr keycode 46 = cent 7 | -------------------------------------------------------------------------------- /tests/libcommon/libcommon-test02.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include "libcommon.h" 7 | 8 | int main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 9 | { 10 | print_report_bugs(); 11 | 12 | return EXIT_SUCCESS; 13 | } 14 | -------------------------------------------------------------------------------- /data/consolefonts/README.Arabic: -------------------------------------------------------------------------------- 1 | Arabic fonts: 2 | 3 | iso06.* follows ISO 8859-6 (but does not contain the Arabic digits). 4 | Only the isolated shapes are given. 5 | 6 | N.cp, N=161,162,163,164,165 - MS/DOS code pages with Arabic letters, 7 | some line-drawing symbols, and some accented Latin characters. 8 | 9 | -------------------------------------------------------------------------------- /data/keymaps/mac/include/mac-euro2.map: -------------------------------------------------------------------------------- 1 | # Euro and cent 2 | # [Say: "loadkeys mac-euro2" to get Euro and cent with AltGr (Option key) 3 | # on the positions where many keyboards have E and C. 4 | # To get it displayed, use a latin0 (i.e., latin9) font.] 5 | altgr keycode 14 = currency 6 | altgr keycode 8 = cent 7 | -------------------------------------------------------------------------------- /tests/strace.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh -efu 2 | 3 | cwd="$(readlink -ev "${0%/*}")" 4 | 5 | rc=0 6 | strace -o syscalls.raw -s 1073741823 -e abbrev=none -e trace=/open.*,/ioctl \ 7 | -- "$@" \ 8 | 1>stdout \ 9 | 2>stderr || rc=$? 10 | 11 | "$cwd/syscall-filter.sed" < syscalls.raw > syscalls ||: 12 | 13 | exit $rc 14 | -------------------------------------------------------------------------------- /docs/doc/keysyms.h.info: -------------------------------------------------------------------------------- 1 | jrv@vanzandt.mv.com (Jim Van Zandt) writes: 2 | 3 | I have found that I can construct the definitions of 4 | the keysyms with the command 5 | 6 | dumpkeys --long-info | awk '/^0x0000/, /^$/ { 7 | if(/^$/) exit; 8 | printf("#define KS_%-22s %s\n", $2, $1); 9 | }' >keysyms.h 10 | -------------------------------------------------------------------------------- /tests/e2e-memcheck-setfont.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([setfont (path/UniCyrExt_8x16.psf)]) 2 | AT_KEYWORDS([e2e setfont memcheck]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | AT_SKIP_IF([ test -z "$HAVE_VGA" ]) 5 | E2E_CHECK(["$abs_top_builddir/src/setfont" -v "$abs_srcdir/data/consolefonts/UniCyrExt_8x16.psf"]) 6 | AT_CLEANUP 7 | -------------------------------------------------------------------------------- /src/libkeymap/libkeymap.pc.gen: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libkeymap 7 | Version: @VERSION@ 8 | Description: Library to manage the Linux keymaps 9 | Requires: 10 | Libs: -L${libdir} -lkeymap -lkbdfile 11 | Libs.private: 12 | Cflags: -I${includedir} 13 | -------------------------------------------------------------------------------- /tests/check.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh -efu 2 | 3 | TTY="${TTY:-/dev/tty60}" 4 | 5 | testdir="$(readlink -f "$0")" 6 | testdir="${testdir%/*}" 7 | topdir="${testdir%/*}" 8 | 9 | set -x 10 | cd "$topdir" 11 | 12 | uname -a 13 | free -h 14 | ulimit -a 15 | 16 | chmod 666 "$TTY" 17 | kbd_mode -f -u -C "$TTY" 18 | 19 | make check < "$TTY" 20 | -------------------------------------------------------------------------------- /src/libkfont/libkfont.pc.gen: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libkfont 7 | Version: @VERSION@ 8 | Description: Library to manage the Linux console fonts 9 | Requires: 10 | Libs: -L${libdir} -lkfont -lkbdfile 11 | Libs.private: 12 | Cflags: -I${includedir} 13 | -------------------------------------------------------------------------------- /tests/e2e-misc-psfxtable.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([psfxtable (get unicode table)]) 2 | AT_KEYWORDS([e2e psfxtable]) 3 | E2E_CHECK(["$abs_top_builddir/src/psfxtable" -i "$abs_srcdir/data/consolefonts/UniCyrExt_8x16.psf" -ot -]) 4 | E2E_COMPARE_STDOUT([sed -e "s@ /lib/kbd/@ $abs_srcdir/data/@" "$abs_srcdir/data/e2e/psfxtable-test01.stdout"]) 5 | AT_CLEANUP 6 | -------------------------------------------------------------------------------- /po/update-potfiles: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # 4 | 5 | > .null 6 | 7 | for x in ../*/*.c ../*/*/*.c; do 8 | echo "$x \\" 9 | done > POTFILES 10 | echo .null >> POTFILES 11 | 12 | cd .. 13 | for x in */*.c */*/*.c; do 14 | echo "$x" 15 | done > po/POTFILES.in 16 | cd po 17 | 18 | for x in POTFILES POTFILES.in; do 19 | sort -uo "$x" "$x" 20 | done 21 | -------------------------------------------------------------------------------- /tests/configure.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh -efu 2 | 3 | testdir="$(readlink -f "$0")" 4 | testdir="${testdir%/*}" 5 | topdir="${testdir%/*}" 6 | 7 | set -x 8 | cd "$topdir" 9 | 10 | ./autogen.sh 11 | ./configure \ 12 | --datadir="$testdir/data" \ 13 | --enable-optional-progs \ 14 | --enable-libkeymap \ 15 | --enable-libkfont \ 16 | --enable-vlock \ 17 | "$@" 18 | -------------------------------------------------------------------------------- /data/keymaps/i386/dvorak/ANSI-dvorak.map: -------------------------------------------------------------------------------- 1 | include "dvorak.map" 2 | 3 | plain keycode 12 = bracketright 4 | shift keycode 12 = bracketleft 5 | control keycode 12 = Control_bracketright 6 | 7 | plain keycode 13 = equal 8 | shift keycode 13 = plus 9 | control keycode 13 = Escape 10 | 11 | plain keycode 27 = braceleft 12 | shift keycode 27 = braceright 13 | -------------------------------------------------------------------------------- /tests/ci/vm-scp.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -efu 2 | 3 | PROG="${0##*/}" 4 | workdir="/tmp/${CI_ARCH-}" 5 | 6 | [ -s "$workdir/qemu-ssh-key" ] 7 | 8 | printf '%s: %s\n' "$PROG" "$*" 9 | scp -q \ 10 | -o "Port 2222" \ 11 | -o "IdentityFile $workdir/qemu-ssh-key" \ 12 | -o "IdentityAgent none" \ 13 | -o "StrictHostKeyChecking no" \ 14 | -o "SetEnv LC_ALL=C" \ 15 | "$@" 16 | -------------------------------------------------------------------------------- /tests/ci/vm-ssh.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -efu 2 | 3 | PROG="${0##*/}" 4 | workdir="/tmp/${CI_ARCH-}" 5 | 6 | [ -s "$workdir/qemu-ssh-key" ] 7 | 8 | printf '%s: %s\n' "$PROG" "$*" 9 | ssh -q -nT \ 10 | -o "Port 2222" \ 11 | -o "IdentityFile $workdir/qemu-ssh-key" \ 12 | -o "IdentityAgent none" \ 13 | -o "StrictHostKeyChecking no" \ 14 | -o "SetEnv LC_ALL=C" \ 15 | "$@" 16 | -------------------------------------------------------------------------------- /data/consolefonts/README.cp1250: -------------------------------------------------------------------------------- 1 | cp1250.psfu is a font for Microsoft cp1250. 2 | It was created by pasting suitable fragments of latin{0,1,2} fonts, 3 | and the symbols occurring in neither (various quotation marks, 4 | ellipsis, dagger, doubledagger, permille, bullet, endash, emdash, 5 | trademark) were left out. Maybe someone who actually uses this font 6 | can add them. - Andries 7 | -------------------------------------------------------------------------------- /tests/testsuite.at: -------------------------------------------------------------------------------- 1 | m4_include([atconfig]) 2 | m4_include([atpackage]) 3 | 4 | # Enable colored test output if available 5 | m4_ifdef([AT_COLOR_TESTS], [AT_COLOR_TESTS]) 6 | 7 | AT_INIT 8 | 9 | m4_include([unittest.at]) 10 | 11 | m4_include([utils.at]) 12 | m4_include([libcommon.at]) 13 | m4_include([libkeymap.at]) 14 | m4_include([libkbdfile.at]) 15 | m4_include([e2e.at]) 16 | -------------------------------------------------------------------------------- /data/consolefonts/README.psfu: -------------------------------------------------------------------------------- 1 | The .psfu files have a built-in Unicode mapping, 2 | the .psf files don't. 3 | 4 | If you load a font (with setfont) without built-in 5 | mapping, then you'll have to provide one separately 6 | on the setfont command line. 7 | 8 | Eventually we expect that all fonts will have built-in Unicode mappings, 9 | and the .psfu files will be renamed .psf again. 10 | -------------------------------------------------------------------------------- /src/include/keymap.h: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: LGPL-2.0-or-later 2 | #ifndef _KBD_LIBKEYMAP_H_ 3 | #define _KBD_LIBKEYMAP_H_ 4 | 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | #endif /* _KBD_LIBKEYMAP_H_ */ 14 | -------------------------------------------------------------------------------- /src/README.cad: -------------------------------------------------------------------------------- 1 | 2 | cad is a simple program to handle Cntrl Alt Delete in an enviroment 3 | where there may be remote logins. It give the remote users time to 4 | finish up before shutting down. 5 | 6 | 7 | usage: 8 | In /etc/inittab add the lines 9 | 10 | # What to do at the "Three Finger Salute". 11 | ca::ctrlaltdel:openvt -sw /sbin/cad 12 | 13 | 14 | If you already have a ca: line, comment it out with a # 15 | 16 | Jon. 17 | -------------------------------------------------------------------------------- /data/consolefonts/README.lat7: -------------------------------------------------------------------------------- 1 | lat7a-14.psfu and lat7a-16.psf are two very poor 2 | attempts at ISO 8859-13 (Latin-7) fonts: 3 | lots of characters are incorrect. 4 | 5 | lat7-14.psfu is much better, only it is rather ugly. 6 | It throws in an euro at 0x80, and has G-breve, g-breve 7 | at 0xcc, 0xec (instead of G/g with cedilla), 8 | and has n-cedilla at 0xb7 (instead of middle dot), 9 | and has apostrophe at 0xff (instead of quote). 10 | -------------------------------------------------------------------------------- /src/libkeymap/modifiers.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | #include "config.h" 4 | #include "modifiers.h" 5 | 6 | const modifier_t modifiers[] = { 7 | { "shift", KG_SHIFT }, 8 | { "altgr", KG_ALTGR }, 9 | { "control", KG_CTRL }, 10 | { "alt", KG_ALT }, 11 | { "shiftl", KG_SHIFTL }, 12 | { "shiftr", KG_SHIFTR }, 13 | { "ctrll", KG_CTRLL }, 14 | { "ctrlr", KG_CTRLR }, 15 | { "capsshift", KG_CAPSSHIFT }, 16 | { NULL, 0 } 17 | }; 18 | -------------------------------------------------------------------------------- /docs/doc/pine/README.md: -------------------------------------------------------------------------------- 1 | # PinePhone (Pro) Keyboard 2 | 3 | The PinePhone (Pro) Keyboard Case is a case compatible with the PinePhone and 4 | PinePhone Pro, adding a keyboard functionality to the phone. It features a 5 | clam-shell design and uses the pogo pins located on the smartphone’s midsection 6 | and attaches by replacing the default back cover. 7 | 8 | Information and pictures taken from: https://wiki.pine64.org/wiki/PinePhone_(Pro)_Keyboard 9 | -------------------------------------------------------------------------------- /data/keymaps/i386/carpalx/carpalx-full.map: -------------------------------------------------------------------------------- 1 | # carpalx-full.map 2 | # Layout created by Martin Krzywinski, http://mkweb.bcgsc.ca/carpalx/ 3 | # This keymap file created by Perry Thompson 4 | include "carpalx.map" 5 | 6 | plain keycode 21 = b 7 | shift keycode 21 = B 8 | 9 | plain keycode 22 = y 10 | shift keycode 22 = Y 11 | 12 | plain keycode 24 = v 13 | shift keycode 24 = V 14 | 15 | plain keycode 47 = f 16 | shift keycode 47 = F 17 | -------------------------------------------------------------------------------- /docs/man/man1/Makefile.am: -------------------------------------------------------------------------------- 1 | include $(top_srcdir)/Makefile.common 2 | 3 | gen_MANS = dumpkeys.1 loadkeys.1 4 | dist_man_MANS = chvt.1 deallocvt.1 fgconsole.1 kbd_mode.1 openvt.1 \ 5 | psfaddtable.1 psfgettable.1 psfstriptable.1 psfxtable.1 \ 6 | setleds.1 setmetamode.1 showkey.1 unicode_start.1 unicode_stop.1 \ 7 | kbdinfo.1 \ 8 | $(gen_MANS) 9 | 10 | if VLOCK 11 | dist_man_MANS += vlock.1 12 | endif 13 | 14 | CLEANFILES = $(gen_MANS) 15 | -------------------------------------------------------------------------------- /src/libkfont/utf8.h: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: LGPL-2.0-or-later 2 | /* 3 | * Copyright (C) 2007-2020 Alexey Gladkov 4 | * 5 | * Originally written by Andries Brouwer 6 | */ 7 | #ifndef _UTF8_H 8 | #define _UTF8_H 9 | 10 | #include 11 | 12 | int32_t from_utf8(const unsigned char **inptr, long int cnt, int *err); 13 | 14 | #define UTF8_BAD (-1) 15 | #define UTF8_SHORT (-2) 16 | 17 | #endif /* _UTF8_H */ 18 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test01.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_new(NULL); 13 | if (!fp) 14 | kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile"); 15 | kbdfile_free(fp); 16 | return EXIT_SUCCESS; 17 | } 18 | -------------------------------------------------------------------------------- /tests/e2e-memcheck-dumpkeys.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([dumpkeys (path/ruwin_cplk-UTF-8.map)]) 2 | AT_KEYWORDS([e2e dumpkeys memcheck]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | export LANG=en_US.UTF-8 5 | kbd_mode -u -f 6 | "$abs_top_builddir/src/loadkeys" -c -s "$abs_srcdir/data/keymaps/VoidSymbol.map" 7 | "$abs_top_builddir/src/loadkeys" "$abs_srcdir/data/keymaps/i386/qwerty/ruwin_cplk-UTF-8.map" 8 | E2E_MEMCHECK(["$abs_top_builddir/src/dumpkeys"]) 9 | AT_CLEANUP 10 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/applkey.map: -------------------------------------------------------------------------------- 1 | # VT220 auxiliary keypad in application mode 2 | # Use 4 auxiliary strings. 3 | 4 | # Num Lock key 5 | keycode 69 = F21 6 | # Divide key 7 | keycode 98 = F22 8 | # Multiply key 9 | keycode 55 = F23 10 | # Subtract key 11 | keycode 74 = F24 12 | 13 | string F21 = "\033OP" 14 | string F22 = "\033OQ" 15 | string F23 = "\033OR" 16 | string F24 = "\033OS" 17 | 18 | # This is also what one gets after sending Esc = to the console. 19 | -------------------------------------------------------------------------------- /contrib/showconsolefont: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # From klaus.stehle@uni-tuebingen.de Tue Jan 25 07:24:02 2000 4 | # 5 | # A small shell script version of the `showconsolefont' C program 6 | # 7 | 8 | echo -e "\033%G" 9 | for L in "0 2 4 6" "1 3 5 7"; do 10 | for P in 0 1 2 3 4 5 6 7; do 11 | for U in 0 1 2 3; do 12 | for K in $L; do 13 | echo -ne " \357\20$U\2$K$P" 14 | done 15 | done 16 | echo 17 | done 18 | echo 19 | done 20 | echo -ne "\033%@" 21 | -------------------------------------------------------------------------------- /src/unicode_stop: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | TTY=$(/usr/bin/tty) 4 | case "$TTY" in 5 | /dev/console|/dev/vc*|/dev/tty[0-9]*) 6 | ;; 7 | *) 8 | echo "unicode_stop skipped on $TTY" 9 | exit 0 10 | ;; 11 | esac 12 | 13 | # stop unicode 14 | kbd_mode -a 15 | if test -t ; then 16 | printf '\033%%@' 17 | fi 18 | stty -iutf8 19 | 20 | uid="$(id -u 2>/dev/null)" ||: 21 | if [ "$uid" = 0 ]; then 22 | [ ! -r "$HOME/.kbd/.keymap_sv" ] || 23 | loadkeys "$HOME/.kbd/.keymap_sv" 24 | fi 25 | -------------------------------------------------------------------------------- /tests/valgrind.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh -efu 2 | 3 | tool="$1" 4 | shift 5 | 6 | case "$tool" in 7 | memcheck) 8 | valgrind_args="--leak-check=full --leak-resolution=high --show-leak-kinds=all --track-origins=yes --trace-children=yes" 9 | ;; 10 | *) 11 | echo >&1 "$0: unknown valgrind tool: $tool" 12 | exit 1 13 | ;; 14 | esac 15 | 16 | rc=0 17 | valgrind --tool="$tool" $valgrind_args --error-exitcode=1 -- "$@" \ 18 | 1>stdout \ 19 | 2>stderr || rc=$? 20 | 21 | exit $rc 22 | -------------------------------------------------------------------------------- /contrib/fix_bs_and_del: -------------------------------------------------------------------------------- 1 | #!/usr/bin/loadkeys 2 | # Make BackSpace key send a BS, and make Delete key send a DEL 3 | keycode 14 = BackSpace Delete 4 | control keycode 14 = Delete 5 | alt keycode 14 = Meta_Delete 6 | keycode 111 = Delete Remove Remove 7 | control keycode 111 = Remove 8 | shift control keycode 111 = Remove 9 | alt keycode 111 = Remove 10 | control alt keycode 111 = Boot 11 | # Mark Lord 12 | -------------------------------------------------------------------------------- /data/consolefonts/README.lat0: -------------------------------------------------------------------------------- 1 | The lat0-* fonts here are from the EURO package by guylhem@oeil.qc.ca. 2 | The lat0-14.psf font is broken (positions A7,A8 are wrong). 3 | A corrected version is welcome. 4 | 5 | Latin-0 is the nickname for what officially is Latin-9, 6 | or ISO 8859-15. IBM calls it code page 924. 7 | It differs from Latin-1 (ISO 8859-1) in 8 positions, 8 | namely A4,A6,A8,B4,B8,BC,BD,BE where it has Euro, Scaron, scaron, 9 | Zcaron, zcaron, OEligature, oeligature, Ydiaeresis, respectively. 10 | -------------------------------------------------------------------------------- /tests/libcommon/Makefile.am: -------------------------------------------------------------------------------- 1 | NULL = 2 | 3 | AM_CPPFLAGS = \ 4 | $(CODE_COVERAGE_CPPFLAGS) \ 5 | -I$(top_srcdir)/src/include \ 6 | -I$(top_srcdir)/src/libcommon \ 7 | -DTESTDIR=\"$(realpath $(top_srcdir))/tests\" 8 | 9 | AM_CFLAGS = $(CHECK_CFLAGS) $(CODE_COVERAGE_CFLAGS) 10 | 11 | LDADD = \ 12 | $(top_builddir)/src/libcommon/libcommon.a \ 13 | @LIBINTL@ $(CODE_COVERAGE_LIBS) 14 | 15 | noinst_PROGRAMS = \ 16 | libcommon-test01 \ 17 | libcommon-test02 \ 18 | libcommon-test03 \ 19 | $(NULL) 20 | 21 | -------------------------------------------------------------------------------- /tests/libcommon/libcommon-test03.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include "libcommon.h" 7 | 8 | int main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 9 | { 10 | int console; 11 | char *name; 12 | 13 | if (!isatty(0)) 14 | return EXIT_SUCCESS; 15 | 16 | console = getfd(NULL); 17 | name = ttyname(console); 18 | close(console); 19 | 20 | console = getfd(name); 21 | close(console); 22 | 23 | return EXIT_SUCCESS; 24 | } 25 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test10.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_open(NULL, TESTDIR "/data/findfile/test_0/keymaps/i386/qwerty/test0"); 13 | if (fp) 14 | kbd_error(EXIT_FAILURE, 0, "unexpected kbdfile"); 15 | 16 | kbdfile_free(fp); 17 | 18 | return EXIT_SUCCESS; 19 | } 20 | -------------------------------------------------------------------------------- /tests/unittest.at: -------------------------------------------------------------------------------- 1 | AT_ARG_OPTION(memcheck, [AS_HELP_STRING([--memcheck], [check memory leaks during tests])]) 2 | 3 | m4_define([UNITTEST_RUN_MEMCHECK],[[ 4 | libtool --mode=execute -- "$abs_srcdir"/valgrind.sh memcheck $1 || exit $?; 5 | cat stdout ||:; 6 | sed '/==[0-9]\+== .*/d' stderr >&2 ||: 7 | ]]) 8 | 9 | m4_define([UNITTEST_MEMCHECK],[ 10 | AS_IF([test "x$at_arg_memcheck" != "xfalse"], 11 | [AT_CHECK([UNITTEST_RUN_MEMCHECK([$1])],[$2],[$3],[$4],[$5],[$6])], 12 | [AT_CHECK([$1],[$2],[$3],[$4],[$5],[$6])]) 13 | ]) 14 | -------------------------------------------------------------------------------- /contrib/vtrgb-dec2hex.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/bash 2 | # convert setvtrgb decimal file to hexadecimal 3 | 4 | if [[ -z "$1" ]]; then 5 | echo "usage: vtrgb-dec2hex.sh " 6 | exit 7 | fi 8 | 9 | declare -i x=0 10 | declare -i y=0 11 | declare -A d 12 | 13 | mapfile decimals < $1 14 | 15 | for line in ${decimals[@]}; do 16 | x=0 17 | IFS=, 18 | for dec in $line; do 19 | d[$y,$x]=$dec 20 | x+=1 21 | done 22 | y+=1 23 | done 24 | 25 | for x in {0..15}; do 26 | printf "#%02x%02x%02x\n" ${d[0,$x]} ${d[1,$x]} ${d[2,$x]} 27 | done 28 | -------------------------------------------------------------------------------- /tests/libcommon/libcommon-test01.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include "libcommon.h" 7 | 8 | int main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 9 | { 10 | const struct kbd_help opthelp[] = { 11 | { "-C, --console=DEV", "the console device to be used." }, 12 | { "-V, --version", "print version number." }, 13 | { "-h, --help", "print this usage message." }, 14 | { NULL, NULL } 15 | }; 16 | 17 | print_options(opthelp); 18 | 19 | return EXIT_SUCCESS; 20 | } 21 | -------------------------------------------------------------------------------- /tests/e2e-memcheck-getunimap.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([getunimap (empty unimap)]) 2 | AT_KEYWORDS([e2e getunimap memcheck]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | clrunimap || "$abs_top_builddir/src/clrunimap" 5 | E2E_MEMCHECK(["$abs_top_builddir/src/getunimap"]) 6 | AT_CLEANUP 7 | 8 | AT_SETUP([getunimap (cp866)]) 9 | AT_KEYWORDS([e2e getunimap memcheck]) 10 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 11 | clrunimap || "$abs_top_builddir/src/clrunimap" 12 | loadunimap "$abs_srcdir/data/unimaps/cp866.uni" 13 | E2E_MEMCHECK(["$abs_top_builddir/src/getunimap"]) 14 | AT_CLEANUP 15 | -------------------------------------------------------------------------------- /data/keymaps/i386/qwertz/de-latin1-nodeadkeys.map: -------------------------------------------------------------------------------- 1 | # de-latin1-nodeadkeys.map: German keymap 2 | # Due to Olaf Flebbe (flebbe@pluto.tat.physik.uni-tuebingen.de) 3 | 4 | include "de-latin1.map" 5 | 6 | control keycode 7 = Control_asciicircum 7 | keycode 13 = apostrophe grave 8 | keycode 27 = plus asterisk asciitilde 9 | keycode 41 = asciicircum degree 10 | 11 | # corresponding keys in de-latin1.map: 12 | # keycode 13 = dead_acute dead_grave 13 | # keycode 27 = plus asterisk dead_tilde 14 | # keycode 41 = dead_circumflex degree 15 | -------------------------------------------------------------------------------- /docs/man/man8/getkeycodes.8: -------------------------------------------------------------------------------- 1 | .\" @(#)man/man8/getkeycodes.8 1.0 Nov 8 22:30:48 MET 1994 2 | .TH GETKEYCODES 8 "8 Nov 1994" "kbd" 3 | .SH NAME 4 | getkeycodes \- print kernel scancode-to-keycode mapping table 5 | .SH SYNOPSIS 6 | .B getkeycodes 7 | [\fI\,options\/\fR] 8 | .SH DESCRIPTION 9 | The 10 | .I getkeycodes 11 | command prints the kernel scancode-to-keycode mapping table. 12 | .SH OPTIONS 13 | .TP 14 | \fB\-V\fR, \fB\-\-version\fR 15 | print version number; 16 | .TP 17 | \fB\-h\fR, \fB\-\-help\fR 18 | print this usage message. 19 | .SH "SEE ALSO" 20 | .BR setkeycodes (8) 21 | 22 | 23 | -------------------------------------------------------------------------------- /tests/e2e-misc-dumpkeys.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([dumpkeys (dump loadable keymap)]) 2 | AT_KEYWORDS([e2e dumpkeys]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | PREV_LANG="$LANG" 5 | export LANG=en_US.UTF-8 6 | kbd_mode -u -f 7 | "loadkeys" -c -s "$abs_srcdir/data/keymaps/VoidSymbol.map" 8 | E2E_CHECK(["$abs_top_builddir/src/loadkeys" -v us], [loadkeys us]) 9 | E2E_CHECK(["$abs_top_builddir/src/dumpkeys" -k]) 10 | cp -f -- stdout dumpkeys.map 11 | E2E_CHECK(["$abs_top_builddir/src/loadkeys" -u "$PWD/dumpkeys.map"], [loadkeys us]) 12 | export LANG="$PREV_LANG" 13 | kbd_mode -a 14 | AT_CLEANUP 15 | -------------------------------------------------------------------------------- /data/keymaps/mac/all/mac-template.map: -------------------------------------------------------------------------------- 1 | alt_is_meta 2 | include "mac-qwerty-layout" 3 | include "mac-linux-keys-bare.inc" 4 | #include "mac-euro.map" 5 | strings as usual 6 | 7 | # only here to have a working keymap 8 | include "mac-us.map" 9 | 10 | # some examples 11 | # Shift+ Shift+ 12 | # Shift+ Shift+ AltGr+ AltGr+ Shift+ AltGr+ AltGr+ Alt+ 13 | # Normal Shift AltGr AltGr Ctrl Ctrl Ctrl Ctrl Alt Alt Alt Alt Ctrl 14 | keycode 18 = one exclam a b c d e f g h i j k 15 | 16 | keycode 16 = z 17 | keycode 6 = y 18 | 19 | alt keycode 12 = at 20 | alt keycode 50 = bar 21 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/azerty-layout.inc: -------------------------------------------------------------------------------- 1 | # azerty-layout 2 | keycode 16 = a 3 | keycode 17 = z 4 | keycode 18 = e 5 | keycode 19 = r 6 | keycode 20 = t 7 | keycode 21 = y 8 | keycode 22 = u 9 | keycode 23 = i 10 | keycode 24 = o 11 | keycode 25 = p 12 | # 13 | keycode 30 = q 14 | keycode 31 = s 15 | keycode 32 = d 16 | keycode 33 = f 17 | keycode 34 = g 18 | keycode 35 = h 19 | keycode 36 = j 20 | keycode 37 = k 21 | keycode 38 = l 22 | keycode 39 = m 23 | # 24 | keycode 44 = w 25 | keycode 45 = x 26 | keycode 46 = c 27 | keycode 47 = v 28 | keycode 48 = b 29 | keycode 49 = n 30 | # 31 | -------------------------------------------------------------------------------- /data/keymaps/mac/include/mac-azerty-layout.inc: -------------------------------------------------------------------------------- 1 | # azerty-layout 2 | keycode 12 = a 3 | keycode 13 = z 4 | keycode 14 = e 5 | keycode 15 = r 6 | keycode 17 = t 7 | keycode 16 = y 8 | keycode 32 = u 9 | keycode 34 = i 10 | keycode 31 = o 11 | keycode 35 = p 12 | # 13 | keycode 0 = q 14 | keycode 1 = s 15 | keycode 2 = d 16 | keycode 3 = f 17 | keycode 5 = g 18 | keycode 4 = h 19 | keycode 38 = j 20 | keycode 40 = k 21 | keycode 37 = l 22 | keycode 41 = m 23 | # 24 | keycode 6 = w 25 | keycode 7 = x 26 | keycode 8 = c 27 | keycode 9 = v 28 | keycode 11 = b 29 | keycode 45 = n 30 | # 31 | -------------------------------------------------------------------------------- /data/keymaps/mac/include/mac-qwerty-layout.inc: -------------------------------------------------------------------------------- 1 | # qwerty-layout 2 | keycode 12 = q 3 | keycode 13 = w 4 | keycode 14 = e 5 | keycode 15 = r 6 | keycode 17 = t 7 | keycode 16 = y 8 | keycode 32 = u 9 | keycode 34 = i 10 | keycode 31 = o 11 | keycode 35 = p 12 | # 13 | keycode 0 = a 14 | keycode 1 = s 15 | keycode 2 = d 16 | keycode 3 = f 17 | keycode 5 = g 18 | keycode 4 = h 19 | keycode 38 = j 20 | keycode 40 = k 21 | keycode 37 = l 22 | # 23 | keycode 6 = z 24 | keycode 7 = x 25 | keycode 8 = c 26 | keycode 9 = v 27 | keycode 11 = b 28 | keycode 45 = n 29 | keycode 46 = m 30 | # 31 | -------------------------------------------------------------------------------- /data/keymaps/mac/include/mac-qwertz-layout.inc: -------------------------------------------------------------------------------- 1 | # qwertz-layout 2 | keycode 12 = q 3 | keycode 13 = w 4 | keycode 14 = e 5 | keycode 15 = r 6 | keycode 17 = t 7 | keycode 16 = z 8 | keycode 32 = u 9 | keycode 34 = i 10 | keycode 31 = o 11 | keycode 35 = p 12 | # 13 | keycode 0 = a 14 | keycode 1 = s 15 | keycode 2 = d 16 | keycode 3 = f 17 | keycode 5 = g 18 | keycode 4 = h 19 | keycode 38 = j 20 | keycode 40 = k 21 | keycode 37 = l 22 | # 23 | keycode 6 = y 24 | keycode 7 = x 25 | keycode 8 = c 26 | keycode 9 = v 27 | keycode 11 = b 28 | keycode 45 = n 29 | keycode 46 = m 30 | # 31 | -------------------------------------------------------------------------------- /tests/helpers/Makefile.am: -------------------------------------------------------------------------------- 1 | NULL = 2 | 3 | AM_CPPFLAGS = \ 4 | $(CODE_COVERAGE_CPPFLAGS) \ 5 | -I$(top_srcdir)/src/include \ 6 | -I$(top_srcdir)/src/libcommon \ 7 | -I$(top_srcdir)/src/libkeymap 8 | 9 | AM_CFLAGS = $(CHECK_CFLAGS) $(CODE_COVERAGE_CFLAGS) 10 | 11 | LDADD = \ 12 | $(top_builddir)/src/libcommon/libcommon.a \ 13 | $(top_builddir)/src/libkeymap/libkeymap.la \ 14 | $(top_builddir)/src/libkbdfile/libkbdfile.la \ 15 | @LIBINTL@ $(CODE_COVERAGE_LIBS) 16 | 17 | noinst_PROGRAMS = \ 18 | libkeymap-bkeymap \ 19 | libkeymap-dumpkeys \ 20 | libkeymap-mktable \ 21 | libkeymap-showmaps \ 22 | $(NULL) 23 | -------------------------------------------------------------------------------- /data/keymaps/mac/all/apple-a1243-sv-fn-reverse.map: -------------------------------------------------------------------------------- 1 | # Apple USB keyboard model A1243 with keypad, aluminium enclosure 2 | # 3 | # The mapping is designed to correspond to standard Apple keys, 4 | # including the behaviour of the shift and the alternate keys. The 5 | # behaviour of the Fn key is reversed for the feature and function 6 | # keys. Use "apple-a1243-sv.map" for default behaviour. 7 | # 8 | # idVendor 0x05ac Apple, Inc. 9 | # idProduct 0x0221 Aluminum Keyboard (ISO) 10 | # bCountryCode 13 International (ISO) Swedish localization 11 | 12 | include "apple-a1243-sv.map" 13 | include "apple-a1243-fn-reverse" 14 | -------------------------------------------------------------------------------- /data/unimaps/cp437.00-1f.uni: -------------------------------------------------------------------------------- 1 | # first 32 positions of cp437 2 | 0x000 U+fffd 3 | 0x001 U+263a 4 | 0x002 U+263b 5 | 0x003 U+2665 6 | 0x004 U+2666 7 | 0x005 U+2663 8 | 0x006 U+2660 9 | 0x007 U+2022 U+25cf 10 | 0x008 U+25d8 11 | 0x009 U+25cb 12 | 0x00a U+25d9 13 | 0x00b U+2642 14 | 0x00c U+2640 15 | 0x00d U+266a 16 | 0x00e U+266b 17 | 0x00f U+263c 18 | 0x010 U+25ba 19 | 0x011 U+25c4 20 | 0x012 U+2195 21 | 0x013 U+203c 22 | 0x014 U+00b6 23 | 0x015 U+00a7 24 | 0x016 U+25ac 25 | 0x017 U+21a8 26 | 0x018 U+2191 27 | 0x019 U+2193 28 | 0x01a U+2192 29 | 0x01b U+2190 30 | 0x01c U+221f 31 | 0x01d U+2194 32 | 0x01e U+25b2 33 | 0x01f U+25bc 34 | -------------------------------------------------------------------------------- /docs/reference/libkeymap/Makefile.am: -------------------------------------------------------------------------------- 1 | DOC_MODULE = libkeymap 2 | 3 | EXTRA_DIST = Doxyfile.in Doxyheader 4 | CLEANFILES = Doxyfile html/* 5 | 6 | htmldir = $(docdir)/html 7 | html_DATA = html/* 8 | 9 | $(abs_builddir)/Doxyfile: $(abs_srcdir)/Doxyfile.in 10 | $(SED) \ 11 | -e 's,[@]VERSION[@],$(VERSION),g' \ 12 | -e 's,[@]MODULE[@],$(DOC_MODULE),g' \ 13 | -e 's,[@]TOPDIR[@],$(abs_top_srcdir),g' \ 14 | -e 's,[@]SOURCEDIR[@],$(abs_top_srcdir)/src/$(DOC_MODULE),g' \ 15 | -e 's,[@]BUILDDIR[@],$(abs_builddir),g' \ 16 | <$< >$@ 17 | 18 | apidocs: $(abs_builddir)/Doxyfile 19 | doxygen $< 20 | 21 | html/*: apidocs 22 | -------------------------------------------------------------------------------- /data/keymaps/mac/all/mac-de-latin1-nodeadkeys.map: -------------------------------------------------------------------------------- 1 | # mac-de-latin1-nodeadkeys.map: German keymap 2 | # Due to Olaf Flebbe (flebbe@pluto.tat.physik.uni-tuebingen.de) 3 | # Mac version from olh@suse.de 4 | 5 | include "mac-de-latin1.map" 6 | 7 | keycode 24 = apostrophe grave 8 | keycode 30 = plus asterisk asciitilde 9 | keycode 50 = asciicircum degree 10 | altgr keycode 45 = asciitilde 11 | 12 | # corresponding keys in mac-de-latin1.map: 13 | # keycode 24 = dead_acute dead_grave 14 | # keycode 30 = plus asterisk dead_tilde 15 | # keycode 50 = dead_circumflex degree 16 | -------------------------------------------------------------------------------- /tests/libkeymap/libkeymap-test16.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct lk_ctx *ctx; 13 | 14 | ctx = lk_init(); 15 | lk_set_log_fn(ctx, NULL, NULL); 16 | 17 | if (lk_add_key(ctx, 0, 0, 16) != 0) 18 | kbd_error(EXIT_FAILURE, 0, "Unable to add keycode"); 19 | 20 | if (lk_get_key(ctx, 0, 0) != 16) 21 | kbd_error(EXIT_FAILURE, 0, "Unable to get keycode"); 22 | 23 | lk_free(ctx); 24 | 25 | return EXIT_SUCCESS; 26 | } 27 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/qwerty-layout.inc: -------------------------------------------------------------------------------- 1 | # qwerty-layout 2 | keycode 16 = q 3 | keycode 17 = w 4 | keycode 18 = e 5 | keycode 19 = r 6 | keycode 20 = t 7 | keycode 21 = y 8 | keycode 22 = u 9 | keycode 23 = i 10 | keycode 24 = o 11 | keycode 25 = p 12 | # 13 | keycode 30 = a 14 | keycode 31 = s 15 | keycode 32 = d 16 | keycode 33 = f 17 | keycode 34 = g 18 | keycode 35 = h 19 | keycode 36 = j 20 | keycode 37 = k 21 | keycode 38 = l 22 | # 23 | keycode 44 = z 24 | keycode 45 = x 25 | keycode 46 = c 26 | keycode 47 = v 27 | keycode 48 = b 28 | keycode 49 = n 29 | keycode 50 = m 30 | # 31 | include "compose" 32 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/qwertz-layout.inc: -------------------------------------------------------------------------------- 1 | # qwertz-layout 2 | keycode 16 = q 3 | keycode 17 = w 4 | keycode 18 = e 5 | keycode 19 = r 6 | keycode 20 = t 7 | keycode 21 = z 8 | keycode 22 = u 9 | keycode 23 = i 10 | keycode 24 = o 11 | keycode 25 = p 12 | # 13 | keycode 30 = a 14 | keycode 31 = s 15 | keycode 32 = d 16 | keycode 33 = f 17 | keycode 34 = g 18 | keycode 35 = h 19 | keycode 36 = j 20 | keycode 37 = k 21 | keycode 38 = l 22 | # 23 | keycode 44 = y 24 | keycode 45 = x 25 | keycode 46 = c 26 | keycode 47 = v 27 | keycode 48 = b 28 | keycode 49 = n 29 | keycode 50 = m 30 | # 31 | include "compose" 32 | -------------------------------------------------------------------------------- /docs/doc/font-formats/font-formats-5.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Font-formats recognized by the Linux kbd package: 6 | 7 | 8 | 9 | 10 | Next 11 | Previous 12 | Contents 13 |
14 |
15 | Next 16 | Previous 17 | Contents 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/README.init: -------------------------------------------------------------------------------- 1 | You don't have to log into a getty on every virtual console anymore: 2 | just run a single getty on tty1, put this line in your /etc/inittab: 3 | 4 | kb::kbrequest:/usr/bin/openvt -us 5 | 6 | and put this in your rc.local (or equivalent): 7 | 8 | echo "alt keycode 103 = Spawn_Console" | loadkeys 9 | 10 | Then, once you login, you can press alt-up-arrow to spawn another 11 | virtual console. This behavior requires a recent sysvinit package. 12 | I used 2.64, but as early as 2.60 might support it. You also must 13 | be using the proc filesystem. 14 | 15 | WARNING: this may circumvent vlock. 16 | 17 | Joshua Spoerri 18 | -------------------------------------------------------------------------------- /docs/man/man8misc/setvesablank.8: -------------------------------------------------------------------------------- 1 | .\" @(#)setvesablank.8 2 | .TH SETVESABLANK 8 "14 Feb 2002" "kbd" 3 | .SH NAME 4 | setvesablank \- Turn VESA screen blanking on or off 5 | .SH SYNOPSIS 6 | .I setvesablank 7 | [ [ 8 | .I -b --blanking 9 | ] 10 | .I on | ON | off | OFF 11 | ] [ 12 | .I -h --help 13 | ] 14 | [ 15 | .I -v --verbose 16 | ] 17 | .LP 18 | .SH DESCRIPTION 19 | .IX "setvesablank command" "" "\fLsetvesablank\fR command" 20 | .LP 21 | The program 22 | .B setvesablank 23 | sets VESA screen blanking on or off. 24 | 25 | .SH AUTHORS 26 | Andries Brouwer 27 | .br 28 | Man page by Alastair McKinstry 29 | -------------------------------------------------------------------------------- /src/libkeymap/modifiers.h: -------------------------------------------------------------------------------- 1 | #ifndef _MODIFIERS_H 2 | #define _MODIFIERS_H 3 | 4 | #include 5 | 6 | #define M_PLAIN 0 7 | #define M_SHIFT (1 << KG_SHIFT) 8 | #define M_CTRL (1 << KG_CTRL) 9 | #define M_ALT (1 << KG_ALT) 10 | #define M_ALTGR (1 << KG_ALTGR) 11 | #define M_SHIFTL (1 << KG_SHIFTL) 12 | #define M_SHIFTR (1 << KG_SHIFTR) 13 | #define M_CTRLL (1 << KG_CTRLL) 14 | #define M_CTRLR (1 << KG_CTRLR) 15 | #define M_CAPSSHIFT (1 << KG_CAPSSHIFT) 16 | 17 | typedef struct { 18 | const char *name; 19 | const int bit; 20 | } modifier_t; 21 | 22 | extern const modifier_t modifiers[]; 23 | 24 | #endif /* _MODIFIERS_H */ 25 | -------------------------------------------------------------------------------- /tests/data/keymaps/i386/include/qwerty-layout.inc: -------------------------------------------------------------------------------- 1 | # qwerty-layout 2 | keycode 16 = q 3 | keycode 17 = w 4 | keycode 18 = e 5 | keycode 19 = r 6 | keycode 20 = t 7 | keycode 21 = y 8 | keycode 22 = u 9 | keycode 23 = i 10 | keycode 24 = o 11 | keycode 25 = p 12 | # 13 | keycode 30 = a 14 | keycode 31 = s 15 | keycode 32 = d 16 | keycode 33 = f 17 | keycode 34 = g 18 | keycode 35 = h 19 | keycode 36 = j 20 | keycode 37 = k 21 | keycode 38 = l 22 | # 23 | keycode 44 = z 24 | keycode 45 = x 25 | keycode 46 = c 26 | keycode 47 = v 27 | keycode 48 = b 28 | keycode 49 = n 29 | keycode 50 = m 30 | # 31 | include "compose" 32 | -------------------------------------------------------------------------------- /src/vlock/Makefile.am: -------------------------------------------------------------------------------- 1 | include $(top_srcdir)/Makefile.common 2 | 3 | EXTRA_DIST = README.vlock vlock.pamd 4 | 5 | if VLOCK 6 | bin_PROGRAMS = vlock 7 | 8 | install-data-local: 9 | install -Dm644 $(srcdir)/vlock.pamd $(DESTDIR)$(sysconfdir)/pam.d/vlock 10 | uninstall-local: 11 | rm $(DESTDIR)$(sysconfdir)/pam.d/vlock 12 | endif 13 | 14 | vlock_SOURCES = \ 15 | auth.c \ 16 | pam_auth.h \ 17 | pam.c \ 18 | parse.c \ 19 | screen.c \ 20 | username.c \ 21 | vlock.c \ 22 | vlock.h \ 23 | vt.c 24 | 25 | vlock_CFLAGS = @PAM_CFLAGS@ @PAM_MISC_CFLAGS@ 26 | vlock_LDADD = $(top_builddir)/src/libcommon/libcommon.a @PAM_LIBS@ @PAM_MISC_LIBS@ 27 | -------------------------------------------------------------------------------- /docs/man/man1misc/splitfont.1: -------------------------------------------------------------------------------- 1 | .TH SPLITFONT 1 "2002-02-24" "kbd" 2 | 3 | .SH NAME 4 | splitfont \- extract characters from an ISO-type font. 5 | 6 | .SH SYNOPSIS 7 | .B 8 | splitfont 9 | .I fontfile 10 | .I ... 11 | 12 | .SH DESCRIPTION 13 | The command 14 | .B splitfont 15 | removes characters from a given font file; it removes all the 16 | specified characters from the named font file. 17 | .P 18 | This works for Linux console fonts, without PSF headers, 19 | and containing just 256 characters. 20 | .P 21 | The character range is of the form 22 | .LP 23 | .RS 24 | 17,23-30, 25 | .RE 26 | 27 | .SH "SEE ALSO" 28 | .BR setfont (8) 29 | -------------------------------------------------------------------------------- /docs/process/howto-compilation.md: -------------------------------------------------------------------------------- 1 | The common case 2 | 3 | ``` 4 | ./autogen.sh && ./configure && make 5 | ``` 6 | 7 | If something fails read the last lines. Typical reason to fail is a missing 8 | dependency, such as libtool or gettext. 9 | 10 | 11 | Autotools 12 | ========= 13 | 14 | `./autogen.sh` generates all files needed to compile and install the code (run 15 | it after checkout from git) 16 | 17 | `make distclean` removes all unnecessary files, but the code can still be 18 | recompiled with `./configure; make` 19 | 20 | `make dist-gzip` (or -bzip2) creates a tarball that can be configured and 21 | compiled without running `./autogen.sh` 22 | 23 | -------------------------------------------------------------------------------- /docs/man/man1/unicode_stop.1: -------------------------------------------------------------------------------- 1 | .\" @(#)unicode_stop.1 1.0 010203 aeb 2 | .TH UNICODE_STOP 1 "3 Feb 2001" "kbd" 3 | .SH NAME 4 | unicode_stop \- revert keyboard and console from unicode mode 5 | .SH SYNOPSIS 6 | .B unicode_stop 7 | .SH DESCRIPTION 8 | .IX "unicode_stop command" "" "\fLunicode_stop\fR command" 9 | .LP 10 | The 11 | .B unicode_stop 12 | command will more-or-less undo the effect of 13 | .BR unicode_start . 14 | It puts the keyboard in ASCII (XLATE) mode, and clears 15 | the console UTF-8 mode. 16 | .SH AUTHORS 17 | Andries Brouwer 18 | .SH "SEE ALSO" 19 | .BR kbd_mode (1), 20 | .BR unicode_start (1), 21 | .BR utf-8 (7), 22 | .BR setfont (8) 23 | -------------------------------------------------------------------------------- /data/keymaps/mac/all/apple-internal-0x0253-sv.map: -------------------------------------------------------------------------------- 1 | # Apple USB internal keyboard/trackpad (ISO) 2 | # 3 | # This keyboard is present in for example the MacBook 2011. 4 | # 5 | # The mapping is designed to correspond to standard Apple keys, 6 | # including the behaviour of the shift and the alternate keys. Use 7 | # "apple-internal-0x0253-sv-fn-reverse.map" to reverse the default 8 | # behaviour of the Fn key for feature and function keys. 9 | # 10 | # idVendor 0x05ac Apple, Inc. 11 | # idProduct 0x0253 Internal Keyboard/Trackpad (ISO) 12 | # bCountryCode 13 International (ISO) Swedish localization 13 | 14 | include "apple-a1048-sv.map" 15 | include "apple-a1243-fn" 16 | -------------------------------------------------------------------------------- /tests/libkeymap/libkeymap-test04.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct lk_ctx *ctx; 13 | 14 | ctx = lk_init(); 15 | 16 | if (ctx == NULL) 17 | kbd_error(EXIT_FAILURE, 0, "Unable to initialize structure by valid pointer"); 18 | 19 | if (lk_free(ctx) != 0) 20 | kbd_error(EXIT_FAILURE, 0, "Unable to free by valid pointer"); 21 | 22 | if (lk_free(NULL) == 0) 23 | kbd_error(EXIT_FAILURE, 0, "Possible to free NULL pointer"); 24 | 25 | return EXIT_SUCCESS; 26 | } 27 | -------------------------------------------------------------------------------- /tests/libkeymap/libkeymap-test14.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct lk_ctx *ctx; 13 | 14 | ctx = lk_init(); 15 | lk_set_log_fn(ctx, NULL, NULL); 16 | 17 | if (lk_add_key(ctx, 0, NR_KEYS + 1, 0) != 0) 18 | kbd_error(EXIT_FAILURE, 0, "Unable to use index > NR_KEYS"); 19 | 20 | if (lk_add_key(ctx, MAX_NR_KEYMAPS + 1, 0, 0) != 0) 21 | kbd_error(EXIT_FAILURE, 0, "Unable to use table > MAX_NR_KEYMAPS"); 22 | 23 | lk_free(ctx); 24 | 25 | return EXIT_SUCCESS; 26 | } 27 | -------------------------------------------------------------------------------- /tests/data/alt-is-meta/alt-is-meta.output: -------------------------------------------------------------------------------- 1 | keymap 000 2 | keymap 001 3 | keymap 002 4 | keymap 003 5 | keymap 004 6 | keymap 005 7 | keymap 006 8 | keymap 007 9 | keymap 008 10 | keymap 009 11 | keymap 012 12 | keymap 013 13 | keymap 016 14 | keymap 017 15 | keymap 018 16 | keymap 019 17 | keymap 020 18 | keymap 022 19 | keymap 024 20 | keymap 025 21 | keymap 028 22 | keymap 032 23 | keymap 033 24 | keymap 034 25 | keymap 035 26 | keymap 036 27 | keymap 037 28 | keymap 038 29 | keymap 039 30 | keymap 040 31 | keymap 041 32 | keymap 044 33 | keymap 045 34 | keymap 048 35 | keymap 049 36 | keymap 050 37 | keymap 051 38 | keymap 052 39 | keymap 054 40 | keymap 056 41 | keymap 057 42 | keymap 060 43 | -------------------------------------------------------------------------------- /tests/libkeymap/libkeymap-test18.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | int i = MAX_DIACR + 10; 13 | struct lk_ctx *ctx; 14 | struct lk_kbdiacr ptr; 15 | 16 | ptr.diacr = 0; 17 | ptr.base = 0; 18 | ptr.result = 0; 19 | 20 | ctx = lk_init(); 21 | lk_set_log_fn(ctx, NULL, NULL); 22 | 23 | while (i > 0) { 24 | if (lk_append_diacr(ctx, &ptr) != 0) 25 | kbd_error(EXIT_FAILURE, 0, "Unable to add diacr"); 26 | i--; 27 | } 28 | 29 | lk_free(ctx); 30 | 31 | return EXIT_SUCCESS; 32 | } 33 | -------------------------------------------------------------------------------- /data/keymaps/mac/all/apple-internal-0x0253-sv-fn-reverse.map: -------------------------------------------------------------------------------- 1 | # Apple USB internal keyboard/trackpad (ISO) 2 | # 3 | # This keyboard is present in for example the MacBook 2011. 4 | # 5 | # The mapping is designed to correspond to standard Apple keys, 6 | # including the behaviour of the shift and the alternate keys. The 7 | # behaviour of the Fn key is reversed for the feature and function 8 | # keys. Use "apple-internal-0x0253-sv.map" for default behaviour. 9 | # 10 | # idVendor 0x05ac Apple, Inc. 11 | # idProduct 0x0253 Internal Keyboard/Trackpad (ISO) 12 | # bCountryCode 13 International (ISO) Swedish localization 13 | 14 | include "apple-a1048-sv.map" 15 | include "apple-a1243-fn-reverse" 16 | -------------------------------------------------------------------------------- /src/README.openvt: -------------------------------------------------------------------------------- 1 | 2 | openvt opens a new vt and runs a command on it. It can be used as a simple 3 | way to start several console logins without having to type your passwd 4 | on each VT in turn. 5 | 6 | openvt can be used as a simpler to use replacement for the doshell(8) command. 7 | 8 | openvt is similar in functionality to the AIX/RS6000 command open. 9 | 10 | 11 | To use openvt it must be installed setuid root (type make install; make 12 | setuid) or all the VT device that are not allocated to getty should be 13 | read/write by all, e.g. 14 | 15 | chmod a=rw /dev/tty[5678] 16 | 17 | Note, new in v1.1 -- is required to separate command/child options. See 18 | the manual page. 19 | 20 | Jon. 21 | 22 | -------------------------------------------------------------------------------- /tests/e2e-memcheck-loadkeys.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([loadkeys (path/us.map)]) 2 | AT_KEYWORDS([e2e loadkeys memcheck]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | kbd_mode -u -f 5 | "loadkeys" -c -s "$abs_srcdir/data/keymaps/VoidSymbol.map" 6 | E2E_MEMCHECK(["$abs_top_builddir/src/loadkeys" "$abs_srcdir/data/keymaps/i386/qwerty/us.map"]) 7 | AT_CLEANUP 8 | 9 | AT_SETUP([loadkeys (path/ruwin_cplk-UTF-8.map)]) 10 | AT_KEYWORDS([e2e loadkeys memcheck]) 11 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 12 | kbd_mode -u -f 13 | "loadkeys" -c -s "$abs_srcdir/data/keymaps/VoidSymbol.map" 14 | E2E_MEMCHECK(["$abs_top_builddir/src/loadkeys" "$abs_srcdir/data/keymaps/i386/qwerty/ruwin_cplk-UTF-8.map"]) 15 | AT_CLEANUP 16 | -------------------------------------------------------------------------------- /tests/e2e-memcheck-setvtrgb.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([setvtrgb (vga)]) 2 | AT_KEYWORDS([e2e setvtrgb memcheck]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | E2E_MEMCHECK(["$abs_top_builddir/src/setvtrgb" vga]) 5 | AT_CLEANUP 6 | 7 | AT_SETUP([setvtrgb (vtrgb.ubuntu)]) 8 | AT_KEYWORDS([e2e setvtrgb memcheck]) 9 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 10 | E2E_MEMCHECK(["$abs_top_builddir/src/setvtrgb" "$abs_srcdir/data/setvtrgb/vtrgb.ubuntu"]) 11 | AT_CLEANUP 12 | 13 | AT_SETUP([setvtrgb (vtrgb.ubuntu.hex)]) 14 | AT_KEYWORDS([e2e setvtrgb memcheck]) 15 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 16 | E2E_MEMCHECK(["$abs_top_builddir/src/setvtrgb" "$abs_srcdir/data/setvtrgb/vtrgb.ubuntu.hex"]) 17 | AT_CLEANUP 18 | -------------------------------------------------------------------------------- /tests/libcommon.at: -------------------------------------------------------------------------------- 1 | AT_BANNER([libcommon unit tests]) 2 | 3 | AT_SETUP([test options output]) 4 | AT_KEYWORDS([libcommon unittest]) 5 | cp -f -- \ 6 | "$abs_srcdir/data/libcommon/options1.txt" \ 7 | experr 8 | UNITTEST_MEMCHECK([$abs_builddir/libcommon/libcommon-test01], [0], [], [experr]) 9 | AT_CLEANUP 10 | 11 | AT_SETUP([test footer message]) 12 | AT_KEYWORDS([libcommon unittest]) 13 | cp -f -- \ 14 | "$abs_srcdir/data/libcommon/footer.txt" \ 15 | experr 16 | UNITTEST_MEMCHECK([$abs_builddir/libcommon/libcommon-test02], [0], [], [experr]) 17 | AT_CLEANUP 18 | 19 | AT_SETUP([test get console]) 20 | AT_KEYWORDS([libcommon unittest]) 21 | UNITTEST_MEMCHECK([$abs_builddir/libcommon/libcommon-test03]) 22 | AT_CLEANUP 23 | -------------------------------------------------------------------------------- /contrib/psf.magic: -------------------------------------------------------------------------------- 1 | # 2 | # PC Screen (console) Fonts - psf1 header 3 | # 4 | 0 leshort 0x0436 psf screen font data 5 | >2 byte 0 256 characters, no index 6 | >2 byte 1 512 characters, no index 7 | >2 byte 2 256 characters, Unicode index 8 | >2 byte 3 512 characters, Unicode index 9 | >2 byte 4 256 characters, Unicode level 2 index 10 | >2 byte 5 512 characters, Unicode level 2 index 11 | >3 byte x 8x%d 12 | # 13 | # PC Screen (console) Fonts - psf2 header 14 | # 15 | 0 lelong 0x864ab572 psf2 screen font data 16 | >12 lelong&1 1 with Unicode index 17 | >16 lelong x \b, %d glyphs 18 | >28 lelong x \b, %dx 19 | >24 lelong x \b%d 20 | -------------------------------------------------------------------------------- /data/keymaps/i386/qwerty/pc110.map: -------------------------------------------------------------------------------- 1 | # pc110.map 2 | # Japanese/English keyboard on IBM PC110 Palm Top 3 | # The strange japanese key next to '1' is mapped to ESC 4 | # Those on either side of the space bar are mapped to SPACE 5 | # The one next to the right ALT key doesn't register! 6 | # The yen symbol is mapped to backslash (for no good reason) 7 | # 4 Apr 1997 robin@acm.org 8 | 9 | include "jp106.map" 10 | 11 | keycode 13 = circumflex underscore 12 | control keycode 13 = Control_underscore 13 | control shift keycode 13 = Control_underscore 14 | alt keycode 13 = Meta_asciitilde 15 | 16 | # Are these keyboards really different? 17 | # What scancode do these extra keys produce? 18 | # Info is welcome - aeb@cwi.nl 19 | -------------------------------------------------------------------------------- /docs/man/man1/psfgettable.1: -------------------------------------------------------------------------------- 1 | .\" @(#)psfgettable.1 2 | .TH PSFGETTABLE 1 "25 Oct 1994" "kbd" 3 | .SH NAME 4 | psfgettable \- extract the embedded Unicode character table from a console font 5 | .SH SYNOPSIS 6 | .B psfgettable 7 | .I fontfile 8 | .RI [ outfile ] 9 | .SH DESCRIPTION 10 | .IX "psfgettable command" "" "\fLpsfgettable\fR command" 11 | .LP 12 | .B psfgettable 13 | extracts the embedded Unicode character table from a .psf format 14 | console font into a human readable ASCII file of the format used by 15 | .BR psfaddtable (1). 16 | If the font file name is a single dash (\-), the font is read from 17 | standard input. 18 | .SH "SEE ALSO" 19 | .BR setfont (8), 20 | .BR psfaddtable (1), 21 | .BR psfstriptable (1), 22 | .BR psfxtable (1) 23 | -------------------------------------------------------------------------------- /tests/libkeymap/libkeymap-test15.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct lk_ctx *ctx; 13 | 14 | ctx = lk_init(); 15 | lk_set_log_fn(ctx, NULL, NULL); 16 | 17 | if (lk_add_key(ctx, 0, 0, 0) != 0) 18 | kbd_error(EXIT_FAILURE, 0, "Unable to add keycode = 0"); 19 | 20 | if (lk_add_key(ctx, 0, 0, 16) != 0) 21 | kbd_error(EXIT_FAILURE, 0, "Unable to add keycode = 16"); 22 | 23 | if (lk_add_key(ctx, 1, 1, K_HOLE) != 0) 24 | kbd_error(EXIT_FAILURE, 0, "Unable to add keycode = K_HOLE"); 25 | 26 | lk_free(ctx); 27 | 28 | return EXIT_SUCCESS; 29 | } 30 | -------------------------------------------------------------------------------- /data/keymaps/mac/all/apple-a1243-sv.map: -------------------------------------------------------------------------------- 1 | # Apple USB keyboard model A1243 with keypad, aluminium enclosure 2 | # 3 | # The mapping is designed to correspond to standard Apple keys, 4 | # including the behaviour of the shift and the alternate keys. Use 5 | # "apple-a1243-sv-fn-reverse.map" to reverse the default behaviour 6 | # of the Fn key for feature and function keys. 7 | # 8 | # idVendor 0x05ac Apple, Inc. 9 | # idProduct 0x0221 Aluminum Keyboard (ISO) 10 | # bCountryCode 13 International (ISO) Swedish localization 11 | 12 | include "apple-a1048-sv.map" 13 | include "apple-a1243-fn" 14 | 15 | keycode 41 = less greater VoidSymbol U+2264 U+2265 16 | keycode 86 = section degree VoidSymbol paragraph bullet 17 | keycode 83 = comma # Keypad comma 18 | -------------------------------------------------------------------------------- /docs/man/man1/psfstriptable.1: -------------------------------------------------------------------------------- 1 | .\" @(#)psfstriptable.1 2 | .TH PSFSTRIPTABLE 1 "25 Oct 1994" "kbd" 3 | .SH NAME 4 | psfstriptable \- remove the embedded Unicode character table from a console font 5 | .SH SYNOPSIS 6 | .B psfstriptable 7 | .I fontfile outfile 8 | .SH DESCRIPTION 9 | .IX "psfstriptable command" "" "\fLpsfstriptable\fR command" 10 | .LP 11 | .B psfstriptable 12 | reads a .psf format console font from 13 | .IR fontfile , 14 | removes the embedded Unicode font table if there is one, 15 | and writes the result to 16 | .IR outfile . 17 | An input file name of "\-" denotes standard input, 18 | and an output file name of "\-" denotes standard output. 19 | .SH "SEE ALSO" 20 | .BR setfont (8), 21 | .BR psfaddtable (1), 22 | .BR psfgettable (1), 23 | .BR psfxtable (1) 24 | -------------------------------------------------------------------------------- /src/libcommon/libcommon.h: -------------------------------------------------------------------------------- 1 | #ifndef _LIBCOMMON_H_ 2 | #define _LIBCOMMON_H_ 3 | 4 | #include 5 | #include 6 | 7 | #include "nls.h" 8 | 9 | struct kbd_help { 10 | const char *opts; 11 | const char *desc; 12 | }; 13 | 14 | // getfd.c 15 | int getfd(const char *fnam); 16 | 17 | // version.c 18 | void print_version_and_exit(void) 19 | KBD_ATTR_NORETURN; 20 | 21 | void print_options(const struct kbd_help *options); 22 | void print_report_bugs(void); 23 | 24 | // error.c 25 | void kbd_warning(const int errnum, const char *fmt, ...) 26 | KBD_ATTR_PRINTF(2, 3); 27 | 28 | void 29 | kbd_error(const int exitnum, const int errnum, const char *fmt, ...) 30 | KBD_ATTR_PRINTF(3, 4) 31 | KBD_ATTR_NORETURN; 32 | 33 | #endif /* _LIBCOMMON_H_ */ 34 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test09.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_open(NULL, TESTDIR "/data/findfile/test_0/keymaps/i386/qwerty/test0.map"); 13 | if (!fp) 14 | kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile"); 15 | 16 | const char *expect = TESTDIR "/data/findfile/test_0/keymaps/i386/qwerty/test0.map"; 17 | if (strcmp(expect, kbdfile_get_pathname(fp)) != 0) 18 | kbd_error(EXIT_FAILURE, 0, "unexpected file: %s (expected %s)", kbdfile_get_pathname(fp), expect); 19 | 20 | kbdfile_free(fp); 21 | 22 | return EXIT_SUCCESS; 23 | } 24 | -------------------------------------------------------------------------------- /data/keymaps/i386/azerty/wangbe.map: -------------------------------------------------------------------------------- 1 | # azerty.map with modified numeric key assignements 2 | # to fit an azerty wang belgium keyboard 3 | # Servaas Vandenberghe, servaas.vandenberghe@esat.kuleuven.ac.be - 1997. 4 | 5 | include "azerty.map" # has two alt keys 6 | keymaps 6 # add one more keymap 7 | 8 | keycode 100 = AltGr # install AltGr on right Alt 9 | 10 | control altgr keycode 83 = Boot 11 | control altgr keycode 111 = Boot 12 | 13 | altgr keycode 71 = less 14 | altgr keycode 72 = greater 15 | altgr keycode 73 = asciicircum 16 | altgr keycode 75 = bracketleft 17 | altgr keycode 76 = bracketright 18 | altgr keycode 77 = dollar 19 | altgr keycode 79 = ampersand 20 | altgr keycode 80 = at 21 | altgr keycode 81 = numbersign 22 | altgr keycode 82 = apostrophe 23 | altgr keycode 83 = comma 24 | -------------------------------------------------------------------------------- /contrib/sti.c: -------------------------------------------------------------------------------- 1 | /* 2 | * sti.c: put text in some tty input buffer - aeb, 951009 3 | * 4 | * You may have to be root if the tty is not your controlling tty. 5 | */ 6 | #include 7 | #include 8 | #include 9 | #include 10 | 11 | int main(int argc, char **argv) 12 | { 13 | int fd; 14 | char *s; 15 | 16 | if (argc != 3) { 17 | fprintf(stderr, "call: sti tty text\n"); 18 | exit(1); 19 | } 20 | fd = open(argv[1], O_RDONLY); 21 | if (fd < 0) { 22 | perror(argv[1]); 23 | fprintf(stderr, "sti: could not open tty\n"); 24 | exit(1); 25 | } 26 | s = argv[2]; 27 | while (*s) { 28 | if (ioctl(fd, TIOCSTI, s)) { 29 | perror("TIOCSTI"); 30 | fprintf(stderr, "sti: TIOCSTI ioctl failed\n"); 31 | exit(1); 32 | } 33 | s++; 34 | } 35 | return 0; 36 | } 37 | -------------------------------------------------------------------------------- /contrib/psfsplit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # (c) Ricardas Cepas . Copying policy: GNU GPL V2. 3 | set -o errexit 4 | #set -x 5 | if [ $# != 1 ] 6 | then echo ' Usage: psfsplit ' 7 | exit 8 | fi 9 | if [ `hexdump -e '/2 "%X" ' -n2 $1 ` != "436" ] 10 | then echo $1 -- non .psf file 11 | exit 12 | fi 13 | size=`hexdump -e '/1 "%i" ' -n1 -s2 $1 ` 14 | size=$[ ($size % 2 + 1) * 256 ] 15 | height=`hexdump -e '/1 "%i" ' -n1 -s3 $1 ` 16 | echo $size chars, height=$height 17 | mkdir $1_ 18 | dd bs=4 count=1 if=$1 of=$1_/#psf_header &>/dev/null 19 | i=0 20 | while let $[ i < $size ] 21 | do 22 | dd bs=1 count=$height skip=$[ $i * $height + 4 ] if=$1 \ 23 | of=$1_/`printf "%.3x" $i` &>/dev/null 24 | let i+=1 25 | done 26 | dd bs=1 skip=$[ $i * $height + 4 ] if=$1 of=$1_/map_tables &>/dev/null 27 | 28 | -------------------------------------------------------------------------------- /data/keymaps/i386/qwertz/de-mobii.map: -------------------------------------------------------------------------------- 1 | # de-latin1-nodeadkeys.map: German keymap 2 | # Due to Olaf Flebbe (flebbe@pluto.tat.physik.uni-tuebingen.de) 3 | 4 | include "de-latin1.map" 5 | 6 | control keycode 7 = Control_asciicircum 7 | keycode 13 = apostrophe grave 8 | keycode 27 = plus asterisk asciitilde 9 | keycode 41 = asciicircum degree 10 | 11 | # corresponding keys in de-latin1.map: 12 | # keycode 13 = dead_acute dead_grave 13 | # keycode 27 = plus asterisk dead_tilde 14 | # keycode 41 = dead_circumflex degree 15 | 16 | # < > | 17 | keycode 43 = less greater bar 18 | keycode 126 = Find 19 | keycode 102 = numbersign apostrophe 20 | 21 | #keycode 64 = Alt_L Meta_L 22 | #keycode 97 = numbersign apostrophe dead_grave dead_breve dead_grave dead_breve 23 | 24 | -------------------------------------------------------------------------------- /tests/helpers/libkeymap-bkeymap.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include "libcommon.h" 7 | 8 | int main(int argc KBD_ATTR_UNUSED, char **argv) 9 | { 10 | struct lk_ctx *ctx; 11 | struct kbdfile *fp; 12 | struct kbdfile_ctx *kbdfile_ctx; 13 | 14 | if ((kbdfile_ctx = kbdfile_context_new()) == NULL) { 15 | perror("nomem"); 16 | exit(1); 17 | } 18 | 19 | if ((fp = kbdfile_new(kbdfile_ctx)) == NULL) { 20 | perror("nomem"); 21 | exit(1); 22 | } 23 | 24 | ctx = lk_init(); 25 | 26 | kbdfile_set_pathname(fp, argv[1]); 27 | kbdfile_set_file(fp, fopen(argv[1], "r")); 28 | 29 | lk_parse_keymap(ctx, fp); 30 | lk_dump_bkeymap(ctx, stdout); 31 | 32 | kbdfile_free(fp); 33 | kbdfile_context_free(kbdfile_ctx); 34 | lk_free(ctx); 35 | return 0; 36 | } 37 | -------------------------------------------------------------------------------- /docs/man/man8misc/vcstime.8: -------------------------------------------------------------------------------- 1 | .\" Copyright 2003 Alastair McKinstry " 2 | .\" May be distributed under the GNU General Public License" 3 | .TH VCSTIME 8 "22 Jan 2003" "kbd" 4 | 5 | .SH NAME 6 | vcstime \- Show time in upper right hand corner of the console screen 7 | 8 | .SH SYNOPSIS 9 | .B vcstime 10 | 11 | .SH DESCRIPTION 12 | .PP 13 | .B vcstime 14 | shows the current time in the upper right\-hand corner of the console screen. 15 | .PP 16 | This simple program shows the current time in the corner of the console screen. 17 | .PP 18 | It needs to be run by root, in order to have write permissions to 19 | .I /dev/vcsa 20 | 21 | 22 | .SH AUTHORS 23 | .B vcstime 24 | was written by Andries Brouwer, based on a suggestion by Miguel de Icaza. 25 | This manual page was Written by Alastair McKinstry, Debian, Jan 2003. 26 | -------------------------------------------------------------------------------- /tests/helpers/libkeymap-mktable.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | #include "libcommon.h" 8 | 9 | int main(int argc KBD_ATTR_UNUSED, char **argv) 10 | { 11 | struct lk_ctx *ctx; 12 | struct kbdfile *fp; 13 | struct kbdfile_ctx *kbdfile_ctx; 14 | 15 | if ((kbdfile_ctx = kbdfile_context_new()) == NULL) { 16 | perror("nomem"); 17 | exit(1); 18 | } 19 | 20 | if ((fp = kbdfile_new(kbdfile_ctx)) == NULL) { 21 | perror("nomem"); 22 | exit(1); 23 | } 24 | 25 | ctx = lk_init(); 26 | 27 | kbdfile_set_pathname(fp, argv[1]); 28 | kbdfile_set_file(fp, fopen(argv[1], "r")); 29 | 30 | lk_parse_keymap(ctx, fp); 31 | lk_dump_ctable(ctx, stdout); 32 | 33 | kbdfile_free(fp); 34 | kbdfile_context_free(kbdfile_ctx); 35 | lk_free(ctx); 36 | return 0; 37 | } 38 | -------------------------------------------------------------------------------- /tests/check-data-keymaps.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh -efu 2 | 3 | TTY="${TTY:-/dev/tty60}" 4 | 5 | workdir="$(readlink -f "$PWD")" 6 | testdir="$(readlink -f "$0")" 7 | testdir="${testdir%/*}" 8 | topdir="${testdir%/*}" 9 | 10 | cd "$topdir" 11 | 12 | chmod 666 "$TTY" 13 | kbd_mode -f -u -C "$TTY" 14 | 15 | find "$PWD"/data/keymaps/i386/ \ 16 | \( -type f -a \! -regex '.*/include/.*' -a -name '*.map' \) \ 17 | -print | 18 | sort -d -o "$workdir"/keymaps.list 19 | 20 | export LOADKEYS_INCLUDE_PATH="$PWD/data/keymaps/**" 21 | 22 | ret=0 23 | while read -r keymap; do 24 | if ! "$BUILDDIR"/src/loadkeys -C "$TTY" "$keymap" >/tmp/out 2>&1; then 25 | { 26 | printf '### Failed check: %s\n' "$keymap" 27 | cat /tmp/out 28 | } >&2 29 | ret=1 30 | fi 31 | done < "$workdir"/keymaps.list 32 | 33 | rm -f -- "$workdir"/keymaps.list /tmp/out ||: 34 | 35 | exit $ret 36 | -------------------------------------------------------------------------------- /tests/libkbdfile/Makefile.am: -------------------------------------------------------------------------------- 1 | NULL = 2 | 3 | AM_CPPFLAGS = \ 4 | $(CODE_COVERAGE_CPPFLAGS) \ 5 | -I$(top_srcdir)/src/include \ 6 | -I$(top_srcdir)/src/libcommon \ 7 | -DTESTDIR=\"$(realpath $(top_srcdir))/tests\" 8 | 9 | AM_CFLAGS = $(CHECK_CFLAGS) $(CODE_COVERAGE_CFLAGS) 10 | 11 | LDADD = \ 12 | $(top_builddir)/src/libcommon/libcommon.a \ 13 | $(top_builddir)/src/libkbdfile/libkbdfile.la \ 14 | @LIBINTL@ $(CODE_COVERAGE_LIBS) 15 | 16 | noinst_PROGRAMS = \ 17 | libkbdfile-test01 \ 18 | libkbdfile-test02 \ 19 | libkbdfile-test03 \ 20 | libkbdfile-test04 \ 21 | libkbdfile-test05 \ 22 | libkbdfile-test06 \ 23 | libkbdfile-test07 \ 24 | libkbdfile-test08 \ 25 | libkbdfile-test09 \ 26 | libkbdfile-test10 \ 27 | libkbdfile-test11 \ 28 | libkbdfile-test12 \ 29 | libkbdfile-test13 \ 30 | libkbdfile-test14 \ 31 | libkbdfile-test15 \ 32 | $(NULL) 33 | -------------------------------------------------------------------------------- /tests/libkeymap/libkeymap-test12.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct lk_ctx *ctx; 13 | 14 | ctx = lk_init(); 15 | lk_set_log_fn(ctx, NULL, NULL); 16 | 17 | if (lk_add_map(ctx, MAX_NR_KEYMAPS) != 0) 18 | kbd_error(EXIT_FAILURE, 0, "Unable to define map == MAX_NR_KEYMAPS"); 19 | 20 | if (lk_add_map(ctx, MAX_NR_KEYMAPS * 2) != 0) 21 | kbd_error(EXIT_FAILURE, 0, "Unable to define map == MAX_NR_KEYMAPS*2"); 22 | 23 | if (lk_add_map(ctx, 0) != 0) 24 | kbd_error(EXIT_FAILURE, 0, "Unable to define map"); 25 | 26 | if (lk_add_map(ctx, 0) != 0) 27 | kbd_error(EXIT_FAILURE, 0, "Unable to define map"); 28 | 29 | lk_free(ctx); 30 | 31 | return EXIT_SUCCESS; 32 | } 33 | -------------------------------------------------------------------------------- /src/libkeymap/ksyms.h: -------------------------------------------------------------------------------- 1 | #ifndef KSYMS_H 2 | #define KSYMS_H 3 | 4 | #include "keymap.h" 5 | 6 | typedef struct { 7 | const unsigned short uni; 8 | const char *name; 9 | } sym; 10 | 11 | typedef struct { 12 | const char *const *table; 13 | const unsigned short size; 14 | } syms_entry; 15 | 16 | struct syn { 17 | const char *synonym; 18 | const char *official_name; 19 | }; 20 | extern struct syn const synonyms[]; 21 | 22 | extern const int syms_size; 23 | extern const int syn_size; 24 | 25 | const char *get_sym(struct lk_ctx *ctx, int ktype, int index); 26 | int get_sym_size(struct lk_ctx *ctx, int ktype); 27 | 28 | const char *codetoksym(struct lk_ctx *ctx, int code); 29 | int ksymtocode(struct lk_ctx *ctx, const char *s, int direction); 30 | int convert_code(struct lk_ctx *ctx, int code, int direction); 31 | int add_capslock(struct lk_ctx *ctx, int code); 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /data/unimaps/iso01.uni: -------------------------------------------------------------------------------- 1 | # 2 | # Unicode mapping table for ISO 8859-1 fonts iso01.* 3 | # [use: unicode_start iso01.f16 iso01] 4 | # 5 | 0x20 U+0020 U+00a0 U+2000 U+2001 U+2002 U+2003 U+2004 U+2005 U+2006 U+2007 U+2008 U+2009 U+200a U+202f 6 | 0x21-0x7e idem 7 | 0x7f U+2302 8 | 0xa0-0xff idem 9 | 0x00 U+fffd 10 | 0x01 U+263A 11 | 0x02 U+263B 12 | 0x03 U+2665 13 | 0x04 U+2666 14 | 0x05 U+2663 15 | 0x06 U+2660 16 | 0x07 U+2022 U+25cf 17 | 0x08 U+25D8 18 | 0x09 U+25CB 19 | 0x0A U+25D9 20 | 0x0B U+2642 21 | 0x0C U+2640 22 | 0x0D U+266A 23 | 0x0E U+266B 24 | 0x0E U+266C 25 | 0x0F U+263C 26 | 0x10 U+25B6 27 | 0x10 U+25BA 28 | 0x11 U+25C0 29 | 0x11 U+25C4 30 | 0x12 U+2195 31 | 0x13 U+203C 32 | 0x14 U+00B6 33 | 0x15 U+00A7 34 | 0x16 U+25AC 35 | 0x17 U+21A8 36 | 0x18 U+2191 37 | 0x19 U+2193 38 | 0x1A U+2192 39 | 0x1B U+2190 40 | 0x1C U+221F 41 | 0x1C U+2319 42 | 0x1D U+2194 43 | 0x1E U+25B2 44 | 0x1F U+25BC 45 | -------------------------------------------------------------------------------- /m4/ax_file_escapes.m4: -------------------------------------------------------------------------------- 1 | # =========================================================================== 2 | # https://www.gnu.org/software/autoconf-archive/ax_file_escapes.html 3 | # =========================================================================== 4 | # 5 | # SYNOPSIS 6 | # 7 | # AX_FILE_ESCAPES 8 | # 9 | # DESCRIPTION 10 | # 11 | # Writes the specified data to the specified file. 12 | # 13 | # LICENSE 14 | # 15 | # Copyright (c) 2008 Tom Howard 16 | # 17 | # Copying and distribution of this file, with or without modification, are 18 | # permitted in any medium without royalty provided the copyright notice 19 | # and this notice are preserved. This file is offered as-is, without any 20 | # warranty. 21 | 22 | #serial 8 23 | 24 | AC_DEFUN([AX_FILE_ESCAPES],[ 25 | AX_DOLLAR="\$" 26 | AX_SRB="\\135" 27 | AX_SLB="\\133" 28 | AX_BS="\\\\" 29 | AX_DQ="\"" 30 | ]) 31 | -------------------------------------------------------------------------------- /tests/data/libkeymap/keymap3.map: -------------------------------------------------------------------------------- 1 | plain keycode 17 = q 2 | shift Keycode 17 = w 3 | AltGr Keycode 17 = e 4 | shift AltGr Keycode 17 = r 5 | control Keycode 17 = t 6 | shift control Keycode 17 = y 7 | AltGr control Keycode 17 = u 8 | shift AltGr control Keycode 17 = i 9 | Alt Keycode 17 = o 10 | shift Alt Keycode 17 = p 11 | AltGr Alt Keycode 17 = a 12 | shift AltGr Alt Keycode 17 = s 13 | control Alt Keycode 17 = d 14 | shift control Alt Keycode 17 = f 15 | AltGr control Alt Keycode 17 = g 16 | shift AltGr control Alt Keycode 17 = h 17 | shiftl Keycode 17 = j 18 | shift shiftl Keycode 17 = k 19 | AltGr shiftl Keycode 17 = l 20 | shift AltGr shiftl Keycode 17 = z 21 | control shiftl Keycode 17 = x 22 | shift control shiftl KeyCode 17 = c 23 | AltGr control shiftl KeyCode 17 = v 24 | shift AltGr control shiftl KeyCode 17 = b 25 | Alt shiftl KeyCode 17 = n 26 | shift Alt shiftl KeyCode 17 = m 27 | -------------------------------------------------------------------------------- /data/keymaps/i386/include/linux-with-alt-and-altgr.inc: -------------------------------------------------------------------------------- 1 | include "linux-keys-bare" 2 | 3 | keycode 100 = AltGr 4 | alt keycode 100 = Compose 5 | 6 | altgr keycode 70 = Show_Registers 7 | alt keycode 70 = Scroll_Lock 8 | 9 | control altgr keycode 83 = Boot 10 | control altgr keycode 111 = Boot 11 | 12 | # Hex keypad keys (for giving a Unicode value in 4 hex digits) 13 | # Follow lt.map and assign Hex_A .. Hex_F to keypad border. 14 | altgr keycode 55 = Hex_C 15 | altgr keycode 69 = Hex_A 16 | altgr keycode 71 = Hex_7 17 | altgr keycode 72 = Hex_8 18 | altgr keycode 73 = Hex_9 19 | altgr keycode 74 = Hex_D 20 | altgr keycode 75 = Hex_4 21 | altgr keycode 76 = Hex_5 22 | altgr keycode 77 = Hex_6 23 | altgr keycode 78 = Hex_E 24 | altgr keycode 79 = Hex_1 25 | altgr keycode 80 = Hex_2 26 | altgr keycode 81 = Hex_3 27 | altgr keycode 82 = Hex_0 28 | altgr keycode 96 = Hex_F 29 | altgr keycode 98 = Hex_B 30 | -------------------------------------------------------------------------------- /tests/data/alt-is-meta/alt-is-meta.map: -------------------------------------------------------------------------------- 1 | keymaps 0-9,12-13,16-20,22,24-25,28,32-41,44-45,48-52,54,56-57,60 2 | alt_is_meta 3 | keycode 16 = +q Q backslash backslash Control_q \ 4 | Control_q Control_backslash Control_backslash \ 5 | Meta_q Meta_Q VoidSymbol VoidSymbol +Q \ 6 | q VoidSymbol VoidSymbol VoidSymbol VoidSymbol \ 7 | Meta_Q Meta_q VoidSymbol \ 8 | +q Q backslash backslash Control_q \ 9 | Control_q Control_backslash Control_backslash \ 10 | Meta_q Meta_Q VoidSymbol VoidSymbol +Q \ 11 | q VoidSymbol VoidSymbol VoidSymbol VoidSymbol \ 12 | Meta_Q Meta_q VoidSymbol 13 | -------------------------------------------------------------------------------- /src/totextmode.c: -------------------------------------------------------------------------------- 1 | /* 2 | * totextmode.c - aeb - 2000-01-20 3 | */ 4 | #include "config.h" 5 | 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | 15 | #include "libcommon.h" 16 | 17 | int main(int argc, char *argv[]) 18 | { 19 | int fd; 20 | 21 | setuplocale(); 22 | 23 | if (argc == 2 && !strcmp(argv[1], "-V")) 24 | print_version_and_exit(); 25 | 26 | if (argc != 2) { 27 | kbd_error(EXIT_FAILURE, 0, _("Usage: %s [option...]\n"), program_invocation_short_name); 28 | } 29 | 30 | if ((fd = getfd(NULL)) < 0) 31 | kbd_error(EXIT_FAILURE, 0, _("Couldn't get a file descriptor referring to the console.")); 32 | 33 | if (ioctl(fd, KDSETMODE, KD_TEXT)) { 34 | kbd_error(EXIT_FAILURE, errno, "totextmode: KDSETMODE"); 35 | } 36 | return EXIT_SUCCESS; 37 | } 38 | -------------------------------------------------------------------------------- /tests/data/keymaps/i386/include/linux-with-alt-and-altgr.inc: -------------------------------------------------------------------------------- 1 | include "linux-keys-bare" 2 | 3 | keycode 100 = AltGr 4 | alt keycode 100 = Compose 5 | 6 | altgr keycode 70 = Show_Registers 7 | alt keycode 70 = Scroll_Lock 8 | 9 | control altgr keycode 83 = Boot 10 | control altgr keycode 111 = Boot 11 | 12 | # Hex keypad keys (for giving a Unicode value in 4 hex digits) 13 | # Follow lt.map and assign Hex_A .. Hex_F to keypad border. 14 | altgr keycode 55 = Hex_C 15 | altgr keycode 69 = Hex_A 16 | altgr keycode 71 = Hex_7 17 | altgr keycode 72 = Hex_8 18 | altgr keycode 73 = Hex_9 19 | altgr keycode 74 = Hex_D 20 | altgr keycode 75 = Hex_4 21 | altgr keycode 76 = Hex_5 22 | altgr keycode 77 = Hex_6 23 | altgr keycode 78 = Hex_E 24 | altgr keycode 79 = Hex_1 25 | altgr keycode 80 = Hex_2 26 | altgr keycode 81 = Hex_3 27 | altgr keycode 82 = Hex_0 28 | altgr keycode 96 = Hex_F 29 | altgr keycode 98 = Hex_B 30 | -------------------------------------------------------------------------------- /tests/ci/qemu-run-build-and-tests.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -efu 2 | 3 | : > "$HOME"/artifacts.tar 4 | 5 | fail_with_artifacts() { 6 | files=() 7 | 8 | for f in config.log tests/testsuite.dir tests/testsuite.log; do 9 | [ ! -e "$f" ] || files+=("$f") 10 | done 11 | 12 | [ "${#files[@]}" -eq 0 ] || 13 | tar --append -f "$HOME"/artifacts.tar "${files[@]}" 14 | 15 | exit 1 16 | } 17 | 18 | set -x 19 | 20 | ci_arch="$1" 21 | shift 22 | 23 | nproc=$(grep -c ^processor /proc/cpuinfo || echo 1) 24 | 25 | cd "/tmp/kbd" 26 | 27 | tests/configure.sh --datadir="$PWD/tests/data" --enable-memcheck || 28 | fail_with_artifacts 29 | 30 | make -j$nproc V=1 CFLAGS+="-g -O0" 31 | 32 | export CHECK_KEYWORDS="unittest e2e loadability" 33 | export SANDBOX="priviliged" 34 | export TTY="/dev/tty60" 35 | 36 | case "$ci_arch" in 37 | x86_64) 38 | export HAVE_VGA=1 39 | ;; 40 | esac 41 | 42 | sudo -E tests/check.sh || 43 | fail_with_artifacts 44 | -------------------------------------------------------------------------------- /docs/man/man8/showconsolefont.8: -------------------------------------------------------------------------------- 1 | .TH SHOWCONSOLEFONT 8 "24 October 2024" "kbd" 2 | 3 | .SH NAME 4 | showconsolefont \- Show the current EGA/VGA console screen font 5 | 6 | .SH SYNOPSIS 7 | .B showconsolefont 8 | [\fI\,options\/\fR] 9 | 10 | .SH DESCRIPTION 11 | The 12 | .B showconsolefont 13 | command outputs the current console font to stdout. 14 | On Linux 2.6.1 and later, the option 15 | .B \-C 16 | allows one to indicate the console involved. Its argument is a pathname. 17 | 18 | .SH OPTIONS 19 | .TP 20 | \fB\-i\fR, \fB\-\-info\fR 21 | don't print out the font table, just show: ROWSxCOLSxCOUNT and exit. 22 | .TP 23 | \fB\-C\fR, \fB\-\-console\fR=\fI\,DEV\/\fR 24 | the console device to be used. 25 | .TP 26 | \fB\-v\fR, \fB\-\-verbose\fR 27 | be more verbose. 28 | .TP 29 | \fB\-V\fR, \fB\-\-version\fR 30 | print version number. 31 | .TP 32 | \fB\-h\fR, \fB\-\-help\fR 33 | print this usage message. 34 | 35 | .SH "SEE ALSO" 36 | .BR setfont (8) 37 | -------------------------------------------------------------------------------- /docs/man/man8misc/setlogcons.8: -------------------------------------------------------------------------------- 1 | .TH SETLOGCONS 8 "24 October 2024" "kbd" 2 | 3 | .SH NAME 4 | setlogcons \- Send kernel messages to console N 5 | .SH SYNOPSIS 6 | .B setlogcons 7 | [\fI\,options\/\fR] 8 | [\fI\,N\/\fR] 9 | 10 | .SH DESCRIPTION 11 | The command 12 | .B setlogcons 13 | .I N 14 | sets all kernel messages to the console specified as N. 15 | .P 16 | By default kernel messages are sent to the current console. 17 | .P 18 | To change the level of messages sent, use 19 | .B dmesg 20 | 21 | .SH OPTIONS 22 | .TP 23 | \fB\-C\fR, \fB\-\-console\fR=\fI\,DEV\/\fR 24 | the console device to be used. 25 | .TP 26 | \fB\-V\fR, \fB\-\-version\fR 27 | print version number. 28 | .TP 29 | \fB\-h\fR, \fB\-\-help\fR 30 | print this usage message. 31 | 32 | .SH AUTHORS 33 | .B setlogcons 34 | was originally written by Andries Brouwer for the kbd package. 35 | .P 36 | This manual page was written by Alastair McKinstry. 37 | .SH "SEE ALSO" 38 | .BR dmesg (1) 39 | -------------------------------------------------------------------------------- /docs/man/man1/chvt.1: -------------------------------------------------------------------------------- 1 | .\" @(#)chvt.1 1.0 970126 aeb 2 | .TH CHVT 1 "24 October 2024" "kbd" 3 | .SH NAME 4 | chvt \- change foreground virtual terminal 5 | .SH SYNOPSIS 6 | .B chvt 7 | [\fI\,option\/\fR...] 8 | [\fI\,N\/\fR] 9 | .SH DESCRIPTION 10 | The command 11 | .B chvt 12 | .I N 13 | makes 14 | .I /dev/ttyN 15 | the foreground terminal. 16 | (The corresponding screen is created if it did not exist yet. 17 | To get rid of unused VTs, 18 | use 19 | .BR deallocvt (1).) 20 | The key combination 21 | .RI (Ctrl-)LeftAlt-F N 22 | (with 23 | .I N 24 | in the range 1-12) usually has a similar effect. 25 | .SH OPTIONS 26 | .TP 27 | \fB\-C\fR, \fB\-\-console\fR=\fI\,DEV\/\fR 28 | the console device to be used. 29 | .TP 30 | \fB\-V\fR, \fB\-\-version\fR 31 | print version number. 32 | .TP 33 | \fB\-h\fR, \fB\-\-help\fR 34 | print this usage message. 35 | .SH AUTHORS 36 | Andries Brouwer 37 | .SH "SEE ALSO" 38 | .BR deallocvt (1), 39 | .BR openvt (1) 40 | -------------------------------------------------------------------------------- /docs/man/man8misc/clrunimap.8: -------------------------------------------------------------------------------- 1 | .TH CLRUNIMAP 8 "24 October 2024" "kbd" 2 | 3 | .SH NAME 4 | clrunimap \- Clear the current console unicode map 5 | 6 | .SH SYNOPSIS 7 | .B clrunimap 8 | [\fI\,options\/\fR] 9 | 10 | .SH DESCRIPTION 11 | 12 | The command 13 | .B clrunimap 14 | clears the unicode map (also called "Screen Font Map") for the current console. 15 | 16 | .SH OPTIONS 17 | .TP 18 | \fB\-C\fR, \fB\-\-console\fR=\fI\,DEV\/\fR 19 | the console device to be used. 20 | .TP 21 | \fB\-V\fR, \fB\-\-version\fR 22 | print version number. 23 | .TP 24 | \fB\-h\fR, \fB\-\-help\fR 25 | print this usage message. 26 | 27 | .SH NOTES 28 | If you are not the maintainer of the kbd package, it is very unlikely 29 | that you want to use this command. On many kernels the result will be 30 | that your screen is black. On some kernels a reboot will be necessary. 31 | .br 32 | Use 33 | .B "setfont -u" 34 | to load a Unicode map for a console. 35 | .SH SEE ALSO 36 | .BR setfont (8). 37 | -------------------------------------------------------------------------------- /src/libcommon/error.c: -------------------------------------------------------------------------------- 1 | #include "config.h" 2 | 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | #include "libcommon.h" 10 | 11 | void 12 | kbd_warning(const int errnum, const char *fmt, ...) 13 | { 14 | va_list ap; 15 | 16 | va_start(ap, fmt); 17 | 18 | fprintf(stderr, "%s: ", program_invocation_short_name); 19 | vfprintf(stderr, fmt, ap); 20 | 21 | if (errnum > 0) 22 | fprintf(stderr, ": %s", strerror(errnum)); 23 | 24 | fprintf(stderr, "\n"); 25 | va_end(ap); 26 | return; 27 | } 28 | 29 | void 30 | kbd_error(const int exitnum, const int errnum, const char *fmt, ...) 31 | { 32 | va_list ap; 33 | va_start(ap, fmt); 34 | 35 | fprintf(stderr, "%s: ", program_invocation_short_name); 36 | vfprintf(stderr, fmt, ap); 37 | 38 | va_end(ap); 39 | 40 | if (errnum > 0) 41 | fprintf(stderr, ": %s", strerror(errnum)); 42 | 43 | fprintf(stderr, "\n"); 44 | exit(exitnum); 45 | } 46 | -------------------------------------------------------------------------------- /tests/helpers/libkeymap-showmaps.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include "libcommon.h" 7 | #include "contextP.h" 8 | 9 | int main(int argc KBD_ATTR_UNUSED, char **argv) 10 | { 11 | int i; 12 | struct lk_ctx *ctx; 13 | struct kbdfile *fp; 14 | struct kbdfile_ctx *kbdfile_ctx; 15 | 16 | if ((kbdfile_ctx = kbdfile_context_new()) == NULL) { 17 | perror("nomem"); 18 | exit(1); 19 | } 20 | 21 | if ((fp = kbdfile_new(kbdfile_ctx)) == NULL) { 22 | perror("nomem"); 23 | exit(1); 24 | } 25 | 26 | ctx = lk_init(); 27 | 28 | kbdfile_set_pathname(fp, argv[1]); 29 | kbdfile_set_file(fp, fopen(argv[1], "r")); 30 | 31 | lk_parse_keymap(ctx, fp); 32 | 33 | for (i = 0; i < ctx->keymap->total; i++) { 34 | if (!lk_map_exists(ctx, i)) 35 | continue; 36 | printf("keymap %03d\n", i); 37 | } 38 | 39 | kbdfile_free(fp); 40 | kbdfile_context_free(kbdfile_ctx); 41 | lk_free(ctx); 42 | return 0; 43 | } 44 | -------------------------------------------------------------------------------- /data/consolefonts/README.Greek: -------------------------------------------------------------------------------- 1 | Greek fonts found in kbd-1.06.tar.gz: 2 | 3 | iso07.* follows ISO 8859-7. 4 | 5 | gr928* refers to elot928 which is the same. 6 | (plain gr928 is elot928 with cp437 control chars; 7 | gr928a* is gr928 with Euro at the 0xa4 position; 8 | gr928b* is gr928 with the cp437 symbols in the 0x80-0x9f positions 9 | and a filler symbol on the positions empty in ISO 8859-7) 10 | 11 | gr737* somewhat follow cp737. 12 | (gr737a* is cp737 with cp437 control chars; 13 | gr737b* is gr737a with end replaced by cp865; 14 | gr737c* is gr737a with I-diaeresis, Y-diaeresis replaced by integral) 15 | 16 | Some of these are derived from fonts contributed by 17 | Sotiris Tsimbonis . 18 | 19 | There used to be a font grcourier rather similar to but uglier than 20 | gr928-8x16-thin.psfu, so it was deleted. 21 | 22 | Some distributions have Greek fonts with names like lat7*, 23 | but latin-7 is ISO 8859-13, a character set for the Baltic Rim. 24 | -------------------------------------------------------------------------------- /tests/data/dumpkeys-fulltable/qwerty-layout.map: -------------------------------------------------------------------------------- 1 | keymaps 0 2 | alt_is_meta 3 | keycode 16 = q 4 | keycode 17 = w 5 | keycode 18 = e 6 | keycode 19 = r 7 | keycode 20 = t 8 | keycode 21 = y 9 | keycode 22 = u 10 | keycode 23 = i 11 | keycode 24 = o 12 | keycode 25 = p 13 | keycode 30 = a 14 | keycode 31 = s 15 | keycode 32 = d 16 | keycode 33 = f 17 | keycode 34 = g 18 | keycode 35 = h 19 | keycode 36 = j 20 | keycode 37 = k 21 | keycode 38 = l 22 | keycode 44 = z 23 | keycode 45 = x 24 | keycode 46 = c 25 | keycode 47 = v 26 | keycode 48 = b 27 | keycode 49 = n 28 | keycode 50 = m 29 | -------------------------------------------------------------------------------- /m4/ax_add_am_macro_static.m4: -------------------------------------------------------------------------------- 1 | # =========================================================================== 2 | # https://www.gnu.org/software/autoconf-archive/ax_add_am_macro_static.html 3 | # =========================================================================== 4 | # 5 | # SYNOPSIS 6 | # 7 | # AX_ADD_AM_MACRO_STATIC([RULE]) 8 | # 9 | # DESCRIPTION 10 | # 11 | # Adds the specified rule to $AMINCLUDE. 12 | # 13 | # LICENSE 14 | # 15 | # Copyright (c) 2009 Tom Howard 16 | # Copyright (c) 2009 Allan Caffee 17 | # 18 | # Copying and distribution of this file, with or without modification, are 19 | # permitted in any medium without royalty provided the copyright notice 20 | # and this notice are preserved. This file is offered as-is, without any 21 | # warranty. 22 | 23 | #serial 8 24 | 25 | AC_DEFUN([AX_ADD_AM_MACRO_STATIC],[ 26 | AC_REQUIRE([AX_AM_MACROS_STATIC]) 27 | AX_AC_APPEND_TO_FILE(AMINCLUDE_STATIC,[$1]) 28 | ]) 29 | -------------------------------------------------------------------------------- /src/include/kbd/keymap/logging.h: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: LGPL-2.0-or-later 2 | /** 3 | * @file logging.h 4 | * @brief Functions for logging. 5 | */ 6 | #ifndef _KBD_LIBKEYMAP_LOGGING_H_ 7 | #define _KBD_LIBKEYMAP_LOGGING_H_ 8 | 9 | #include 10 | 11 | #include 12 | 13 | #include 14 | 15 | typedef void (*lk_logger_t)(void *, int, const char *, int, const char *, const char *, va_list) 16 | KBD_ATTR_PRINTF(6, 0) 17 | KBD_ATTR_NONNULL(1); 18 | 19 | /** 20 | * Logging function which uses @ref lk_ctx::log_fn "log_fn" and 21 | * @ref lk_ctx::log_data "log_data" to write log messages. 22 | * @param ctx is a keymap library context. 23 | * @param priority indicates the priority. 24 | */ 25 | void 26 | lk_log(struct lk_ctx *ctx, int priority, 27 | const char *file, int line, const char *fn, 28 | const char *fmt, ...) 29 | KBD_ATTR_PRINTF(6, 7) 30 | KBD_ATTR_NONNULL(1); 31 | 32 | #endif /* _KBD_LIBKEYMAP_LOGGING_H_ */ 33 | -------------------------------------------------------------------------------- /src/libkfont/libkfont.map: -------------------------------------------------------------------------------- 1 | # SPDX-License-Identifier: LGPL-2.0-or-later 2 | # 3 | # Copyright (C) 2020 Alexey Gladkov 4 | # 5 | 6 | KFONT_1.0 { 7 | global: 8 | kfont_activatemap; 9 | kfont_disactivatemap; 10 | kfont_get_font; 11 | kfont_get_fontsize; 12 | kfont_get_unicodemap; 13 | kfont_get_uniscrnmap; 14 | kfont_init; 15 | kfont_free; 16 | kfont_load_font; 17 | kfont_load_fonts; 18 | kfont_load_consolemap; 19 | kfont_load_unicodemap; 20 | kfont_put_unicodemap; 21 | kfont_put_uniscrnmap; 22 | kfont_read_psffont; 23 | kfont_restore_font; 24 | kfont_save_font; 25 | kfont_save_consolemap; 26 | kfont_save_unicodemap; 27 | kfont_set_option; 28 | kfont_unset_option; 29 | kfont_write_psffont; 30 | kfont_read_unicodetable; 31 | kfont_write_unicodetable; 32 | kfont_get_verbosity; 33 | kfont_inc_verbosity; 34 | kfont_set_logger; 35 | 36 | local: 37 | *; 38 | }; 39 | -------------------------------------------------------------------------------- /data/keymaps/mac/all/mac-pt-latin1.map: -------------------------------------------------------------------------------- 1 | # mac-pt-latin1.map Ricardo Cabral 2 | 3 | include "mac-qwerty-layout.inc" 4 | include "mac-linux-keys-bare.inc" 5 | include "mac-de-latin1.map" 6 | 7 | keycode 16 = y 8 | keycode 6 = z 9 | keycode 10 = less greater 10 | keycode 18 = one exclam 11 | keycode 19 = two quotedbl at 12 | keycode 20 = three numbersign sterling 13 | keycode 21 = four dollar section 14 | keycode 23 = five percent 15 | keycode 22 = six ampersand 16 | keycode 26 = seven slash 17 | keycode 28 = eight parenleft braceleft 18 | keycode 25 = nine parenright braceright 19 | keycode 29 = zero equal 20 | keycode 27 = apostrophe question 21 | keycode 24 = plus asterisk 22 | keycode 30 = dead_acute dead_grave 23 | keycode 33 = masculine ordfeminine 24 | keycode 39 = asciitilde asciicircum 25 | keycode 41 = ccedilla Ccedilla 26 | keycode 42 = backslash bar 27 | keycode 43 = comma semicolon 28 | keycode 44 = minus underscore 29 | keycode 47 = period colon 30 | -------------------------------------------------------------------------------- /src/libcommon/version.c: -------------------------------------------------------------------------------- 1 | #include "config.h" 2 | 3 | #include 4 | #include 5 | #include 6 | 7 | #include "libcommon.h" 8 | 9 | void 10 | print_version_and_exit(void) 11 | { 12 | printf(_("%s from %s\n"), program_invocation_short_name, PACKAGE_STRING); 13 | exit(0); 14 | } 15 | 16 | void 17 | print_options(const struct kbd_help *options) 18 | { 19 | int max = 0; 20 | const struct kbd_help *h; 21 | 22 | if (!options) 23 | return; 24 | 25 | fprintf(stderr, "\n"); 26 | fprintf(stderr, _("Options:")); 27 | fprintf(stderr, "\n"); 28 | 29 | for (h = options; h && h->opts; h++) { 30 | int len = (int) strlen(h->opts); 31 | if (max < len) 32 | max = len; 33 | } 34 | max += 2; 35 | 36 | for (h = options; h && h->opts; h++) 37 | fprintf(stderr, " %-*s %s\n", max, h->opts, h->desc); 38 | } 39 | 40 | void 41 | print_report_bugs(void) 42 | { 43 | fprintf(stderr, "\n"); 44 | fprintf(stderr, _("Report bugs to authors.\n")); 45 | fprintf(stderr, "\n"); 46 | } 47 | -------------------------------------------------------------------------------- /data/consolefonts/README.Ethiopic: -------------------------------------------------------------------------------- 1 | Ethiopic fonts: 2 | 3 | o All fonts contain 353 Ethiopic characters which extends the Unicode 4 | specification by 7 characters (extras are relegated to the private use 5 | range). 6 | 7 | o Contain their own Unicode mapping table corresponding to "ethiopic.uni" 8 | which should be in your "consoletrans" directory. 9 | 10 | o Sizes 14 & 16 are prefixed by 159 Latin characters from iso01.f14 & 11 | iso01.f16. Size 12 fonts borrow Latin characters from lat1-12.psf. 12 | 13 | o Are redistributable under the GNU GPL version 2.0; with noted 14 | restrictions below: 15 | 16 | 17 | Goha and GohaClassic: 18 | Donated by Yitna Firdyiwek of GohaTibeb Associates 19 | and may be redistributed without restriction under the GNU GPL 2.0. 20 | 21 | 22 | The collection in this directory donated for Linux distributions is otherwise 23 | maintained by Daniel Yacob and 24 | . 25 | 26 | -------------------------------------------------------------------------------- /src/libkbdfile/elf-note.c: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: GPL-2.0-or-later 2 | 3 | #include "config.h" 4 | 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | 11 | #include "elf-note.h" 12 | 13 | static int dlsym_manyv(void *dl, va_list ap) 14 | { 15 | void (**fn)(void); 16 | 17 | while ((fn = va_arg(ap, typeof(fn)))) { 18 | const char *symbol; 19 | 20 | symbol = va_arg(ap, typeof(symbol)); 21 | *fn = dlsym(dl, symbol); 22 | if (!*fn) 23 | return -ENXIO; 24 | } 25 | 26 | return 0; 27 | } 28 | 29 | int dlsym_many(void **dlp, const char *filename, ...) 30 | { 31 | va_list ap; 32 | void *dl; 33 | int r; 34 | 35 | if (*dlp) 36 | return 0; 37 | 38 | dl = dlopen(filename, RTLD_LAZY); 39 | if (!dl) 40 | return -ENOENT; 41 | 42 | va_start(ap, filename); 43 | r = dlsym_manyv(dl, ap); 44 | va_end(ap); 45 | 46 | if (r < 0) { 47 | dlclose(dl); 48 | return r; 49 | } 50 | 51 | *dlp = dl; 52 | 53 | return 1; 54 | } 55 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test02.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_new(NULL); 13 | if (!fp) 14 | kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile"); 15 | 16 | const char *const dirpath[] = { "", TESTDIR "/data/findfile/test_0/keymaps/**", NULL }; 17 | const char *const suffixes[] = { ".map", NULL }; 18 | 19 | const char *expect = TESTDIR "/data/findfile/test_0/keymaps/test0.map"; 20 | 21 | int rc = 0; 22 | 23 | rc = kbdfile_find("test0", dirpath, suffixes, fp); 24 | 25 | if (rc != 0) 26 | kbd_error(EXIT_FAILURE, 0, "unable to find file"); 27 | 28 | if (strcmp(expect, kbdfile_get_pathname(fp)) != 0) 29 | kbd_error(EXIT_FAILURE, 0, "unexpected file: %s (expected %s)", kbdfile_get_pathname(fp), expect); 30 | 31 | kbdfile_free(fp); 32 | 33 | return EXIT_SUCCESS; 34 | } 35 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test04.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_new(NULL); 13 | if (!fp) 14 | kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile"); 15 | 16 | const char *const dirpath[] = { "", TESTDIR "/data/findfile/test_0/keymaps/**", NULL }; 17 | const char *const suffixes[] = { ".map", "", ".kmap", NULL }; 18 | 19 | const char *expect = TESTDIR "/data/findfile/test_0/keymaps/i386/qwertz/test2.map"; 20 | 21 | int rc = kbdfile_find("test2", dirpath, suffixes, fp); 22 | 23 | if (rc != 0) 24 | kbd_error(EXIT_FAILURE, 0, "unable to find file"); 25 | if (strcmp(expect, kbdfile_get_pathname(fp)) != 0) 26 | kbd_error(EXIT_FAILURE, 0, "unexpected file: %s (expected %s)", kbdfile_get_pathname(fp), expect); 27 | 28 | kbdfile_free(fp); 29 | 30 | return EXIT_SUCCESS; 31 | } 32 | -------------------------------------------------------------------------------- /tests/libkeymap/Makefile.am: -------------------------------------------------------------------------------- 1 | NULL = 2 | 3 | AM_CPPFLAGS = \ 4 | $(CODE_COVERAGE_CPPFLAGS) \ 5 | -I$(top_srcdir)/src/include \ 6 | -I$(top_srcdir)/src/libcommon \ 7 | -DTESTDIR=\"$(realpath $(top_srcdir))/tests\" 8 | 9 | AM_CFLAGS = $(CHECK_CFLAGS) $(CODE_COVERAGE_CFLAGS) 10 | 11 | LDADD = \ 12 | $(top_builddir)/src/libcommon/libcommon.a \ 13 | $(top_builddir)/src/libkbdfile/libkbdfile.la \ 14 | $(top_builddir)/src/libkeymap/libkeymap.la \ 15 | @LIBINTL@ $(CODE_COVERAGE_LIBS) 16 | 17 | noinst_PROGRAMS = \ 18 | libkeymap-test01 \ 19 | libkeymap-test02 \ 20 | libkeymap-test03 \ 21 | libkeymap-test04 \ 22 | libkeymap-test05 \ 23 | libkeymap-test06 \ 24 | libkeymap-test07 \ 25 | libkeymap-test08 \ 26 | libkeymap-test09 \ 27 | libkeymap-test10 \ 28 | libkeymap-test11 \ 29 | libkeymap-test12 \ 30 | libkeymap-test13 \ 31 | libkeymap-test14 \ 32 | libkeymap-test15 \ 33 | libkeymap-test16 \ 34 | libkeymap-test17 \ 35 | libkeymap-test18 \ 36 | libkeymap-test19 \ 37 | libkeymap-test20 \ 38 | $(NULL) 39 | 40 | -------------------------------------------------------------------------------- /src/include/array_size.h: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: LGPL-2.0-or-later 2 | #ifndef _KBD_ARRAY_SIZE_H_ 3 | #define _KBD_ARRAY_SIZE_H_ 4 | 5 | /** 6 | * FAIL_BUILD_ON_ZERO - causes a syntax error if the @expr is 0. 7 | * 8 | * This macro was thankfully taken from strace. 9 | */ 10 | #define FAIL_BUILD_ON_ZERO(ex) (sizeof(int[-1 + 2 * !!(ex)]) * 0) 11 | 12 | /** 13 | * IS_SAME_TYPE - check are two types/vars the same type. 14 | * 15 | * Returns: 1 if the given two types are known to be the same or 0 otherwise. 16 | */ 17 | #define IS_SAME_TYPE(a, b) __builtin_types_compatible_p(__typeof__(a), __typeof__(b)) 18 | 19 | /** 20 | * MUST_BE_ARRAY - causes a syntax error if the @arr is not array. 21 | */ 22 | #define MUST_BE_ARRAY(arr) FAIL_BUILD_ON_ZERO(!IS_SAME_TYPE((arr), &(arr)[0])) 23 | 24 | /** 25 | * ARRAY_SIZE - get the number of elements in array @arr 26 | * @arr: array to be sized. 27 | */ 28 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + MUST_BE_ARRAY(arr)) 29 | 30 | #endif /* _KBD_ARRAY_SIZE_H_ */ 31 | -------------------------------------------------------------------------------- /tests/ci/qemu-install-dependencies.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -efu 2 | 3 | PROG="${0##*/}" 4 | 5 | type sudo >/dev/null 2>&1 && sudo=sudo || sudo= 6 | 7 | message() { 8 | printf '%s: %s\n' "$PROG" "$*" 9 | } 10 | 11 | retry_if_failed() { 12 | for i in `seq 0 99`; do 13 | "$@" && i= && break || sleep 1 14 | done 15 | [ -z "$i" ] 16 | } 17 | 18 | updated= 19 | apt_get_install() { 20 | [ -n "$updated" ] || { 21 | message "running 'apt-get -qq update' ..." 22 | retry_if_failed $sudo apt-get -qq update 23 | updated=1 24 | } 25 | message "installing: $* ..." 26 | retry_if_failed $sudo \ 27 | apt-get -qq --no-install-suggests --no-install-recommends \ 28 | install -y "$@" 29 | } 30 | 31 | message "system info" 32 | { 33 | message "::: free -h" 34 | free -h 35 | 36 | message "::: df -h" 37 | df -h 38 | } 39 | 40 | apt_get_install \ 41 | autoconf automake autopoint libtool libtool-bin pkg-config \ 42 | make bison flex gettext kbd strace valgrind libpam0g-dev \ 43 | libz-dev libbz2-dev liblzma-dev libzstd-dev \ 44 | gcc 45 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test05.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_new(NULL); 13 | if (!fp) 14 | kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile"); 15 | 16 | const char *const dirpath[] = { "", TESTDIR "/data/findfile/test_0/keymaps/**", NULL }; 17 | const char *const suffixes[] = { ".kmap", ".map", "", NULL }; 18 | 19 | const char *expect = TESTDIR "/data/findfile/test_0/keymaps/i386/qwertz/test2.kmap"; 20 | 21 | int rc = kbdfile_find("test2", dirpath, suffixes, fp); 22 | 23 | if (rc != 0) 24 | kbd_error(EXIT_FAILURE, 0, "unable to find file"); 25 | 26 | if (strcmp(expect, kbdfile_get_pathname(fp)) != 0) 27 | kbd_error(EXIT_FAILURE, 0, "unexpected file: %s (expected %s)", kbdfile_get_pathname(fp), expect); 28 | 29 | kbdfile_free(fp); 30 | 31 | return EXIT_SUCCESS; 32 | } 33 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test07.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_new(NULL); 13 | if (!fp) 14 | kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile"); 15 | 16 | const char *const dirpath[] = { "", TESTDIR "/data/findfile/test_0/keymaps/**", NULL }; 17 | const char *const suffixes[] = { ".map", "", ".kmap", NULL }; 18 | 19 | const char *expect = TESTDIR "/data/findfile/test_0/keymaps/i386/qwerty/test3.map"; 20 | 21 | int rc = kbdfile_find("test3", dirpath, suffixes, fp); 22 | 23 | if (rc != 0) 24 | kbd_error(EXIT_FAILURE, 0, "unable to find file"); 25 | 26 | if (strcmp(expect, kbdfile_get_pathname(fp)) != 0) 27 | kbd_error(EXIT_FAILURE, 0, "unexpected file: %s (expected %s)", kbdfile_get_pathname(fp), expect); 28 | 29 | kbdfile_free(fp); 30 | 31 | return EXIT_SUCCESS; 32 | } 33 | -------------------------------------------------------------------------------- /tests/e2e-syscalls-getunimap.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([getunimap (empty unimap)]) 2 | AT_KEYWORDS([e2e getunimap]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | clrunimap || "$abs_top_builddir/src/clrunimap" 5 | E2E_CHECK(["$abs_top_builddir/src/getunimap"]) 6 | E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/getunimap-test01.calls]) 7 | AT_CLEANUP 8 | 9 | AT_SETUP([getunimap (cp866)]) 10 | AT_KEYWORDS([e2e getunimap]) 11 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 12 | clrunimap || "$abs_top_builddir/src/clrunimap" 13 | loadunimap "$abs_srcdir/data/unimaps/cp866.uni" 14 | E2E_CHECK(["$abs_top_builddir/src/getunimap"]) 15 | E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/getunimap-test02.calls], [clrunimap], [clrunimap]) 16 | AT_CLEANUP 17 | 18 | AT_SETUP([getunimap (cp866)]) 19 | AT_KEYWORDS([e2e getunimap]) 20 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 21 | clrunimap || "$abs_top_builddir/src/clrunimap" 22 | loadunimap "$abs_srcdir/data/unimaps/cp866.uni" 23 | E2E_MEMCHECK(["$abs_top_builddir/src/getunimap"]) 24 | AT_CLEANUP 25 | -------------------------------------------------------------------------------- /src/setvesablank.c: -------------------------------------------------------------------------------- 1 | /* 2 | * setvesablank.c - aeb - 941230 3 | * 4 | * usage: setvesablank ON|on|off 5 | */ 6 | #include "config.h" 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | 14 | #include "libcommon.h" 15 | 16 | int main(int argc, char *argv[]) 17 | { 18 | int fd; 19 | struct { 20 | char ten, onoff; 21 | } arg; 22 | 23 | setuplocale(); 24 | 25 | if (argc != 2) { 26 | fprintf(stderr, _("Usage: %s ON|on|off\n"), program_invocation_short_name); 27 | return EXIT_FAILURE; 28 | } 29 | 30 | if ((fd = getfd(NULL)) < 0) 31 | kbd_error(EXIT_FAILURE, 0, _("Couldn't get a file descriptor referring to the console.")); 32 | 33 | arg.ten = 10; 34 | arg.onoff = 0; 35 | 36 | if (!strcmp(argv[1], "on")) 37 | arg.onoff = 1; 38 | else if (!strcmp(argv[1], "ON")) 39 | arg.onoff = 2; 40 | 41 | if (ioctl(fd, TIOCLINUX, &arg)) { 42 | kbd_error(EXIT_FAILURE, errno, "setvesablank: TIOCLINUX"); 43 | } 44 | 45 | return EXIT_SUCCESS; 46 | } 47 | -------------------------------------------------------------------------------- /tests/e2e-syscalls-loadunimap.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([loadunimap (path/cp866)]) 2 | AT_KEYWORDS([e2e loadunimap]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | clrunimap || "$abs_top_builddir/src/clrunimap" 5 | E2E_CHECK(["$abs_top_builddir/src/loadunimap" "$abs_srcdir/data/unimaps/cp866.uni"]) 6 | E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/loadunimap-test01.calls]) 7 | AT_CLEANUP 8 | 9 | AT_SETUP([loadunimap (cp866)]) 10 | AT_KEYWORDS([e2e loadunimap]) 11 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 12 | clrunimap || "$abs_top_builddir/src/clrunimap" 13 | E2E_CHECK(["$abs_top_builddir/src/loadunimap" cp866]) 14 | E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/loadunimap-test01.calls]) 15 | AT_CLEANUP 16 | 17 | AT_SETUP([loadunimap (cp1250.uni)]) 18 | AT_KEYWORDS([e2e loadunimap]) 19 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 20 | clrunimap || "$abs_top_builddir/src/clrunimap" 21 | E2E_CHECK(["$abs_top_builddir/src/loadunimap" cp1250.uni]) 22 | E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/loadunimap-test02.calls]) 23 | AT_CLEANUP 24 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test06.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_new(NULL); 13 | if (!fp) 14 | kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile"); 15 | 16 | const char *const dirpath[] = { "", TESTDIR "/data/findfile/test_0/keymaps/**", NULL }; 17 | const char *const suffixes[] = { ".foo", ".bar", ".map", ".baz", "", NULL }; 18 | 19 | const char *expect = TESTDIR "/data/findfile/test_0/keymaps/i386/qwertz/test2.map"; 20 | 21 | int rc = kbdfile_find("test2", dirpath, suffixes, fp); 22 | 23 | if (rc != 0) 24 | kbd_error(EXIT_FAILURE, 0, "unable to find file"); 25 | 26 | if (strcmp(expect, kbdfile_get_pathname(fp)) != 0) 27 | kbd_error(EXIT_FAILURE, 0, "unexpected file: %s (expected %s)", kbdfile_get_pathname(fp), expect); 28 | 29 | kbdfile_free(fp); 30 | 31 | return EXIT_SUCCESS; 32 | } 33 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test12.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_new(NULL); 13 | if (!fp) 14 | kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile"); 15 | 16 | const char *const dirpath[] = { "", TESTDIR "/data/findfile/test_0/keymaps/**", NULL }; 17 | const char *const suffixes[] = { ".map", NULL }; 18 | 19 | const char *expect = TESTDIR "/data/findfile/test_0/keymaps/i386/qwerty/test3.map"; 20 | 21 | int rc = 0; 22 | 23 | rc = kbdfile_find("qwerty/test3", dirpath, suffixes, fp); 24 | 25 | if (rc != 0) 26 | kbd_error(EXIT_FAILURE, 0, "unable to find file"); 27 | 28 | if (strcmp(expect, kbdfile_get_pathname(fp)) != 0) 29 | kbd_error(EXIT_FAILURE, 0, "unexpected file: %s (expected %s)", kbdfile_get_pathname(fp), expect); 30 | 31 | kbdfile_free(fp); 32 | 33 | return EXIT_SUCCESS; 34 | } 35 | -------------------------------------------------------------------------------- /tests/e2e-syscalls-setfont.at: -------------------------------------------------------------------------------- 1 | AT_SETUP([setfont (path/UniCyrExt_8x16.psf)]) 2 | AT_KEYWORDS([e2e setfont]) 3 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 4 | AT_SKIP_IF([ test -z "$HAVE_VGA" ]) 5 | E2E_CHECK(["$abs_top_builddir/src/setfont" -v "$abs_srcdir/data/consolefonts/UniCyrExt_8x16.psf"]) 6 | E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/setfont-test01.calls]) 7 | AT_CLEANUP 8 | 9 | AT_SETUP([setfont (UniCyrExt_8x16.psf)]) 10 | AT_KEYWORDS([e2e setfont]) 11 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 12 | AT_SKIP_IF([ test -z "$HAVE_VGA" ]) 13 | E2E_CHECK(["$abs_top_builddir/src/setfont" -v "UniCyrExt_8x16.psf"]) 14 | E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/setfont-test01.calls]) 15 | AT_CLEANUP 16 | 17 | AT_SETUP([setfont (UniCyrExt_8x16)]) 18 | AT_KEYWORDS([e2e setfont]) 19 | AT_SKIP_IF([ test "$SANDBOX" != "priviliged" ]) 20 | AT_SKIP_IF([ test -z "$HAVE_VGA" ]) 21 | E2E_CHECK(["$abs_top_builddir/src/setfont" -v "UniCyrExt_8x16"]) 22 | E2E_COMPARE_SYSCALLS([cat $abs_srcdir/data/e2e/setfont-test01.calls]) 23 | AT_CLEANUP 24 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test11.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_new(NULL); 13 | if (!fp) 14 | kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile"); 15 | 16 | const char *const dirpath[] = { "", TESTDIR "/data/findfile/test_0/keymaps/**", NULL }; 17 | const char *const suffixes[] = { ".map", NULL }; 18 | 19 | const char *expect = TESTDIR "/data/findfile/test_0/keymaps/i386/qwerty/test3.map"; 20 | 21 | int rc = 0; 22 | 23 | rc = kbdfile_find("i386/qwerty/test3", dirpath, suffixes, fp); 24 | 25 | if (rc != 0) 26 | kbd_error(EXIT_FAILURE, 0, "unable to find file"); 27 | 28 | if (strcmp(expect, kbdfile_get_pathname(fp)) != 0) 29 | kbd_error(EXIT_FAILURE, 0, "unexpected file: %s (expected %s)", kbdfile_get_pathname(fp), expect); 30 | 31 | kbdfile_free(fp); 32 | 33 | return EXIT_SUCCESS; 34 | } 35 | -------------------------------------------------------------------------------- /data/consolefonts/README.cybercafe: -------------------------------------------------------------------------------- 1 | From alter@cybercafe.com.ua Thu Jun 29 03:35:34 2000 2 | 3 | I have created the font. 4 | I think that it is font of the 21st century. 5 | First time it looks unusual. 6 | But later any other font looks wrong. 7 | 8 | I made symbols from 0x20..0x7f|0xf0..0xff only. 9 | But I could made complete fonts. 10 | 11 | { 12 | Distribution policy. 13 | Such my font allowed to distribution in any form, and in any way. 14 | Such font have to be distributed only with this distribution policy 15 | and following information about the author. 16 | (It could be added somewhere in documentation or like a separate file.) 17 | Note: The entries, which was made with this font, 18 | is not an objects of this distribution policy. 19 | 20 | Information about author: 21 | handle: "the Alternative" or "Alt" 22 | real name: M[y|ee|i][|k]ha[i|j]lo M[ee|y|i]t[|h]ro[f|v]ano[w|v]. 23 | borned in Kyiv/Ukraine in 21.XI.1976. 24 | email: alter@cybercafe.com.ua 25 | } 26 | 27 | --- 28 | Since "alt" is a symbol encoding, I called this font cybercafe -- aeb 29 | -------------------------------------------------------------------------------- /m4/ax_ac_print_to_file.m4: -------------------------------------------------------------------------------- 1 | # =========================================================================== 2 | # https://www.gnu.org/software/autoconf-archive/ax_ac_print_to_file.html 3 | # =========================================================================== 4 | # 5 | # SYNOPSIS 6 | # 7 | # AX_AC_PRINT_TO_FILE([FILE],[DATA]) 8 | # 9 | # DESCRIPTION 10 | # 11 | # Writes the specified data to the specified file when Autoconf is run. If 12 | # you want to print to a file when configure is run use AX_PRINT_TO_FILE 13 | # instead. 14 | # 15 | # LICENSE 16 | # 17 | # Copyright (c) 2009 Allan Caffee 18 | # 19 | # Copying and distribution of this file, with or without modification, are 20 | # permitted in any medium without royalty provided the copyright notice 21 | # and this notice are preserved. This file is offered as-is, without any 22 | # warranty. 23 | 24 | #serial 10 25 | 26 | AC_DEFUN([AX_AC_PRINT_TO_FILE],[ 27 | m4_esyscmd( 28 | AC_REQUIRE([AX_FILE_ESCAPES]) 29 | [ 30 | printf "%s" "$2" > "$1" 31 | ]) 32 | ]) 33 | -------------------------------------------------------------------------------- /contrib/dropkeymaps.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #include "getfd.h" 6 | 7 | #include 8 | #include 9 | 10 | int main(void) 11 | { 12 | struct kbentry ke; 13 | 14 | int i, j, fd; 15 | char *console = NULL; 16 | 17 | /* get console */ 18 | fd = getfd(console); 19 | 20 | for (i = 0; i < MAX_NR_KEYMAPS; i++) { 21 | for (j = 0; j < NR_KEYS; j++) { 22 | ke.kb_index = j; 23 | ke.kb_table = i; 24 | ke.kb_value = K_HOLE; 25 | 26 | if (ioctl(fd, KDSKBENT, &ke)) { 27 | perror("KDSKBENT"); 28 | fprintf(stderr, "Error: cannot deallocate or clear keymap %d key %d\n", i, j); 29 | return EXIT_FAILURE; 30 | } 31 | } 32 | 33 | /* deallocate keymap */ 34 | ke.kb_index = 0; 35 | ke.kb_table = i; 36 | ke.kb_value = K_NOSUCHMAP; 37 | 38 | if (ioctl(fd, KDSKBENT, &ke)) { 39 | perror("KDSKBENT"); 40 | fprintf(stderr, "Error: could not deallocate keymap %d\n", i); 41 | return EXIT_FAILURE; 42 | } 43 | } 44 | 45 | return EXIT_SUCCESS; 46 | } 47 | -------------------------------------------------------------------------------- /m4/ax_ac_append_to_file.m4: -------------------------------------------------------------------------------- 1 | # =========================================================================== 2 | # https://www.gnu.org/software/autoconf-archive/ax_ac_append_to_file.html 3 | # =========================================================================== 4 | # 5 | # SYNOPSIS 6 | # 7 | # AX_AC_APPEND_TO_FILE([FILE],[DATA]) 8 | # 9 | # DESCRIPTION 10 | # 11 | # Appends the specified data to the specified Autoconf is run. If you want 12 | # to append to a file when configure is run use AX_APPEND_TO_FILE instead. 13 | # 14 | # LICENSE 15 | # 16 | # Copyright (c) 2009 Allan Caffee 17 | # 18 | # Copying and distribution of this file, with or without modification, are 19 | # permitted in any medium without royalty provided the copyright notice 20 | # and this notice are preserved. This file is offered as-is, without any 21 | # warranty. 22 | 23 | #serial 10 24 | 25 | AC_DEFUN([AX_AC_APPEND_TO_FILE],[ 26 | AC_REQUIRE([AX_FILE_ESCAPES]) 27 | m4_esyscmd( 28 | AX_FILE_ESCAPES 29 | [ 30 | printf "%s" "$2" >> "$1" 31 | ]) 32 | ]) 33 | -------------------------------------------------------------------------------- /docs/man/man1/deallocvt.1: -------------------------------------------------------------------------------- 1 | .\" @(#)deallocvt.1 1.0 970317 aeb 2 | .TH DEALLOCVT 1 "24 October 2024" "kbd" 3 | .SH NAME 4 | deallocvt \- deallocate unused virtual consoles 5 | .SH SYNOPSIS 6 | .B deallocvt 7 | [\fI\,option\/\fR...] 8 | .RI [ N " ...]" 9 | .SH DESCRIPTION 10 | .LP 11 | The command 12 | .B deallocvt 13 | deallocates kernel memory and data structures 14 | for all unused virtual consoles. 15 | If one or more arguments 16 | .IR N " ..." 17 | are given, only the corresponding consoles 18 | .I /dev/ttyN 19 | are deallocated. 20 | 21 | A virtual console is unused if it is not the foreground console, 22 | and no process has it open for reading or writing, and no text 23 | has been selected on its screen. 24 | .SH OPTIONS 25 | .TP 26 | \fB\-C\fR, \fB\-\-console\fR=\fI\,DEV\/\fR 27 | the console device to be used. 28 | .TP 29 | \fB\-V\fR, \fB\-\-version\fR 30 | print version number. 31 | .TP 32 | \fB\-h\fR, \fB\-\-help\fR 33 | print this usage message. 34 | .SH AUTHORS 35 | Andries Brouwer 36 | .SH "SEE ALSO" 37 | .BR chvt (1), 38 | .BR openvt (1) 39 | 40 | 41 | -------------------------------------------------------------------------------- /data/unimaps/iso09.uni: -------------------------------------------------------------------------------- 1 | # 2 | # Unicode mapping table for ISO 8859-9 fonts iso09.* 3 | # [use: unicode_start iso09.f16 iso09] 4 | # 5 | 0x20 U+0020 U+00a0 U+2000 U+2001 U+2002 U+2003 U+2004 U+2005 U+2006 U+2007 U+2008 U+2009 U+200a U+202f 6 | 0x21-0x7e idem 7 | 0x7f U+2302 8 | 0xa0-0xcf idem 9 | 0xd0 U+011e 10 | 0xd1-0xdc idem 11 | 0xdd U+0130 12 | 0xde U+015e 13 | 0xdf-0xef idem 14 | 0xf0 U+011f 15 | 0xf1-0xfc idem 16 | 0xfd U+0131 17 | 0xfe U+015f 18 | 0xff U+00ff 19 | # 20 | 0x00 U+fffd 21 | 0x01 U+263A 22 | 0x02 U+263B 23 | 0x03 U+2665 24 | 0x04 U+2666 25 | 0x05 U+2663 26 | 0x06 U+2660 27 | 0x07 U+2022 U+25cf 28 | 0x08 U+25D8 29 | 0x09 U+25CB 30 | 0x0A U+25D9 31 | 0x0B U+2642 32 | 0x0C U+2640 33 | 0x0D U+266A 34 | 0x0E U+266B 35 | 0x0E U+266C 36 | 0x0F U+263C 37 | 0x10 U+25B6 38 | 0x10 U+25BA 39 | 0x11 U+25C0 40 | 0x11 U+25C4 41 | 0x12 U+2195 42 | 0x13 U+203C 43 | 0x14 U+00B6 44 | 0x15 U+00A7 45 | 0x16 U+25AC 46 | 0x17 U+21A8 47 | 0x18 U+2191 48 | 0x19 U+2193 49 | 0x1A U+2192 50 | 0x1B U+2190 51 | 0x1C U+221F 52 | 0x1C U+2319 53 | 0x1D U+2194 54 | 0x1E U+25B2 55 | 0x1F U+25BC 56 | -------------------------------------------------------------------------------- /tests/libkbdfile/libkbdfile-test08.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #include 7 | #include "libcommon.h" 8 | 9 | int 10 | main(int argc KBD_ATTR_UNUSED, char **argv KBD_ATTR_UNUSED) 11 | { 12 | struct kbdfile *fp = kbdfile_new(NULL); 13 | if (!fp) 14 | kbd_error(EXIT_FAILURE, 0, "unable to create kbdfile"); 15 | 16 | const char *const dirpath[] = { "", TESTDIR "/data/findfile/test_0/keymaps/**", NULL }; 17 | const char *const suffixes[] = { "", ".map", ".kmap", NULL }; 18 | 19 | const char *expect = TESTDIR "/data/findfile/test_0/keymaps/i386/qwerty/test0.map"; 20 | 21 | int rc = 0; 22 | 23 | rc = kbdfile_find(TESTDIR "/data/findfile/test_0/keymaps/i386/qwerty/test0", dirpath, suffixes, fp); 24 | 25 | if (rc != 0) 26 | kbd_error(EXIT_FAILURE, 0, "unable to find file"); 27 | 28 | if (strcmp(expect, kbdfile_get_pathname(fp)) != 0) 29 | kbd_error(EXIT_FAILURE, 0, "unexpected file: %s (expected %s)", kbdfile_get_pathname(fp), expect); 30 | 31 | kbdfile_free(fp); 32 | 33 | return EXIT_SUCCESS; 34 | } 35 | -------------------------------------------------------------------------------- /data/keymaps/i386/README: -------------------------------------------------------------------------------- 1 | These maps are as contributed. Use at your own risk. 2 | (But please tell me if something is seriously wrong.) 3 | Mail corrections, improvements and new maps to aeb@cwi.nl. 4 | 5 | Several corrections were pointed out by Tom.Kartes@Materna.DE. 6 | 7 | mk_modmap is a utility that might help synchronizing 8 | your keymaps for loadkeys and for xmodmap (but note that 9 | (since version 2.1 of XFree86) X initialises its keymap using 10 | the Linux keymap, so that xmodmap will often be superfluous). 11 | 12 | Since version 0.87, put a line `charset "iso-8859-x"' in front 13 | of a map, when you are using symbols outside iso-8859-1. 14 | 15 | Since version 0.88, put a line `keymaps 0-1,4-5,8,12' or so 16 | in front of a map, in order to indicate what keymaps should 17 | be used. 18 | 19 | hypermap.m4 was contributed by shields@tembel.org (Michael Shields). 20 | Use: m4 hypermap.m4 | loadkeys . 21 | 22 | Please, if you submit something that includes compose key 23 | combinations, uuencode the keymap, since SMTP-compliant 24 | mailers will strip the eighth bit. 25 | 26 | Andries 27 | 28 | --------------------------------------------------------------------------------