Portál AbcLinuxu, 20. července 2025 03:16


Dotaz: Chyba nastaveni fontu console: consolechars = SIGSEGV

6.10.2005 16:27 Pedro Alvarez | skóre: 5
Chyba nastaveni fontu console: consolechars = SIGSEGV
Přečteno: 315×
Odpovědět | Admin
Spusteni nasledujiciho skpritu
export LC_ALL=cs_CZ.UTF8
loadkeys cz-lat2
consolechars -f lat2u-16 -m iso02
skonci SIGSEGV pro consolechars. Zkousel jsem i
export LC_ALL=cs_CZ
loadkeys cz-lat2
consolechars -f lat2-16
ale to consolechars vubec nedobehne, je treba ho "nasilne" ukoncit. Pro uplnost dodam, ze glibc mam zkompilovene s podporou UNICODE. Jedu SourceMage ...
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

6.10.2005 18:11 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: Chyba nastaveni fontu console: consolechars = SIGSEGV
Odpovědět | | Sbalit | Link | Blokovat | Admin
Proč nepoužiješ unicode_start ?
#!/bin/bash
# Enables Unicode processing in the current console.
#
# 1. The input side: the keyboard driver.

# Set the keyboard driver in Unicode mode. (Default is ASCII mode.)
# This really does nothing with the way normal keys are handled in
# the kernel. All it does is:
# - It is necessary for `dumpkeys' in order to not drop U+XXXX
#   entries from the keymaps.
# - It is necessary for `loadkeys' in order to avoid warnings.
# - Unicode characters typed as Alt-x1 ... Alt-xn (where x1,...,xn
#   are digits on the numeric keypad) will be emitted in UTF-8.

kbd_mode -u

# Change the keyboard mapping in such a way that the non-ASCII keys
# produce UTF-8 encoded multibyte sequences, instead of single bytes
# >= 0x80 in a legacy 8-bit encoding.

dumpkeys | loadkeys --unicode

# 2. The output side: the console screen.

# Tell the console output driver that the bytes arriving are UTF-8
# encoded multibyte sequences.

if test -t 1 -a -t 2 ; then
        echo -n -e '\033%G'
fi

# Tell the graphics card how to display Unicode characters not
# contained in the IBM 437 character set (on PCs). The font should
# have a Unicode map attached, or explicitly specified, e.g.,
# by giving `def.uni' as a second argument.

DEFAULT_UNICODE_FONT=latarcyrheb-sun16
# Also drdos8x16 is a good candidate.

case $# in
        2)
                setfont $1 -u $2
                ;;
        1)
                setfont $1
                ;;
        0)
                setfont $DEFAULT_UNICODE_FONT
                ;;
        *)
                echo "usage: unicode_start [font [unicode map]]"
                ;;
esac
PS. Co má dělat consolechars ? Já takový příkaz na svém linuxu vůbec nemám a nechybí mě :-)
6.10.2005 19:59 Pedro Alvarez | skóre: 5
Rozbalit Rozbalit vše Re: Chyba nastaveni fontu console: consolechars = SIGSEGV
Začnu odzadu - consolechars je součástí console-utils, což, jak doufám dobře chápu, je náhrada kbd-utils, čímžto pádem máš asi kbd-utils :-) (setfont mám taky, ale je to jen wraper pro consolechars).

Dále - loadkeys nezná parametr --unicode :-(.

Nenapadlo, že to takhle vyzní - nechci mít UNICODE, chci mít systém hezky česky a je mi vlatně celkem jedno, jestli pojedu na ISO-8859-2 nebo UTF8.

Každopádně děkuju za návod jak rozchodit UNICODE, spíš mě ale zajímá, proč padá/seká se ten zatrápený consolechars.

BTW - Jestli tak moc chceš mít consolechars , stačí
cast console-utils
:-D
6.10.2005 23:23 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: Chyba nastaveni fontu console: consolechars = SIGSEGV
Můj loadkeys unicode zná - nemáte používat blbou distribuci :-)))))
[root@soban ~]# loadkeys --help
loadkeys version 1.12

Usage: loadkeys [option...] [mapfile...]

valid options are:

        -c --clearcompose clear kernel compose table
        -d --default      load "defkeymap.map"
        -h --help         display this help text
        -m --mktable      output a "defkeymap.c" to stdout
        -s --clearstrings clear kernel string table
        -u --unicode      implicit conversion to Unicode
        -v --verbose      report the changes
Proč vám to padá asy špatný překlad programu, vadné ram a pod......

Jinak asy by bylo dobře kdyby jste zdělil co máte za distribuci a podle čeho jste postupoval, že vám tam ta čeština nejde.
7.10.2005 02:26 Pedro Alvarez | skóre: 5
Rozbalit Rozbalit vše Re: Chyba nastaveni fontu console: consolechars = SIGSEGV
Jak jsem psal již výše - používám SourceMage. No a protože console-utils, tak loadkeys neni loadkeys, viz.
root:0@ptichy Út říj 04, 01:32:54 (úlohy: 0)
~ $ loadkeys --version
loadkeys: (console-tools) 0.2.3

root:0@ptichy Út říj 04, 01:33:48 (úlohy: 0)
~ $ loadkeys --help
Použití: loadkeys [přepínač...] [soubor s mapou]
valid options are:
        -c --clearcompose smaže tabulku jádra pro složené znaky
        -d --default      načte implicitní mapu klávesnice
        -m --mktable      vypíše "defkeymap.c" na standardní výstup
        -s --clearstrings smaže tabulku jádra pro řetězce
        -q --quiet        nebude vypisovat informace o činnosti
        -v --verbose      bude vypisovat informace o činnosti
        -v --verbose      bude vypisovat podrobné informace o činnosti
        -h --help         vypíše tuto nápovědu a skončí
        -V --version      vypíše informace o verzi a skončí

a nenech se zmást tou češtinou, zkopíroval jsem to z putty :-). Tam je mi ale čeština málo platná :-(.

Glibc jsem zkompiloval asi 5x, RAM je v pořádku. No a postup je velmi jednoduchý - starý zvyk z Slackware, kde stačilo:
export LC_ALL=cs_CZ
loadkeys cz-lat2
setfont lat2-sun16
s tím, že jsem se příspůsobil novému "utils", které přislo s SourceMage. A jak už jsem psal - opravdu nepotřebuju UNICODE (ten jsem zkoušel nakonec, ze zoufalství), potřebuju čestinu, tedy nepadající consolechars :-D.

Podle toho, jak patrám je chyba evidentně někde mezi glibc, soubory s fonty, nastavením locales a mnou. Vidím to na velkou výpravu do HOWTO, což se mi ale vůbec nechce. Achjo.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.