console_codes(4) Device Drivers Manual console_codes(4) NOMBRE console_codes - secuencias de escape y control de la consola de Linux DESCRIPCION La consola Linux implementa un gran subconjunto de controles de terminal VT102 y ECMA-48 / ISO/IEC 6429 / ANSI X3.64, ademas de ciertas secuencias privadas para cambiar la paleta de colores, la asignacion de conjuntos de caracteres, etc. En las descripciones tabulares a continuacion, la segunda columna proporciona mnemonicos ECMA-48 o DEC (este ultimo si tiene el prefijo DEC) para la funcion dada. Las secuencias sin mnemonico no son ECMA-48 ni VT102. Una vez realizado todo el procesamiento de salida normal y una vez que un flujo de caracteres llega al controlador de consola para la impresion real, lo primero que ocurre es una traduccion del codigo empleado para el procesamiento al codigo empleado para la impresion. Si la consola esta en el modo UTF-8, entonces los bytes que llegan se ensamblan 1o a los codigos de 16 b Unicode. Si no, cada byte se transforma segun la tabla de asociaciones en curso (que lo traduce a un valor Unicode). Consulte mas adelante la seccion Conjuntos de caracteres para mas informacion. En el caso normal, el valor Unicode se convierte a un indice de tipo de letra, y este se almacena en memoria de video, de forma que aparezca en la pantalla el grafo correspondiente (segun se encuentra en la ROM de video). Observe que el empleo de Unicode (y el diseno del hardware del PC) nos permite usar 512 grafos diferentes simultaneamente. Si el valor actual Unicode es un caracter de control, o estamos actualmente procesando una secuencia de escape, el valor se tratara especialmente. En vez de convertirse a un indice de tipo y presentarse como un grafismo, puede lanzar un movimiento del cursor u otra funcion de control. Vea la seccion Controles de la consola de Linux abajo para la discusion sobre esto. Generalmente no es una buena idea codificar directamente controles de terminal en programas. Linux tiene una base de datos terminfo(5) de capacidades de terminales. En vez de emitir a mano secuencias de escape de la consola, Ud. deberia casi siempre utilizar una biblioteca de pantalla que consultara terminfo o una utilidad, como ncurses(3), tput(1), o reset(1). Controles de la consola de Linux Esta seccion describe todos los caracteres de control y secuencias de escape que llaman a funciones especiales (i.e., cualquier otra cosa distinta a escribir un grafo en la localizacion del cursor en curso) en la consola de Linux. Caracteres de control Un caracter lo es de control si (antes de la transformacion segun la tabla de asociaciones) tiene uno de los 14 codigos 00 (NUL), 07 (BEL), 08 (BS), 09 (HT), 0a (LF), 0b (VT), 0c (FF), 0d (CR), 0e (SO), 0f (SI), 18 (CAN), 1a (SUB), 1b (ESC), 7f (DEL). Uno puede establecer un modo de "mostrar caracteres de control" (vea mas abajo), y permitir que los codigos 07, 09, 0b, 18, 1a, 7f se muestren como grafos. Por otro lado, en modo UTF-8 todos los codigos 00-1f se consideran como caracteres de control, sin importar ningun modo "mostrar caracteres de control". Si tenemos un caracter de control, se actua inmediatamente y luego se descarta (incluso en medio de una secuencia de escape) y la secuencia de escape continua con el siguiente caracter. (Sin embargo, ESC empieza una nueva secuencia de escape, posiblemente abortando una anterior no acabada, y CAN y SUB abortan cualquier secuencia de escape). Los caracteres de control reconocidos son BEL, BS, HT, LF, VT, FF, CR, SO, SI, CAN, SUB, ESC, DEL, CSI. Hacen lo que uno esperaria: BEL (0x07, ^G) pita; BS (0x08, ^H) va un espacio atras a la columna anterior (pero no pasa del principio de la linea); HT (0x09, ^I) va a la siguiente parada de tabulacion o al final de la linea si no hay antes una parada de tabulacion; LF (0x0A, ^J) VT (0x0B, ^K) FF (0x0C, ^L) todos dan un salto de linea; si se define LF/NL (modo de nueva linea), tambien un retorno de carro; CR (0x0D, ^M) retorno de carro; SO (0x0E, ^N) activa el conjunto de carcteres G1; SI (0x0F, ^O) activa el conjunto de carcteres G0; CAN (0x18, ^X) SUB (0x1A, ^Z) Anula secuencias de Escape ESC (0x1B, ^[) empieza una secuencia de escape; DEL (0x7F) no se tiene en cuenta CSI (0x9B) es equivalente a ESC [. Secuencias de ESC, pero no CSI ESC c RIS Inicio. ESC D IND Salto de linea. ESC E NEL Nueva linea. ESC H HTS Pone parada tab en esta columna. ESC M RI Salto de linea inverso. ESC Z DECID DEC identificacion privada. El nucleo devuelve la cadena ESC [ ? 6 c, diciendo que es una VT102. ESC 7 DECSC Salva el estado actual (cordenadas del cursor, atributos, conjuntos de caracteres apuntados por G0, G1). ESC 8 DECRC Restaura el estado salvado mas reciente por ESC 7. ESC % Empieza la secuencia de seleccion de conjunto de caracteres ESC % @ Seleccionar predeterminado (ISO/IEC 646 / ISO/IEC 8859-1) ESC % G Selecciona UTF-8 ESC % 8 Selecciona UTF-8 (obsoleto) ESC # 8 DECALN DEC prueba de alineacion en pantalla - la llena de E's. ESC ( Empieza secuencia de definicion del conjunto G0 (seguido de B,O,U o K) ESC ( B Seleccionar predeterminado (asignacion ISO/IEC 8859-1). ESC ( 0 Selecciona asociacion de graficos VT100 ESC ( U Selecciona ninguna asociacion - derecho a la ROM ESC ( K Selecciona mapeo del usuario - el que se carga con mapscrn(8) ESC ) Inicia secuencia de definicion G1 (seguido por uno de B, 0, U, K, como antes). ESC > DECPNM Pone el teclado auxiliar en modo numerico ESC = DECPAM Pone el teclado auxiliar en modo aplicacion ESC ] OSC Prefijo de Ordenes del Sistema Operativo. ESC ] R Paleta de Inicio. ESC ] P Define la paleta, con un parametro dando 7 digitos hexadecimales nrrggbb despues de la ultima P. n es el color (0-15) y rrggbb representa los valores rojo/verde/azul (0-255). Secuencias ECMA-48 CSI CSI (o ESC [) va seguido por una secuencia de parametros, como mucho NPAR (16), que son los numeros decimales separados por punto y comas. Un parametro vacio o ausente se toma como 0. La secuencia de parametros puede ir precedida por un signo de interrogacion. Sin embargo, tras CSI [ (o ESC [ [) se lee un caracter solo y esta secuencia entera no se tiene en cuenta. (La idea es no tener en cuenta una tecla de funcion que se muestra.) La accion de una secuencia CSI se determina por su caracter final. @ ICH Insertar el No indicado de caracteres blancos A CUU Mover cursor arriba el No indicado de filas B CUD Mover cursor abajo el No indicado de filas C CUF Mover cursor a la derecha el No indicado de columnas D CUB Mover cursor a la izquierda el No indicado de columnas E CNL Mover cursor abajo el No indicado de filas, a la columna 1 F CPL Mover cursor arriba el No indicado de filas, a la columna 1 G CHA Mover cursor a la columna indicada en la fila actual H CUP Mover cursor a la fila y columna indicadas (origen en 1,1) J ED Borrar pantalla (p. o.: desde el cursor al final de la pantalla). ESC [ 1 J: borrar desde el comienzo hasta el cursor. ESC [ 2 J: borrar la pantalla entera. ESC [ 3 J: borrar la pantalla entera incluido el buffer con los datos para ver el trabajo anterior haciendo scroll (a partir de la version 3.0). K EL Borrar linea (p.o.: desde el cursor al final de la linea). ESC [ 1 K: borrar desde el comienzo de la linea al cursor ESC [ 2 K: borrar la linea entera. L IL Insertar el No indicado de lineas en blanco M DL Borrar el No indicado de lineas P DCH Borrar el No indicado de caracteres en la linea actual. X ECH Borrar el No indicado de caracteres en la linea actual. a HPR Mover cursor a la derecha el No indicado de columnas c DA Reponder ESC [ ? 6 c: "Yo soy una VT102". d VPA Mover cursor a la fila y columna indicadas e VPR Mover cursor abajo el No indicado de filas f HVP Mover cursor a la fila y columna indicadas. g TBC Sin parametro: quita parada TAB en la posicion actual. ESC [ 3 g: borra todas las paradas de tabulacion. h SM Establece Modo (vea abajo). l RM Restablece Modo (vea abajo). m SGR Establece atributos (vea abajo). n DSR Informe de estado (vea abajo). q DECLL Establece los LEDs del teclado. ESC [ 0 q: apaga todos los LEDs ESC [ 1 q: pone LED Bloq. Despl. ESC [ 2 q: pone LED Bloq. Num. ESC [ 3 q: pone LED Bloq. Mayus. r DECSTBM Establece region de rodadura; los parametros son la fila de arriba y abajo. s ? Salva la localizacion del cursor. u ? Restaura la localizacion del cursor. ` HPA Mover cursor a la columna indicada en la fila actual ECMA-48 Selecciona el Modo Grafico La secuencia ECMA-48 SGR ESC [ parametros m establece los atributos de la pantalla. Se pueden poner varios atributos en la misma secuencia separados entre si por punto y comas. Un parametro vacio (entre punto y comas o principio o final de cadena) se interpreta como cero. param resultado 0 restablece todos los atributos a sus valores predeterminados 1 pone negrillas 2 pone medio brillo (simulado con color en una pantalla a color) 3 define cursiva (a partir de Linux 2.6.22; simulado con color en una pantalla a color) 4 pone subrayado (simulado con color en una pantalla a color) (los colores para simular disminucion o subrayado se ponen con ESC ] ...) 5 pone intermitencia 7 pone video inverso 10 restaura asociacion seleccionada, indicador de control de pantalla y cambia el indicador meta (ECMA-48 dice 'fuente primaria') 11 selecciona no asociacion, pone indicador de control de pantalla, restaura indicador de cambio meta (ECMA-48 dice "primera fuente alternativa"). 12 selecciona no asociacion, pone indicador de control de pantalla, pone indicador de cambio meta (ECMA-48 dice 'segunda fuente alternativa')(que hace que el bit mas alto de un byte cambie antes de que se haga la traduccion de la tabla de asociacion.) 21 define subrayado; antes de la version 4.17 de Linux, definia intensidad normal (tal como hacen otras muchas terminales). 22 pone intensidad normal 23 Cursiva deshabilitada (a partir de Linux 2.6.22) 24 quita subrayado 25 quita intermitencia 27 quita video inverso 30 pone negro 31 pone rojo 32 pone verde 33 pone marron 34 pone azul 35 pone rosa 36 pone celeste 37 pone blanco 38 Sigue un color de 256/24-bit encastrado en 16 colores basicos En versiones de Linux anteriores a la 3.16: activa el subrayado, define el color de primer plano por defecto. 39 color por defecto de primer plano En versiones de Linux anteriores a la 3.16, desactiva el subrayado, define el color por defecto de primer plano. 40 pone negro de fondo 41 pone rojo de fondo 42 pone verde de fondo 43 pone marron de fondo 44 pone azul de fondo 45 pone rosa de fondo 46 pone celeste de fondo 47 pone blanco de fondo 48 Sigue un color de fondo de 256/24 bits encastrado en 8 colores basicos 49 pone el color de fondo predeterminado 90..97 version brillante de 30..37 del color de primer plano 100..107 color de fondo, igual a 40..47 (brillo no implementado) Las ordenes 38 48 requiere argumentos adicionales: ;5;x paleta 256 colores: los valores 0-15 corresponden a IBGR (negro, rojo, verde, ..., blanco), 16-231 forman un cubo de color de 6x6x6 y el intervalo 235-255 corresponde a una escala gradual de grises ;2;r;g;b color de 24 bits, sus componentes r/g/b estan en el intervalor 0-255 Interruptores de Modo ECMA-48 ESC [ 3 h DECCRM (por omision desactivado): Mostrar caracteres de control ESC [ 4 h DECIM (por omision desactivado): Poner modo de insercion ESC [ 20 h LF/NL (por omision desactivado): Automaticamente seguir a LF, VT o FF con CR. Ordenes de Informe de Estado ECMA-48 ESC [ 5 n Informe de estado de dispositivo (DSR): La respuesta es ESC [ 0 n (Terminal OK). ESC [ 6 n Informe de posicion de cursor (CPR): La respuesta es ESC [ y ; x R, donde x,y es la localizacion del cursor. Secuencias de Modo Privado DEC (DECSET/DECRST) Estas no se describen en ECMA-48. Listamos las secuencias de Establecer Modo; las de Reestablecer Modo se obtienen reemplazando la 'h' final por 'l'. ESC [ ? 1 h DECCKM (por omisison desactivado): Cuando esta activado, las teclas de cursor envian un prefijo ESC O, en vez de ESC [. ESC [ ? 3 h DECCOLM (por omision desactivado = 80 columnas): interruptor de modo 80/132 columnas. En los fuentes del controlador se hace notar que esto solo no basta; alguna utilidad de usuario como resizecons(8) tiene que cambiar los registros de hardware en la tarjeta de video de consola. ESC [ ? 5 h DECSCNM (por omision desactivado): Pone el modo de video inverso ESC [ ? 6 h DECOM (por omision desactivado): Cuando esta activado, el direccionamiento del cursor es relativo a la esquina superior izquierda de la region de rodadura. ESC [ ? 7 h DECAWM (por omision activado): Activa el paso automatico de renglon. En este modo, un caracter grafico emitido tras la columna 80 (o la 132 si esta activado DECCOLM) fuerza un cambio al principio de la siguiente linea. ESC [ ? 8 h DECARM (por omision activado): Activa la auto-repeticion del teclado. ESC [ ? 9 h Informe de Raton X10 (por omision desactivado): Establece el modo de informe a 1 (o lo restaura a 0)--vea abajo. ESC [ ? 25 h DECTECM (por omision activado): Hace visible el cursor. ESC [ ? 1000 h Informe de Raton X11 (por omision desactivado): Establece el modo de informe a 2 (o lo restaura a 0)--vea abajo. Secuencias Privadas de Consola de Linux CSI Las siguientes secuencias no son ni ECMA-48 ni VT102 nativas. Son nativas al controlador de consola de Linux. Los colores estan en los parametros SGR: 0 = negro, 1 = rojo, 2 = verde, 3 = marron, 4 = azul, 5 = rosa, 6 = celeste, 7 = blanco; 8-15 = version con brillo de 0-7. ESC [ 1 ; n ] Establece n como color de subrayado. ESC [ 2 ; n ] Establece n como color de atenuacion. ESC [ 8 ] Hace al color actual el de los atributos predeterminados ESC [ 9 ; n ] Pone el tiempo de espera del borrado de terminal a n minutos. ESC [ 10 ; n ] Establece la frecuencia del pito en Hz. ESC [ 11 ; n ] Establece la duracion del pitido en ms. ESC [ 12 ; n ] Trae al frente la consola especificada. ESC [ 13 ] Quita el blanco de la pantalla. ESC [ 14 ; n ] Establece el intervalo de apagado VESA en min. ESC [ 15 ] Trae al frente la consola especificada. A partir de la version 2.6.0 de Linux. ESC [ 16 ; n ] Define la cadencia de parpadeo del cursor en milisegundos . A partir de la version 4.2 de Linux. Conjunto de Caracteres El nucleo sabe de 4 traducciones de bytes a simbolos de la pantalla de la consola. Las cuatro tablas son: a) Latin1 -> PC, b) graficos VT100 -> PC, c) PC -> PC, d) definida por el usuario. Hay dos conjuntos de caracteres, llamados G0 y G1, y uno de ellos es el actual. (Inicialmente G0.) Teclear ^N hace que G1 sea el actual, ^O hace a G0 el actual. Estas variables G0 y G1 apuntan a una tabla de traduccion, y pueden ser cambiadas por el usuario. Inicialmente apuntan a las tablas a) y b) respectivamente. Las secuencias ESC ( B y ESC ( 0 y ESC ( U y ESC ( K causan que G0 apunte a la tabla a), b), c) y d) respectivamente. Las secuencias ESC ) B y ESC ) 0 y ESC ) U y ESC ) K causan que G1 apunte a la tabla a), b), c) y d), respectivamente. La secuencia ESC c provoca el reseteo del terminal, que es lo deseable cuando este se bloquea. El antiguo truco "echo ^V^O" ahora equivale a G0, pero no hay garantias de que G0 apunte a la tabla a). En algunas distribuciones esta disponible un programa reset(1) que simplemente hace "echo ^[c". Si la entrada de terminfo para la consola es correcta (consiste en rs1=\Ec), entonces "tput reset" tambien funcionara. La tabla de asociacion definida por el usuario puede ponerse con mapscrn(8). El resultado de la asociacion es que si hay un simbolo c que se imprime, se envia a la memoria de video el simbolo s = map[c]. El mapa de bits que corresponde a s se encuentra en la ROM de caracteres, y puede cambiarse mediante setfont(8). Seguimiento del raton La facilidad de seguimiento de pista del raton sirve para devolver informes de estado del raton compatibles con xterm(1). Puesto que el controlador de consola no tiene forma de conocer el dispositivo ni tipo del raton, estos informes se devuelven en el flujo de entrada de la consola solo cuando del controlador de terminal virtual recibe un ioctl de actualizacion de raton. Estos ioctls deben ser generados por una aplicacion de usuario que haga uso del raton como el duende gpm(8). Las secuencias de escape de seguimiento del raton generadas por xterm(1) codifican parametros numericos en un solo caracter como valor+040. Por ejemplo, '!' es 1. El sistema de coordenadas de la pantalla esta basado en 1. El modo de compatibilidad X10 envia una secuencia de escape al pulsar un boton, codificando la ubicacion y el boton del raton pulsado. Se activa enviando ESC [ ? 9 h y se desactiva con ESC [ ? 9 l. Al pulsar un boton, xterm(1) envia ESC [ M bxy (6 caracteres). Aqui b es el boton-1, e x e y son las coordenadas x e y del raton al pulsar el boton. Este es el mismo codigo que genera el nucleo. El modo de seguimiento normal (no implementado en Linux 2.0.24) envia una secuencia de escape al presionar y soltar el boton. Tambien se envia informacion de los modificadores. Se habilita enviando ESC [ ? 1000 h y se deshabilita con ESC [ ? 1000 l. Al presionar o soltar el boton, xterm(1) envia ESC [ M bxy. Los dos bits inferiores de b codifican la informacion del boton: 0=MB1 presionado, 1=MB2 presionado, 2=MB3 presionado, 3=soltar. Los bits superiores codifican los modificadores que estaban presionados al presionar el boton y se suman: 4=Mayus, 8=Meta, 16=Control. Nuevamente, x e y son las coordenadas x e y del evento del raton. La esquina superior izquierda es (1,1). Comparacion con otras terminales Muchos tipos diferentes de terminal se describen, como la consola de Linux, como "compatibles VT100". Aqui se discuten las diferencias entre la consola de Linux y las otras dos mas importantes, la VT102 de DEC y la xterm(1). Manejo de caracteres de control La VT102 tambien reconocia los siguientes caracteres de control: NUL (0x00) no se tuvo en cuenta ENQ (0x05) lanzaba un mensaje de reconocimiento; DC1 (0x11, ^Q, XON) reanudaba la transmision; DC3 (0x13, ^S, XOFF) hacia que la VT100 no tuviera en cuenta (y parara la transmision) ningun codigo excepto XOFF y XON. El controlador del terminal puede habilitar el procesamiento de DC1/DC3 al estilo de la VT100. El programa xterm(1) (en modo VT100) reconoce los caracteres de control BEL, BS, HT, LF, VT, FF, CR, SO, SI, ESC. Secuencias de Escape Secuencias de consola VT100 no implementadas en la consola de Linux: ESC N SS2 Simple cambio 2. (Selecciona el conjunto de caracteres G2 solo para el siguiente caracter.) ESC O SS3 Simple cambio 3. (Selecciona el conjunto de caracteres G3 solo para el siguiente caracter.) ESC P DCS Cadena de control de dispositivo (acabada por ESC \) ESC X SOS Comienzo de cadena. ESC ^ PM Mensaje de privacidad (acabado por ESC \) ESC \ ST Terminador de cadena ESC * ... Designa el conjunto de caracteres G2 ESC + ... Designa el conjunto de caracteres G3 El programa xterm(1) (en modo VT100) reconoce ESC c, ESC # 8, ESC >, ESC =, ESC D, ESC E, ESC H, ESC M, ESC N, ESC O, ESC P ... ESC \, ESC Z (responde ESC [ ? 1 ; 2 c, "Soy un VT100 con opcion de video avanzada") y ESC ^ ... ESC \ con los mismos significados que los indicados anteriormente. Acepta ESC (, ESC ), ESC *, ESC + seguido de 0, A, B para el conjunto de caracteres especiales y dibujo de lineas DEC, UK y US-ASCII, respectivamente. El usuario puede configurar xterm(1) para que responda a las secuencias de control especificas de VT220 y se identificara como VT52, VT100 y superior, segun su configuracion e inicializacion. Acepta ESC ] (OSC) para la configuracion de algunos recursos. Ademas del terminador de cadena ECMA-48 (ST), xterm(1) acepta un BEL para terminar una cadena OSC. Estas son algunas de las secuencias de control OSC reconocidas por xterm(1): ESC ] 0 ; txt ST Pone nombre de icono y titulo de ventana como txt. ESC ] 1 ; txt ST Establece el nombre del icono en txt. ESC ] 2 ; txt ST Establece el titulo de la ventana en txt. ESC ] 4 ; num; txt ST Establece el color ANSI num en txt. ESC ] 10 ; txt ST Establece el color del texto dinamico en txt. ESC ] 4 6 ; nombre ST Cambia el nombre del archivo de registro a nombre Suele dejarse desactivado al compilarlo. ESC ] 5 0 ; fn ST Establece la fuente en fn. Reconoce lo siguiente con un significado ligeramente modificado (comportandose de un modo mas similar a VT100/VT220): ESC 7 DECSC Guarda el cursor ESC 8 DECRC Restaura el cursor Tambien reconoce: ESC F Cursor a esquina inferior izda. de la pantalla (si esta activado por la utilidad hpLoerleftBugCompat de xterm(1)). ESC l Bloqueo de memoria (por terminales HP). Bloquea la memoria sobre el cursor. ESC m Desbloqueo de memoria (por terminales HP). ESC n LS2 Invoca el conjunto de caracteres G2. ESC o LS3 Invoca el conjunto de caracteres G3. ESC | LS3R Invoca el conjunto de caracteres G3 como GR. ESC } LS2R Invoca el conjunto de caracteres G2 como GR. ESC ~ LS1R Invoca el conjunto de caracteres G1 como GR. Tambien reconoce ESC % y aporta una implementacion de UTF-8 mas completa que la consola de Linux. Secuencias CSI Las versiones antiguas de xterm(1), por ejemplo, de X11R5, interpretan la SGR de parpadeo como una SGR en negrita. Las versiones posteriores que implementaron colores ANSI, como XFree86 3.1.2A en 1995, mejoraron esto al permitir que el atributo de parpadeo se mostrara como un color. Las versiones modernas de xterm implementan la SGR de parpadeo como texto parpadeante y aun permiten texto en color como representacion alternativa de las SGR. Las versiones estandar de X11R6 no reconocian las SGR de configuracion de color hasta la version X11R6.8, que incorporo xterm de XFree86. Todas las secuencias CSI ECMA-48 reconocidas por Linux tambien son reconocidas por xterm; sin embargo, xterm(1) implementa varias secuencias de control ECMA-48 y DEC no reconocidas por Linux. El programa xterm reconocera todas las secuencias de Modo Privado de DEC listadas arriba, pero ninguna de las secuencias de modo privado de Linux. Para una discusion sobre las propias secuencias de modo privado de xterm, refierase al documento Xterm Control Sequences de Edward Moy, Stephen Gildea y Thomas E. Dickey disponible con la distribucion X-Window. Dicho documento, aunque succinto, es mas amplio que esta pagina de manual. En esta direccion podra econtrar un resumen cronologico: describe los combios de xterm. Programa vttest Muestra muchas de estas secuencias de control. El codigo fuente de xterm(1) tambien contiene scripts de ejemplo que ejecutan otras funciones. NOTAS ESC 8 (DECRC) no puede reponer el conjunto de caracters modificado mediante ESC %. ERRORES En la version del nucleo 2.0.23, CSI no funciona, y NUL no se tiene en cuenta dentro de secuencias de escape. Algunas versiones antiguas del nucleo (posterior a 2.0) interpretan secuencias de control de 8 bits. Estos "controles C1" emplean codigos entre 128 y 159 para susituir ESC [, ESC ] y otros iniciadores de secuencias de 2 bytes. Existen algunos vestigios de ello en nucleo modernos que, o bien han sido pasados por alto o bien quedaron inhabilitados durante la implementacion de UTF-8. En cualquier caso, la implementacion esta incompleta y no debe considerarse su uso. Las secuencias de <> de Linux no siguen las reglas de ECMA-48 para dichas secuencias de control. En particular, las que terminan en ] no utilizan un caracter de terminacion estandar. La secuencia OSC (set palette) presenta un mayor problema, ya que xterm(1) puede interpretarla como una secuencia de control que requiere un terminador de cadena (ST). A diferencia de las secuencias setterm(1), que se ignoraran (ya que son secuencias de control invalidas), la secuencia de paleta hara que xterm(1) parezca colgarse (aunque <> al presionar la tecla Intro). Para adaptar las aplicaciones que han sido codificadas para usar secuencias de control de Linux, define brokenLinuxOSC de xterm(1) como verdadero. Una version anterior de este documento asumia uqe Linux reconocia la secuencia de control para texto invisible de ECMA-48. Esto no se considera. VEASE TAMBIEN ioctl_console(2), charsets(7) TRADUCCION La traduccion al espanol de esta pagina del manual fue creada por Gerardo Aburruzaga Garcia y Marcos Fouces Esta traduccion es documentacion libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD. Si encuentra algun error en la traduccion de esta pagina del manual, envie un correo electronico a . Paginas de Manual de Linux 6.15 17 Mayo 2025 console_codes(4)