--- kbd-1.12.orig/debian/README.Euro +++ kbd-1.12/debian/README.Euro @@ -0,0 +1,117 @@ + EURO PACK for Linux, version 1.3 + ******************************** + Copyright (c) 1998, Guylhem AZNAR , GPL + + +0. CONTENT +********** + +You will find here : +* fr-latin0.map : French-Latin0 keymap for linux-console +* fr-latin0.xmod : French-Latin0 keymap for X11-xmodmap +* fr-latin0 : French-Latin0 keymap for X11-xkb +* other-latin0.map : Generic Latin0 keymap for linux-console +* other-latin0.xmod : Generic Latin0 keymap for X11-xmodmap +* .psf files : Latin0 fonts for linux-console +* .bdf files : Latin0 fonts for X11 +* 2 .gif files to visually explain the few differences between latin0 & +latin1, 99% compatible. + +1. HOWTO +******** + +French AZERTY specific informations are only available in LISEZMOI, since +an heavy majority of AZERTY keyboards users are french speaking like me :) + +1.1 UNDER LINUX-CONSOLE +*********************** + +For example with lat0-16.psf (or another psf) : + + setfont ./lat0-16.psf + +Eventually reload your national keymap first, for example US users will type : + + loadkeys us.map + +While German users will type : + + loadkeys de.map + +Now load latin0 keymap : + + loadkeys ./other-latin0.map + +You can now input latin0 text under linux-console, provided that your shell +is 8bit clean, else please read Danish HOWTO. + +In order to support 8bit, Alt key right to your spacebar has been remapped +to AltGr, which will be used as a modifier like Shift : + + Press AltGr, press E, then release E and release AltGr : +you will output an euro currency symbol. + + You can do the same with C to output a cent, this is +notated AltGr (e) = euro & AltGr (c) = cent + +Home, End, Delete, Backspace have been corrected and "windows" keys have +been mapped to switch from a virtual console to another. + +Moreover, "compose" sequences have been added : just prefix a key with +compose key (SysReq) to output other latin0 chars, for example : + + SysReq (o) (e) will output oe ligature (for example german poet Goethe) + SysReq (") (Y) will output uppercase Y diaeresis (for french and dutch) + SysReq (/) (o) will output lowercase o slash (for danish and norwegian) + SysReq (^) (s) will output lowercase s reverse circumflex (for finnish) + SysReq (^) (Z) will output uppercase Z reverse circumflex (for finnish) + +1.2 UNDER X11 +************* + +As root, for example with Xlat0-10x20.pcf (or another pcf) please type : + + bdftopcf Xlat0-10x20.pcf > Xlat0-10x20-lat0.pcf + gzip Xlat0-10x20-lat0.pcf + mv Xlat0-10x20-lat0.pcf.gz /usr/X11R6/lib/X11/fonts/misc + mkfontdir /usr/X11R6/lib/X11/fonts/misc + +US and xkb X11 extensions users will type : + + cp other-latin0.xmod /usr/X11R6/lib/X11/xinit/Xmodmap + cp other-latin0.xmod ~/.Xmodmap + cp other-latin0.xmod ~/.Xmodmap + +While people who best like xmodmap or already have a working ~/.Xmodmap +will type : + + cat other-latin0.xmod >> /usr/X11R6/lib/X11/xinit/Xmodmap + cat other-latin0.xmod >> ~/.Xmodmap + +Then either restart X or type : + + xset +fp /usr/X11R6/lib/X11/fonts/misc + +And if xmodmap isn't automatically launched on startup, type : + + xmodmap ~/.Xmodmap + +To select Latin0 fonts, run xfontsel and look for iso8859-15 encodings. + +Or even simpler, just type : + + grep Xlat0-10x20-lat0.pcf /usr/X11R6/lib/X11/fonts/misc/fonts* + +Then use the second parameter as an argument for xiterm or rxvt font : + + xiterm -fn -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-15 + +2. FEEDBACK +*********** + +I am interested by all kind of feedback, either positive or negative. + +Please tell me eventual bugs you could find and if you appreciate my work ! + + Guylhem Aznar + or --- kbd-1.12.orig/debian/patches/quiltrc +++ kbd-1.12/debian/patches/quiltrc @@ -0,0 +1,2 @@ +QUILT_PATCHES="debian/patches" +QUILT_NO_DIFF_TIMESTAMPS=1 --- kbd-1.12.orig/debian/patches/fedora-kbd-1.12-alias.patch +++ kbd-1.12/debian/patches/fedora-kbd-1.12-alias.patch @@ -0,0 +1,48 @@ +Index: trunk/src/psffontop.c +=================================================================== +--- trunk.orig/src/psffontop.c ++++ trunk/src/psffontop.c +@@ -59,7 +59,6 @@ + + static unsigned int + assemble_ucs2(char **inptr, int cnt) { +- unsigned char **in = (unsigned char **) inptr; + unsigned int u1, u2; + + if (cnt < 2) { +@@ -68,8 +67,8 @@ + exit(EX_DATAERR); + } + +- u1 = *(*in)++; +- u2 = *(*in)++; ++ u1 = (unsigned char)*(*inptr)++; ++ u2 = (unsigned char)*(*inptr)++; + return (u1 | (u2 << 8)); + } + +@@ -110,7 +109,6 @@ + */ + static void + get_uni_entry(char **inptr, char **endptr, struct unicode_list *up, int utf8) { +- unsigned char **in = (unsigned char **) inptr; + unsigned char uc; + unicode unichar; + int inseq = 0; +@@ -126,14 +124,14 @@ + exit(EX_DATAERR); + } + if (utf8) { +- uc = *(*in)++; ++ uc = *(*inptr)++; + if (uc == PSF2_SEPARATOR) + break; + if (uc == PSF2_STARTSEQ) { + inseq = 1; + continue; + } +- --(*in); ++ --(*inptr); + unichar = assemble_utf8(inptr, *endptr - *inptr); + } else { + unichar = assemble_ucs2(inptr, *endptr - *inptr); --- kbd-1.12.orig/debian/patches/unicode_start_breaks_X.diff +++ kbd-1.12/debian/patches/unicode_start_breaks_X.diff @@ -0,0 +1,47 @@ +Index: trunk/src/unicode_stop +=================================================================== +--- trunk.orig/src/unicode_stop ++++ trunk/src/unicode_stop +@@ -1,4 +1,18 @@ + #!/bin/sh ++ ++if [ ! -e /proc/self/fd/0 ] ; then ++ echo "Won't set ascii mode: Can't determine console type;" >&2 ++ echo " Please ensure that /proc is mounted." >&2 ++ exit 1 ++fi ++ ++readlink /proc/self/fd/0 | grep -q -e /dev/vc -e '/dev/tty[^p]' -e /dev/console ++if [ $? -eq 1 ]; then ++ echo "Won't set ascii mode: not a VT." >&2 ++ exit 1 ++fi ++ + # stop unicode + kbd_mode -a ++ + echo -n -e '\033%@' +Index: trunk/src/unicode_start +=================================================================== +--- trunk.orig/src/unicode_start ++++ trunk/src/unicode_start +@@ -1,6 +1,19 @@ + #!/bin/sh + # Enables Unicode processing in the current console. + # ++ ++if [ ! -e /proc/self/fd/0 ] ; then ++ echo "Won't set unicode mode: Can't determine console type;" >&2 ++ echo " Please ensure that /proc is mounted." >&2 ++ exit 1 ++fi ++ ++readlink /proc/self/fd/0 | grep -q -e /dev/vc -e '/dev/tty[^p]' -e /dev/console ++if [ $? -eq 1 ]; then ++ echo "Won't set unicode mode: not a VT." >&2 ++ exit 1 ++fi ++ + # 1. The input side: the keyboard driver. + + # Set the keyboard driver in Unicode mode. (Default is ASCII mode.) --- kbd-1.12.orig/debian/patches/getfd.diff +++ kbd-1.12/debian/patches/getfd.diff @@ -0,0 +1,15 @@ +Index: trunk/src/getfd.c +=================================================================== +--- trunk.orig/src/getfd.c ++++ trunk/src/getfd.c +@@ -59,6 +59,10 @@ + exit(1); + } + ++ fd = open_a_console("/proc/self/fd/0"); ++ if (fd >= 0) ++ return fd; ++ + fd = open_a_console("/dev/tty"); + if (fd >= 0) + return fd; --- kbd-1.12.orig/debian/patches/thai.diff +++ kbd-1.12/debian/patches/thai.diff @@ -0,0 +1,127 @@ +Index: trunk/src/ksyms.c +=================================================================== +--- trunk.orig/src/ksyms.c ++++ trunk/src/ksyms.c +@@ -1123,6 +1123,7 @@ + + #include "koi8.syms.h" + #include "cp1250.syms.h" ++#include "thai.syms.h" + #include "ethiopic.syms.h" + #include "sami.syms.h" + +@@ -1634,6 +1635,7 @@ + { "cp-1250", cp1250_syms, 128 }, + { "koi8-r", koi8_syms, 128 }, + { "koi8-u", koi8_syms, 128 }, ++ { "tis-620", tis_620_syms, 160 }, /* thai */ + { "iso-10646-18", iso_10646_18_syms, 159 }, /* ethiopic */ + { "iso-ir-197", iso_ir_197_syms, 160 }, /* sami */ + { "iso-ir-209", iso_ir_209_syms, 160 }, /* sami */ +Index: trunk/src/thai.syms.h +=================================================================== +--- /dev/null ++++ trunk/src/thai.syms.h +@@ -0,0 +1,102 @@ ++/* TIS-620 (Thai) charmap ++ * Theppitak Karoonboonyanan ++ */ ++ ++static sym tis_620_syms[] = { ++ { 0x00a0, "nobreakspace" }, ++ { 0x0e01, "thai_kokai" }, ++ { 0x0e02, "thai_khokhai" }, ++ { 0x0e03, "thai_khokhuat" }, ++ { 0x0e04, "thai_khokhwai" }, ++ { 0x0e05, "thai_khokhon" }, ++ { 0x0e06, "thai_khorakhang" }, ++ { 0x0e07, "thai_ngongu" }, ++ { 0x0e08, "thai_chochan" }, ++ { 0x0e09, "thai_choching" }, ++ { 0x0e0a, "thai_chochang" }, ++ { 0x0e0b, "thai_soso" }, ++ { 0x0e0c, "thai_chochoe" }, ++ { 0x0e0d, "thai_yoying" }, ++ { 0x0e0e, "thai_dochada" }, ++ { 0x0e0f, "thai_topatak" }, ++ { 0x0e10, "thai_thothan" }, ++ { 0x0e11, "thai_thonangmontho" }, ++ { 0x0e12, "thai_thophuthao" }, ++ { 0x0e13, "thai_nonen" }, ++ { 0x0e14, "thai_dodek" }, ++ { 0x0e15, "thai_totao" }, ++ { 0x0e16, "thai_thothung" }, ++ { 0x0e17, "thai_thothahan" }, ++ { 0x0e18, "thai_thothong" }, ++ { 0x0e19, "thai_nonu" }, ++ { 0x0e1a, "thai_bobaimai" }, ++ { 0x0e1b, "thai_popla" }, ++ { 0x0e1c, "thai_phophung" }, ++ { 0x0e1d, "thai_fofa" }, ++ { 0x0e1e, "thai_phophan" }, ++ { 0x0e1f, "thai_fofan" }, ++ { 0x0e20, "thai_phosamphao" }, ++ { 0x0e21, "thai_moma" }, ++ { 0x0e22, "thai_yoyak" }, ++ { 0x0e23, "thai_rorua" }, ++ { 0x0e24, "thai_ru" }, ++ { 0x0e25, "thai_loling" }, ++ { 0x0e26, "thai_lu" }, ++ { 0x0e27, "thai_wowaen" }, ++ { 0x0e28, "thai_sosala" }, ++ { 0x0e29, "thai_sorusi" }, ++ { 0x0e2a, "thai_sosua" }, ++ { 0x0e2b, "thai_hohip" }, ++ { 0x0e2c, "thai_lochula" }, ++ { 0x0e2d, "thai_oang" }, ++ { 0x0e2e, "thai_honokhuk" }, ++ { 0x0e2f, "thai_paiyannoi" }, ++ { 0x0e30, "thai_saraa" }, ++ { 0x0e31, "thai_maihanakat" }, ++ { 0x0e32, "thai_saraaa" }, ++ { 0x0e33, "thai_saraam" }, ++ { 0x0e34, "thai_sarai" }, ++ { 0x0e35, "thai_saraii" }, ++ { 0x0e36, "thai_saraue" }, ++ { 0x0e37, "thai_sarauee" }, ++ { 0x0e38, "thai_sarau" }, ++ { 0x0e39, "thai_sarauu" }, ++ { 0x0e3a, "thai_phinthu" }, ++ { 0x0e3b, "" }, ++ { 0x0e3c, "" }, ++ { 0x0e3d, "" }, ++ { 0x0e3e, "" }, ++ { 0x0e3f, "thai_baht" }, ++ { 0x0e40, "thai_sarae" }, ++ { 0x0e41, "thai_saraae" }, ++ { 0x0e42, "thai_sarao" }, ++ { 0x0e43, "thai_saraaimaimuan" }, ++ { 0x0e44, "thai_saraaimaimalai" }, ++ { 0x0e45, "thai_lakkhangyao" }, ++ { 0x0e46, "thai_maiyamok" }, ++ { 0x0e47, "thai_maitaikhu" }, ++ { 0x0e48, "thai_maiek" }, ++ { 0x0e49, "thai_maitho" }, ++ { 0x0e4a, "thai_maitri" }, ++ { 0x0e4b, "thai_maichattawa" }, ++ { 0x0e4c, "thai_thanthakhat" }, ++ { 0x0e4d, "thai_nikhahit" }, ++ { 0x0e4e, "thai_yamakkan" }, ++ { 0x0e4f, "thai_fongman" }, ++ { 0x0e50, "thai_leksun" }, ++ { 0x0e51, "thai_leknung" }, ++ { 0x0e52, "thai_leksong" }, ++ { 0x0e53, "thai_leksam" }, ++ { 0x0e54, "thai_leksi" }, ++ { 0x0e55, "thai_lekha" }, ++ { 0x0e56, "thai_lekhok" }, ++ { 0x0e57, "thai_lekchet" }, ++ { 0x0e58, "thai_lekpaet" }, ++ { 0x0e59, "thai_lekkao" }, ++ { 0x0e5a, "thai_angkhankhu" }, ++ { 0x0e5b, "thai_khomut" }, ++ { 0x0e5c, "" }, ++ { 0x0e5d, "" }, ++ { 0x0e5e, "" }, ++ { 0x0e5f, "" }, ++}; --- kbd-1.12.orig/debian/patches/resurrect_utf8_filename.diff +++ kbd-1.12/debian/patches/resurrect_utf8_filename.diff @@ -0,0 +1,17 @@ +Index: trunk/doc/utf/invalid_name +=================================================================== +--- /dev/null ++++ trunk/doc/utf/invalid_name +@@ -0,0 +1,12 @@ ++After ++% kbd_mode -u ++% echo -e '\033%8' ++% loadkeys ++control shift keycode 59 = U+266a ++control shift keycode 60 = U+266C ++% ++I typed this file and called it by the two-symbol name ++ctrl-shift-F1 ctrl-shift-F2. ++ ++In order to tell `ls' not to be afraid, give it the `-N' flag. ++Give `less' the `-r' flag. --- kbd-1.12.orig/debian/patches/series +++ kbd-1.12/debian/patches/series @@ -0,0 +1,21 @@ +resurrect_utf8_filename.diff +po_makefile.diff +man_pages.diff +kmap_suffix.diff +defkeymap.diff +uni_suffix.diff +canonical_syms.diff +main_argc.diff +kbdrate_notty.diff +charsets0.diff +read_keymaps_fmt.diff +unicode_start_breaks_X.diff +replace_echo_by_printf.diff +fedora-kbd-1.12-alias.patch +fgconsole.diff +getfd.diff +braille.diff +thai.diff +mapscrn-acm.diff +sparc-compile.diff +default_font_for_unicode_start.diff --- kbd-1.12.orig/debian/patches/main_argc.diff +++ kbd-1.12/debian/patches/main_argc.diff @@ -0,0 +1,78 @@ +#! /bin/sh -e +## 20_main_argc.dpatch by Denis Barbier +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Description: Fix handling of program arguments. +## DP: Date: 2004-08-02 + +if [ $# -lt 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}" + +case "$1" in + -patch) patch -p1 ${patch_opts} < $0;; + -unpatch) patch -R -p1 ${patch_opts} < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +@DPATCH@ +Index: trunk/src/getunimap.c +=================================================================== +--- trunk.orig/src/getunimap.c ++++ trunk/src/getunimap.c +@@ -62,7 +62,7 @@ + } + } + +- if (argc != 1) ++ if (optind < argc) + usage(); + + fd = getfd(console); +Index: trunk/src/loadunimap.c +=================================================================== +--- trunk.orig/src/loadunimap.c ++++ trunk/src/loadunimap.c +@@ -73,18 +73,18 @@ + } + } + +- if (argc > 2 || (argc == 1 && !outfnam)) ++ if (argc > optind+1 || (argc == optind && !outfnam)) + usage(); + + fd = getfd(console); + + if (outfnam) { + saveunicodemap(fd, outfnam); +- if (argc == 1) ++ if (argc == optind) + exit(0); + } + +- if (argc == 2) ++ if (argc == optind+1) + infnam = argv[optind]; + loadunicodemap(fd, infnam); + exit(0); +Index: trunk/src/showconsolefont.c +=================================================================== +--- trunk.orig/src/showconsolefont.c ++++ trunk/src/showconsolefont.c +@@ -135,7 +135,7 @@ + } + } + +- if (argc != 1) ++ if (optind < argc) + usage(); + + fd = getfd(console); --- kbd-1.12.orig/debian/patches/uni_suffix.diff +++ kbd-1.12/debian/patches/uni_suffix.diff @@ -0,0 +1,40 @@ +#!/bin/sh -e +## 10_uni_suffix.dpatch by Wartan Hachaturow +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +if [ $# -lt 1 ]; then + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch}" + +case "$1" in + -patch) patch $patch_opts -p1 < $0;; + -unpatch) patch $patch_opts -p1 -R < $0;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1;; +esac + +exit 0 + +@DPATCH@ +Index: trunk/src/loadunimap.c +=================================================================== +--- trunk.orig/src/loadunimap.c ++++ trunk/src/loadunimap.c +@@ -28,8 +28,8 @@ + extern char *progname; + extern int force; + +-static char *unidirpath[] = { "", DATADIR "/" UNIMAPDIR "/", 0 }; +-static char *unisuffixes[] = { "", ".uni", 0 }; ++static char *unidirpath[] = { "", DATADIR "/" TRANSDIR "/", 0 }; ++static char *unisuffixes[] = { "", ".sfm", ".uni", 0 }; + + #ifdef MAIN + #include "version.h" --- kbd-1.12.orig/debian/patches/default_font_for_unicode_start.diff +++ kbd-1.12/debian/patches/default_font_for_unicode_start.diff @@ -0,0 +1,32 @@ +Index: trunk/src/unicode_start +=================================================================== +--- trunk.orig/src/unicode_start ++++ trunk/src/unicode_start +@@ -45,8 +45,17 @@ + # have a Unicode map attached, or explicitly specified, e.g., + # by giving `def.uni' as a second argument. + +-DEFAULT_UNICODE_FONT=LatArCyrHeb-16 + # Also drdos8x16 is a good candidate. ++for DEFAULT_UNICODE_FONT in \ ++ /usr/share/consolefonts/Uni1-VGA16.psf* \ ++ /usr/share/consolefonts/LatArCyrHeb-16.psf* \ ++ /usr/share/consolefonts/default*.psf* \ ++ /usr/share/consolefonts/*.psf* ++do ++ if [ -f "$DEFAULT_UNICODE_FONT" ]; then ++ break ++ fi ++done + + case $# in + 2) +@@ -56,7 +65,7 @@ + setfont $1 + ;; + 0) +- setfont $DEFAULT_UNICODE_FONT ++ setfont "$DEFAULT_UNICODE_FONT" + ;; + *) + echo "usage: unicode_start [font [unicode map]]" --- kbd-1.12.orig/debian/patches/kmap_suffix.diff +++ kbd-1.12/debian/patches/kmap_suffix.diff @@ -0,0 +1,38 @@ +#!/bin/sh -e +## 10_kmap_suffix.dpatch by Wartan Hachaturow +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +if [ $# -lt 1 ]; then + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch}" + +case "$1" in + -patch) patch $patch_opts -p1 < $0;; + -unpatch) patch $patch_opts -p1 -R < $0;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1;; +esac + +exit 0 + +@DPATCH@ +Index: trunk/src/loadkeys.y +=================================================================== +--- trunk.orig/src/loadkeys.y ++++ trunk/src/loadkeys.y +@@ -566,7 +566,7 @@ + } + + char *dirpath[] = { "", DATADIR "/" KEYMAPDIR "/**", KERNDIR "/", 0 }; +-char *suffixes[] = { "", ".map", 0 }; ++char *suffixes[] = { "", ".kmap", ".map", 0 }; + extern FILE *findfile(char *fnam, char **dirpath, char **suffixes); + + #undef yywrap --- kbd-1.12.orig/debian/patches/po_makefile.diff +++ kbd-1.12/debian/patches/po_makefile.diff @@ -0,0 +1,51 @@ +#! /bin/sh -e +## 01_po_makefile.dpatch by Denis Barbier +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Description: In original tarball, po/Makefile had been modified +## DP: instead of po/Makefile.in +## DP: Date: 2004-07-25 + +if [ $# -lt 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}" + +case "$1" in + -patch) patch -p1 ${patch_opts} < $0;; + -unpatch) patch -R -p1 ${patch_opts} < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +Index: trunk/po/Makefile.in +=================================================================== +--- trunk.orig/po/Makefile.in ++++ trunk/po/Makefile.in +@@ -1,5 +1,5 @@ + PACKAGE = kbd +-VERSION = 1.10 ++VERSION = 1.12 + + include ../make_include + +@@ -34,9 +34,11 @@ + COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) + + # Enter here all .po files +-POFILES = cs.po da.po de.po es.po fr.po gr.po nl.po pl.po ro.po ru.po sv.po tr.po ++POFILES = cs.po da.po de.po el.po es.po fr.po gr.po nl.po pl.po \ ++ ro.po ru.po sv.po tr.po + # the same but with .gmo +-GMOFILES = cs.gmo da.gmo de.gmo es.gmo fr.gmo gr.gmo nl.gmo pl.gmo ro.gmo ru.gmo sv.gmo tr.gmo ++GMOFILES = cs.gmo da.gmo de.gmo el.gmo es.gmo fr.gmo gr.gmo nl.gmo \ ++ pl.gmo ro.gmo ru.gmo sv.gmo tr.gmo + + CATALOGS = $(GMOFILES) + CATOBJEXT = .gmo --- kbd-1.12.orig/debian/patches/kbdrate_notty.diff +++ kbd-1.12/debian/patches/kbdrate_notty.diff @@ -0,0 +1,39 @@ +#! /bin/sh -e +## 30_kbdrate_notty.dpatch by Denis Barbier +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Description: kbdrate must not fail when not connected to a TTY. +## DP: See bug #212770, bugreport and patch provided by Frederic Gaus. +## DP: Date: 2004-07-25 + +if [ $# -lt 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}" + +case "$1" in + -patch) patch -p1 ${patch_opts} < $0;; + -unpatch) patch -R -p1 ${patch_opts} < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +Index: trunk/src/kbdrate.c +=================================================================== +--- trunk.orig/src/kbdrate.c ++++ trunk/src/kbdrate.c +@@ -112,7 +112,7 @@ + kbdrep_s.period = -1; + kbdrep_s.delay = -1; + if (ioctl( 0, KDKBDREP, &kbdrep_s )) { +- if (errno == EINVAL) ++ if (errno == EINVAL || errno == ENOTTY) + return 0; + perror( "ioctl(KDKBDREP)" ); + exit( 1 ); --- kbd-1.12.orig/debian/patches/defkeymap.diff +++ kbd-1.12/debian/patches/defkeymap.diff @@ -0,0 +1,42 @@ +#!/bin/sh -e +## 10_defkeymap.dpatch by Wartan Hachaturow +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +if [ $# -lt 1 ]; then + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch}" + +case "$1" in + -patch) patch $patch_opts -p1 < $0;; + -unpatch) patch $patch_opts -p1 -R < $0;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1;; +esac + +exit 0 + +@DPATCH@ +Index: trunk/src/paths.h +=================================================================== +--- trunk.orig/src/paths.h ++++ trunk/src/paths.h +@@ -16,10 +16,10 @@ + * Default keymap, and where the kernel copy of it lives. + */ + #ifdef __sparc__ +-# define DEFMAP "sunkeymap.map" ++# define DEFMAP "sunkeymap.kmap" + # define KERNDIR "/usr/src/linux/drivers/sbus/char" + #else +-# define DEFMAP "defkeymap.map" ++# define DEFMAP "defkeymap.kmap" + # define KERNDIR "/usr/src/linux/drivers/char" + #endif + --- kbd-1.12.orig/debian/patches/man_pages.diff +++ kbd-1.12/debian/patches/man_pages.diff @@ -0,0 +1,150 @@ +#! /bin/sh -e +## 02_man_pages.dpatch by Denis Barbier +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Description: codepage, mk_modmap, screendump and setvesablank +## DP: programs are installed, so their man pages have to be shipped too. +## DP: splitfont.1, setlogcons.8, and vcstime.8 are copied from console-tools. +## DP: Date: 2004-07-25 +## DP: Update: 2005-08-06 Fix formatting typo in splitfont.1 + +if [ $# -lt 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}" + +case "$1" in + -patch) patch -p1 ${patch_opts} < $0;; + -unpatch) patch -R -p1 ${patch_opts} < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +Index: trunk/man/Makefile +=================================================================== +--- trunk.orig/man/Makefile ++++ trunk/man/Makefile +@@ -7,6 +7,13 @@ + install -d -m 755 $(MANDIR)/$$i; \ + install -m 644 $$i/*.[0-9] $(MANDIR)/$$i; \ + done ++ install -m 644 man1misc/codepage.1 $(MANDIR)/man1 ++ install -m 644 man1misc/screendump.1 $(MANDIR)/man1 ++ install -m 644 man1misc/splitfont.1 $(MANDIR)/man1 ++ install -m 644 man8misc/mk_modmap.8 $(MANDIR)/man8 ++ install -m 644 man8misc/setlogcons.8 $(MANDIR)/man8 ++ install -m 644 man8misc/setvesablank.8 $(MANDIR)/man8 ++ install -m 644 man8misc/vcstime.8 $(MANDIR)/man8 + rm -f $(MANDIR)/man5/keytables.5 + + clean: +Index: trunk/man/man1misc/splitfont.1 +=================================================================== +--- /dev/null ++++ trunk/man/man1misc/splitfont.1 +@@ -0,0 +1,28 @@ ++.TH SPLITFONT 1 "2002-02-24" "" "Linux Console" ++ ++.SH NAME ++splitfont \- extract characters from an ISO-type font. ++ ++.SH SYNOPSIS ++.B ++splitfont ++.I fontfile ++.I ... ++ ++.SH DESCRIPTION ++The command ++.B splitfont ++removes characters from a given font file; it removes all the ++specified characters from the named font file. ++.P ++This works for Linux console fonts, without PSF headers, ++and containing just 256 characters. ++.P ++The character range is of the form ++.LP ++.RS ++ 17,23-30, ++.RE ++ ++.SH "SEE ALSO" ++setfont(8). +Index: trunk/man/man8/showconsolefont.8 +=================================================================== +--- trunk.orig/man/man8/showconsolefont.8 ++++ trunk/man/man8/showconsolefont.8 +@@ -1,4 +1,4 @@ +-.TH SHOWFONT 1 "2002-02-22" "" "Linux Console" ++.TH SHOWCONSOLEFONT 8 "2002-02-22" "" "Linux Console" + + .SH NAME + showconsolefont \- Show the current EGA/VGA console screen font +Index: trunk/man/man8misc/setlogcons.8 +=================================================================== +--- /dev/null ++++ trunk/man/man8misc/setlogcons.8 +@@ -0,0 +1,26 @@ ++.TH SETLOGCONS 8 "18 Apr 2004" "Console tools" "Linux User's Manual" ++ ++.SH NAME ++setlogcons \- Send kernel messages to console N ++.SH SYNOPSIS ++.BI setlogcons ++.BI N ++ ++.SH DESCRIPTION ++The command ++.B setlogcons ++.I N ++sets all kernel messges to the console specified as N. ++.P ++By default kernel messages are sent to the current console. ++.P ++To change the level of messages sent, use ++.B dmesg ++ ++.SH "AUTHORS" ++.BI setlogcons ++was originally written by Andries Brouwer for the kbd package. ++.P ++This manual page was written by Alastair McKinstry. ++.SH "SEE ALSO" ++dmesg(1) +Index: trunk/man/man8misc/vcstime.8 +=================================================================== +--- /dev/null ++++ trunk/man/man8misc/vcstime.8 +@@ -0,0 +1,25 @@ ++.\" Copyright 2003 Alastair McKinstry " ++.\" May be distributed under the GNU General Public License" ++.TH VCSTIME 8 "22 Jan 2003" "Console tools" "Linux User's Manual" ++ ++.SH NAME ++vcstime \- Show time in upper right hand corner of the console screen ++ ++.SH SYNOPSIS ++.BI vcstime ++ ++.SH DESCRIPTION ++.PP ++.B vcstime ++shows the current time in the upper right\-hand corner of the console screen. ++.PP ++This simple program shows the current time in the corner of the console screen. ++.PP ++It needs to be run by root, in order to have write permissions to ++.I /dev/vcsa ++ ++ ++.SH "AUTHORS" ++.BR vcstime ++was written by Andries Brouwer, based on a suggestion by Miguel de Icaza. ++This manual page was Written by Alastair McKinstry, Debian, Jan 2003. --- kbd-1.12.orig/debian/patches/braille.diff +++ kbd-1.12/debian/patches/braille.diff @@ -0,0 +1,36 @@ +Index: trunk/src/ksyms.c +=================================================================== +--- trunk.orig/src/ksyms.c ++++ trunk/src/ksyms.c +@@ -1498,6 +1498,20 @@ + "SCtrlR" + }; + ++/* Keysyms whose KTYP is KT_BRL. */ ++ ++static const char *brl_syms[] = { ++ "Brl_blank", ++ "Brl_dot1", ++ "Brl_dot2", ++ "Brl_dot3", ++ "Brl_dot4", ++ "Brl_dot5", ++ "Brl_dot6", ++ "Brl_dot7", ++ "Brl_dot8" ++}; ++ + #define E(x) { x, sizeof(x) / sizeof(x[0]) } + + syms_entry syms[] = { +@@ -1513,7 +1527,9 @@ + E(ascii_syms), /* KT_ASCII */ + E(lock_syms), /* KT_LOCK */ + { 0, 0 }, /* KT_LETTER */ +- E(sticky_syms) /* KT_SLOCK */ ++ E(sticky_syms), /* KT_SLOCK */ ++ { 0, 0 }, /* */ ++ E(brl_syms) /* KT_BRL */ + }; + + #undef E --- kbd-1.12.orig/debian/patches/canonical_syms.diff +++ kbd-1.12/debian/patches/canonical_syms.diff @@ -0,0 +1,100 @@ +#! /bin/sh -e + +## 20_canonical_syms.dpatch by Denis Barbier +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Description: make symbol names unique. +## DP: Date: 2004-07-31 + +if [ $# -lt 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}" + +case "$1" in + -patch) patch -p1 ${patch_opts} < $0;; + -unpatch) patch -R -p1 ${patch_opts} < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +Index: trunk/src/ksyms.c +=================================================================== +--- trunk.orig/src/ksyms.c ++++ trunk/src/ksyms.c +@@ -770,7 +770,7 @@ + }; + + static sym iso_8859_5_syms[] = { /* 160-255 */ +- { 0x00a0, "no-break_space" }, /* 0240 */ ++ { 0x00a0, "nobreakspace" }, + { 0x0401, "cyrillic_capital_letter_io" }, + { 0x0402, "serbocroatian_cyrillic_capital_letter_dje" }, + { 0x0403, "macedonian_cyrillic_capital_letter_gje" }, +@@ -783,7 +783,7 @@ + { 0x040a, "cyrillic_capital_letter_nje" }, + { 0x040b, "serbocroatian_cyrillic_capital_letter_chje" }, + { 0x040c, "macedonian_cyrillic_capital_letter_kje" }, +- { 0x00ad, "soft_hyphen" }, ++ { 0x00ad, "hyphen" }, + { 0x040e, "bielorussian_cyrillic_capital_letter_short_u" }, + { 0x040f, "cyrillic_capital_letter_dze" }, + { 0x0410, "cyrillic_capital_letter_a" }, /* 0260 */ +@@ -863,7 +863,7 @@ + { 0x045a, "cyrillic_small_letter_nje" }, + { 0x045b, "serbocroatian_cyrillic_small_letter_chje" }, + { 0x045c, "macedonian_cyrillic_small_letter_kje" }, +- { 0x00a7, "paragraph_sign" }, ++ { 0x00a7, "section" }, + { 0x045e, "bielorussian_cyrillic_small_letter_short_u" }, /* printing error in ECMA-113 */ + { 0x045f, "cyrillic_small_letter_dze" } + }; +@@ -896,7 +896,7 @@ + { 0x0388, "Epsilonaccent" }, + { 0x0389, "Etaaccent" }, + { 0x038a, "Iotaaccent" }, +- { 0x00bb, "rightanglequote" }, ++ { 0x00bb, "guillemotright" }, + { 0x038c, "Omicronaccent" }, + { 0x00bd, "onehalf" }, + { 0x038e, "Upsilonaccent" }, +@@ -978,7 +978,7 @@ + { 0x00a7, "" }, + { 0x00a8, "" }, + { 0x00a9, "" }, +- { 0x00d7, "multiplication" }, ++ { 0x00d7, "multiply" }, + { 0x00ab, "" }, + { 0x00ac, "" }, + { 0x00ad, "" }, +@@ -1565,7 +1565,13 @@ + { "dead_caron", "dead_circumflex" }, + { "dead_breve", "dead_tilde" }, + { "dead_doubleacute", "dead_tilde" }, ++/* turkish */ ++ { "Idotabove", "Iabovedot" }, ++ { "dotlessi", "idotless" }, + /* cyrillic */ ++ { "no-break_space", "nobreakspace" }, ++ { "paragraph_sign", "section" }, ++ { "soft_hyphen", "hyphen" }, + { "bielorussian_cyrillic_capital_letter_i", "ukrainian_cyrillic_capital_letter_i" }, + { "cyrillic_capital_letter_kha", "cyrillic_capital_letter_ha" }, + { "cyrillic_capital_letter_ge", "cyrillic_capital_letter_ghe" }, +@@ -1583,7 +1589,9 @@ + { "cyrillic_small_letter_yeri", "cyrillic_small_letter_yeru" }, + { "cyrillic_small_letter_reversed_e", "cyrillic_small_letter_e" }, + { "cyrillic_small_letter_ii", "cyrillic_small_letter_i" }, +- { "cyrillic_small_letter_short_ii", "cyrillic_small_letter_short_i" } ++ { "cyrillic_small_letter_short_ii", "cyrillic_small_letter_short_i" }, ++/* iso-8859-7 */ ++ { "rightanglequote", "guillemotright" } + }; + + const int syms_size = sizeof(syms) / sizeof(syms_entry); --- kbd-1.12.orig/debian/patches/fgconsole.diff +++ kbd-1.12/debian/patches/fgconsole.diff @@ -0,0 +1,119 @@ +Index: trunk/src/fgconsole.c +=================================================================== +--- trunk.orig/src/fgconsole.c ++++ trunk/src/fgconsole.c +@@ -4,24 +4,81 @@ + #include + #include + #include ++#include + #include ++#include + #include "getfd.h" + #include "nls.h" ++#include "version.h" ++ ++static void usage(void) ++{ ++ fprintf(stderr, _("%s version %s\n" ++"\n" ++"Usage: %s [options]\n" ++"\n" ++"Valid options are:\n" ++"\n" ++" -h --help display this help text\n" ++" -V --version display this help text\n" ++" -n --next-available display next unallocated VT\n"), ++ progname, VERSION, progname); ++ exit(1); ++} + + int + main(int argc, char **argv){ +- int fd; + struct vt_stat vtstat; ++ int fd, vtno = -1, c, show_vt = 0; ++ struct serial_struct sr; ++ const struct option long_opts[] = { ++ { "help", no_argument, NULL, 'h' }, ++ { "version", no_argument, NULL, 'V' }, ++ { "next-available", no_argument, NULL, 'n' }, ++ { NULL, 0, NULL, 0 } }; + + setlocale(LC_ALL, ""); + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + ++ set_progname(argv[0]); ++ while (( c = getopt_long (argc, argv, "Vhn", long_opts, NULL)) != EOF) { ++ switch (c) { ++ case 'h': ++ usage(); ++ exit (0); ++ case 'n': ++ show_vt = 1; ++ break; ++ case 'V': ++ print_version_and_exit(); ++ break; ++ case '?': ++ usage(); ++ exit(1); ++ } ++ } ++ + fd = getfd(NULL); +- if (ioctl(fd, VT_GETSTATE, &vtstat)) { +- perror("fgconsole: VT_GETSTATE"); +- exit(1); ++ if (show_vt) { ++ if ((ioctl(fd, VT_OPENQRY, &vtno) < 0) || vtno == -1) { ++ perror (_("Couldn't read VTNO: ")); ++ exit(2); ++ } ++ printf ("%d\n", vtno); ++ exit(0); ++ } ++ ++ if (ioctl(fd, TIOCGSERIAL, &sr) == 0) { ++ printf ("serial\n"); ++ exit (0); + } ++ ++ if (ioctl(fd, VT_GETSTATE, &vtstat)) ++ { ++ perror("fgconsole: VT_GETSTATE"); ++ exit(1); ++ } + printf("%d\n", vtstat.v_active); + return 0; + } +Index: trunk/man/man1/fgconsole.1 +=================================================================== +--- trunk.orig/man/man1/fgconsole.1 ++++ trunk/man/man1/fgconsole.1 +@@ -5,13 +5,23 @@ + + .SH SYNOPSIS + .B fgconsole +- ++.BI [ "--help" | "--version" | "--next-available" ] + .SH DESCRIPTION + If the active Virtual Terminal is + .IR /dev/ttyN , + then prints + .I N + on standard output. ++ ++If the console is a serial console, then ++"serial" ++is printed instead. ++.TP ++.I \-\-next\-available ++Will show the next unallocated virtual terminal. Normally 6 virtual ++terminals are allocated, with number 7 used for X; this will return ++"8" in this case. ++ + .SH NOTES + Under + .IR devfs , --- kbd-1.12.orig/debian/patches/charsets0.diff +++ kbd-1.12/debian/patches/charsets0.diff @@ -0,0 +1,71 @@ +#! /bin/sh -e + +## 50_charsets0.dpatch by Denis Barbier +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Description: stores in charsets[0] the current Unicode<->name +## DP: mapping, otherwise some symbols could not be retrieved if they +## DP: appear with different names. +## DP: Date: 2004-07-31 + +if [ $# -lt 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}" + +case "$1" in + -patch) patch -p1 ${patch_opts} < $0;; + -unpatch) patch -R -p1 ${patch_opts} < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +Index: trunk/src/ksyms.c +=================================================================== +--- trunk.orig/src/ksyms.c ++++ trunk/src/ksyms.c +@@ -1602,6 +1602,7 @@ + sym *charnames; + int start; + } charsets[] = { ++ { "", NULL, 256 }, + { "iso-8859-1", latin1_syms, 160 }, + { "iso-8859-2", latin2_syms, 160 }, + { "iso-8859-3", latin3_syms, 160 }, +@@ -1637,7 +1638,7 @@ + fprintf(f, "%s{", mm[j]); + ct = 0; + lth = strlen(mm[j]); +- for(i=0; i < sizeof(charsets)/sizeof(charsets[0]); i++) { ++ for(i=1; i < sizeof(charsets)/sizeof(charsets[0]); i++) { + if(!strncmp(charsets[i].charset, mm[j], lth)) { + if(ct++) + fprintf(f, ","); +@@ -1646,7 +1647,7 @@ + } + fprintf(f, "}"); + } +- for(i=0; i < sizeof(charsets)/sizeof(charsets[0]); i++) { ++ for(i=1; i < sizeof(charsets)/sizeof(charsets[0]); i++) { + for (j=0; jname[0]) --- kbd-1.12.orig/debian/patches/mapscrn-acm.diff +++ kbd-1.12/debian/patches/mapscrn-acm.diff @@ -0,0 +1,13 @@ +Index: trunk/src/mapscrn.c +=================================================================== +--- trunk.orig/src/mapscrn.c ++++ trunk/src/mapscrn.c +@@ -25,7 +25,7 @@ + + /* search for the map file in these directories (with trailing /) */ + static char *mapdirpath[] = { "", DATADIR "/" TRANSDIR "/", 0 }; +-static char *mapsuffixes[] = { "", ".trans", "_to_uni.trans", 0 }; ++static char *mapsuffixes[] = { "", ".acm", ".trans", "_to_uni.trans", 0 }; + + #ifdef MAIN + #include "getfd.h" --- kbd-1.12.orig/debian/patches/replace_echo_by_printf.diff +++ kbd-1.12/debian/patches/replace_echo_by_printf.diff @@ -0,0 +1,23 @@ +Index: trunk/src/unicode_stop +=================================================================== +--- trunk.orig/src/unicode_stop ++++ trunk/src/unicode_stop +@@ -15,4 +15,4 @@ + # stop unicode + kbd_mode -a + +-echo -n -e '\033%@' ++printf '\033%%@' +Index: trunk/src/unicode_start +=================================================================== +--- trunk.orig/src/unicode_start ++++ trunk/src/unicode_start +@@ -38,7 +38,7 @@ + # Tell the console output driver that the bytes arriving are UTF-8 + # encoded multibyte sequences. + +-echo -n -e '\033%G' ++printf '\033%%G' + + # Tell the graphics card how to display Unicode characters not + # contained in the IBM 437 character set (on PCs). The font should --- kbd-1.12.orig/debian/patches/read_keymaps_fmt.diff +++ kbd-1.12/debian/patches/read_keymaps_fmt.diff @@ -0,0 +1,778 @@ +#! /bin/sh -e +## 90_read_keymaps_fmt.dpatch by Denis Barbier +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Description: in order to work under legacy and UTF-8 locales, +## DP: two keymaps must be provided. With this patch, a single keymap +## DP: can be loaded both in ASCII and UTF-8 mode. +## DP: Date: 2004-07-31 + +if [ $# -lt 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}" + +case "$1" in + -patch) patch -p1 ${patch_opts} < $0;; + -unpatch) patch -R -p1 ${patch_opts} < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +@DPATCH@ +Index: trunk/po/cat-id-tbl.c +=================================================================== +--- trunk.orig/po/cat-id-tbl.c ++++ trunk/po/cat-id-tbl.c +@@ -76,128 +76,139 @@ + {"\ + \t\t\t interpret character action codes to be from the\n\ + \t\t\t specified character set\n", 42}, +- {"error executing %s\n", 43}, +- {"Couldnt open %s\n", 44}, +- {"usage: getkeycodes\n", 45}, +- {"Plain scancodes xx (hex) versus keycodes (dec)\n", 46}, +- {"0 is an error; for 1-88 (0x01-0x58) scancode equals keycode\n", 47}, +- {"for 1-%d (0x01-0x%02x) scancode equals keycode\n", 48}, + {"\ ++%s version %s\n\ + \n\ ++Usage: %s [options]\n\ + \n\ +-Escaped scancodes e0 xx (hex)\n", 49}, +- {"failed to get keycode for scancode 0x%x\n", 50}, ++Valid options are:\n\ ++\n\ ++\t-h --help display this help text\n\ ++\t-V --version display this help text\n\ ++\t-n --next-available display next unallocated VT\n", 43}, ++ {"Couldn't read VTNO: ", 44}, ++ {"error executing %s\n", 45}, ++ {"Couldnt open %s\n", 46}, ++ {"usage: getkeycodes\n", 47}, ++ {"Plain scancodes xx (hex) versus keycodes (dec)\n", 48}, ++ {"0 is an error; for 1-88 (0x01-0x58) scancode equals keycode\n", 49}, ++ {"for 1-%d (0x01-0x%02x) scancode equals keycode\n", 50}, ++ {"\ ++\n\ ++\n\ ++Escaped scancodes e0 xx (hex)\n", 51}, ++ {"failed to get keycode for scancode 0x%x\n", 52}, + {"\ + Usage:\n\ +-\t%s [-s] [-C console]\n", 51}, +- {"usage: kbd_mode [-a|-u|-k|-s]\n", 52}, +- {"kbd_mode: error reading keyboard mode\n", 53}, +- {"The keyboard is in raw (scancode) mode\n", 54}, +- {"The keyboard is in mediumraw (keycode) mode\n", 55}, +- {"The keyboard is in the default (ASCII) mode\n", 56}, +- {"The keyboard is in Unicode (UTF-8) mode\n", 57}, +- {"The keyboard is in some unknown mode\n", 58}, +- {"%s: error setting keyboard mode\n", 59}, +- {"Typematic Rate set to %.1f cps (delay = %d ms)\n", 60}, +- {"Usage: kbdrate [-V] [-s] [-r rate] [-d delay]\n", 61}, +- {"Cannot open /dev/port", 62}, +- {"bug: getfont called with count<256\n", 63}, +- {"%s: out of memory\n", 64}, +- {"unknown charset %s - ignoring charset request\n", 65}, +- {"assuming iso-8859-1 %s\n", 66}, +- {"assuming iso-8859-15 %s\n", 67}, +- {"assuming iso-8859-2 %s\n", 68}, +- {"assuming iso-8859-3 %s\n", 69}, +- {"assuming iso-8859-4 %s\n", 70}, +- {"unknown keysym '%s'\n", 71}, +- {"plus before %s ignored\n", 72}, ++\t%s [-s] [-C console]\n", 53}, ++ {"usage: kbd_mode [-a|-u|-k|-s]\n", 54}, ++ {"kbd_mode: error reading keyboard mode\n", 55}, ++ {"The keyboard is in raw (scancode) mode\n", 56}, ++ {"The keyboard is in mediumraw (keycode) mode\n", 57}, ++ {"The keyboard is in the default (ASCII) mode\n", 58}, ++ {"The keyboard is in Unicode (UTF-8) mode\n", 59}, ++ {"The keyboard is in some unknown mode\n", 60}, ++ {"%s: error setting keyboard mode\n", 61}, ++ {"Typematic Rate set to %.1f cps (delay = %d ms)\n", 62}, ++ {"Usage: kbdrate [-V] [-s] [-r rate] [-d delay]\n", 63}, ++ {"Cannot open /dev/port", 64}, ++ {"bug: getfont called with count<256\n", 65}, ++ {"%s: out of memory\n", 66}, ++ {"unknown charset %s - ignoring charset request\n", 67}, ++ {"null symbol found", 68}, ++ {"assuming iso-8859-1 %s\n", 69}, ++ {"assuming iso-8859-15 %s\n", 70}, ++ {"assuming iso-8859-2 %s\n", 71}, ++ {"assuming iso-8859-3 %s\n", 72}, ++ {"assuming iso-8859-4 %s\n", 73}, ++ {"unknown keysym '%s'\n", 74}, + {"\ + Usage:\n\ +-\t%s [-C console] [-o map.orig]\n", 73}, +- {"Bad input line: %s\n", 74}, +- {"%s: Glyph number (0x%x) larger than font length\n", 75}, +- {"%s: Bad end of range (0x%x)\n", 76}, +- {"%s: Bad Unicode range corresponding to font position range 0x%x-0x%x\n", 77}, ++\t%s [-C console] [-o map.orig]\n", 75}, ++ {"Bad input line: %s\n", 76}, ++ {"%s: Glyph number (0x%x) larger than font length\n", 77}, ++ {"%s: Bad end of range (0x%x)\n", 78}, ++ {"%s: Bad Unicode range corresponding to font position range 0x%x-0x%x\n", 79}, + {"\ + %s: Unicode range U+%x-U+%x not of the same length as font position range 0x%\ +-x-0x%x\n", 78}, +- {"%s: trailing junk (%s) ignored\n", 79}, +- {"Loading unicode map from file %s\n", 80}, +- {"%s: %s: Warning: line too long\n", 81}, ++x-0x%x\n", 80}, ++ {"%s: trailing junk (%s) ignored\n", 81}, ++ {"Loading unicode map from file %s\n", 82}, ++ {"%s: %s: Warning: line too long\n", 83}, + {"\ + %s: not loading empty unimap\n\ +-(if you insist: use option -f to override)\n", 82}, +- {"entry", 83}, +- {"entries", 84}, +- {"Saved unicode map on `%s'\n", 85}, +- {"Appended Unicode map\n", 86}, +- {"usage: %s [-v] [-o map.orig] map-file\n", 87}, +- {"mapscrn: cannot open map file _%s_\n", 88}, +- {"Cannot stat map file", 89}, +- {"Loading binary direct-to-font screen map from file %s\n", 90}, +- {"Error reading map from file `%s'\n", 91}, +- {"Loading binary unicode screen map from file %s\n", 92}, +- {"Loading symbolic screen map from file %s\n", 93}, +- {"Error parsing symbolic map from `%s', line %d\n", 94}, +- {"Error writing map to file\n", 95}, +- {"Cannot read console map\n", 96}, +- {"Saved screen map in `%s'\n", 97}, +- {"%s: short ucs2 unicode table\n", 98}, +- {"%s: short utf8 unicode table\n", 99}, +- {"%s: bad utf8\n", 100}, +- {"%s: unknown utf8 error\n", 101}, +- {"%s: short unicode table\n", 102}, +- {"%s: Error reading input font", 103}, +- {"%s: Bad call of readpsffont\n", 104}, +- {"%s: Unsupported psf file mode (%d)\n", 105}, +- {"%s: Unsupported psf version (%d)\n", 106}, +- {"%s: zero input font length?\n", 107}, +- {"%s: zero input character size?\n", 108}, +- {"%s: Input file: bad input length (%d)\n", 109}, +- {"%s: Input file: trailing garbage\n", 110}, +- {"appendunicode: illegal unicode %u\n", 111}, +- {"Cannot write font file header", 112}, +- {"%s: Warning: line too long\n", 113}, +- {"%s: Bad input line: %s\n", 114}, +- {"%s: Glyph number (0x%lx) past end of font\n", 115}, +- {"%s: Bad end of range (0x%lx)\n", 116}, ++(if you insist: use option -f to override)\n", 84}, ++ {"entry", 85}, ++ {"entries", 86}, ++ {"Saved unicode map on `%s'\n", 87}, ++ {"Appended Unicode map\n", 88}, ++ {"usage: %s [-v] [-o map.orig] map-file\n", 89}, ++ {"mapscrn: cannot open map file _%s_\n", 90}, ++ {"Cannot stat map file", 91}, ++ {"Loading binary direct-to-font screen map from file %s\n", 92}, ++ {"Error reading map from file `%s'\n", 93}, ++ {"Loading binary unicode screen map from file %s\n", 94}, ++ {"Loading symbolic screen map from file %s\n", 95}, ++ {"Error parsing symbolic map from `%s', line %d\n", 96}, ++ {"Error writing map to file\n", 97}, ++ {"Cannot read console map\n", 98}, ++ {"Saved screen map in `%s'\n", 99}, ++ {"%s: short ucs2 unicode table\n", 100}, ++ {"%s: short utf8 unicode table\n", 101}, ++ {"%s: bad utf8\n", 102}, ++ {"%s: unknown utf8 error\n", 103}, ++ {"%s: short unicode table\n", 104}, ++ {"%s: Error reading input font", 105}, ++ {"%s: Bad call of readpsffont\n", 106}, ++ {"%s: Unsupported psf file mode (%d)\n", 107}, ++ {"%s: Unsupported psf version (%d)\n", 108}, ++ {"%s: zero input font length?\n", 109}, ++ {"%s: zero input character size?\n", 110}, ++ {"%s: Input file: bad input length (%d)\n", 111}, ++ {"%s: Input file: trailing garbage\n", 112}, ++ {"appendunicode: illegal unicode %u\n", 113}, ++ {"Cannot write font file header", 114}, ++ {"%s: Warning: line too long\n", 115}, ++ {"%s: Bad input line: %s\n", 116}, ++ {"%s: Glyph number (0x%lx) past end of font\n", 117}, ++ {"%s: Bad end of range (0x%lx)\n", 118}, + {"\ + %s: Corresponding to a range of font positions, there should be a Unicode \ +-range\n", 117}, ++range\n", 119}, + {"\ + Usage:\n\ +-\t%s infont intable outfont\n", 118}, ++\t%s infont intable outfont\n", 120}, + {"\ + Usage:\n\ +-\t%s infont [outtable]\n", 119}, ++\t%s infont [outtable]\n", 121}, + {"\ + Usage:\n\ +-\t%s infont outfont\n", 120}, ++\t%s infont outfont\n", 122}, + {"\ + Usage:\n\ +-\t%s [-i infont] [-o outfont] [-it intable] [-ot outtable] [-nt]\n", 121}, +- {"%s: Bad magic number on %s\n", 122}, +- {"%s: psf file with unknown magic\n", 123}, +- {"%s: input font does not have an index\n", 124}, +- {"resizecons: cannot find videomode file %s\n", 125}, +- {"Invalid number of lines\n", 126}, +- {"Old mode: %dx%d New mode: %dx%d\n", 127}, +- {"Old #scanlines: %d New #scanlines: %d Character height: %d\n", 128}, +- {"resizecons: the command `%s' failed\n", 129}, ++\t%s [-i infont] [-o outfont] [-it intable] [-ot outtable] [-nt]\n", 123}, ++ {"%s: Bad magic number on %s\n", 124}, ++ {"%s: psf file with unknown magic\n", 125}, ++ {"%s: input font does not have an index\n", 126}, ++ {"resizecons: cannot find videomode file %s\n", 127}, ++ {"Invalid number of lines\n", 128}, ++ {"Old mode: %dx%d New mode: %dx%d\n", 129}, ++ {"Old #scanlines: %d New #scanlines: %d Character height: %d\n", 130}, ++ {"resizecons: the command `%s' failed\n", 131}, + {"\ +-resizecons: don't forget to change TERM (maybe to con%dx%d or linux-%dx%d)\n", 130}, ++resizecons: don't forget to change TERM (maybe to con%dx%d or linux-%dx%d)\n", 132}, + {"\ + resizecons:\n\ + call is: resizecons COLSxROWS or: resizecons COLS ROWS\n\ + or: resizecons -lines ROWS, with ROWS one of 25, 28, 30, 34, 36, 40, 44, 50, \ +-60\n", 131}, +- {"resizecons: cannot get I/O permissions.\n", 132}, +- {"usage: screendump [n]\n", 133}, +- {"Error reading %s\n", 134}, +- {"couldn't read %s, and cannot ioctl dump\n", 135}, +- {"couldn't read %s\n", 136}, +- {"Strange ... screen is both %dx%d and %dx%d ??\n", 137}, +- {"Error writing screendump\n", 138}, ++60\n", 133}, ++ {"resizecons: cannot get I/O permissions.\n", 134}, ++ {"usage: screendump [n]\n", 135}, ++ {"Error reading %s\n", 136}, ++ {"couldn't read %s, and cannot ioctl dump\n", 137}, ++ {"couldn't read %s\n", 138}, ++ {"Strange ... screen is both %dx%d and %dx%d ??\n", 139}, ++ {"Error writing screendump\n", 140}, + {"\ + Usage: setfont [write-options] [-] [newfont..] [-m consolemap] [-u \ + unicodemap]\n\ +@@ -222,49 +233,49 @@ + -v Be verbose.\n\ + -C Indicate console device to be used.\n\ + -V Print version and exit.\n\ +-Files are loaded from the current directory or /usr/lib/kbd/*/.\n", 139}, +- {"setfont: too many input files\n", 140}, ++Files are loaded from the current directory or /usr/lib/kbd/*/.\n", 141}, ++ {"setfont: too many input files\n", 142}, + {"\ + setfont: cannot both restore from character ROM and from file. Font \ +-unchanged.\n", 141}, +- {"Bad character height %d\n", 142}, +- {"Bad character width %d\n", 143}, +- {"%s: font position 32 is nonblank\n", 144}, +- {"%s: wiped it\n", 145}, +- {"%s: background will look funny\n", 146}, +- {"Loading %d-char %dx%d font from file %s\n", 147}, +- {"Loading %d-char %dx%d font\n", 148}, +- {"Loading %d-char %dx%d (%d) font from file %s\n", 149}, +- {"Loading %d-char %dx%d (%d) font\n", 150}, +- {"%s: bug in do_loadtable\n", 151}, +- {"Loading Unicode mapping table...\n", 152}, +- {"Cannot open font file %s\n", 153}, +- {"When loading several fonts, all must be psf fonts - %s isn't\n", 154}, +- {"Read %d-char %dx%d font from file %s\n", 155}, +- {"When loading several fonts, all must have the same height\n", 156}, +- {"When loading several fonts, all must have the same width\n", 157}, +- {"Cannot find default font\n", 158}, +- {"Cannot find %s font\n", 159}, +- {"Reading font file %s\n", 160}, +- {"No final newline in combine file\n", 161}, +- {"Too many files to combine\n", 162}, +- {"Hmm - a font from restorefont? Using the first half.\n", 163}, +- {"Bad input file size\n", 164}, ++unchanged.\n", 143}, ++ {"Bad character height %d\n", 144}, ++ {"Bad character width %d\n", 145}, ++ {"%s: font position 32 is nonblank\n", 146}, ++ {"%s: wiped it\n", 147}, ++ {"%s: background will look funny\n", 148}, ++ {"Loading %d-char %dx%d font from file %s\n", 149}, ++ {"Loading %d-char %dx%d font\n", 150}, ++ {"Loading %d-char %dx%d (%d) font from file %s\n", 151}, ++ {"Loading %d-char %dx%d (%d) font\n", 152}, ++ {"%s: bug in do_loadtable\n", 153}, ++ {"Loading Unicode mapping table...\n", 154}, ++ {"Cannot open font file %s\n", 155}, ++ {"When loading several fonts, all must be psf fonts - %s isn't\n", 156}, ++ {"Read %d-char %dx%d font from file %s\n", 157}, ++ {"When loading several fonts, all must have the same height\n", 158}, ++ {"When loading several fonts, all must have the same width\n", 159}, ++ {"Cannot find default font\n", 160}, ++ {"Cannot find %s font\n", 161}, ++ {"Reading font file %s\n", 162}, ++ {"No final newline in combine file\n", 163}, ++ {"Too many files to combine\n", 164}, ++ {"Hmm - a font from restorefont? Using the first half.\n", 165}, ++ {"Bad input file size\n", 166}, + {"\ + This file contains 3 fonts: 8x8, 8x14 and 8x16. Please indicate\n\ +-using an option -8 or -14 or -16 which one you want loaded.\n", 165}, +- {"You asked for font size %d, but only 8, 14, 16 are possible here.\n", 166}, +- {"Found nothing to save\n", 167}, +- {"Cannot write font file", 168}, +- {"Saved %d-char %dx%d font file on %s\n", 169}, ++using an option -8 or -14 or -16 which one you want loaded.\n", 167}, ++ {"You asked for font size %d, but only 8, 14, 16 are possible here.\n", 168}, ++ {"Found nothing to save\n", 169}, ++ {"Cannot write font file", 170}, ++ {"Saved %d-char %dx%d font file on %s\n", 171}, + {"\ + usage: setkeycode scancode keycode ...\n\ + (where scancode is either xx or e0xx, given in hexadecimal,\n\ +- and keycode is given in decimal)\n", 170}, +- {"even number of arguments expected", 171}, +- {"error reading scancode", 172}, +- {"code outside bounds", 173}, +- {"failed to set scancode %x to keycode %d\n", 174}, ++ and keycode is given in decimal)\n", 172}, ++ {"even number of arguments expected", 173}, ++ {"error reading scancode", 174}, ++ {"code outside bounds", 175}, ++ {"failed to set scancode %x to keycode %d\n", 176}, + {"\ + Usage:\n\ + \tsetleds [-v] [-L] [-D] [-F] [[+|-][ num | caps | scroll %s]]\n\ +@@ -277,56 +288,56 @@ + (and these are usually reflected in the leds).\n\ + With -L, setleds only sets the leds, and leaves the flags alone.\n\ + With -D, setleds sets both the flags and the default flags, so\n\ +-that a subsequent reset will not change the flags.\n", 175}, +- {"on ", 176}, +- {"off", 177}, +- {"Error reading current led setting. Maybe stdin is not a VT?\n", 178}, +- {"\ +-Error reading current flags setting. Maybe you are not on the console?\n", 179}, +- {"Error reading current led setting from /dev/kbd.\n", 180}, +- {"KIOCGLED unavailable?\n", 181}, +- {"KIOCSLED unavailable?\n", 182}, +- {"Error opening /dev/kbd.\n", 183}, +- {"Error resetting ledmode\n", 184}, +- {"Current default flags: ", 185}, +- {"Current flags: ", 186}, +- {"Current leds: ", 187}, ++that a subsequent reset will not change the flags.\n", 177}, ++ {"on ", 178}, ++ {"off", 179}, ++ {"Error reading current led setting. Maybe stdin is not a VT?\n", 180}, ++ {"\ ++Error reading current flags setting. Maybe you are not on the console?\n", 181}, ++ {"Error reading current led setting from /dev/kbd.\n", 182}, ++ {"KIOCGLED unavailable?\n", 183}, ++ {"KIOCSLED unavailable?\n", 184}, ++ {"Error opening /dev/kbd.\n", 185}, ++ {"Error resetting ledmode\n", 186}, ++ {"Current default flags: ", 187}, ++ {"Current flags: ", 188}, ++ {"Current leds: ", 189}, + {"\ + unrecognized argument: _%s_\n\ +-\n", 188}, +- {"Old default flags: ", 189}, +- {"New default flags: ", 190}, +- {"Old flags: ", 191}, +- {"New flags: ", 192}, +- {"Old leds: ", 193}, +- {"New leds: ", 194}, ++\n", 190}, ++ {"Old default flags: ", 191}, ++ {"New default flags: ", 192}, ++ {"Old flags: ", 193}, ++ {"New flags: ", 194}, ++ {"Old leds: ", 195}, ++ {"New leds: ", 196}, + {"\ + Usage:\n\ + \tsetmetamode [ metabit | meta | bit | escprefix | esc | prefix ]\n\ + Each vt has his own copy of this bit. Use\n\ + \tsetmetamode [arg] < /dev/ttyn\n\ + to change the settings of another vt.\n\ +-The setting before and after the change are reported.\n", 195}, +- {"Meta key sets high order bit\n", 196}, +- {"Meta key gives Esc prefix\n", 197}, +- {"Strange mode for Meta key?\n", 198}, +- {"Error reading current setting. Maybe stdin is not a VT?\n", 199}, +- {"old state: ", 200}, +- {"new state: ", 201}, +- {"usage: %s\n", 202}, +- {"failed to restore original translation table\n", 203}, +- {"failed to restore original unimap\n", 204}, +- {"cannot change translation table\n", 205}, +- {"%s: out of memory?\n", 206}, ++The setting before and after the change are reported.\n", 197}, ++ {"Meta key sets high order bit\n", 198}, ++ {"Meta key gives Esc prefix\n", 199}, ++ {"Strange mode for Meta key?\n", 200}, ++ {"Error reading current setting. Maybe stdin is not a VT?\n", 201}, ++ {"old state: ", 202}, ++ {"new state: ", 203}, ++ {"usage: %s\n", 204}, ++ {"failed to restore original translation table\n", 205}, ++ {"failed to restore original unimap\n", 206}, ++ {"cannot change translation table\n", 207}, ++ {"%s: out of memory?\n", 208}, + {"\ + usage: showconsolefont [-v|-V]\n\ +-(probably after loading a font with `setfont font')\n", 207}, +- {"?UNKNOWN?", 208}, +- {"kb mode was %s\n", 209}, ++(probably after loading a font with `setfont font')\n", 209}, ++ {"?UNKNOWN?", 210}, ++ {"kb mode was %s\n", 211}, + {"\ + [ if you are trying this under X, it might not work\n\ +-since the X server is also reading /dev/console ]\n", 210}, +- {"caught signal %d, cleaning up...\n", 211}, ++since the X server is also reading /dev/console ]\n", 212}, ++ {"caught signal %d, cleaning up...\n", 213}, + {"\ + showkey version %s\n\ + \n\ +@@ -337,16 +348,16 @@ + \t-h --help\tdisplay this help text\n\ + \t-a --ascii\tdisplay the decimal/octal/hex values of the keys\n\ + \t-s --scancodes\tdisplay only the raw scan-codes\n\ +-\t-k --keycodes\tdisplay only the interpreted keycodes (default)\n", 212}, ++\t-k --keycodes\tdisplay only the interpreted keycodes (default)\n", 214}, + {"\ + \n\ + Press any keys - Ctrl-D will terminate this program\n\ +-\n", 213}, +- {"press any key (program terminates 10s after last keypress)...\n", 214}, +- {"release", 215}, +- {"press", 216}, +- {"keycode %3d %s\n", 217}, +- {"%s from %s\n", 218}, ++\n", 215}, ++ {"press any key (program terminates 10s after last keypress)...\n", 216}, ++ {"release", 217}, ++ {"press", 218}, ++ {"keycode %3d %s\n", 219}, ++ {"%s from %s\n", 220}, + }; + +-int _msg_tbl_length = 218; ++int _msg_tbl_length = 220; +Index: trunk/src/analyze.l +=================================================================== +--- trunk.orig/src/analyze.l ++++ trunk/src/analyze.l +@@ -77,7 +77,7 @@ + \- {return(DASH);} + \, {return(COMMA);} + \+ {return(PLUS);} +-{Unicode} {yylval=strtol(yytext+1,NULL,16);return(UNUMBER);} ++{Unicode} {yylval=strtol(yytext+1,NULL,16) ^ 0xf000;return(UNUMBER);} + {Decimal}|{Octal}|{Hex} {yylval=strtol(yytext,NULL,0);return(NUMBER);} + {Literal} {return((yylval=ksymtocode(yytext))==-1?ERROR:LITERAL);} + {Charset} {return(CHARSET);} +Index: trunk/src/dumpkeys.c +=================================================================== +--- trunk.orig/src/dumpkeys.c ++++ trunk/src/dumpkeys.c +@@ -131,11 +131,10 @@ + t = KTYP(code); + v = KVAL(code); + if (t >= syms_size) { +- code = code ^ 0xf000; +- if (!numeric && (p = unicodetoksym(code)) != NULL) ++ if (!numeric && (p = codetoksym(code)) != NULL) + printf("%-16s", p); + else +- printf("U+%04x ", code); ++ printf("U+%04x ", code ^ 0xf000); + return; + } + if (t == KT_LETTER) { +Index: trunk/src/ksyms.c +=================================================================== +--- trunk.orig/src/ksyms.c ++++ trunk/src/ksyms.c +@@ -1,3 +1,4 @@ ++#include + #include + #include + #include +@@ -1689,10 +1690,17 @@ + } + + const char * +-unicodetoksym(int code) { ++codetoksym(int code) { + int i, j; + sym *p; + ++ if (KTYP(code) == KT_META) ++ return NULL; ++ if (KTYP(code) == KT_LETTER) ++ code = K(KT_LATIN, KVAL(code)); ++ if (KTYP(code) < syms_size) ++ return syms[KTYP(code)].table[KVAL(code)]; ++ code = code ^ 0xf000; + if (code < 0) + return NULL; + if (code < 0x80) +@@ -1709,25 +1717,40 @@ + + /* Functions for loadkeys. */ + +-int unicode_used = 0; +- + int + ksymtocode(const char *s) { + int i; +- int j, jmax; ++ int j; + int keycode; ++ int save_prefer_unicode; ++ int syms_start = 0; + sym *p; + ++ if (!s) { ++ fprintf(stderr, "%s\n", _("null symbol found")); ++ return -1; ++ } ++ + if (!strncmp(s, "Meta_", 5)) { ++ /* Temporarily set prefer_unicode to ensure that keycode is ++ right. */ ++ save_prefer_unicode = prefer_unicode; ++ prefer_unicode = 0; + keycode = ksymtocode(s+5); ++ prefer_unicode = save_prefer_unicode; + if (KTYP(keycode) == KT_LATIN) + return K(KT_META, KVAL(keycode)); + /* fall through to error printf */ + } + +- for (i = 0; i < syms_size; i++) { +- jmax = ((i == 0 && prefer_unicode) ? 128 : syms[i].size); +- for (j = 0; j < jmax; j++) ++ if (prefer_unicode) { ++ for (j = 0; j < 0x80; j++) ++ if (!strcmp(s,iso646_syms[j])) ++ return (j ^ 0xf000); ++ syms_start = 1; ++ } ++ for (i = syms_start; i < syms_size; i++) { ++ for (j = 0; j < syms[i].size; j++) + if (!strcmp(s,syms[i].table[j])) + return K(i, j); + } +@@ -1741,8 +1764,7 @@ + p = charsets[i].charnames; + for (j = charsets[i].start; j < 256; j++, p++) + if (!strcmp(s,p->name)) { +- unicode_used = 1; +- return (p->uni ^ 0xf000); /* %%% */ ++ return (p->uni ^ 0xf000); + } + } + } else /* if (!chosen_charset) */ { +@@ -1794,38 +1816,32 @@ + } + + int +-unicodetocode(int code) { +- const char *s; +- +- s = unicodetoksym(code); +- if (s) +- return ksymtocode(s); +- else { +- unicode_used = 1; +- return (code ^ 0xf000); /* %%% */ ++add_number(int code) ++{ ++ const char * kc; ++ if (KTYP(code) == KT_META) ++ return code; ++ if (prefer_unicode && KTYP(code) >= syms_size) { ++ if ((code ^ 0xf000) < 0x80) ++ return K(KT_LATIN, code ^ 0xf000); ++ else ++ return code; + } ++ if (!prefer_unicode && KTYP(code) < syms_size) ++ return code; ++ kc = codetoksym(code); ++ if (kc == NULL) ++ return code; ++ else ++ return ksymtocode(kc); + } + + int + add_capslock(int code) + { +- char buf[7]; +- const char *p; +- + if (KTYP(code) == KT_LATIN) + return K(KT_LETTER, KVAL(code)); +- if (KTYP(code) >= syms_size) { +- if ((p = unicodetoksym(code ^ 0xf000)) == NULL) { +- sprintf(buf, "U+%04x", code ^ 0xf000); +- p = buf; +- } +- } else { +- sprintf(buf, "0x%04x", code); +- p = buf; +- } +-#if 0 +- /* silence the common usage dumpkeys | loadkeys -u */ +- fprintf(stderr, _("plus before %s ignored\n"), p); +-#endif +- return code; ++ if (KTYP(code) >= syms_size && (code ^ 0xf000) < 0x80) ++ return K(KT_LETTER, code ^ 0xf000); ++ return add_number(code); + } +Index: trunk/src/ksyms.h +=================================================================== +--- trunk.orig/src/ksyms.h ++++ trunk/src/ksyms.h +@@ -23,10 +23,10 @@ + extern const int syn_size; + + extern int set_charset(const char *name); +-extern const char *unicodetoksym(int code); ++extern const char *codetoksym(int code); + extern void list_charsets(FILE *f); + extern int ksymtocode(const char *s); +-extern int unicodetocode(int code); ++extern int add_number(int code); + extern int add_capslock(int code); + + #endif +Index: trunk/src/loadkeys.y +=================================================================== +--- trunk.orig/src/loadkeys.y ++++ trunk/src/loadkeys.y +@@ -74,7 +74,6 @@ + extern char *xstrdup(char *); + int key_buf[MAX_NR_KEYMAPS]; + int mod; +-extern int unicode_used; + int private_error_ct = 0; + + extern int rvalct; +@@ -227,13 +226,15 @@ + } + ; + rvalue : NUMBER +- {$$=$1;} ++ {$$=add_number($1);} ++ | LITERAL ++ {$$=add_number($1);} + | UNUMBER +- {$$=($1 ^ 0xf000); unicode_used=1;} ++ {$$=add_number($1);} + | PLUS NUMBER + {$$=add_capslock($2);} +- | LITERAL +- {$$=$1;} ++ | PLUS UNUMBER ++ {$$=add_capslock($2);} + | PLUS LITERAL + {$$=add_capslock($2);} + ; +@@ -262,6 +263,7 @@ + char **args; + int optd = 0; + int optm = 0; ++int optu = 0; + int opts = 0; + int verbose = 0; + int quiet = 0; +@@ -283,6 +285,8 @@ + { NULL, 0, NULL, 0 } + }; + int c; ++ int fd; ++ int mode; + + set_progname(argv[0]); + +@@ -303,6 +307,7 @@ + break; + case 'u': + set_charset("unicode"); ++ optu = 1; + break; + case 'q': + quiet = 1; +@@ -318,8 +323,20 @@ + } + } + ++ if (!optm) { ++ fd = getfd(NULL); ++ if (!optu) { ++ if (ioctl(fd, KDGKBMODE, &mode)) { ++ perror("KDGKBMODE"); ++ fprintf(stderr, _("loadkeys: error reading keyboard mode\n")); ++ exit(1); ++ } ++ if (mode == K_UNICODE) ++ set_charset("unicode"); ++ } ++ } ++ + args = argv + optind - 1; +- unicode_used = 0; + yywrap(); /* set up the first input file, if any */ + if (yyparse() || private_error_ct) { + fprintf(stderr, _("syntax error in map file\n")); +@@ -766,15 +783,6 @@ + int i,j,fail; + int oldm; + +- if (unicode_used) { +- /* Switch keyboard mode for a moment - +- do not complain about errors. +- Do not attempt a reset if the change failed. */ +- if (ioctl(fd, KDGKBMODE, &oldm) +- || (oldm != K_UNICODE && ioctl(fd, KDSKBMODE, K_UNICODE))) +- oldm = K_UNICODE; +- } +- + for(i=0; i +-#include + #endif + + #ifndef KDKBDREP +Index: trunk/src/setleds.c +=================================================================== +--- trunk.orig/src/setleds.c ++++ trunk/src/setleds.c +@@ -14,10 +14,6 @@ + #include "nls.h" + #include "version.h" + +-#ifdef __sparc__ +-#include +-#endif +- + static void + usage(void) + { --- kbd-1.12.orig/debian/kbd-udeb.dirs +++ kbd-1.12/debian/kbd-udeb.dirs @@ -0,0 +1 @@ +bin --- kbd-1.12.orig/debian/kbd.postinst +++ kbd-1.12/debian/kbd.postinst @@ -0,0 +1,14 @@ +#! /bin/sh -e + +# Move the init script symlink +if [ -L /etc/rcS.d/S48console-screen.kbd.sh ]; then + update-rc.d -f console-screen.kbd.sh remove +fi + +if type update-initramfs >/dev/null 2>&1; then + update-initramfs -u +fi + +#DEBHELPER# + +exit 0 --- kbd-1.12.orig/debian/kbd.initramfs-hook +++ kbd-1.12/debian/kbd.initramfs-hook @@ -0,0 +1,23 @@ +#! /bin/sh -e + +PREREQ="kernelextras" + +prereqs () { + echo "$PREREQ" +} + +case $1 in +prereqs) + prereqs + exit 0 + ;; +esac + +. /usr/share/initramfs-tools/hook-functions + +# Console utilities needed for console-setup +copy_exec /bin/setfont /bin +copy_exec /bin/kbd_mode /bin +copy_exec /bin/loadkeys /bin + +exit 0 --- kbd-1.12.orig/debian/watch +++ kbd-1.12/debian/watch @@ -0,0 +1,4 @@ +# Example watch control file for uscan +version=3 + +ftp://ftp.win.tue.nl/pub/linux-local/utils/kbd/kbd-(.*)\.tar\.gz --- kbd-1.12.orig/debian/kbd.docs +++ kbd-1.12/debian/kbd.docs @@ -0,0 +1,5 @@ +doc/* +debian/fonts.magic +README +debian/README.Euro +debian/LISEZMOI.Euro --- kbd-1.12.orig/debian/kbd.dirs +++ kbd-1.12/debian/kbd.dirs @@ -0,0 +1,7 @@ +bin +etc/kbd +etc/init.d +sbin +usr/bin +usr/sbin +usr/share/initramfs-tools/hooks --- kbd-1.12.orig/debian/LISEZMOI.Euro +++ kbd-1.12/debian/LISEZMOI.Euro @@ -0,0 +1,168 @@ + EURO PACK pour Linux, version 1.3 + ********************************* + Copyright (c) 1998, Guylhem AZNAR , GPL + + +0. CONTENU +********** + +Vous trouverez ici : +* fr-latin0.map : table de clavier Français-Latin0 pour linux-console +* fr-latin0.xmod : table de clavier Français-Latin0 pour X11-xmodmap +* fr-latin0 : table de clavier Français-Latin0 pour X11-xkb +* other-latin0.map : table de clavier Latin0 générique pour linux-console +* other-latin0.xmod : table de clavier Latin0 générique pour X11-xmodmap +* des fichiers .psf : polices Latin0 pour linux-console +* des fichiers .bdf : polices Latin0 pour X11 +* deux fichiers .gif pour expliquer visuellement les petites différences +entre le latin0 & le latin1, compatibles à 99% + +1. COMMENT S'EN SERVIR +********************** + +1.1 SOUS LINUX-CONSOLE +********************** + +Taper par exemple pour lat0-16.psf (ou un autre psf) : + + setfont ./lat0-16.psf + +Si vous avez un clavier AZERTY français : + + loadkeys ./fr-latin0.map + +Sinon : + + loadkeys ./other-latin0.map + + +1.1.1 SPÉCIFIQUEMENT AU CLAVIER AZERTY FRANÇAIS +*********************************************** + +Ça y est, vous pouvez taper du texte latin0 sous linux en mode console ! +Seules 2 touches ont été modifiées : + + * carré : sert à oe liés & OE liés, en AltGr on trouve les guillemets qui +sont normalement directement accessibles + + * dollar / livre / symbole monnaitaire international : étant donné que +nôtre monnaie principale est *L'EURO* et non le dollar, cette touche sert +désormais à l'euro & aux cents. + +Le dollar & la livre, très utiles quand même, sont disponibles en AltGr. +Le symbole monnaitaire international ayant disparu de la norme latin0, il +n'est plus disponible. + +1.1.2 POUR LES AUTRES CLAVIERS +****************************** + +L'euro & les cents ont été rajoutés respectivement en AltGr (e) & en AltGr (c) +La touche AltGr a donc été rajoutée ; pour utiliser ces fonctions avec +toute table de clavier, il suffit de charger other-latin0.map après vôtre +table nationale. + +1.1.3 DANS LES DEUX CAS +*********************** + +Home, End, Delete, Backspace ont été corrigés & les touches « windows » ont +été correctement définies, pour passer d'une console virtuelle à l'autre. + +Des « composes », séquences à préfixer par la touche compose (SysReq) ont +étés rajoutés, mais cela reste transparent pour l'utilisateur. + +Par exemple: + COMPOSE ^ (s,S,z,Z) sert à obtenir les lettres finlandaises rajoutées + COMPOSE " (y,Y) sert à obtenir les y trémas franço-néerlandais rajoutés + COMPOSE - (e,c,l,y) sert à obtenir l'euro, le cent, la livre, le yen + +1.2 SOUS X11 +************ + +Sous root cette fois, taper par exemple pour Xlat0-10x20.pcf (ou un autre pcf) : + + bdftopcf Xlat0-10x20.pcf > Xlat0-10x20-lat0.pcf + gzip Xlat0-10x20-lat0.pcf + mv Xlat0-10x20-lat0.pcf.gz /usr/X11R6/lib/X11/fonts/misc + mkfontdir /usr/X11R6/lib/X11/fonts/misc + +1.2.1 SPÉCIFIQUEMENT AU CLAVIER AZERTY FRANÇAIS +*********************************************** + +Pour utiliser xkb (solution recommandée) : + + cp fr-latin0 /usr/X11R6/lib/X11/xkb/symbols + +Sinon, en utilisant xmodmap : + + cp fr-latin0.xmod /usr/X11R6/lib/X11/xinit/Xmodmap + cp fr-latin0.xmod ~/.Xmodmap + +Puis éditer votre XF86Config pour y rajouter dans la section « Keyboard » : + + XkbKeycodes "xfree86" + XkbRules "xfree86" + XkbTypes "default" + XkbCompat "default" + XkbSymbols "fr-latin0(pc102)" + XkbGeometry "pc(pc102)" + XkbModel "pc102" + +1.2.2 POUR LES AUTRES CLAVIERS +****************************** + +La seule solution est d'utiliser xmodmap, avec xkb chargeant votre table de +clavier nationale : + + cp other-latin0.xmod /usr/X11R6/lib/X11/xinit/Xmodmap + cp other-latin0.xmod ~/.Xmodmap + cp other-latin0.xmod ~/.Xmodmap + +ou en faisant tout avec xmodmap, en supposant que vous ayez déjà un +~/.Xmodmap qui fonctionne bien : + + cat other-latin0.xmod >> /usr/X11R6/lib/X11/xinit/Xmodmap + cat other-latin0.xmod >> ~/.Xmodmap + +1.2.3 DANS LES DEUX CAS +*********************** + +De là, redémarrer X ou taper : + + xset +fp /usr/X11R6/lib/X11/fonts/misc + +Si vous utilisez xmodmap, lancez : + + xmodmap ~/.Xmodmap + +Pour choisir les polices latin0, lancer xfontsel et chercher les encodages +iso8859-15. + +Plus simplement, taper : + + grep Xlat0-10x20-lat0.pcf /usr/X11R6/lib/X11/fonts/misc/fonts* + +Puis utiliser le second paramètre comme nom de police, par exemple avec +xiterm ou rxvt : + + xiterm -fn -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-15 + +2. RÉACTIONS +************ + +Je suis bien entendu intéressé par toutes vos réactions, positives ou +négatives. + +Certaines modification peuvent vous sembler très importante (l'Euro +remplaçant le dollar mis en AltGr, ou les oe liés à la place des +guillemets) mais, hélas!, il n'y a guère de possibilitées pour rajouter +tous les symboles européens sur nos claviers déjà normalisés. + +J'ai essayé de procéder avec la plus grande transparence possible, en +privilégiant l'ergonomie de la majorité des utilisateurs, mais je suis +pourtant conscient que AltGr Euro= dollar va par exemple beaucoup géner les +programmeurs. + +Signalez-moi vos bugs & dites-moi si vous êtes satisfaits de mon travail ! + + Guylhem Aznar + ou --- kbd-1.12.orig/debian/control +++ kbd-1.12/debian/control @@ -0,0 +1,26 @@ +Source: kbd +Section: utils +Priority: extra +Maintainer: Ubuntu Core Developers +XSBC-Original-Maintainer: Console utilities maintainers +Uploaders: Denis Barbier , Anton Zinoviev +Build-Depends: debhelper (>= 4), linuxdoc-tools, bison, flex | flex-old, gettext, quilt +Standards-Version: 3.7.2 + +Package: kbd +Architecture: any +Depends: ${shlibs:Depends}, console-setup | console-common, lsb-base (>= 3.0-10) +Recommends: console-setup | console-data (>= 1999.08.29-13) +Provides: console-utilities, open +Conflicts: console-utilities, kbd-data, open, util-linux (<< 2.11) +Replaces: open, util-linux (<< 2.11) +Description: Linux console font and keytable utilities + This package allows you to set up the Linux console, change the font, + resize text mode virtual consoles and remap the keyboard. + +Package: kbd-udeb +XC-Package-Type: udeb +Section: debian-installer +Architecture: any +Depends: ${shlibs:Depends} +Description: Linux console keyboard setup utilities --- kbd-1.12.orig/debian/copyright +++ kbd-1.12/debian/copyright @@ -0,0 +1,59 @@ +This is the Debian-Linux prepackaged version of the Linux console font and +keytable utilities. loadkeys, dumpkeys and showkey were derived from Risto +Kankkunen's kbd-0.81. The font loading code goes back to the codepage +package by Joel Hoffman (joel@wam.umd.edu). (He tells me that the original +reference is: "From: p. 307 of _Programmer's Guide to PC & PS/2 Video +Systems_ by Richard Wilton. 1987. Microsoft Press".) The kernel and user +interface for the font loading closely follows Eugene Crosser's intl_con +package. [Similar things were done earlier by Jerry Kaidor +(tr2!jerry@abekas.com, jkaidor@synoptics.com) : fontpak, H. Peter Anvin +(hpa@nwu.edu) and Pavel Zaboj (xzaboj@vse.cs). Their code was not used, +but the Latin-1 *.psf fonts were developed by H. Peter Anvin, and the +Latin-2 ones by Pavel Zaboj.] The current maintainer is Andries Brouwer +. + +This package was put together by Denis Barbier , from +sources obtained from: + ftp://ftp.win.tue.nl/pub/linux-local/utils/kbd/ + +Packaging is copyright 2004 Denis Barbier + copyright 2004 Wartan Hachaturow + copyright 1999-2001 Yann Dirson + copyright 2001 Alcove http://www.alcove.fr/ + + +The file + kbdrate.c +is Copyright (C) 1992 Rickard E. Faith. + +The files + dumpkeys.c loadkeys.y analyze.l ksyms.c ksyms.h + showkey.c keymaps.5 loadkeys.1 dumpkeys.1 showkey.1 +are Copyright (C) 1993 Risto Kankkunen. + +The files + setfont.c setfont.8 mapscrn.c mapscrn.8 +(and changes to loadkeys.y) +are Copyright (C) 1993 Eugene G. Crosser. + +The files + psfaddtable.1 psfgettable.1 psfstriptable.1 +are Copyright (C) 1994 H. Peter Anvin. + +The files + chvt.c clrunimap.c deallocvt.c fgconsole.c findfile.c + getfd.c getkeycodes.c getunimap.c kbd_mode.c loadunimap.c + psffontop.c psfxtable.c resizecons.c screendump.c setkeycodes.c + setleds.c setmetamode.c setvesablank.c showconsolefont.c + spawn_console.c spawn_login.c + chvt.1 deallocvt.1 kbd_mode.1 setleds.1 setmetamode.1 + getkeycodes.8 loadunimap.8 resizecons.8 setkeycodes.8 + kbd.FAQ.* +(and changes to earlier mentioned programs) +are Copyright (C) 1994-1999 Andries E. Brouwer. + +All files in this package may be freely copied under the terms +of the GNU General Public License (GPL), version 2, or at your +option any later version - except possibly for the restrictions +mentioned in the directory consolefonts. This license may be found +on Debian GNU/Linux systems as `/usr/share/common-licenses/GPL'. --- kbd-1.12.orig/debian/README.Debian +++ kbd-1.12/debian/README.Debian @@ -0,0 +1,5 @@ +The kbd Debian package only contains binaries from upstream kbd +tarball, console keymaps and fonts are shipped in console-data. +Keymap selection is performed either by running + dpkg-reconfigure console-data +or by calling install-keymap(8), from the console-common package. --- kbd-1.12.orig/debian/conffiles.d/config +++ kbd-1.12/debian/conffiles.d/config @@ -0,0 +1,66 @@ +# +# This files tells the 'kbd' package: +# +# - whether to load a specific font and boot (and maybe a screen-font map, +# but you should avoid that if possible). +# - whether to setup an Application-Charset Map other than the default CP437. +# - whether to do screen saver/DPMS settings +# - whether to change the keyboard rate/delay or the state of the +# keyboard indicators +# +# You can also specify per-VC settings by suffixing variable names as in +# the examples below. This only works on framebuffer devices. +# +# For consistency with the configuration file of console-tools the +# following variables and their _vcN versions are also supported: +# SCREEN_FONT, SCREEN_FONT_MAP and APP_CHARSET_MAP. +# +# +# Example: +# +#CONSOLE_FONT=iso01.f16 +#CONSOLE_FONT_vc2=LatArCyrHeb-16 +# +#CONSOLE_MAP=iso05 +#CONSOLE_MAP_vc2=user +# +# Set the following - more euro-friendly default than kernel font. +#CONSOLE_FONT=latarcyrheb-sun16.psf + +# Forget this one unless you _know_ it is necessary for your font: +#FONT_MAP=iso01 + +# **** screen saver/DPMS settings: all VCs **** +# These settings are commented by default to avoid the chance of damage to +# very old monitors that don't support DPMS signalling. + +# screen blanking timeout. monitor remains on, but the screen is cleared to +# range: 0-60 min (0==never) kernels I've looked at default to 10 minutes. +# (see linux/drivers/char/console.c) +BLANK_TIME=30 + +# blanking method (VESA DPMS mode to use after BLANK_TIME, before powerdown): +# on: the default, no DPMS signalling. near instant powerup, no power saving +# vsync: DPMS Standby mode. nearly instant recovery, uses 110/120W (17" screen) +# hsync: DPMS Suspend mode. typically 3s recovery, uses 15/120W (17" screen) +# powerdown,off: DPMS Off mode, typ. 10s recovery, uses 5/120W (17" screen) + +# Those values are for my 17" Mag, but some monitors do suspend the same as +# standby. xset dpms force {off|standby|suspend|on} is useful for this, if X +# supports DPMS on your video card. Set X's DPMS screensaver with xset dpms +# or use option power_saver in XF86Config +# +# DPMS set by default to on, because hsync can cause problems on certain +# hardware, such as Armada E500 laptops +BLANK_DPMS=off + +# Powerdown time. The console will go to DPMS Off mode POWERDOWN_TIME +# minutes _after_ blanking. (POWERDOWN_TIME + BLANK_TIME after the last input) +POWERDOWN_TIME=30 + +# rate and delay can get only specific values, consult kbdrate(1) for help +#KEYBOARD_RATE="30" +#KEYBOARD_DELAY="250" + +# Turn on numlock by default +#LEDS=+num --- kbd-1.12.orig/debian/conffiles.d/remap +++ kbd-1.12/debian/conffiles.d/remap @@ -0,0 +1,5 @@ +# This sed script is run across the dumpkeys output to remap keys on the console + +# This turns caps lock into control +#s/keycode 58 = Caps_Lock/keycode 58 = Control/; + --- kbd-1.12.orig/debian/changelog +++ kbd-1.12/debian/changelog @@ -0,0 +1,1207 @@ +kbd (1.12-19ubuntu1) hardy; urgency=low + + * Resynchronise with Debian. Remaining changes: + - Prefer console-setup to console-common and console-data. + - debian/console-screen.kbd.sh: Don't run if setupcon (from + console-setup) is present. + - Move console-screen.kbd.sh to rcS/S90. + - Add setfont, kbd_mode, and loadkeys to initramfs for console-setup. + + -- Colin Watson Mon, 10 Dec 2007 13:18:26 +0000 + +kbd (1.12-19) unstable; urgency=low + + * Apply a patch by Colin Watson to add setfont to the udeb. + + -- Anton Zinoviev Mon, 02 Jul 2007 15:14:32 +0300 + +kbd (1.12-18ubuntu1) gutsy; urgency=low + + * Prefer console-setup to console-common and console-data. + * debian/console-screen.kbd.sh: Don't run if setupcon (from console-setup) + is present. + * Add setfont to kbd-udeb. + * Move console-screen.kbd.sh to rcS/S90. + * Add setfont, kbd_mode, and loadkeys to initramfs for console-setup. + + -- Colin Watson Thu, 31 May 2007 13:33:22 +0100 + +kbd (1.12-18) unstable; urgency=low + + * Add me to uploaders + * Add console-setup as an alternative in the dependencies on + console-common and console-data. Thanks to Martin-Éric Racine, + closes: #398439. + * Search for an installed font in unicode_start since now LatArCyrHeb-16 + may not be installed. + * Some changes in /etc/init.d/console_screen.kbd.sh: + - run unicode_{start,stop} before setfont. Give a font argument to + unicode_start so the font doesn't change twice. Thanks to Mattia, + closes: #421390; + - fix the per-VC font load; + - (re)enable the per-VC ACM load; + - for consistency use CONSOLE_MAP_vcN instead of APP_CHARSET_MAP_vcN + and FONT_MAP_vcN instead of CONSOLE_MAP_vcN; + - support also the config variables in console-tools style + (APP_CHARSET_MAP, SCREEN_FONT, SCREEN_FONT_MAP); + - do not run unicode_start if CONSOLE_MAP (or CONSOLE_MAP_vcN) is defined; + - run unicode_start/unicode_stop only on consoles where we load a font; + - do not use static paths such as /usr/bin/setfont; + - add description and short description in the LSB header. + * Use more substantial example for /etc/kbd/config based on the config + file of console-tools. Thanks to Jonny, closes: #410553. + * Install kbd_mode and setfont in /bin rather than in /usr/bin so the + administrator be able to set up the font in case of emergency and use + the keyboard in utf-8 mode. + * Add an udeb with loadkeys and kbd_mode. A patch was provided by Frans + Pop and was modified to give a -Os option to the compiler. + + -- Anton Zinoviev Mon, 14 May 2007 18:34:54 +0300 + +kbd (1.12-17) unstable; urgency=low + + * debian/rules: Drop bashisms. Closes: #379500 Thanks Julien Danjou + + * debian/control: Drop versioned dependencies against dpkg and sysvinit, + these ttansitions are over for a long time. As these packages are of + priority required, these dependencies can be removed. + Closes: #386131 Thanks martin f krafft + + * debian/control: console-data in oldstable satisfies Recommends, so + remove this version too. + + * debian/console-screen.kbd.sh: Add lsb logging, see #384785 + + -- Denis Barbier Tue, 5 Sep 2006 23:05:44 +0200 + +kbd (1.12-16) unstable; urgency=low + + * debian/patches/sparc-compile.diff: New patch to fix build failure on sparc. + + * debian/patches/kbdrate_sparc.diff: Drop this patch, it is no more needed. + Thanks Samuel Mimram for testing these changes on Sparc. + + * debian/patches/quiltrc: Call 'quilt --quiltrc=debian/patches/quiltrc' + in debian/rules so that the same quilt configuration file is used under + all circumstances. + + -- Denis Barbier Thu, 20 Jul 2006 22:36:55 +0200 + +kbd (1.12-15) unstable; urgency=low + + * debian/patches/getfd.diff: New patch, the getfd function now tries to + open /proc/self/fd/0, so that kbd_mode can be used to query or modify any + TTY by running kbd_mode < /dev/ttyN. + + * debian/console-screen.kbd.sh: Fix LSB runtime info, as reported in #361051. + + * debian/console-screen.kbd.sh: When this script is run, only the first TTY + is created, so all other TTYs have no settings. A workaround is to add + u8:23:once:/etc/init.d/console-screen.kbd.sh reload + in /etc/inittab so that this script is run again after TTYs are allocated. + If console detection does not work as expected, LIST_CONSOLES can be set + in /etc/kbd/config, it contains a space seperated list of TTY numbers to + be modified by this script. WARNING: this is still experimental! + + * debian/patches/mapscrn-acm.diff: Let mapscrn also read ACM files, since + some fonts shipped by console-data have an .acm suffix. Closes: #377579 + Thanks Theppitak Karoonboonyanan + + * debian/control: Bump Standards-Version: 3.7.2 + + -- Denis Barbier Wed, 19 Jul 2006 21:24:37 +0200 + +kbd (1.12-14) unstable; urgency=low + + * debian/patches/read_keymaps_fmt.diff: When -m flag is set, do not try to + open a file descriptor on the console so that loadkeys -m can be used + under X. See #341956. + + * debian/patches/read_keymaps_fmt.diff: Let add_number() return its + argument if it corresponds to an unknown symbol, because Unicode symbols + are not always defined (and may appear within Unicode private range, + anyway). See #312844. + + * debian/patches/braille.diff: New patch, to add braille keysyms, introduced + in Linux 2.6.17-rc1. Closes: #360813 Thanks Samuel Thibault + + * debian/patches/thai.diff: New patch, to add tis-620 charset for Thai. + See #360592 Thanks Theppitak Karoonboon + + * debian/README.Debian: Rewrite this documentation. + Closes: #328783 Thanks David Liontooth + + * debian/control: Change Maintainer field to pkg-kbd-dev@l.a.d.o, and + add myself to Uploaders. + + * debian/console-screen.kbd.sh: Check for locale variables in both files + /etc/environment and /etc/default/locale. + + * Move openvt and chvt into /bin. Closes: #320571 Thanks Tim Connors + + * Apply changes from console-tools: + + debian/console-screen.kbd.sh: + - Include LSB-formatted Init dependency info + - Remove all exit statements from /etc/init.d/console-screen.kbd.sh. + - Ensure the correct font, unicode_mode are set for all VTs. + - Make vcstime work under udev. + - Read /etc/kbd/config.d for the benefit of fonty, etc. integration. + - Go into unicode mode if locale is in UTF-8. + - Added support for LED setting and key remapping. + + debian/patches/fgconsole.diff: New patch, to add "--next-available" + option to fgconsole to discover the next unallocated VT. + + -- Denis Barbier Wed, 29 Mar 2006 21:39:02 +0200 + +kbd (1.12-13) unstable; urgency=low + + * debian/patches/fedora-kbd-1.12-alias.patch: there are some C aliasing + violations, and setfont misbehaves in 1.12-12 because it has been + compiled with GCC 4 whereas prior versions were compiled with GCC 3. + Thanks Emanuele Rocca for this report, and Fedora folks for this patch. + Closes: Bug#322165 + + -- Denis Barbier Tue, 9 Aug 2005 23:37:18 +0200 + +kbd (1.12-12) unstable; urgency=low + + * debian/control: drop dependency on debconf, templates have been + removed before woody release. + * debian/control: Bump Standards-Version: 3.6.2 + * splitfont.1: Fix formatting typo + + -- Denis Barbier Sat, 6 Aug 2005 12:47:22 +0200 + +kbd (1.12-11) unstable; urgency=medium + + * unicode_start/stop: Replace echo -e by printf commands. + Closes: #305588 Thanks, Jan Braun + * Update debian/watch file. + + -- Denis Barbier Thu, 21 Apr 2005 00:42:22 +0200 + +kbd (1.12-10) unstable; urgency=medium + + * Fix quilt usage in debian/rules which caused FTBFS. + Closes: #282698 Thanks, Kurt Roeckx. + + -- Denis Barbier Tue, 23 Nov 2004 23:33:08 +0100 + +kbd (1.12-9) unstable; urgency=medium + + * src/unicode_start src/unicode_stop: Do not run kbd_mode if not + on a console, this can break X. Checks are copied from + console-tools. Closes: #281305 + Thanks John R. McPherson for the bugreport and Alastair McKinstry + for investigating this issue and providing a fix. + * Urgency set to medium because this is a RC bug. + * debian/control: Use quilt instead of dpatch to handle patches, + and rename patches. + + -- Denis Barbier Fri, 19 Nov 2004 21:45:41 +0100 + +kbd (1.12-8) unstable; urgency=low + + * debian/patches/90_read_keymaps_fmt.dpatch: When keyboard is in UTF-8 + mode, '+' sign before ASCII characters was discarded. + Thanks Roger Leigh and Darren Salt. + + -- Denis Barbier Thu, 30 Sep 2004 21:58:21 +0200 + +kbd (1.12-7) unstable; urgency=low + + * console-screen.kbd.sh: Variable name in config file is + CONSOLE_FONT and not SCREEN_FONT, so use the right variable + in this script. Closes: #271796 Thanks, Emanuele Rocca + + -- Denis Barbier Sat, 18 Sep 2004 22:34:41 +0200 + +kbd (1.12-6) unstable; urgency=low + + * debian/patches/30_kbdrate_sparc.dpatch: Really fix compilation on sparc. + + -- Denis Barbier Tue, 3 Aug 2004 07:52:58 +0200 + +kbd (1.12-5) unstable; urgency=low + + * debian/patches/30_kbdrate_sparc.dpatch: Fix compilation on sparc, + the kbd_repeat struct has no 'period' member. + * debian/patches/20_showconsolefont.dpatch: Renamed into + debian/patches/20_main_argc.dpatch and fix more programs. + * debian/patches/10_uni_suffix.dpatch: console-data puts sfm files + into /usr/share/consoletrans, so kbd has to look into this directory + instead of /usr/share/unimaps. + * debian/patches/90_read_keymaps_fmt.dpatch: Minor changes. + + -- Denis Barbier Mon, 2 Aug 2004 00:33:11 +0200 + +kbd (1.12-4) unstable; urgency=low + + * kbd 1.12-2 did not reach archives, so changes are generated with + -v1.12-1 flag. + * debian/patches: Rename patches: + 01loadkeys -> 10_kmap_suffix + 02paths -> 10_defkeymap + 03loadunimap -> 10_uni_suffix + 04pomakefile -> 01_po_makefile + 05manpages -> 02_man_pages + 06kbdrate -> 30_kbdrate_notty + 07showconsolefont -> 20_showconsolefont + 08loadkeys -> 90_read_keymaps_fmt + 09canonicalsyms -> 20_canonical_syms + 10charsets0 -> 50_charsets0 + * debian/patches/90_read_keymaps_fmt.dpatch: + This patch is reorganized, mostly in src/ksyms.c; the prefer_unicode + variable is resurrected to replace ioctl calls. This means that + src/getfd.c does no more need to be patched, and -u flag is active + again. + + -- Denis Barbier Sun, 1 Aug 2004 19:22:28 +0200 + +kbd (1.12-3) unstable; urgency=low + + * debian/patches/07showconsolefont.dpatch: + showconsolefont choke on -C flag. + * debian/patches/08loadkeys.dpatch: + Apply patches sent to #251550 so that loadkeys sets keuboard maps + depending on current mode and not on the format used to write keymap + files. + * debian/patches/09canonicalsyms.dpatch: + Different symbolic names are used for the same Unicode character, + which may confuse loadkeys (see #260758). + * debian/patches/10charsets0.dpatch: + In order to find the right symbol name even when some symbols have + several different names, charsets[0] stores code<->name mapping for the + current charset. + + -- Denis Barbier Sat, 31 Jul 2004 22:15:04 +0200 + +kbd (1.12-2) unstable; urgency=low + + * New maintainer, approved by Wartan Hachaturow. + * debian/control: flex-old is an alternative for flex in Build-Depends. + * debian/control: debian/rules uses debhelper 4. so build-depend on it. + * debian/control: Fix package description to make lintian happy. + Also remove mentions of openvt and kbdrate, these programs are part of + kbd for a very long time. + * debian/control: Bump Standards-Version: 3.6.1, no changes needed in + packaging. + * debian/README.Debian: Remove the notice about showfont, it has been + renamed upstream into showconsolefont. + * debian/rules: Build and install contrib/codepage, contrib/vcstime, + src/screendump, src/setlogcons and src/setvesablank programs. + * debian/rules: Install programs to the same location as in console-tools, + in particular fgconsole is moved from /usr/bin/fgconsole to + /bin/fgconsole. + * debian/patches/04pomakefile.dpatch: + po/Makefile was patched instead of po/Makefile.in in original tarball. + * debian/patches/05manpages.dpatch: + These programs are installed, so copy their manual pages too: + man/man1misc/codepage.1 man/man1misc/screendump.1 + man/man8misc/mk_modmap.8 man/man8misc/setvesablank.8 + Steal setlogcons.8, splitfont.1 and vcstime.8 from console-tools. + Closes: #200106 + All programs shipped by kbd are now documented, so closes: #9697 + as well. Thanks Alastair McKinstry for writing this documentation. + * debian/patches/06kbdrate.dpatch: + Kbdrate must not fail when not connected to a TTY. + Closes: #212770 Thanks Frederic Gaus for the bugreport and its fix. + * debian/console-screen.kbd.sh: $0 argument was tested instead of $1, + and thus setfont was called in prerm, which may prevent kbd removal + if setfont fails for any reason. The console-screen.sh script from + console-tools is much more complete, so replace its content by this + script, with some changes. + * debian/kbd.postinst: Since kbd depends on console-data and does not + ship keymap files, its postinst must not run install-keymap. + Having a more robust console-screen.kbd.sh script and kbd.postinst + no longer running setfont makes upgrades and removals much smoother. + Closes: #102074, #208767, #212325 + * debian/kbd.postrm: Configuration files are automatically removed on + purge, so this file is useless. + * debian/changelog: Remove Emacs settings. + * debian/copyright: Add a link to GPL text. + * Lintian now only reports no-manpage-in-correct-directory warnings, + but program locations must be checked with console-tools maintainer. + + -- Denis Barbier Mon, 26 Jul 2004 23:14:33 +0200 + +kbd (1.12-1) unstable; urgency=low + + * Finally, new upstream version. (Closes: #170715) + * Now non-native. (Closes: #102411) + * Conflicts with util-linux now (better late, than + never). (Closes: #91848, #91839) + * kbd now uses dpatch. + * Bumped standarts-version to 3.5.9. + * Fixed copyright file to include new COPYING from upstream. + + -- Wartan Hachaturow Tue, 27 Jan 2004 13:46:07 +0300 + +kbd (1.06-2) unstable; urgency=low + + * Changed Maintainer: field to wart@debian.org + * Applied patch by Ben Collins, (Closes: #110616) + + -- Wartan Hachaturow Wed, 30 Jan 2002 14:01:28 +0300 + +kbd (1.06-1) unstable; urgency=low + + * New upstream release. + * Reapplied patches - looks like I forgot to send them upstream... + * Moved added files to debian/ dir. + + -- Yann Dirson Sun, 20 May 2001 02:39:19 +0200 + +kbd (1.05-4) unstable; urgency=high + + * Run script for which we rely on ouput under LC_ALL=POSIX (Closes: + #94019). + + -- Yann Dirson Fri, 20 Apr 2001 00:43:08 +0200 + +kbd (1.05-3) unstable; urgency=medium + + * Install kbdrate in /sbin instead of /usr/bin, and version the + replacement of util-linux (Closes: #88868). + + -- Yann Dirson Thu, 8 Mar 2001 12:48:58 +0100 + +kbd (1.05-2) unstable; urgency=low + + * Added clarifying message to postinst. + * Stop adding a kbdconfig.8 link to undocumented. + * Added to build-deps: bison, flex, gettext (Closes: #88091). + + -- Yann Dirson Fri, 2 Mar 2001 17:47:06 +0100 + +kbd (1.05-1) unstable; urgency=low + + * The "Duplicate any bugs introduced in console-tools before they had a + chance to be reported" release. + * New upstream release: + ** New programs: kbdrate outpsfheader psfxtable setlogcons. + ** iso-8859-15 support (Closes: #56241). + * Replaces util-linux because we now provide kbdrate. + * Re-applyed a couple of patches: + ** Support for console-data suffixes (.kmap, .sfm). + ** Do not have ld strip binaries. + ** Fixed handling of DESTDIR to something more standard (and which does + not forget loadkeys location). + ** re-added fonts.magic and Euro READMEs. + * Added build-depends. + * Added open compat symlink to openvt. Now provides/conflicts with old + "open" package. + * Updated for use with console-common, using console-tools 0.2.3-19 as a + model (Closes: #57196): + ** Updated relationships with other packages. + ** Removed kbdconfig, install-keymap, and init.d/keymaps.sh. + ** Updated postinst. + ** Removed preinst (Closes: #87858). + ** Removed debconf templates. + ** Removed all traces of the ancient times when we shipped kbd-data. + * Alcove earned to be copyright holder by providing me with time to work + on this package; mentionned this in the copyright file. + * Updated upstream location in copyright file. + + -- Yann Dirson Wed, 28 Feb 2001 15:44:44 +0100 + +kbd (0.99-11) unstable; urgency=low + + * Behave correctly in preinst if any dir whose contents should be moved + is empty (Closes: #61707). + * Behave correctly in preinst if usr/local/share/keytables exists and + /usr/local/share/keymaps does not (Same as #60917). + * Replaced interpreter path in fix_bs_and_del example to match real path + to loadkeys (#60073). + + -- Yann Dirson Mon, 10 Apr 2000 02:12:10 +0200 + +kbd (0.99-10) unstable; urgency=high + + * Upload to woody - I would have liked to fix more + things, but potato-only upload broke things in woody. + * Reverted -9 changes for woody. + + -- Yann Dirson Thu, 24 Feb 2000 23:22:46 +0100 + +kbd (0.99-9) frozen; urgency=low + + * Disable debconf support for potato; this is needed together with + console-data_1999.08.29-11 which fixes 3 RC bugs in potato. This + includes: + - comment out debconf stuff in postinst and preinst. + * templates file was not installed ! Added a commented out line in + debian/rules that would do that if not commented out, so that it does + not get forgotten in woody. + + -- Yann Dirson Sat, 19 Feb 2000 23:16:26 +0100 + +kbd (0.99-8) unstable; urgency=low + + * Added version on console-data dep. + * Fallback to kbdconfig whenever db_get fails (Closes: #53008). + + -- Yann Dirson Sat, 18 Dec 1999 16:53:15 +0100 + +kbd (0.99-7) unstable; urgency=low + + * Include shared/keymap/keymap_filename in templates file, so that + postinst does not fail when console-data is not there yet (Closes: + #52562 and others). + + -- Yann Dirson Tue, 14 Dec 1999 21:49:38 +0100 + +kbd (0.99-6) unstable; urgency=medium + + * Use .kmap extension when looking for default keymap, to match the + results of kbdconfig (Closes: #47795, #50431). + * Rename (in preinst) an existing default .map file as .kmap if no .kmap + is here yet. + * Sync'ed preinst with bugfixes from console-tools. + * Also sync'ed postinst for consistency. + * Import console-tools keymap when reverting to kbd (who does that ?). + * Use __sparc__ define where relevant (Closes: #50023). + * Debconf support for console-data keymaps. + + -- Yann Dirson Tue, 30 Nov 1999 00:32:58 +0100 + +kbd (0.99-5) unstable; urgency=low + + * Fixed Dependencies again :( + + -- Yann Dirson Sun, 17 Oct 1999 17:11:06 +0200 + +kbd (0.99-4) unstable; urgency=HIGH + + * Changed default keymap names to use .kmap extension. + * Depends on console-data, instead of only Recommending it (Closes: + #47460, #47472, #47473, #47481, #47504). Thanks to Thomas Quinot for + the diagnostic. + * Added a comment note in kbdconfig about the need this script has for a + data package to be installed when it is ran. + * Get rid of old kludges in favor of clean and readable syntax for some + tests in kbdconfig. + * Bumped Standards-Version to 3.0.1. + + -- Yann Dirson Fri, 15 Oct 1999 23:33:09 +0200 + +kbd (0.99-3) unstable; urgency=low + + * Added .trans to "screen maps" (Font-to-Screen Maps, aka FCM) suffix + list, so that it can use those from console-data. + * Moved config conffile into debian/conffiles.d/ to avoid name conflict + with debconf support in debhelper. + * Moved /usr/doc to /usr/share. + * Removed postinst fixups of pre-hamm unstable breakages. + * Removed predends support check from preinst. + * Do not install spawn_* any more. + * Do not install /var/lib/kbd/ - use /var/state/misc/ instead (directory + not used, however). + * Fixed postinst about default keymap file handling (still checked for + old .map extension). + + -- Yann Dirson Thu, 14 Oct 1999 00:46:34 +0200 + +kbd (0.99-2) unstable; urgency=medium + + * Fixed kbdconfig to see .kmap files. + * Fixed typos in kbdconfig messages. + * Fixed kbdconfig to correctly handle keymap trees with several keymaps + with the same name in different directories. + * Conflict with kbd-data (kbdconfig now ignores the .map suffix). + * Added missing quotes around shell wildcards in kbdconfig (Closes: + Bug#41069). + * Made /etc/init.d/console-screen.kbd.sh do nothing when called with + "stop" as parameter. + * Removed my dh_installinit as new one includes needed feature. + * Corrected upstream source URL in copyright file. + * Install manpages in /usr/share to comply with FHS (now lintian + complains). + * Bumped Standards-Version to 3.0.0. + + -- Yann Dirson Thu, 22 Jul 1999 23:18:32 +0200 + +kbd (0.99-1) unstable; urgency=low + + * New upstream version. + * Priority: extra, Section: utils. + * Taught about console-tools suffixes (.kmap, .sfm) + * Do not provide kbd-data any more, use console-tools-data instead. + * Use Recommends instead of Depends for -data package (Fixes: + Bug#30219). + * Moved rc.boot script to init.d as console-screen.sh (Fixes: + Bug#32435, Bug#32103). Use a hacked dh_installinit to allow multiple + init.d scripts. + * Update kbdconfig script to 1999.06.03. + + -- Yann Dirson Fri, 4 Jun 1999 01:29:12 +0200 + +kbd (0.97-1) unstable; urgency=low + + * New upstream version. + * Added back pt.map from 0.96a as pt-old.map; pt-latin1.map is a fixed + version of pt2.map. + * Added back many data files from 0.96-a not yet forwarded upstream + (seems like I forgot about quite a lot of them !) + * Fixed i386/include/euro.map to use AltGr, not Alt. + * Do not install M$-word (yes !) file n474.doc. + * Upstream now names .psf files with unicode table .psfu files. This + has no technical ground, and will break installs where people + specified the full name for a font file. Thus we install them as .psf + like we always did. + * Replaces: open instead of Suggesting: it because openvt is now part + of kbd. + + -- Yann Dirson Wed, 17 Feb 1999 22:07:01 +0100 + +kbd (0.96a-13) unstable; urgency=low + + * (Re-)included other-latin0.inc from EURO.tgz. + * Minor fixes to debian/rules. + * Included ro.kmap (Romanian ?) and sr.kmap (Serbian) from + console-tools.rpm, thanks to Jakub Jelinek). + * Install .desc files in the correct locations, so that kbdconfig gives + meaningfull messages when navigating the keymaps tree (discovered when + reading report for Bug#32338 ;). + * Fixed kbdconfig not to remove the just-created empty default.map so + that it really knows on upgrades when the admin already told that no + keymap should be loaded (discovered when looking for Bug#32338). + * Do not run "loadkeys -d" in kbdconfig when a user tells that no keymap + should be loaded. Print a message instead saying that if there is + already a keymap loaded, it cannot be unloaded (Fixes: Bug#32338). + + -- Yann Dirson Fri, 5 Feb 1999 00:01:35 +0100 + +kbd (0.96a-12) unstable frozen; urgency=low + + * Included slovak (sk) keymaps from Miroslav Vasko. + * Included ukrainian (ua) keymap from Vladimir N.Velychko. + * Updated fr-latin0.map from euro-patch 1.4 (Fixes: Bug#30793). + + -- Yann Dirson Wed, 6 Jan 1999 22:48:58 +0100 + +kbd (0.96a-11) unstable frozen; urgency=low + + * Changed mechanism to install uuencoded new binary files in + debian/rules, so that they get actually installed (thanks to + Laurent Bonnaud for signaling) + + -- Yann Dirson Wed, 2 Dec 1998 22:45:20 +0100 + +kbd (0.96a-10) unstable frozen; urgency=low + + * Euro symbol support (Fixes: Bug#29604): included latin0 fonts + (heights 08, 10, 12, 14, 16), fr-latin0 map from + ftp://ftp.freshmeat.net/pub/euro-patch/EURO.tgz. + * Included other-latin0.inc, named .map in EURO.tgz. + * Included README.Euro (and french version LISEZMOI.Euro) from the + same archive. + * Passed lintian 0.9.3. + + -- Yann Dirson Mon, 23 Nov 1998 21:55:24 +0100 + +kbd (0.96a-9) unstable frozen; urgency=medium + + * Reverted init.d script not to try to save keymap on boot. This + needs to be worked on more than I thought, I'll delay this for + potato. Also replaced /usr/bin/dirname invocation with pure shell + syntax (Unfixes: Bug#27998) (Fixes: Bug#29477, Bug#29560, and + surely several others to be reported before it gets installed). + * Bumped kbdconfig's version number (should have been done in -8). + + -- Yann Dirson Tue, 17 Nov 1998 20:20:15 +0100 + +kbd (0.96a-8) unstable frozen; urgency=low + + * Have init.d script save kernel keymap in /var/lib/kbd/ before + loading, so that kbdconfig can restore a proper keymap on archs + other than i386 and sparc (Fixes: Bug#27998). This saved keymap + is deleted on reboot/halt to cope with changes in the builtin + keymap. Documented this behavour in README.Debian. + * Added lat2u-16.psf and lat2u.uni from Szalay Attila (Fixes: + Bug#29012). + * Do not install obsolete atari-uk-falcon.map, which changed its + name. + + -- Yann Dirson Mon, 9 Nov 1998 22:30:38 +0100 + +kbd (0.96a-7) unstable frozen; urgency=low + + * Moved UTF examples into utf/ subdir (Fixes: Bug#27305, Bug#27898). + * Went to ftp://ftp.uni-erlangen.de/pub/Linux/680x0/bin/system/keymaps/ + (Fixes: Bug#27354): + ** Updated amiga-de.map. + ** Added amiga-{es,fr,it,se,sg}.map. + ** Added atari-de-emacs.map. + * Fixed amiga-de and amiga-us keymaps for Backspace/Delete issues - + patch by Andre Heynatz (Fixes: Bug#26867). + * Added pc-dvorak-latin1.map from Vincent Renardias (Fixes: + Bug#26676). + + -- Yann Dirson Mon, 2 Nov 1998 21:40:10 +0100 + +kbd (0.96a-6) unstable; urgency=low + + * Fixed example CONSOLE_MAP in config file. Added long comment + about this parameter (Fixes: Bug#26228). + * Redirected mv error output to /dev/null in kbd.preinst - error + status was already explicitely ignored (Fixes: Bug#26388). + * Create an empty /etc/kbd/default.map when NONE is asked, so that + the kbdconfig is not run again and again on upgrade - this + question will be asked one last time to be sure, though ;) (Fixes: + Bug#25449). + * Updated atari keymaps from Roman Hodek (Fixes: Bug#25424). + * Replaced all obsolete uses of /dev/console by /dev/tty0 (Fixes: + Bug#25239). + * Corrected soft-hyphen char in vim-compose-latin1.inc (Fixes: + Bug#26020). + * Included sundvorak.map from . + + -- Yann Dirson Mon, 14 Sep 1998 22:13:42 +0200 + +kbd (0.96a-5) unstable; urgency=medium + + * Drop debian/dh_compress and require debhelper 0.99 to build + (Fixes: Bug#24046). + * Cleared kbdconfig from `function' and `{,}' bashisms; changed + interpreter back to /bin/sh (Fixes: Bug#24405). + * Include mac-fr2-ext keymap (Fixes: Bug#24790). + * Allow kbdconfig to run when not root if env var ALLOWNOROOT is + set. + * Use ${variable} syntax instead of $(variable) in debian/rules. + * Install dotfiles in keymaps dir from debian/ dir, instead of using + the diff to place them in source tree. + + -- Yann Dirson Mon, 27 Jul 1998 19:17:26 +0200 + +kbd (0.96a-4) unstable; urgency=medium + + * Have postinst script remove old buggy '/etc/rcS.d/S??keymaps.sh' + symlink with question marks in the filename, which made postinst + obscurely break (Fixes for slink: Bug#20935, Bug#21109, Bug#23639). + + -- Yann Dirson Fri, 19 Jun 1998 13:10:19 +0200 + +kbd (0.96a-3) unstable; urgency=low + + * Fixed kbdconfig wrt testing and immediately loading a keymap + (fixed do_preserving_keymap()). + * New keymaps i386/qwerty/ru-{ms,yawerty} (Fixes: Bug#13758). + * Added another "Control_underscore" to "keycode 12" line (Fixes: + Bug#22914). + * Do not install the kbd FAQ/HOWTO, already in doc-linux (Fixes: + #22915). + * Include vim-compose-latin1 from J.H.M.Dassen, in i386/include + directory, to make it possible to compose all chars from the + latin1 charset (Fixes: Bug#9782 for slink) - forwarded upstream. + + -- Yann Dirson Mon, 15 Jun 1998 14:15:50 +0200 + +kbd (0.96a-2) unstable; urgency=low + + * Moved arch-indep data files into kbd-data package. + * kbdconfig: transform default.map into a standalone one + (ie. include-less and such) before installing - fixes problem with + mounted /usr/share/. + * Fixed debian/rules regarding "build-stamp" file. + * Source package includes a modified dh_compress based on 0.88 for + proper operation. + + -- Yann Dirson Mon, 1 Jun 1998 14:43:12 +0200 + +kbd (0.96a-1) unstable; urgency=low + + * New upstream release (Fixes: Bug#22661, Bug#22753, Bug#22921). + * Changed kbdconfig not to strip final .gz when invoking loadkeys + (would have fixed Bug#22661 if 0.96a didn't fix it already). + * Made gencontrol use -isp. + * Corrected loadkeys.1 and dumpkeys.1 to refer to /usr/share/, not + /usr/share/kbd/. + * Updated maintainer address and source URL in "copyright" and + "watch" files. + + -- Yann Dirson Sun, 31 May 1998 00:56:35 +0200 + +kbd (0.96-3) unstable; urgency=low + + * Removed "-s" from LDFLAGS. + * Have binaries look in /usr/share/, not /usr/lib/kbd/. + * Fixed init.d script to accomodate for new filename-resolution + mechanism. + * Changed kbdconfig to behave correctly with navigation using "..", + because files in /usr/local/ were not seen afterwards. + + -- Yann Dirson Mon, 18 May 1998 10:49:25 +0200 + +kbd (0.96-2) unstable; urgency=low + + * Oops, forgot to (un)comment debugging lines in kbdconfig, which + broke when installed. + + -- Yann Dirson Fri, 15 May 1998 22:17:03 +0200 + +kbd (0.96-1) unstable; urgency=low + + * New upstream version: + ** New keymaps hierarchy + ** New keymaps for modularization + ** Compressed fonts + ** iso-8859-9 handling + ** new option -a to showkey + * Misc debian/rules improvements. + * Changed kbdconfig to use the new keymap hierarchy - added + .toplevel and .desc files in hierarchy for use by kbdconfig. + * Made preinst script rename /usr/local/share/keytables/ to keymaps/ + if it exists. + * Updated Standard-Version to 2.4.1 (no particular changes). + + -- Yann Dirson Fri, 15 May 1998 19:11:49 +0200 + +kbd (0.95-14) frozen unstable; urgency=low + + * Changed example font in config file from 8-point to 16-point + (Fixes: Bug#21696). + * Uploading -13 failed. + + -- Yann Dirson Mon, 27 Apr 1998 12:19:59 +0200 + +kbd (0.95-13) frozen unstable; urgency=low + + * Added "ARCH=..." setting to make invokations that missed them + (Fixes: Bug#21032). + * Fixed possible file-in-tmp security hole in kbdconfig (from Topi + Miettinen - should not have shown with current kbd, however). + * shortened decision-making of building getkeycodes, setkeycodes and + resizecons (Fixes: Bug#21557). + + -- Yann Dirson Fri, 24 Apr 1998 15:11:03 +0200 + +kbd (0.95-12) frozen unstable; urgency=low + + * Really provide mac-us-{std,ext}.map from James Troup (Fixes: + Bug#18704 - was already closed). + + -- Yann Dirson Wed, 8 Apr 1998 20:22:33 +0200 + +kbd (0.95-11) frozen unstable; urgency=low + + * Remove obsolete bo symlinks from /usr/lib/kbd/ into /usr/share/ + (Fixes: Bug#20418, Bug#20732). + * Do not display confusing "Removing..." message when nothing to + remove. + * Restored suggestion of package "open", that had mysteriously + disappeared. + * Provides/Conflicts with console-utilities for cooperation with + console-tools. + * init script is now generated from the same init.in as + console-tools. + * Included contributed keymap croatian.map from Alen Zekulic + . + + -- Yann Dirson Mon, 6 Apr 1998 09:52:15 +0200 + +kbd (0.95-10) frozen unstable; urgency=low + + * Fixed potential problems with /tmp/selection.pid (patch from + James Troup, Fixes: Bug#20211). + + -- Yann Dirson Wed, 25 Mar 1998 22:24:32 +0100 + +kbd (0.95-9) frozen unstable; urgency=low + + * Don't try any more to convert obsolete link in postinst (too + error-prone), and just remove/replace them (ie. force priority 05, + which should not hurt anyone) (Fixes: Bug#20176). + + -- Yann Dirson Tue, 24 Mar 1998 23:30:14 +0100 + +kbd (0.95-8) frozen unstable; urgency=low + + * Re-activated obsolete link convertion (Fixes: Bug#20065). + * Suppressed "Removing any obsolete scripts" message when no such + scripts. + * Included cz-us-qwertz.map from Pavel Makovec. + + -- Yann Dirson Mon, 23 Mar 1998 14:43:59 +0100 + +kbd (0.95-7) frozen unstable; urgency=low + + * Really changed maintainer address in control file. + * Added dh_testversion for --init-script option. + + -- Yann Dirson Sat, 21 Mar 1998 17:31:46 +0100 + +kbd (0.95-6) frozen; urgency=low + + * Slightly modified /etc/init.d/keymaps so that it gets installed + even if old sysvinit removed an old version (Fixes: Bug#19729). + * Changed "Conflicts: sysvinit (<< 2.73)" into "Depends: sysvinit + (>= 2.74)", otherwise bo->hamm wouldn't do (also in Bug#19729). + * Save locally-added files from /usr/lib/kbd/ into + /usr/local/share/ (also in Bug#19729). + * Changed again init.d script name, this time to "keymaps.sh" as + sysvinit 2.74 is now clean in this respect. + + -- Yann Dirson Mon, 16 Mar 1998 17:25:22 +0100 + +kbd (0.95-5) unstable; urgency=low + + * Use debhelper's dh_installinit now that it supports --init-script. + * Do not try to build "resizecons" on m68k. + * Added dependency on dpkg >= 1.4.0.21. + * Corrected paranoia locale-setting in rules (LANG => LC_ALL). + * Conforms to standards version 2.4.0.0. + + -- Yann Dirson Mon, 16 Mar 1998 00:00:35 +0100 + +kbd (0.95-4) unstable; urgency=low + + * Fixed /etc/init.d/keymaps to look for loadkeys in /bin/, not + /usr/bin/. + + -- Yann Dirson Tue, 10 Mar 1998 14:33:04 +0100 + +kbd (0.95-3) unstable; urgency=low + + * /etc/rc.boot/kbd is now installed again (Thanks Santiago). + * Updated README.Debian to tell about /etc/kbd/config. + * Changed references from /usr/lib/kbd/* to /usr/share/* in + manpages (Fixes: Bug#17546). + * Applied patch for sparc from Eric Delaunay (Fixes: Bug#16979, + Bug#9927). + * Added sunt5-fr-latin1 keymap from Eric Delaunay (Fixes: Bug#18531). + * Added mac-us-{std,ext}.map from James Troup (Fixes: Bug#18704). + * Changed perms for /etc/init.d/kbd-boot.sh to 0644. + * Turned "Depends on new sysvinit" into "Conflicts with old one" + (Fixes: Bug#16867). + * Fixed postinst to check for links with "-L" instead of "-f" + (Fixes: Bug#16800, Bug#16341). + * Be paranoid about $COLUMN setting in kbdconfig. Should hopefully + fix Bug#16609. + * Removed .du file. + * Moved mk_modmap script into /usr/bin/ - registered as undocumented. + * Changed init.d script name back to "keymaps", and get link name in + sync (Fixes: Bug#15875). + * Remove old scripts /etc/init.d/{keymaps,kbd-boot}.sh when present + (Fixes: Bug#15936). + * Fixed se-latin1 keymap for caps-lock on 3 characters (Fixes: + Bug#12307). + * Included modified debhelper scripts for "--init-script" support in + dh_installinit. + * Added "export LANG=C" to debian/rules to turn around bug in + dpkg-parsechangelog 1.4.0.21. + * Generalized kbdconfig for use both in kbd and console-tools. + * Passed lintian 0.3.1. + + -- Yann Dirson Tue, 10 Mar 1998 00:50:07 +0100 + +kbd (0.95-2) unstable; urgency=low + + * Switched from debmake to debhelper (Closes:Bug#15397). + * Gzip an already installed uncompressed default keymap. + * Fixed the behaviour regarding rcS.d links (Closes:Bug#14960,Bug#15108). + * Moved spawn_* from /usr/bin/ to /usr/sbin/. + * Removed support for old /etc/rc.boot (Closes:Bug#15028). + * Removed old compatibility links /usr/lib/kbd/*. Will anyone complain ? + * Further parametrized kbdconfig. + + -- Yann Dirson Thu, 11 Dec 1997 16:17:02 +0100 + +kbd (0.95-1) unstable; urgency=low + + * New upstream release. + * Removed obsolete LSM file. + * Added -f options to rm/ln in postins. + + -- Yann Dirson Tue, 18 Nov 1997 13:24:15 +0100 + +kbd (0.94-6) unstable; urgency=low + + * Fixed syntax error in rc.boot. + * Switched ro /etc/rcS.d/ mechanism. + + -- Yann Dirson Mon, 27 Oct 1997 22:05:14 +0100 + +kbd (0.94-5) unstable; urgency=low + + * Fixed screen-map loading in rc.boot (#13390). + * rc.boot: do not fail if /etc/kbd/config not present (#13671). + * Removed upgrade support from obsolete /etc/kbd/config. Should not hurt + anyone, as `kbdconfig' will be called if no default keymap has already + been set with the new method. (should prevent new occurences of + #13457). + * Modified `config' file, just for an md5 change, to allow people to + install it. (fixes #13457) + * Added links to undocumented.7 for all missing manpages. + * Changes to kbdconfig: + * Added in kbdconfig check for presence of /etc/init.d/boot, to prevent + from breaking when sysvinit will be upgraded. + * Allow testing a map from /usr/local/share even if loadkeys don't look + there (should not show in current packages). + * Allowed to use at once default keymap (choice = NONE). + * Removed Dominik's comment that is a simple script ;). + + -- Yann Dirson Wed, 8 Oct 1997 22:45:00 +0200 + +kbd (0.94-4) unstable; urgency=low + + * Changes to kbdconfig: + * Added -u option to "resize" call (#13386). + * Do not fail if /usr/local/share/keytables do not exist (#13329). + Note that this dir is not used by any `kbd_0.94-?'. + * Fixed test whether showkey accepts --keymap option (doesn't in any + `kbd_0.94-?' - does in experimental). + * Tell why keymap can't be tested when showkey lacks --keymap option. + + -- Yann Dirson Sat, 27 Sep 1997 12:44:15 +0200 + +kbd (0.94-3) unstable; urgency=low + + * Fixed stupid bug in rc.boot (#13284). + * Moved the file with UTF8-encoded name into examples/ (#13285) + * Removed "DO_VCSTIME" variable from example in /etc/kbd/config, as + vcstime is not included in this release. + + -- Yann Dirson Tue, 23 Sep 1997 22:47:50 +0200 + +kbd (0.94-2) unstable; urgency=low + + * New maintainer. + * use "postinst " and "kbdconfig" from experimental - properly handles + compressed keymaps - allows to optionnaly test and install the keymap + (fixes #10331, #11268). + * use rc.boot script from experimental - uses /etc/kbd/config to customize + some settings. + * Added README.debian from experimental. + * Fixed cleanup in preinst (really remove obsolete script from /etc/init.d/). + * Patch from experimental : suppressed inclusion of in + both setvesablank.c and screendump.c, to allow compilation under debian's + libc6_2.0.4-1. + * Replaced psf.magic with fonts.magic from experimental. Installed in doc/. + + -- Yann Dirson Mon, 22 Sep 1997 17:03:27 +0200 + +kbd (0.94-1) unstable; urgency=low + + * Upstream upgrade. + * Added endianess patch to 'src/setfont.c' (Fix Bug #9842). + + -- Vincent Renardias Sun, 18 May 1997 19:20:43 +0200 + +kbd (0.93-2) unstable; urgency=low + + * Added support for compressed keytables and sent patch to upstream + developer (Fix Bug #5649). + * Compressed keytables: saves 560 KB. + + -- Vincent Renardias Sat, 10 May 1997 15:50:04 +0200 + +kbd (0.93-1) unstable; urgency=high + + * Make sure the old /usr/lib/kbd directory is gone (Bug #8643). + * Cosmetic fix (Bug #9644). + * Added SUN Sparc maps (Bug #8518). + * Upstream upgrade (Fix Bug #6830). + * Added .lsm into doc directory. + * Built with libc6. + + -- Vincent Renardias Fri, 9 May 1997 21:22:54 +0200 + +kbd (0.92-3.2) frozen unstable; urgency=HIGH + + * Make sure the old /usr/lib/kbd directory is gone. + + -- Vincent Renardias Sat, 3 May 1997 21:14:38 +0200 + +kbd (0.92-3.1) frozen unstable; urgency=HIGH + + * Changed broken symlink (Critical Bug #8263). + * Fix bad path in /usr/sbin/kbdconfig (Bug #8491). + * Included patch from M. Dorman for glibc compatibility (Bug #8817). + * Orphaned the package *sigh*. + Uploaded by . + + -- Debian QA Group Mon, 28 Apr 1997 21:27:10 +0200 + +kbd (0.92-3) unstable; urgency=low + + * (debian/rules) General cleanup of the Makefile. + * (debian/rules) Install the doc directory in /usr/doc/kbd. (Fixes #7929) + * (debian/rules) Install all the READMES from the font and keymap directories + in /usr/doc/kbd instead of /usr/lib/kbd. (Fixes #7929) + * (debian/rules) Install utflist in /usr/doc/kbd. (Fixes #7929) + * (debian/rules) Install showfont as shfont as documented. (Fixes #7929) + * (debian/rules) Do not install the ethopian Agafari fonts, since their + distribution is restricted. (Fixes #7933) + * (debian/rules) Do not install vcs.4 manual page, because it is already + provided by manpages. (Fixes #7950). + * (debian/kbdconf) Changed LIBDIR to /usr/share. + * (Makefile) Changed DATADIR to /usr/share. + * (src/Makefile) build MISC programms and install as well as SHCMDS. + * (src/loadkeys.y) Added missing "#include " for glibc2/libc6. + * (src/loadunimap.c) Added missing "#include " for glibc2/libc6. + * (src/resizecons.c) Added "#include " for glibc2/libc6. + Do not include and + when compiling under glibc2/libc6. + * (src/getkeycodes.c) Added missing "#include " for glibc2/libc6. + + -- Dominik Kubla Mon, 17 Mar 1997 16:48:30 +0100 + +kbd (0.92-2) unstable; urgency=low + + * (getfd.c) Added missing KB_84 case for m68k. [Again] + + -- Dominik Kubla Thu, 6 Mar 1997 13:44:43 +0100 + +kbd (0.92-1) unstable; urgency=low + + * New upstream release. + * Split of open, which also has a new upstream release. + * Re-Debianized the package with deb-make. + + -- Dominik Kubla Sat, 1 Mar 1997 21:23:36 +0100 + +kbd (0.91-13) unstable; urgency=low + + * Fixed dvorak-l and dvorak-r maps. + * Fixed open(1) manual page. + + -- Dominik Kubla Mon, 27 Jan 1996 09:14:00 +0100 + +kbd (0.91-12) frozen unstable; urgency=high + + * fixed buglet in preinst script trying to copy `NONE' font to /etc/kbd + * applied patch to amiga-de.map supplied by Frank Neumann. + * changed `Recommends: svgatextmode` to `Suggests: svgatextmode`. + + -- Dominik Kubla Sat, 7 Dec 1996 10:18:40 +0100 + +kbd (0.91-11) frozen unstable; urgency=high + + * loadkeys will now be installed in /bin to be present in single-user + mode and during system boot. + + * Corrected mistake while fixing type-warnings introduced in 0.91-6, + which made the code unusable on big-endian systems. + + * Further fixes to the makefile wrt m68k port. + + -- Dominik Kubla Tue, 26 Nov 1996 12:21:03 +0100 + +kbd (0.91-10) frozen unstable; urgency=low + + * Added missing targets binary-arch/binary-indep to debian/rules. + * Added definition of $(arch). + + -- Dominik Kubla Mon, 18 Nov 1996 10:53:31 +0100 + +kbd (0.91-9) frozen unstable; urgency=low + + * Added missing inclusion of to src/loadkeys.y (needed when + using libc6). + * Included dsetup-kbd into the source distribution. + * Added "Depends: sysvinit (>=2.67)" to because /etc/rc.boot/0kbd + is now included in /etc/init.d/boot which is part of sysvinit. + + -- Dominik Kubla Thu, 14 Nov 1996 14:55:44 +0100 + +kbd (0.91-8) frozen unstable; urgency=low + + * Added dead_cedilla support (for 2.0.25+ and 2.1.8+ kernels). + * Changed maintainer address to debian.org mail address. + * Updated StandardsVersion field in config file. + * Changed boot script: font loading has been dropped in favour of + svgatextmode. This package will now recommend svgatextmode. + * Changed configuration script: selected keymap is now copied to + /etc/kbd/default.map so that it may be present in single-user mode. + * Put debian-specific parts of the source tree under RCS control. + + -- Dominik Kubla Mon, 11 Nov 1996 09:25:14 +0100 + +kbd (0.91-7) frozen unstable; urgency=high + + * Fixed nasty little bug in the kbdconfig script. + * Removed dependency listings from src/Makefile, because the won't work + on the ALPHA. + * Change file mode of debian/rules to 0755. + * Included original source in upload, because the previous archive was + not the original one. + + -- Dominik Kubla Sat, 9 Nov 1996 15:39:13 +0100 + +kbd (0.91-6) unstable; urgency=low + + * Converted to new packaing standards. + * Fixed bug in setmetamode.c + * Further code clean-up (using lclint and gcc with more than -Wall enabled) + * Removed *.cp files added in release 5, because dpkg-buildpackage can not + handle binary data files and will refuse to build the package + * Fixed endianess-related bug in setmetamode.c (Thanks to Hamish Macdonald) + * Added section about compose sequences and dead-keys to keytables(5). + That closes Bug#1901. + * Added keytables for right-handed and left-handed Dvorak layouts + (Thanks to Eddie Maddox for providing the information). That closes + Bug#3988. + + -- Dominik Kubla Thu, 31 Oct 1996 16:52:16 +0100 + +0.91-5: + + Added support for multi-resolution fonts (fixes bug #4258). + + Added support for 84-key keyboards on m68k. + + Added some more *.cp files (which hold fonts for all three common + font resolutions - 8x8, 8x14 and 8x16): + 437.cp - Default for IBM compatibles + 737.cp - ??? (replaced exisiting version) + 850.cp - International + 852.cp - Hunagry + 857.cp - Turkey + 860.cp - Portugal + 861.cp - ??? + 863.cp - Kanada (french) + 865.cp - Norway, Danmark + 869.cp - ??? + + added commands from the contrib directory to the install list + + addded unicode scripts from src directory to the install list + + added misc. documentation to the install list. + + started to clean up code + + added cp437.uni translation table from the kernel sources. + + added m68000 patches provided by Geert Uyterhoeven + + removed serial console setup (it is moved to sysvinit, + where it belongs) + + fixed some spelling errors + +0.91-4: changed Makefile to build and install additional programs. + +0.91-3: fixed nasty nesting error in kbdconfig script + +0.91-2: fixed stupid mistake in the kbdconfig script + +0.91-1: upgraded to latest upstream version + + showfont will be installed as shfont to resolve the name clash + with the X11 utility of the same name + + added /usr/sbin/kbdconfig to (re)configure the package + + resizecons will not be installed on Debian Linux for m68k + + added keytables for m68k systems contributed by Frank Neumann + + split configuration data and initscript. The conffile is named + /etc/kbd/config. + + changed all references to /dev/console to /dev/tty0 to support + serial consoles + + changed all references to "virtual consoles" to "virtual terminals" --- kbd-1.12.orig/debian/rules +++ kbd-1.12/debian/rules @@ -0,0 +1,149 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# +# debian/rules file for the `kbd' package + +package=kbd + +ARCH=$(shell dpkg --print-architecture) + +topdir=$(shell pwd) +debdir=${topdir}/debian +tmpdir=${debdir}/${package} +bindir=${tmpdir}/bin +sbindir=${tmpdir}/sbin +ubindir=${tmpdir}/usr/bin +usbindir=${tmpdir}/usr/sbin +docdir=${tmpdir}/usr/share/doc/${package} +udebdir=${debdir}/kbd-udeb + +QUILT := quilt --quiltrc=debian/patches/quiltrc + +configure: configure-stamp +configure-stamp: + ${topdir}/configure --prefix=/usr \ + --datadir=/usr/share --mandir=/usr/share/man + touch $@ + +build-udeb: build-udeb-stamp +build-udeb-stamp: patch configure + dh_testdir + rm src/*.o + rm src/kbd_mode src/loadkeys src/setfont + make -C src CFLAGS="-Os -g -Wall" ARCH=${ARCH} loadkeys kbd_mode setfont + mv src/loadkeys src/loadkeys-udeb + mv src/kbd_mode src/kbd_mode-udeb + mv src/setfont src/setfont-udeb + rm src/*.o + touch $@ + +build: build-stamp +build-stamp: patch configure + dh_testdir + rm -f src/*.o + rm -f src/kbd_mode src/loadkeys src/setfont + make -C src CFLAGS="-Os -g -Wall" ARCH=${ARCH} loadkeys kbd_mode setfont + mv src/loadkeys . + mv src/kbd_mode . + mv src/setfont . + rm -f src/*.o + make CFLAGS="-O2 -g -Wall" ARCH=${ARCH} + make CFLAGS="-O2 -g -Wall" ARCH=${ARCH} -C contrib codepage splitfont vcstime + touch $@ + +clean: clean1 unpatch +clean1: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp \ + contrib/codepage contrib/splitfont contrib/vcstime + rm -f loadkeys kbd_mode setfont + -make reallyclean ARCH=${ARCH} + dh_clean + +install: build-stamp + dh_testdir + dh_testroot + dh_clean + dh_installdirs -a + +# Now it seems like most of this is already provided by prefix mechanism. +# make install-progs install-man DESTDIR=${tmpdir} ARCH=${ARCH} + make DESTDIR=${tmpdir} LOADKEYS_BINDIR=${tmpdir}/bin ARCH=${ARCH} install-progs install-man + -@find ${topdir}/data/*_Z -name '\.svn' -exec rm -rf {} \; 2>/dev/null + +# install contribs + install -m 755 ${topdir}/contrib/codepage ${ubindir} + install -m 755 ${topdir}/contrib/splitfont ${ubindir} + install -m 755 ${topdir}/contrib/vcstime ${usbindir} + +# install misc + install -m 755 ${topdir}/src/screendump ${ubindir} + install -m 755 ${topdir}/src/setlogcons ${ubindir} + install -m 755 ${topdir}/src/setvesablank ${usbindir} + +# correct locations + mv ${ubindir}/kbdrate ${sbindir} + mv ${ubindir}/kbd_mode ${bindir} + mv ${ubindir}/setfont ${bindir} + mv ${ubindir}/fgconsole ${bindir} + mv ${ubindir}/openvt ${bindir} + mv ${ubindir}/chvt ${bindir} + +# open compat symlink + ln -s openvt ${bindir}/open + ln -s openvt.1 ${tmpdir}/usr/share/man/man1/open.1 + +# install files for the udeb + install -m 755 ${topdir}/loadkeys ${udebdir}/bin + install -m 755 ${topdir}/kbd_mode ${udebdir}/bin + install -m 755 ${topdir}/setfont ${udebdir}/bin + + +binary-indep: + dh_testdir + +binary-arch: install + dh_testdir -a + dh_testroot -a + dh_installdocs -a -X.svn + mv ${tmpdir}/usr/share/doc/kbd/utf/invalid_name "${tmpdir}/usr/share/doc/kbd/utf/♪♬" + +# do not install the FAQ/HOWTO (already in doc-linux) + rm ${docdir}/kbd.FAQ* + install -m 755 ${topdir}/data/keymaps/i386/mk_modmap ${ubindir} +# some deb-specific files + install -m 644 debian/conffiles.d/config ${tmpdir}/etc/kbd/ + install -m 644 debian/conffiles.d/remap ${tmpdir}/etc/kbd/ + install -m 755 debian/kbd.initramfs-hook ${tmpdir}/usr/share/initramfs-tools/hooks/kbd + + dh_installinit --init-script=console-screen.kbd.sh -r -u"start 90 S ." + dh_installchangelogs CHANGES + dh_strip -a + dh_compress -a + dh_fixperms -a + dh_installdeb -a + dh_shlibdeps -a + dh_gencontrol -a + dh_md5sums -a + dh_builddeb -a + +# Below here is fairly generic really + +patch: patch-stamp +patch-stamp: + $(QUILT) push -a || test $$? = 2 + touch $@ + +unpatch: + $(QUILT) pop -a || test $$? = 2 + rm -rf .pc + rm -f patch-stamp + +deb: + dpkg-buildpackage -rfakeroot -i'/\.svn' + +binary: binary-indep binary-arch + +.PHONY: binary binary-arch binary-indep clean checkroot build install patch unpatch \ + clean1 --- kbd-1.12.orig/debian/console-screen.kbd.sh +++ kbd-1.12/debian/console-screen.kbd.sh @@ -0,0 +1,251 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: console-screen +# Required-Start: $local_fs $remote_fs +# Required-Stop: $local_fs $remote_fs +# Default-Start: S 2 3 4 5 +# Default-Stop: 0 1 6 +# Description: Set console screen modes and fonts +# Short-Description: Prepare console +### END INIT INFO + +# This is the boot script for the `kbd' package. +# It loads parameters from /etc/kbd/config and maybe loads +# default font and map. +# (c) 1997 Yann Dirson + +# If setupcon is present, then we've been superseded by console-setup. +if type setupcon >/dev/null 2>&1; then + exit 0 +fi + +PKG=kbd +if [ -r /etc/$PKG/config ]; then + . /etc/$PKG/config +fi + +if [ -d /etc/$PKG/config.d ]; then + for i in `run-parts --list /etc/$PKG/config.d `; do + . $i + done +fi + +# do some magic with the variables for compatibility with the config +# file of console-tools +for vc in '' `set | grep "^.*_vc[0-9][0-9]*=" | sed 's/^.*\(_vc[0-9][0-9]*\)=.*/\1/'` +do + eval [ \"\${SCREEN_FONT$vc}\" ] && eval CONSOLE_FONT$vc=\${CONSOLE_FONT$vc:-\${SCREEN_FONT$vc}} + eval [ \"\${SCREEN_FONT_MAP$vc}\" ] && eval FONT_MAP$vc=\${FONT_MAP$vc:-\${SCREEN_FONT_MAP$vc}} + eval [ \"\${APP_CHARSET_MAP$vc}\" ] && eval CONSOLE_MAP$vc=\${CONSOLE_MAP$vc:-\${APP_CHARSET_MAP$vc}} +done + +. /lib/lsb/init-functions + +PATH=/sbin:/bin:/usr/sbin:/usr/bin +SETFONT_OPT="-v" + + +# set DEVICE_PREFIX depending on devfs/udev +if [ -d /dev/vc ]; then + DEVICE_PREFIX="/dev/vc/" +else + DEVICE_PREFIX="/dev/tty" +fi + +reset_vga_palette () +{ + if [ -f /proc/fb ]; then + # They have a framebuffer device. + # That means we have work to do... + echo -n "]R" + fi +} + +unicode_start_stop () +{ + vc=$1 + if [ -f /etc/environment ] || [ -f /etc/default/locale ] + then + for var in LANG LC_CTYPE LC_ALL + do + value=$(egrep "^[^#]*${var}=" /etc/environment /etc/default/locale 2>/dev/null | tail -n1 | cut -d= -f2) + eval $var=$value + done + fi + CHARMAP=`LANG=$LANG LC_ALL=$LC_ALL LC_CTYPE=$LC_CTYPE locale charmap 2>/dev/null` + if [ "$CHARMAP" = "UTF-8" -a -z "$(eval echo \$CONSOLE_MAP\$CONSOLE_MAP_vc$vc)" ]; then + action=unicode_start + else + action=unicode_stop + fi + if [ "${CONSOLE_FONT}" ]; then + $action "${CONSOLE_FONT}" < ${DEVICE_PREFIX}$vc > ${DEVICE_PREFIX}$vc 2> /dev/null || true + else + $action < ${DEVICE_PREFIX}$vc > ${DEVICE_PREFIX}$vc 2> /dev/null || true + fi +} + +setup () +{ + # be sure the main program is installed + which setfont >/dev/null || return + + VT="no" + # If we can't access the console, quit + CONSOLE_TYPE=`fgconsole 2>/dev/null` || return + + if [ ! $CONSOLE_TYPE = "serial" ]; then + readlink /proc/self/fd/0 | grep -q -e /dev/vc -e '/dev/tty[^p]' -e /dev/console + if [ $? -eq 0 ]; then + VT="yes" + reset_vga_palette + fi + fi + + [ $VT = "no" ] && return + + # start vcstime + if [ "${DO_VCSTIME}" = "yes" ] && which vcstime >/dev/null; then + # Different device name for 2.6 kernels and devfs + if [ `uname -r | cut -f 2 -d .` = 6 ] && [ -e /dev/.devfsd ]; then + VCSTIME_OPT="-2 /dev/vcsa0" + else + VCSTIME_OPT="" + fi + [ "$VERBOSE" != "no" ] && log_action_begin_msg "Starting clock on text console" + vcstime ${VCSTIME_OPT} & + [ "$VERBOSE" != "no" ] && log_action_end_msg 0 + fi + + if [ "$RUNLEVEL" = S ]; then + LIST_CONSOLES=0 + elif [ -z "$LIST_CONSOLES" ]; then + # Wait for getty to provide TTYs + sleep 3 + LIST_CONSOLES=`sed -e '/^ *#/d' /etc/inittab | grep 'tty[0-9]*$' | awk -F: '{printf "%s ", $1}'` + fi + + + # Global default font+map + if [ "${CONSOLE_FONT}" ]; then + [ "$VERBOSE" != "no" ] && log_action_begin_msg "Setting up general console font" + sfm="${FONT_MAP}" && [ "$sfm" ] && sfm="-u $sfm" + acm="${CONSOLE_MAP}" && [ "$acm" ] && acm="-m $acm" + + # Set for the first 6 VCs (as they are allocated in /etc/inittab) + for vc in $LIST_CONSOLES + do + if ! ( unicode_start_stop $vc \ + && setfont -C ${DEVICE_PREFIX}$vc ${SETFONT_OPT} $sfm ${CONSOLE_FONT} $acm ) + then + [ "$VERBOSE" != "no" ] && log_action_end_msg 1 + break + fi + done + [ "$VERBOSE" != "no" ] && log_action_end_msg 0 + fi + + + # Per-VC font+sfm + PERVC_FONTS="`set | grep "^CONSOLE_FONT_vc[0-9]*=" | tr -d \' `" + if [ "${PERVC_FONTS}" ]; then + [ "$VERBOSE" != "no" ] && log_action_begin_msg "Setting up per-VC fonts" + for font in ${PERVC_FONTS} + do + # extract VC and FONTNAME info from variable setting + vc=`echo $font | cut -b16- | cut -d= -f1` + eval font=\$CONSOLE_FONT_vc$vc + # eventually find an associated SFM + eval sfm=\${FONT_MAP_vc${vc}} + [ "$sfm" ] && sfm="-u $sfm" + if ! ( unicode_start_stop $vc \ + && setfont -C ${DEVICE_PREFIX}$vc ${SETFONT_OPT} $sfm $font ) + then + [ "$VERBOSE" != "no" ] && log_action_end_msg 1 + break + fi + done + [ "$VERBOSE" != "no" ] && log_action_end_msg 0 + fi + + + # Per-VC ACMs + PERVC_ACMS="`set | grep "^CONSOLE_MAP_vc[0-9]*=" | tr -d \' `" + if [ "${PERVC_ACMS}" ]; then + [ "$VERBOSE" != "no" ] && log_action_begin_msg "Setting up per-VC ACM's" + for acm in ${PERVC_ACMS} + do + # extract VC and ACM_FONTNAME info from variable setting + vc=`echo $acm | cut -b15- | cut -d= -f1` + eval acm=\$CONSOLE_MAP_vc$vc + if ! setfont -C "${DEVICE_PREFIX}$vc" ${SETFONT_OPT} -m "$acm"; then + [ "$VERBOSE" != "no" ] && log_action_end_msg 1 + break + fi + done + [ "$VERBOSE" != "no" ] && log_action_end_msg 0 + fi + + + # screensaver stuff + setterm_args="" + if [ "$BLANK_TIME" ]; then + setterm_args="$setterm_args -blank $BLANK_TIME" + fi + if [ "$BLANK_DPMS" ]; then + setterm_args="$setterm_args -powersave $BLANK_DPMS" + fi + if [ "$POWERDOWN_TIME" ]; then + setterm_args="$setterm_args -powerdown $POWERDOWN_TIME" + fi + if [ "$setterm_args" ]; then + setterm $setterm_args + fi + + # Keyboard rate and delay + KBDRATE_ARGS="" + if [ -n "$KEYBOARD_RATE" ]; then + KBDRATE_ARGS="-r $KEYBOARD_RATE" + fi + if [ -n "$KEYBOARD_DELAY" ]; then + KBDRATE_ARGS="$KBDRATE_ARGS -d $KEYBOARD_DELAY" + fi + if [ -n "$KBDRATE_ARGS" ]; then + [ "$VERBOSE" != "no" ] && log_action_begin_msg "Setting keyboard rate and delay" + kbdrate -s $KBDRATE_ARGS + [ "$VERBOSE" != "no" ] && log_action_end_msg 0 + fi + + # Inform gpm if present, of potential changes. + if [ -f /var/run/gpm.pid ]; then + kill -WINCH `cat /var/run/gpm.pid` 2> /dev/null + fi + + # Allow user to remap keys on the console + if [ -r /etc/$PKG/remap ]; then + dumpkeys < ${DEVICE_PREFIX}1 | sed -f /etc/$PKG/remap | loadkeys --quiet + fi + + # Set LEDS here + if [ -n "$LEDS" ]; then + for i in $LIST_CONSOLES + do + setleds -D $LEDS < $DEVICE_PREFIX$i + done + fi +} + +case "$1" in + start|reload|restart|force-reload) + log_action_msg "Setting console screen modes and fonts" + setup + ;; + stop) + ;; + *) + setup + ;; +esac + +: + --- kbd-1.12.orig/debian/compat +++ kbd-1.12/debian/compat @@ -0,0 +1 @@ +4 --- kbd-1.12.orig/debian/fonts.magic +++ kbd-1.12/debian/fonts.magic @@ -0,0 +1,48 @@ +# +# PC Screen (console) Fonts +# +0 leshort 0x0436 Linux PC Screen Font data, +>2 byte 0 256 characters, no Unicode map +>2 byte 1 512 characters, no Unicode map +>2 byte 2 256 characters, Unicode map +>2 byte 3 512 characters, Unicode map + +# +# CPI fonts +# +# MS-DOS +1 string FONT\ \ \ MS-DOS Code Page Information, +>23 uleshort x %u fonts + +>41 uleshort x (CP %u, +>31 uleshort 1 screen +>31 uleshort 2 printer +# try to optimize display... +>37 byte 32 driver +>>33 string >\0 %.4s +>37 byte >32 driver +>>33 string >\0 %.8s + +>49 ulelong 0 ) +>49 ulelong >0 ; ...) + +# DR-DOS +1 string DRFONT\ DR-DOS Code Page Information. + +# +# CP fonts +# +6 string \001\000EGA\ \ \ \ \ CP font for Linux's setfont(1) ( +>0 leshort 28 +>>30 uleshort 3 +>>>32 uleshort 9746 maybe not +>0 byte x unusable ) + +# +# XPSF fonts - this entry should not be inserted into /etc/magic yet. +# +0 leshort 0x0536 Linux Extended PC Screen Font data, +>2 uleshort x file-format version %d, +>4 uleshort x requires reader to understand at least version %d, +>8 ulelong x %d characters, +>12 uleshort x %d sections.