On Tue, Oct 28, 2008 at 06:18:05PM +0100, Juan A. Moreno wrote:
> Hi
> I'm trying to put the console in Unicode mode following the instructions from 
> chapter 7.6 in the LFS book svn version. I'm a spanish native speaker and 
> this is my /etc/sysconfig/console file:
> 
> # Begin /etc/sysconfig/console
> 
> UNICODE="1"
> KEYMAP="es"
> KEYMAP_CORRECTIONS="euro2"
> LEGACY_CHARSET="iso-8859-15"
> FONT="lat9w-16 -m 8859-15"
> 
> # End /etc/sysconfig/console
> 
> I get correctly the 'euro' symbol and the ñ (ntilde) in the console but when 
> I 
> try to get accents with the dead keys of my 'es' keyboard I get -'a- instead 
> of -á-.
> The same with é, í, ó, ú.
> 
> It's possible to  obtain the spanish accents in the current version of LFS?
> 
 I don't know if a "standard" keymap is available to do this,
perhaps you can find one somewhere (e.g. from a host distro).

 In particular, I don't know how you are used to accessing the dead
keys.  I'm attaching my own map as an example (it's on the lfs
server, but apache seems unable to decide how to serve it).  Take a
copy of the existing map, rename it, then work on the renamed
version (with a root session in another term, using the original
map, in case things go wrongly).

 My needs are slightly different from yours - as a Briton, I have no
tradition of using dead keys, but recent xorg provides them anyway
(use AltGr and a symbol).  I wanted to access as many dead keys as
possible, but they only work for glyphs in latin1 on the console
(not even å - I had to use a different method for that on the
console).  My € (euro) is on AltGr-4 which might not match your
keyboard.

 My map allows me to use the following:

tilde AltGr + ] (']' is two keys beyond P in GB) only on ñõ
circumflex AltGr + = ('=' is two keys beyond 0) only on ç
 The following are only available on vowels in the console
acute AltGr + ; (';' is next to L )  áéíóú
circumflex  AltGr + ' ("'" is two keys beyond L)  âêîôû
grave AltGr + # ('#' is three keys beyond PP) àèìòò
diaeresis AltGr + [ ('[' is next to P) äëïöü also ÿ

 There are various other things tucked away in my map.

ĸen
-- 
das eine Mal als Tragödie, das andere Mal als Farce
# uk.map altered to ease UTF-8, compose, dead accents
#
# The display of non latin1 characters does not work in distributions using
# console-tools, even if you add the unicode.map from the kbd package.
# For some reason, the non-ascii character codes seem to get garbled, at
# least on ppc.
#
# Note that this defaults to latin1, any other characters
# can _only_ be specified by unicode number, and the
# result ('to')  of a 'compose' must be in the latin1 charmap.
#
# So, although I really wanted to replicate what happens for me
# in X, I can't do it all - prioritise W. European, plus
# hungarian (polish, czech have too many other letters)
#keymaps 0-2,4-6,8,9,12
# these keymaps are a bit excessive, at the time I couldn't
# find the docs and this does make AltGr and Shift+AltGr work.
keymaps 0-15
alt_is_meta
include "qwerty-layout"
include "linux-with-alt-and-altgr"
# key any mapped unicode letter by ctrl-shift plus XXXX for the hex digits
include "unicode.map"
strings as usual

# NB I use U+ notation for characters not in latin1 - dumpkeys will report the
# name, but loading by name gives messages about assume iso-8859-x (where x != 
1)
# and produces the wrong result.
#
# Strangely, console-tools produces the messages and errors even when I use
# the U+xxxx form.  It also translates U+201E to a symbol name which it then
# claims to not recognise.
#               Normal          Shift           AltGr           AltGr+Shift
keycode   1 = Escape
keycode   2 = one              exclam           one             U+00A1
keycode   3 = two              quotedbl         at              U+201E
keycode   4 = three            sterling
        control keycode   4 = Escape
# euro on AltGr 4 - 'currency' doesn't work for me
keycode   5 = four             dollar           U+20AC           
Control_backslash
keycode   6 = five             percent
        control keycode   6 = Control_bracketright
keycode   7 = six              asciicircum
        control keycode   7 = Control_asciicircum
keycode   8 = seven            ampersand        braceleft        
Control_underscore
keycode   9 = eight            asterisk         bracketleft      Delete
keycode  10 = nine             parenleft        bracketright
keycode  11 = zero             parenright       braceright
#       alt     keycode  11 = Meta_parenright
keycode  12 = minus            underscore       backslash       U+00BF
#keycode  13 = equal            plus            dead_cedilla    dead_ogonek
keycode  13 = equal            plus             dead_cedilla
keycode  14 = Delete
        control keycode  14 = Control_underscore
keycode  15 = Tab
# łŁ on w
keycode  17 = w                 W               U+0142          U+0141
# u with double acute
keycode  22 = u                 U               U+0171          U+0170
# extra on o ø and Ø can be accessed from compose / o, compose / O
# so put the double-acute here : it isn't latin-1.
keycode  24 = o                 O               U+0151          U+0150
# extra on p
keycode  25 = p                 P               thorn           THORN
#keycode  26 = bracketleft      braceleft       dead_diaeresis  dead_ring
keycode  26 = bracketleft      braceleft        dead_diaeresis
        control keycode  26 = Escape
#keycode  27 = bracketright     braceright       dead_tilde     dead_macron
keycode  27 = bracketright     braceright       dead_tilde
keycode  28 = Return
        alt     keycode  28 = Meta_Control_m
keycode  29 = Control
# add extras to 'a'
keycode  30 = +a                +A              ae              AE
# extra on s
keycode  31 = s                 S               U+00DF
# extras on 'd'
keycode  32 = d                 D               eth             ETH
# add kra to k (iso-8859-4 so specify as U+)
keycode  37 = k                 K               U+0138
# łŁ also on l
keycode  38 = l                 L               U+0142          U+0141
#keycode  39 = semicolon        colon           dead_acute      dead_doubleacute
keycode  39 = semicolon        colon            dead_acute
#keycode  40 = apostrophe       at              dead_circumflex dead_caron
keycode  40 = apostrophe       at               dead_circumflex
        control keycode  40 = Control_g
        shift   control keycode  40 = nul
keycode  41 = grave            notsign          bar              nul
keycode  42 = Shift
keycode  43 = numbersign       asciitilde       dead_grave      dead_breve
        control keycode  43 = Control_backslash
# extra on z « 
keycode  44 = z                 Z               U+00AB
# extra on x »
keycode  45 = x                 X               U+00BB
keycode  51 = comma            less
keycode  52 = period           greater
#keycode  53 = slash            question                slash           
dead_abovedot
keycode  53 = slash            question         slash
        control keycode  53 = Delete
keycode  54 = Shift
keycode  56 = Alt
keycode  57 = space
        control keycode  57 = nul
keycode  58 = Caps_Lock
keycode  86 = backslash        bar              bar              
Control_backslash
keycode  97 = Control

# right windows key and right menu key both mapped to Compose -
# my normal keyboards have one or other of these
keycode 126 = Compose
keycode 127 = Compose

include "compose.latin1"

# looks as if U+ compose results only work if in the same iso-8859-x set,
# and the default charset is iso-8859-1
# e.g. can put aring in (also on oa, aa)
compose '=' 'a' to U+00E5
 
-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page

Reply via email to