[go: up one dir, main page]

File: euro-howto.txt

package info (click to toggle)
user-es 0.34
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 304 kB
  • ctags: 18
  • sloc: perl: 322; sh: 240; makefile: 41
file content (226 lines) | stat: -rw-r--r-- 9,351 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
Versin 0.2  							23 May 2001

NOTA: Para una versin ms completa (en ingls) acuda al "Debian
Euro Manual" del paquete euro-support (/usr/share/doc/euro-support)
disponible tambin en http://www.debian.org/doc/manuals/debian-euro-support

Esbozo de un Euro-HowTo
=======================
Este documento tiene su origen en los hilos iniciados por ngel Parra
en abril de 2001 (Como poner el Euro???), el mensaje de Jose Carlos Garcia 
Sogo <jose@jaimedelamo.eu.org> de 9 de mayo y la respuesta de Roberto 
Suarez Soto <robe@alfa21.com> as como algunos otros que de vez en cuando 
aparecen sobre el tema en la Lista de Usuarios de Debian en Espaol
<debian-user-spanish@lists.debian.org>. 
Mi idea es movilizar, continuar el hilo hasta dar 
una respuesta aceptable ante la inminencia del tema (y supongo que los grupos 
franceses, alemanes, etc. estarn en un trabajo similar).

Notas: 
N.1. Uso testing. Para Potato algunos nombres de ficheros de configuracin
    cambian (y ah kbd es un paquete inferior a console-tools, creo). Creo que
    usar framebuffer es indiferente a igualdad de resolucin. No analizar el 
    uso de fonty ni de fuentes UTF-8
N.2. Tengo un teclado de 105 teclas para un clnico i386, de esos con las 
    teclas con las ventanitas de gindous y otra para el men. YMMV
N.3. Por antiguos problemas con los locales y por mi trabajo como traductor
    (y mi experimentos con UTF-8, pero esta es otra guerra) no soy partidario 
    de definir globalmente (system-wide) un locale sino permitir a cada 
    usuario elegir el suyo. YMMV

A. Consola
----------
A.1. El teclado
    Resulta que tenemos dos paquetes alternativos para configurar el mapa
    de teclado:
    console-tools y kbd; la diferencia entre ambos en las versiones 
    actuales es que Yann Dirson es 'uno de los nuestros', un hombre de
    Debian, y Andries E. Brouwer es ms un hombre BSD (esto son elucubraciones
    mas...) - yo, por llevar la contraria (si no fuera cabezota todava
    estara en gindous) uso kbd.
    
    console-common instala /etc/init.d/keymap.sh, que lanza el loadkeys
    de console-tools o de kbd sobre /etc/console/boottime.kmap.gz, generado 
    a su vez por install-keymap con los datos de console-data. Sencillo,
    no? Al arrancar el sistema se ejecuta /etc/rcS.d/@S05keymap.sh y nos 
    pone el mapa de teclado elegido.

    Cmo aadir una tecla para el euro (y de paso las teclas gindous)?
    Opcin a) Puedes editar boottime.kmap.gz, aadiendo el contenido de 
        /usr/share/keymaps/i386/include/euro.inc.gz y
	/usr/share/keymaps/i386/include/windowkeys.inc.gz
    
    Opcin b) Yo aado en /etc/init.d/keymap.sh, tras la lnea de 
        loadkeys ${CONFDIR}/${CONFFILEROOT}.${EXT}.gz, lo siguiente:

	    loadkeys euro.inc
	    loadkeys windowkeys.inc

        y no tengo que tocar /etc/console/boottime.kmap.gz.
    La opcin b) me parece ms rpida y ms fcil. Tiene un problema
    grave si montas tu sistema va red (lo que no es mi caso):
    al lanzarse el teclado muy pronto en el arranque 
    (/etc/rcS.d/@S05keymap.sh) es posible que los sistemas de ficheros 
    de red an no estn montados.
    		
    Hemos puesto el mapa de teclado pero para ver el smbolo del
    euro nos falta una fuente que pueda mostrarlo.

A.2. Las fuentes para consola

    /etc/init.d/console-screen.kbd.sh o /etc/init.d/console-screen.sh
    ponen la fuente de pantalla que hayas elegido en /etc/kbd/config o
    /etc/console-tools/config. La codificacin que incluye el euro es la
    latin0 (dejando aparte ISO-10646-1, superconjunto de todas las ISO).

    latin-9 o Latin-0 o ISO-8859-15 (codepage 924 para IBM) difiere del
    estndar Latin-1 (ISO 8859-1) en ocho posiciones, A4, A6, A8, B4, B8,
    BC, BD, BE donde tiene Euro, Scaron, scaron, Zcaron, zcaron, 
    OEligature, oeligature e Ydiaeresis, respectivamente.

    En /usr/share/consolefonts tenemos varias fuentes lat0-*, en distintos 
    tamaos. Podemos poner en 16 puntos la lat0-sun16.psf.gz, tal
    como aconsejaba Roberto Suarez Soto, o la lat0-16.psfu.gz (cuestin
    de gustos):

    en /etc/console-tools/config
	SCREEN_FONT=lat0-sun16
        APP_CHARSET_MAP=iso15

    en /etc/kbd/config
        CONSOLE_FONT=lat0-16.psfu.gz
	CONSOLE_MAP=8859-15_to_uni
	
    Quieres ver si funciona? /usr/bin/shfont
    para escribir el  (el signo anterior debe ser un euro) Alt-Gr + E,
    para  pulsa Alt-Gr + c

A.3. locales

    Ejecuta 'locale charmap' y anota la salida - no terminaremos hasta
    ver 'ISO-8859-15'.

    El locale adecuado para el espaol es es_ES.ISO-8859-15 (cataln ca_ES, 
    vasco eu_ES, gallego gl_ES). Las versiones actuales de glibc no traen
    los locales sino que hay que generarlos editando /etc/locale.gen y
    ejecutando despus como root /usr/sbin/locale-gen.

    Para hacerlo en /etc/locale.gen descomenta la lnea
	es_ES@euro ISO-8859-15
    ahora tambin puedes/debes descomentar la lnea anterior por precaucin
	es_ES ISO-8859-1 
    (en las primeras versiones descomentar una pisaba a la otra).
    /usr/sbin/locale-gen deja el nuevo locale en /usr/lib/locale/es_ES@euro
    si todo ha ido bien.
    Prueba el nuevo locale con por ejemplo
	LANG=es_ES.ISO-8859-15 date
	
    Si todo funciona instlalo (uso bash. YMMV)
	export LANG=es_ES.ISO-8859-15
	export LC_ALL=es_ES@euro
	
    a) para todo el sistema en /etc/environment o /etc/profile
    b) como usuario en ~/.bash_profile o en el fichero de configuracin de
	tu shell
    

    En /etc/locale.alias tenemos 'spanish' como un alias de es_ES.ISO-8859-1
    y por lo tanto no nos vale. Tampoco 'catalan', 'galego' y 'galician'.
    No s qu hace el paquete user-es. Hay que modificarlo?
    
    La parte de consola ha terminado, pero preprate para tener problemas
    con las X (exactamente con Xlib).
    
    es_ES es un locale que funciona porque en /etc/locale.alias remite
    a es_ES ISO-8859-1, mientras que en 
    /usr/X11R6/lib/X11/locale/locale.alias es otro
    nombre para es_ES.ISO8859-1 (sic).

    Cmo escribimos el locale para que lo acepten a la vez glibc y
    Xlib?
	    
    
B. X Windows
------------

B.1. Teclado
    En /etc/X11/XF86Config-4
    Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "keyboard"
        # Option    "CoreKeyboard"
        Option      "AutoRepeat" "500 5"
        Option      "XkbRules"    "xfree86"
        Option      "XkbModel"    "pc105"
        Option      "XkbLayout"   "es"
    EndSection

B.2. Fuentes							    
    Necesitamos una fuente iso8859-15. Para ver si tienes alguna
    instalada haz
	xlsfonts | grep iso8859-15

    Para mi sorpresa resulta que xfonts-jmk y los distintos paquetes
    arphic (xfonts-arphic-bsmi00lp, xfonts-arphic-gbsn00lp,
    xfonts-arphic-bkai00mp y xfonts-arphic-gkai00mp), que haba instalado
    por otro asunto, traen fuentes iso8859-15.

    Si no, no pasa nada. La solucin est en las fuentes ISO10646-1, 
    que como sabemos son un superconjunto de los distintos ISO8859-X
    y de las que s disponemos de unas cuantas. Usando un script en perl de
    Markus Kuhn <mkuhn@acm.org> que se llama ucs2any.pl

	This Perl script allows you to generate from an ISO10646-1 encoded
        BDF font other BDF fonts in any possible encoding. This way, you can
	derive from a single ISO10646-1 master font a whole set of 8-bit
	fonts in all ISO 8859 and various other encodings.
		
    Si leis ingls no tiene desperdicio
    http://www.cl.cam.ac.uk/~mgk25/ucs-fonts.html
    y las otras pginas de Markus Kuhn.

    Entre ucs-fonts.tar.gz (28) y ucs-fonts-75dpi100dpi.tar.gz (176) tenemos
    suficientes, incluidas times, helvtica, lucida, utopia, new century 
    schoolbook, courier...

    No s si para un posible user-euro tendra sentido empaquetarlas
    o hacer un script que las generara a partir de las ISO10646-1.

B.3. locales
    En las X los locales de las aplicaciones que utilizan Xlib son 
    independientes de los de glibc y estn en /usr/X11R6/lib/X11/locale
    
    Vemos que el nombre incluso cambia: ahora ser 'es_ES.ISO8859-15' y
    no 'es_ES.ISO-8859-15'. Esta pequea diferencia dar problemas: cuando
    no protesta la librera C (buscando sin encontrar en /etc/locale.alias)
    protestar Xlib.
    
    Despus de varios das de pruebas y experimentos creo que he dado con
    una solucin sencilla: aadir a /usr/X11R6/lib/X11/locale/locale.alias
    la lnea

	es_ES@euro:                   es_ES.ISO8859-15

    Ya est. No hace falta tocar .xsession, ni ningn otro fichero de
    configuracin (recordemos que en .bash_profile habamos puesto
    export LANG=es_ES.ISO-8859-15 y export LC_ALL=es_ES@euro y que yo uso
    startx).

    Un pequeo detalle (otro ms): revisa .Xdefaults por si has puesto
    por defecto alguna fuente ISO8859-1.
    
C. Los programas
    Qu hay que cambiar en Emacs, mutt, netscape...
    (ToDo)
    Una advertencia: casi todos los programas dan por supuesto que quieres
    usar latin1. Mira en los .rc. Algunos no contemplan la posibilidad de
    usar latin0. Para evitar los mensajes molestos basta hacer
        LC_ALL=es_ES programa &
    para ejecutarlos.
    	
D. ToDo
    Escribir sobre fonty, language-env, user-es
    
--
Juan Rafael Fernndez <jrfern@bigfoot.com>
GnuPG (www.gnupg.org) key available at your nearest wwwkeys server