diff --git a/archivos-gendoc/00_Emacs-gendoc.html b/archivos-gendoc/00_Emacs-gendoc.html new file mode 100644 index 0000000..e98e2a5 --- /dev/null +++ b/archivos-gendoc/00_Emacs-gendoc.html @@ -0,0 +1,282 @@ + + + + + + + GNU Emacs + + + + +
+ + +
+ +

+

Inicio

+

Documentación GNU Emacs en Español

+

+Lo que se lee a continuación es la traducción al Español de la Documentación cita en la página de la Free Software Foundation (FSF). +

+

Distribución

+

+GNU Emacs es software libre; esto significa que todo el mundo es libre de usarlo y de redistribuirlo bajo ciertas condiciones. Emacs + de GNU no es de dominio público; tiene derechos de autor y hay restricciones en su distribución, pero estas restricciones están diseñadas +para permitir todo lo que un buen ciudadano cooperante querría hacer. Lo que no está permitido es tratar de impedir que otros sigan compartiendo +cualquier versión de GNU Emacs que puedan obtener de usted. Las condiciones precisas se encuentran en la Licencia Pública General de GNU +que viene con Emacs y que también aparece en este manual 1. Ver LICENCIA PÚBLICA GENERAL DE GNU. +

Nota

+1 Este manual está cubierto por la Licencia de Documentación Libre de GNU. Esta licencia es similar en espíritu a la Licencia Pública +General, pero es más adecuada para la documentación. Véase la licencia de documentación libre de GNU +

+

+

+Una forma de conseguir una copia de GNU Emacs es a través de otra persona que lo tenga. No necesita pedirnos permiso para hacerlo, ni +decírselo a nadie más; simplemente cópielo. Si tiene acceso a Internet, puede obtener la última versión de distribución de GNU Emacs por +FTP anónimo; vea GNU Emacs - GNU Project en nuestro sitio web para más información. +

+

+También puede recibir GNU Emacs cuando compre un ordenador. Los fabricantes de ordenadores son libres de distribuir copias en los mismos +términos que se aplican a todos los demás. Estos términos requieren que le den las fuentes completas, incluyendo cualquier cambio que puedan +haber hecho, y que le permitan redistribuir el Emacs de GNU recibido de ellos bajo los términos habituales de la Licencia +Pública General. En otras palabras, el programa debe ser libre para usted cuando lo obtenga, no sólo libre para el fabricante. +

+

+Si encuentra útil GNU Emacs, por favor, envíe una donación a la Free Software Foundation para apoyar nuestro trabajo. Las donaciones a +la Free Software Foundation son deducibles de impuestos en los Estados Unidos. Si usa GNU Emacs en su lugar de trabajo, por favor +sugiera que la compañía haga una donación. Para donar, vea Apoye la Fundación del Software Libre. Para otras +formas de ayudar, vea Ayudando a la Fundación del Software Libre. +

+También vendemos versiones impresas de este manual y de An Introduction to Programming in Emacs Lisp, de Robert J. Chassell. Puede visitar +nuestra Tienda en línea. Los ingresos de las ventas se destinan a apoyar el propósito de la fundación: el +desarrollo de nuevo software libre, y las mejoras de nuestros programas existentes, incluyendo GNU Emacs. +

+

+Si necesita ponerse en contacto con la Fundación para el Software Libre, consulte Trabajando Juntos por el +Software Libre , o escriba a: +

+

+Free Software Foundation
+51 Franklin Street, Fifth Floor
+Boston, MA 02110-1301
+USA
+

+

Introducción

+

+Estás leyendo sobre GNU Emacs, la encarnación GNU del avanzado, autodocumentado, personalizable y extensible editor Emacs. (La +'G' de GNU (GNU no es Unix) no es muda). +

+

+Llamamos a Emacs avanzado porque puede hacer mucho más que la simple inserción y eliminación de texto. Puede controlar subprocesos, +sangrar programas automáticamente, mostrar múltiples archivos a la vez, editar archivos remotos como si fueran archivos locales, y mucho más. Los +comandos de edición de Emacs operan en términos de caracteres, palabras, líneas, frases, párrafos y páginas, así como de expresiones y +comentarios en varios lenguajes de programación. +

+

+La autodocumentación significa que en cualquier momento puedes usar comandos especiales, conocidos como comandos de ayuda, para saber cuáles son +tus opciones, o para saber qué hace cualquier comando, o para encontrar todos los comandos que pertenecen a un tema determinado. Ver Ayuda. +

+

+Personalizable significa que puedes alterar fácilmente el comportamiento de los comandos de Emacs de forma sencilla. Por ejemplo, si +usas un lenguaje de programación en el que los comentarios empiezan con '<**' y terminan con '**>', puedes decirle a los +comandos de manipulación de comentarios de Emacs que usen esas cadenas (ver Manipulación de comentarios). Por poner otro ejemplo, puedes +revincular los comandos básicos de movimiento del cursor (arriba, abajo, izquierda y derecha) a cualquier tecla del teclado que te resulte +cómoda. Véase Personalización. +

+

+Extensible significa que puede ir más allá de la simple personalización y crear comandos completamente nuevos. Los nuevos comandos son simplemente +programas escritos en el lenguaje Lisp, que son ejecutados por el propio intérprete Lisp de Emacs. Los comandos +existentes pueden incluso redefinirse en medio de una sesión de edición, sin tener que reiniciar Emacs. La mayoría de los comandos de +edición en Emacs están escritos en Lisp; las pocas excepciones podrían haber sido escritas en Lisp pero utilizan C en +su lugar por eficiencia. Escribir una extensión es programar, pero los no programadores pueden usarla después. Vea el Prefacio en Una +Introducción a la Programación en Emacs, si quiere aprender a programar en Emacs Lisp. +

+

+

1. La organización de la pantalla

+

+En una pantalla gráfica, como en GNU/Linux usando el sistema X Window, Emacs ocupa una ventana gráfica. En un terminal de +texto, Emacs ocupa toda la pantalla del terminal. Utilizaremos el término marco para referirnos a una ventana gráfica o pantalla +de terminal ocupada por Emacs. Emacs se comporta de forma muy similar en ambos tipos de marcos. Normalmente comienza con un +solo marco, pero puedes crear marcos adicionales si lo deseas (ver Marcos y Pantallas Gráficas). +

+

+Cada marco consiste en varias regiones distintas. En la parte superior del marco hay una barra de menús, que le permite acceder a los comandos a +través de una serie de menús. En una pantalla gráfica, justo debajo de la barra de menús hay una barra de herramientas, una fila de iconos que +ejecutan comandos de edición cuando se hace clic en ellos. En la parte inferior del marco hay un área de eco, donde se muestran mensajes +informativos y donde se introduce información cuando Emacs la solicita. +

+

+El área principal del marco, por debajo de la barra de herramientas (si existe) y por encima del área de eco, se llama ventana. De ahora en +adelante en este manual, usaremos la palabra "ventana" en este sentido. Los sistemas de visualización gráfica suelen utilizar la palabra +"ventana" con un significado diferente; pero, como se ha dicho anteriormente, nos referimos a esas ventanas gráficas como "marcos". +

+

+Una ventana de Emacs es el lugar donde se muestra el buffer -el texto u otros gráficos que estás editando o viendo-. En una pantalla +gráfica, la ventana posee una barra de desplazamiento en un lado, que puede utilizarse para desplazarse por el búfer. La última línea de la +ventana es una línea de modo. En ella se muestra diversa información sobre lo que está ocurriendo en el buffer, como por ejemplo si hay cambios +sin guardar, los modos de edición que están en uso, el número de línea actual, etc. +

+

+Cuando inicias Emacs, normalmente sólo hay una ventana en el marco. Sin embargo, puedes subdividir esta ventana horizontal o +verticalmente para crear múltiples ventanas, cada una de las cuales puede mostrar independientemente un buffer (ver Ventanas múltiples). +

+

+En cualquier momento, una de las ventanas es la ventana seleccionada. En una pantalla gráfica, la ventana seleccionada muestra un cursor más +prominente (normalmente sólido y parpadeante); las otras ventanas muestran un cursor menos prominente (normalmente una caja hueca). En un +terminal de texto, sólo hay un cursor, que se muestra en la ventana seleccionada. El búfer que se muestra en la ventana seleccionada se llama +búfer actual, y es donde se produce la edición. La mayoría de los comandos de Emacs se aplican implícitamente al búfer actual; el texto +que se muestra en las ventanas no seleccionadas es visible sobre todo como referencia. Si utilizas varios marcos en una pantalla gráfica, al +seleccionar un marco en particular se selecciona una ventana en ese marco. +

+

1.1 Punto

+

+El cursor en la ventana seleccionada muestra la ubicación donde la mayoría de los comandos de edición tienen efecto, que se llama punto +(2). Muchos comandos de Emacs mueven el punto a diferentes lugares en el buffer; por ejemplo, puedes colocar el punto +pulsando el botón 1 del ratón (normalmente el botón izquierdo) en el lugar deseado. +

Nota

+(2) El término "punto" viene del carácter '.', que era el comando en TECO (el lenguaje en el que se escribió el +Emacs original) para acceder a la posición de edición +

+

+

+Por defecto, el cursor en la ventana seleccionada se dibuja como un bloque sólido y parece estar sobre un carácter, pero deberías pensar en el +punto como algo entre dos caracteres; está situado antes del carácter bajo el cursor. Por ejemplo, si su texto se parece a 'frob' con el cursor +sobre la 'b', entonces el punto está entre la 'o' y la 'b'. Si insertas el carácter '!' en esa posición, el resultado es 'fro!b', con el punto +entre el '!' y la 'b'. Así, el cursor permanece sobre la 'b', como antes. +

+

+Si estás editando varios archivos en Emacs, cada uno en su propio buffer, cada buffer tiene su propio valor de punto. Un búfer que no se visualiza en ese momento recuerda su valor de punto si lo vuelves a visualizar más tarde. Además, si un búfer se muestra en varias ventanas, cada una de ellas tiene su propio valor de punto. +

+

+Ver Visualización del Cursor, para las opciones que controlan cómo Emacs muestra el cursor. +

+

1.2 El área de eco

+

+La línea en la parte inferior del marco es el área de eco. Se utiliza para mostrar pequeñas cantidades de texto para varios propósitos. +

+

+El área de eco se llama así porque una de las cosas para las que se utiliza es para hacer eco, lo que significa mostrar los caracteres de un +comando de varios caracteres mientras se escribe. Los comandos de un solo carácter no tienen eco. Los comandos de varios caracteres (ver Teclas) +se hacen eco si se hace una pausa de más de un segundo en medio de un comando. Emacs entonces se hace eco de todos los caracteres del +comando hasta el momento, para pedirle el resto. Una vez que el eco ha comenzado, el resto del comando se hace eco inmediatamente mientras lo +escribes. Este comportamiento está diseñado para que los usuarios confíen en sí mismos, mientras que los usuarios indecisos reciben la máxima +retroalimentación. +

+

+El área de eco también se utiliza para mostrar un mensaje de error cuando un comando no puede hacer su trabajo. Los mensajes de error pueden ir +acompañados de un pitido o de un parpadeo en la pantalla. +

+

+Algunos comandos muestran mensajes informativos en el área de eco para decirle lo que el comando ha hecho, o para proporcionarle alguna +información específica. Estos mensajes informativos, a diferencia de los mensajes de error, no van acompañados de un pitido o un parpadeo. Por +ejemplo, C-x = (mantenga pulsada la tecla Ctrl y escriba x, luego suelte la tecla Ctrl y escriba +=) muestra un mensaje que describe el carácter en cuestión, su posición en la memoria intermedia y su columna actual en la ventana. +Los comandos que tardan mucho tiempo suelen mostrar mensajes que terminan en '...' mientras trabajan (a veces también indican cuánto se ha +avanzado, en forma de porcentaje), y añaden 'hecho' cuando terminan. +

+

+Los mensajes informativos del área de eco se guardan en un búfer especial llamado *Messages* (*Mensajes*). Todavía no hemos explicado +los búferes; vea Uso de búferes múltiples, para más información sobre ellos. Si se pierde un mensaje que ha aparecido brevemente en la pantalla, +puede pasar al búfer *Messages* para volver a verlo. Dicho buffer está limitado a un cierto número de líneas, especificado +por la variable message-log-max. (Tampoco hemos explicado las variables; vea Variables, para más información sobre ellas). Más allá de +este límite, se borra una línea del principio cada vez que se añade una nueva línea de mensajes al final. +

+

+Vea Personalización de la pantalla, para las opciones que controlan cómo Emacs utiliza el área de eco. +

+

+El área de eco también se utiliza para mostrar el minibuffer, una ventana especial en la que se pueden introducir argumentos para los comandos, +como el nombre de un archivo que se va a editar. Cuando el minibuffer está en uso, el texto que se muestra en el área de eco comienza con una +cadena de instrucciones, y el cursor activo aparece dentro del minibuffer, que se considera temporalmente la ventana seleccionada. Siempre se +puede salir del minibuffer escribiendo Ctrl-g (C-g). Véase El minibuffer. +

+

1.3 La línea de modo (modeline)

+

+En la parte inferior de cada ventana hay una línea de modo, que describe lo que está ocurriendo en el buffer actual. Cuando sólo hay una +ventana, la línea de modo aparece justo encima del área de eco; es la penúltima línea del marco. En una pantalla gráfica, la línea de modo se +dibuja con una apariencia de caja 3D. Emacs también suele dibujar la línea de modo de la ventana seleccionada con un color diferente al +de las ventanas no seleccionadas, para que destaque. +

+

+El texto que se muestra en la línea de modo tiene el siguiente formato: +

cs:ch-fr buf pos line (major minor)
+En un terminal de texto, este texto va seguido de una serie de guiones que se extienden hasta el borde derecho de la ventana. Estos guiones se +omiten en una pantalla gráfica. +

+

+La cadena cs y los dos puntos que la siguen describen el conjunto de caracteres y la convención de nueva línea utilizada para el búfer actual. +Normalmente, Emacs maneja automáticamente estos ajustes por ti, pero a veces es útil tener esta información. +

+

+cs describe el conjunto de caracteres del texto en el buffer (ver Sistemas de Codificación). Si es un guión ('-'), eso indica que no se +maneja ningún conjunto de caracteres especiales (con la posible excepción de las convenciones de fin de línea, descritas en el siguiente +párrafo). El carácter '=' significa que no hay conversión alguna, y se suele utilizar para archivos que contienen datos no textuales. +Otros caracteres representan diversos sistemas de codificación; por ejemplo, '1' representa ISO Latin-1. +

+

+En un terminal de texto, cs va precedido de dos caracteres adicionales que describen los sistemas de codificación para la entrada del +teclado y la salida del terminal. Además, si está utilizando un método de entrada, cs va precedido de una cadena que identifica el +método de entrada (véase Métodos de entrada). +

+

+El carácter que sigue a cs suele ser dos puntos. Si se muestra una cadena diferente, eso indica una convención de fin de línea no +trivial para codificar un archivo. Normalmente, las líneas de texto están separadas por caracteres de nueva línea en un archivo, pero a veces se +utilizan otras dos convenciones. La convención de MS-DOS utiliza un carácter de retorno de carro seguido de un carácter de salto de línea; al +editar dichos archivos, los dos puntos cambian a una barra invertida ('\') o '(DOS)', dependiendo del sistema operativo. Otra convención, +empleada por los sistemas Macintosh más antiguos, utiliza un carácter de retorno de carro en lugar de una nueva línea; al editar estos archivos, +los dos puntos se convierten en una barra inclinada ('/') o en '(Mac)'. En algunos sistemas, Emacs muestra '(Unix)' en lugar +de los dos puntos para los archivos que utilizan la nueva línea como separador de líneas. +

+

+En los marcos creados para emacsclient (ver Invocar emacsclient), el siguiente carácter es '@'. Esta indicación es típica para +los marcos de un proceso de Emacs que se ejecuta como demonio (ver Usar Emacs como servidor). +

+

+El siguiente elemento en la línea de modo es la cadena indicada por ch. Esta muestra dos guiones ('--') si el buffer mostrado +en la ventana tiene el mismo contenido que el archivo correspondiente en el disco; es decir, si el buffer no está modificado. Si el búfer está +modificado, muestra dos asteriscos ('**'). En el caso de un búfer de sólo lectura, muestra "%*" si el búfer está modificado, y +"%%" en caso contrario. +

+El carácter después de ch es normalmente un guión ('-'). Sin embargo, si el directorio por defecto (ver Nombres de Archivos) para el buffer actual está en una máquina remota, se muestra '@' en su lugar. +fr da el nombre del marco seleccionada (ver Marcos y Pantallas Gráficas). Sólo aparece en los terminales de texto. El nombre del marco inicial es 'F1'. +buf es el nombre de la memoria intermedia que aparece en la ventana. Normalmente, es el mismo que el nombre del archivo que se está editando. Vea Uso de múltiples buffers. +pos le indica si hay texto adicional por encima de la parte superior de la ventana, o por debajo de la parte inferior. Si su buffer es pequeño y todo su contenido es visible en la ventana, pos es 'All' (Todo). De lo contrario, es 'Top' si estás mirando el principio del buffer, 'Bot' si estás mirando el final del buffer, o 'nn%', donde nn es el porcentaje del buffer por encima de la parte superior de la ventana. Con el modo de indicación de tamaño, también puede mostrar el tamaño del búfer. Véase Características opcionales de la línea de modo. +line es el carácter 'L' seguido del número de línea en el punto. (También puede mostrar el número de columna actual, activando el modo Número de columna. Véase Características opcionales de la línea de modo). +major es el nombre del modo principal utilizado en el buffer. Un modo principal es un modo de edición principal para el buffer, como el modo Texto, el modo Lisp, el modo C, etc. Vea Modos principales. Algunos modos principales muestran información adicional después del nombre del modo principal. Por ejemplo, los búferes de compilación y los búferes Shell muestran el estado del subproceso. +minor es una lista de algunos de los modos menores habilitados, que son modos de edición opcionales que proporcionan características adicionales además del modo mayor. Ver Modos menores. +Algunas características se enumeran junto con los modos menores siempre que estén activados, aunque no sean realmente modos menores. Narrow significa que el búfer que se muestra tiene la edición restringida a sólo una parte de su texto (ver Estrechamiento). 'Def' significa que se está definiendo una macro de teclado (ver Macros de teclado). +Además, si Emacs está dentro de un nivel de edición recursivo, aparecen corchetes ('[...]') alrededor de los paréntesis que rodean los modos. Si Emacs está en un nivel de edición recursivo dentro de otro, aparecen dobles corchetes, y así sucesivamente. Dado que los niveles de edición recursiva afectan a Emacs globalmente, estos corchetes aparecen en la línea de modo de cada ventana. Vea Niveles de edición recursiva. +Puede cambiar la apariencia de la línea de modo así como el formato de su contenido. Vea Características opcionales de la línea de modo. Además, la línea de modo es sensible al ratón; al hacer clic en diferentes partes de la línea de modo se ejecutan varios comandos. Véase Comandos del ratón en la línea de modo. Además, al pasar el puntero del ratón por encima de las partes sensibles al ratón de la línea de modo, se muestran sugerencias de herramientas (véase Sugerencias de herramientas) con información sobre los comandos que puede invocar al hacer clic en la línea de modo. +1.4 La barra de menús +Cada marco de Emacs tiene normalmente una barra de menús en la parte superior que puedes utilizar para realizar operaciones comunes. No es necesario enumerarlas aquí, ya que puedes verlas más fácilmente por ti mismo. +En una pantalla que soporte un ratón, puedes usar el ratón para elegir un comando de la barra de menús. Una flecha en el borde derecho de un elemento de menú significa que conduce a un menú secundario, o submenú. Un "..." al final de un elemento de menú significa que el comando le pedirá que introduzca más datos antes de hacer algo. +Algunos de los comandos de la barra de menús también tienen enlaces de teclas ordinarias; si es así, se muestra un enlace de teclas después del propio elemento. Para ver el nombre completo del comando y la documentación de un elemento de menú, escriba C-h k y, a continuación, seleccione la barra de menú con el ratón de la forma habitual (véase Documentación de una tecla). +En lugar de utilizar el ratón, también puede invocar el primer elemento de la barra de menús pulsando F10 (para ejecutar el comando menu-bar-open). A continuación, puede navegar por los menús con las teclas de dirección o con C-b, C-f (izquierda/derecha), C-p y C-n (arriba/abajo). Para activar un elemento del menú seleccionado, pulse RET; para cancelar la navegación por el menú, pulse C-g o ESC ESC. (Sin embargo, ten en cuenta que cuando Emacs fue construido con un kit de herramientas GUI, los menús son dibujados y controlados por el kit de herramientas, y las secuencias de teclas para cancelar la navegación por los menús pueden ser diferentes de la descripción anterior). +En un terminal de texto, puede acceder opcionalmente a los menús de la barra de menús en el área de eco. Para ello, personalice la variable tty-menu-open-use-tmm a un valor no nulo. Entonces, al teclear F10 se ejecutará el comando tmm-menubar en lugar de desplegar el menú. (También puede escribir M-`, que siempre invoca tmm-menubar). tmm-menubar le permite seleccionar un elemento del menú con el teclado. Aparece una opción provisional en el área de eco. Puede utilizar las teclas de flecha hacia arriba y hacia abajo para desplazarse por el menú a diferentes elementos, y luego puede escribir RET para seleccionar el elemento. Cada elemento del menú se designa también con una letra o un dígito (normalmente la inicial de alguna palabra del nombre del elemento). Esta letra o dígito está separada del nombre del elemento por '==>'. Puede escribir la letra o el dígito del elemento para seleccionarlo.
+ +
+
+ + +