Compare commits

...

3 Commits

Author SHA1 Message Date
tanomarcelo 3cc1fa167f magit; sphinx GNU/Emacs 29.1
Confirmación (commit) tanomarcelo-git
2024-04-04 11:58:04 -03:00
tanomarcelo f454612787 magit: sphinx GNU/Emacs 29.1
Confirmación (commit) tanomarcelo-git
2024-04-02 19:19:48 -03:00
tanomarcelo dac5959caf magit; sphinx GNU/Emacs 29.1
Confirmación (commit) tanomarcelo-git
2024-04-01 00:22:04 -03:00
79 changed files with 1086 additions and 813 deletions

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
@ -154,7 +154,7 @@
<p>Por defecto, el cursor en la ventana seleccionada se dibuja como un bloque sólido y parece estar sobre un carácter, pero debe pensar en el punto como si estuviera entre dos caracteres; está situado <em>antes</em> del carácter bajo el cursor. Por ejemplo, si su texto se parece a <code class="docutils literal notranslate"><span class="pre">frob</span></code> con el cursor sobre la <code class="docutils literal notranslate"><span class="pre">b</span></code>, entonces el punto está entre la <code class="docutils literal notranslate"><span class="pre">o</span></code> y la <code class="docutils literal notranslate"><span class="pre">b</span></code>. Si inserta el carácter <code class="docutils literal notranslate"><span class="pre">!</span></code> en esa posición, el resultado será <code class="docutils literal notranslate"><span class="pre">fro!b</span></code>, con el punto entre el <code class="docutils literal notranslate"><span class="pre">!</span></code> y la <code class="docutils literal notranslate"><span class="pre">b</span></code>. Así, el cursor permanece sobre la <code class="docutils literal notranslate"><span class="pre">b</span></code>, como antes.</p>
<p>Si está editando varios ficheros en Emacs, cada uno en su propio buffer, cada buffer tiene su propio valor de punto. Un búfer que no se muestra en ese momento recuerda su valor de punto si lo vuelve a mostrar más tarde. Además, si un buffer se muestra en varias ventanas, cada una de esas ventanas tiene su propio valor de punto.</p>
<p>Si está editando varios ficheros en Emacs, cada uno en su propio buffer, cada buffer tiene su propio valor de punto. Un búfer que no se muestra en ese momento recuerda su valor de punto si lo vuelve a mostrar más tarde. Además, si un buffer se muestra en múltiples ventanas, cada una de esas ventanas tiene su propio valor de punto.</p>
<p>Ver <a class="reference internal" href="CapConSecciones/15_ControlDisplay.html#id19"><span class="std std-ref">15.21 Visualización del Cursor</span></a>, para opciones que controlan cómo Emacs muestra el cursor.</p>
<p>Ver <a class="reference internal" href="CapConSecciones/15_ControlDisplay.html#id20"><span class="std std-ref">15.21 Visualización del Cursor</span></a>, para opciones que controlan cómo Emacs muestra el cursor.</p>
<aside class="footnote-list brackets">
<aside class="footnote brackets" id="id4" role="doc-footnote">
<span class="label"><span class="fn-bracket">[</span><a role="doc-backlink" href="#id3">2</a><span class="fn-bracket">]</span></span>
@ -170,7 +170,7 @@
<p>Algunos comandos muestran mensajes informativos en el área de eco para decirle lo que ha hecho el comando, o para proporcionarle alguna información específica. Estos mensajes <em>informativos</em>, a diferencia de los mensajes de error, no van acompañados de un pitido o parpadeo. Por ejemplo, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">=</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">=</span></code> mantenga pulsada la tecla <kbd class="kbd docutils literal notranslate">Ctrl</kbd> y escriba <kbd class="kbd docutils literal notranslate">x</kbd>, luego suelte la tecla <kbd class="kbd docutils literal notranslate">Ctrl</kbd> y escriba <kbd class="kbd docutils literal notranslate">=</kbd>) muestra un mensaje que describe el carácter en el punto, su posición en el búfer intermedia y su columna actual en la ventana. Los comandos que llevan mucho tiempo suelen mostrar mensajes que terminan en <code class="docutils literal notranslate"><span class="pre">...</span></code> mientras trabajan (a veces también indican cuánto se ha avanzado, en porcentaje), y añaden <code class="docutils literal notranslate"><span class="pre">done</span></code> (terminado) cuando finaliza.</p>
<p>Los mensajes informativos del área de eco se guardan en un búfer especial denominado <code class="docutils literal notranslate"><span class="pre">*Messages*</span></code> (*Mensajes*). (Aún no hemos explicado los búferes; consulte <a class="reference internal" href="CapConSecciones/20_UsarVariosBuferes.html#id1"><span class="std std-ref">20 Uso de Varios Búferes</span></a>, para obtener más información sobre ellos). Si se pierde un mensaje que ha aparecido brevemente en la pantalla, puede pasar al búfer <code class="docutils literal notranslate"><span class="pre">*Messages*</span></code> para volver a verlo. Este búfer está limitado a un cierto número de líneas, especificado por la variable <code class="docutils literal notranslate"><span class="pre">message-log-max</span></code>. (Tampoco hemos explicado las variables; véase <a class="reference internal" href="CapConSecciones/50_Personlzc.html#id6"><span class="std std-ref">50.2 Variables</span></a>, 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 mensaje al final.</p>
<p>Vea <a class="reference internal" href="CapConSecciones/15_ControlDisplay.html#id4"><span class="std std-ref">15.4 Desplazamiento Horizontal</span></a>, para opciones que controlan cómo Emacs usa el área de eco.</p>
<p>El área de eco también se usa 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 se utiliza el minibuffer, el texto que aparece en el área de eco comienza con una cadena de comandos, y el cursor activo aparece dentro del minibuffer, que se considera temporalmente la ventana seleccionada. Siempre se puede salir del minibuffer tecleando <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">g</kbd> (<code class="docutils literal notranslate"><span class="pre">C-g</span></code>). Véase <a class="reference internal" href="CapConSecciones/15_ControlDisplay.html#id22"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>.</p>
<p>El área de eco también se usa 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 se utiliza el minibuffer, el texto que aparece en el área de eco comienza con una cadena de comandos, y el cursor activo aparece dentro del minibuffer, que se considera temporalmente la ventana seleccionada. Siempre se puede salir del minibuffer tecleando <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">g</kbd> (<code class="docutils literal notranslate"><span class="pre">C-g</span></code>). Véase <a class="reference internal" href="CapConSecciones/15_ControlDisplay.html#id23"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>.</p>
</section>
<section id="la-linea-de-modo">
<span id="id6"></span><h2>1.3 La Línea de Modo<a class="headerlink" href="#la-linea-de-modo" title="Link to this heading"></a></h2>
@ -189,8 +189,8 @@
<p>Normalmente, el carácter que sigue a <em>ch</em> es un guión (<code class="docutils literal notranslate"><span class="pre">-</span></code>). Sin embargo, si el directorio por defecto (véase <a class="reference internal" href="CapConSecciones/19_ManejoArchivos.html#id2"><span class="std std-ref">19.1 Nombres de Archivos</span></a>) para el búfer actual está en una máquina remota, en su lugar aparece <code class="docutils literal notranslate"><span class="pre">&#64;</span></code>.</p>
<p><em>fr</em> da el nombre del marco seleccionado (ver <a class="reference internal" href="CapConSecciones/22_MarcosPantallasGraf.html#id1"><span class="std std-ref">22 Marcos y Pantallas Gráficas</span></a>). Sólo aparece en terminales de texto. El nombre del marco inicial es <code class="docutils literal notranslate"><span class="pre">F1</span></code>.</p>
<p><em>buf</em> es el nombre del buffer que se muestra en la ventana. Normalmente, es el mismo que el nombre del fichero que está editando. Véase <a class="reference internal" href="CapConSecciones/22_MarcosPantallasGraf.html#id1"><span class="std std-ref">22 Marcos y Pantallas Gráficas</span></a>.</p>
<p><em>pos</em> le indica si hay texto adicional por encima de la parte superior de la ventana, o por debajo de la parte inferior. Si su búfer es pequeño y todo él es visible en la ventana, <em>pos</em> es <code class="docutils literal notranslate"><span class="pre">All</span></code> (Todo). De lo contrario, es <code class="docutils literal notranslate"><span class="pre">Top</span></code> (Arriba) si está mirando al principio del buffer, <code class="docutils literal notranslate"><span class="pre">Bot</span></code> si está mirando al final del buffer, o <code class="docutils literal notranslate"><span class="pre">nn%</span></code>, donde <em>nn</em> es el porcentaje del buffer por encima de la parte superior de la ventana. Con el modo Indication Size Mode (modo Indicación de Tamaño), también puede mostrar el tamaño del búfer. Véase <a class="reference internal" href="CapConSecciones/15_ControlDisplay.html#id17"><span class="std std-ref">15.19 Características Opcionales de la Línea de Modo</span></a>.</p>
<p><em>line</em> (línea) es el carácter <code class="docutils literal notranslate"><span class="pre">L</span></code> seguido del número de línea en el punto. (También puede visualizar el número de columna actual, activando el modo Column Number (Número de Columna). Véase <a class="reference internal" href="CapConSecciones/15_ControlDisplay.html#id17"><span class="std std-ref">15.19 Características Opcionales de la Línea de Modo</span></a>).</p>
<p><em>pos</em> le indica si hay texto adicional por encima de la parte superior de la ventana, o por debajo de la parte inferior. Si su búfer es pequeño y todo él es visible en la ventana, <em>pos</em> es <code class="docutils literal notranslate"><span class="pre">All</span></code> (Todo). De lo contrario, es <code class="docutils literal notranslate"><span class="pre">Top</span></code> (Arriba) si está mirando al principio del buffer, <code class="docutils literal notranslate"><span class="pre">Bot</span></code> si está mirando al final del buffer, o <code class="docutils literal notranslate"><span class="pre">nn%</span></code>, donde <em>nn</em> es el porcentaje del buffer por encima de la parte superior de la ventana. Con el modo Indication Size Mode (modo Indicación de Tamaño), también puede mostrar el tamaño del búfer. Véase <a class="reference internal" href="CapConSecciones/15_ControlDisplay.html#id18"><span class="std std-ref">15.19 Características Opcionales de la Línea de Modo</span></a>.</p>
<p><em>line</em> (línea) es el carácter <code class="docutils literal notranslate"><span class="pre">L</span></code> seguido del número de línea en el punto. (También puede visualizar el número de columna actual, activando el modo Column Number (Número de Columna). Véase <a class="reference internal" href="CapConSecciones/15_ControlDisplay.html#id18"><span class="std std-ref">15.19 Características Opcionales de la Línea de Modo</span></a>).</p>
<p><em>major</em> es el nombre del <em>modo principal</em> (o Modo Mayor) utilizado en el búfer. Un modo principal es un modo de edición principal para el búfer, como el modo Texto, el modo Lisp, el modo C, etc. Véase <a class="reference internal" href="CapConSecciones/24_ModosMayores-Y-Menores.html#id2"><span class="std std-ref">24.1 Modos Mayores (o Principales)</span></a>. Algunos modos principales muestran información adicional después del nombre del modo principal. Por ejemplo, los buffers de Compilación y Shell muestran el estado del subproceso.</p>
<p><em>minor</em> 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 <a class="reference internal" href="CapConSecciones/24_ModosMayores-Y-Menores.html#id5"><span class="std std-ref">24.2 Modos Menores</span></a>.</p>
<p>Algunas funciones aparecen junto con los modos secundarios cuando están activados, aunque no sean realmente modos secundarios. <code class="docutils literal notranslate"><span class="pre">Narrow</span></code> (Estrechamiento) significa que el búfer que se está visualizando tiene la edición restringida sólo a una parte de su texto (vea <a class="reference internal" href="CapConSecciones/15_ControlDisplay.html#id5"><span class="std std-ref">15.5 Estrechamiento</span></a>). <code class="docutils literal notranslate"><span class="pre">Def</span></code> significa que se está definiendo una macro de teclado (ver <a class="reference internal" href="CapConSecciones/18_MacrosDeTeclado.html#id1"><span class="std std-ref">18 Macros de Teclado</span></a>).</p>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -153,8 +153,8 @@
<section id="insercion-de-texto">
<span id="id2"></span><h2>8.1 Inserción de Texto<a class="headerlink" href="#insercion-de-texto" title="Link to this heading"></a></h2>
<p>Puede insertar un <em>carácter gráfico</em> normal (por ejemplo, <code class="docutils literal notranslate"><span class="pre">a</span></code>, <code class="docutils literal notranslate"><span class="pre">B</span></code>, <code class="docutils literal notranslate"><span class="pre">3</span></code> y <code class="docutils literal notranslate"><span class="pre">=</span></code>) tipeando la combinación de tecla asociada. Esto añade al búfer el carácter en el punto. La inserción desplaza el punto hacia delante, de modo que el punto queda justo después del texto insertado. Véase <a class="reference internal" href="../01_OrgPant.html#id2"><span class="std std-ref">1.1 El Punto</span></a>.</p>
<p>Para terminar una línea e iniciar una nueva, escriba <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">RET</span></code>, nueva línea). (La tecla <kbd class="kbd docutils literal notranslate">RETURN</kbd> puede estar etiquetada como <em>Return</em>, o <em>Enter</em>, o con una flecha de aspecto gracioso apuntando hacia la izquierda en su teclado, pero en este manual nos referimos a ella como <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">RET</span></code>)). Este comando inserta un carácter de nueva línea en el búfer, y luego aplica una sangría (véase <a class="reference internal" href="25_Indentacion.html#id1"><span class="std std-ref">25 Indentación</span></a>) de acuerdo con el modo principal. Si el punto está al final de la línea, el efecto es crear una nueva línea en blanco después de él y sangrar la nueva línea; si el punto está en medio de una línea, la línea se divide en esa posición. Para desactivar la sangría automática, puede desactivar el modo de sangría eléctrica (véase <a class="reference internal" href="25_Indentacion.html#id2"><span class="std std-ref">25.4 Funciones Prácticas para la Sangría</span></a>) o teclear <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">j</kbd> (<code class="docutils literal notranslate"><span class="pre">C-j</span></code>), que inserta sólo una nueva línea, sin ninguna sangría automática.</p>
<p>Como explicaremos más adelante en este manual, puede cambiar la forma en que Emacs maneja la inserción de texto activando <em>modos menores</em>. Por ejemplo, el modo secundario llamado Auto Fill Mode (Modo de Relleno Automático) divide las líneas automáticamente cuando son demasiado largas (ver <a class="reference internal" href="26_ComandsLengsHuma.html#id7"><span class="std std-ref">26.6 Rellenar Texto</span></a>). El modo secundario, o modo menor llamado Overwrite Mode (Modo Sobrescribir) hace que los caracteres insertados reemplacen (sobrescriban) el texto existente, en lugar de desplazarlo a la derecha. Véase <a class="reference internal" href="24_ModosMayores-Y-Menores.html#id5"><span class="std std-ref">24.2 Modos Menores</span></a>.</p>
<p>Para terminar una línea e iniciar una nueva, escriba <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">RET</span></code>, nueva línea). (La tecla <kbd class="kbd docutils literal notranslate">RETURN</kbd> puede estar etiquetada como <em>Return</em>, o <em>Enter</em>, o con una flecha de aspecto gracioso apuntando hacia la izquierda en su teclado, pero en este manual nos referimos a ella como <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">RET</span></code>)). Este comando inserta un carácter de nueva línea en el búfer, y luego aplica una sangría (véase <a class="reference internal" href="25_Indentacion.html#id1"><span class="std std-ref">25 Indentación</span></a>) de acuerdo con el modo principal. Si el punto está al final de la línea, el efecto es crear una nueva línea en blanco después de él y sangrar la nueva línea; si el punto está en medio de una línea, la línea se divide en esa posición. Para desactivar la sangría automática, puede desactivar el modo de sangría eléctrica (véase <a class="reference internal" href="25_Indentacion.html#id4"><span class="std std-ref">25.4 Funciones Prácticas para la Sangría</span></a>) o teclear <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">j</kbd> (<code class="docutils literal notranslate"><span class="pre">C-j</span></code>), que inserta sólo una nueva línea, sin ninguna sangría automática.</p>
<p>Como explicaremos más adelante en este manual, puede cambiar la forma en que Emacs maneja la inserción de texto activando <em>modos menores</em>. Por ejemplo, el modo secundario llamado Auto Fill Mode (Modo de Relleno Automático) divide las líneas automáticamente cuando son demasiado largas (ver <a class="reference internal" href="26_ComandsLengsHuma.html#id9"><span class="std std-ref">26.6 Rellenar Texto</span></a>). El modo secundario, o modo menor llamado Overwrite Mode (Modo Sobrescribir) hace que los caracteres insertados reemplacen (sobrescriban) el texto existente, en lugar de desplazarlo a la derecha. Véase <a class="reference internal" href="24_ModosMayores-Y-Menores.html#id5"><span class="std std-ref">24.2 Modos Menores</span></a>.</p>
<p>Sólo se pueden insertar caracteres gráficos tecleando la tecla asociada; otras teclas actúan como comandos de edición y no se insertan. Por ejemplo, <kbd class="kbd docutils literal notranslate">DEL</kbd> (<code class="docutils literal notranslate"><span class="pre">DEL</span></code>) ejecuta el comando <code class="docutils literal notranslate"><span class="pre">delete-backward-char</span></code> (borrar-carácter-anterior) por defecto (algunos modos lo vinculan a un comando diferente); no inserta un carácter literal <code class="docutils literal notranslate"><span class="pre">DEL</span></code> (código de carácter ASCII 127).</p>
<p>Para insertar un carácter no gráfico, o un carácter que su teclado no admita, primero cítelo escribiendo <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">q</kbd> (<code class="docutils literal notranslate"><span class="pre">C-q</span></code>, <code class="docutils literal notranslate"><span class="pre">quoted-insert</span></code>). Hay dos formas de utilizar <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">q</kbd>:</p>
<blockquote>
@ -407,16 +407,16 @@ verticalmente. La columna de meta permanece vigente hasta que se cancela.</p>
<div><p>Borra todas las líneas en blanco consecutivas menos una (<code class="docutils literal notranslate"><span class="pre">delete-blank-lines</span></code>).</p>
</div></blockquote>
<p>Hemos visto cómo <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">RET</span></code>, <code class="docutils literal notranslate"><span class="pre">new-line</span></code> , nueva línea) inicia una nueva línea de texto. Sin embargo, puede ser más fácil ver lo que está haciendo si primero hace una línea en blanco y luego inserta en ella el texto deseado. Esto es fácil de hacer usando la tecla <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">o</kbd> (<code class="docutils literal notranslate"><span class="pre">C-o</span></code>, <code class="docutils literal notranslate"><span class="pre">open-line</span></code>), que inserta una nueva línea después del punto pero deja el punto delante de la nueva línea. Después de <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">o</kbd> (<code class="docutils literal notranslate"><span class="pre">C-o</span></code>), escriba el texto de la nueva línea.</p>
<p>Puede crear varias líneas en blanco tecleando <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">o</kbd> (<code class="docutils literal notranslate"><span class="pre">C-o</span></code>) varias veces, o dándole un argumento numérico que especifique cuántas líneas en blanco debe crear. Vea :ref.`8.10`, para saber cómo. Si tiene un prefijo de relleno, el comando <code class="docutils literal notranslate"><span class="pre">C-o</span></code> inserta el prefijo de relleno en la nueva línea, si se escribe al principio de una línea. Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id10"><span class="std std-ref">26.6.3 El Prefijo de Relleno</span></a>.</p>
<p>Puede crear varias líneas en blanco tecleando <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">o</kbd> (<code class="docutils literal notranslate"><span class="pre">C-o</span></code>) varias veces, o dándole un argumento numérico que especifique cuántas líneas en blanco debe crear. Vea :ref.`8.10`, para saber cómo. Si tiene un prefijo de relleno, el comando <code class="docutils literal notranslate"><span class="pre">C-o</span></code> inserta el prefijo de relleno en la nueva línea, si se escribe al principio de una línea. Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id12"><span class="std std-ref">26.6.3 El Prefijo de Relleno</span></a>.</p>
<p>La forma más fácil de deshacerse de las líneas en blanco extra es con el comando <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-o</span></code> (<code class="docutils literal notranslate"><span class="pre">delete-blank-lines</span></code>). Si el punto se encuentra dentro de una serie de líneas en blanco, <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-o</span></code> borra todas menos una. Si el punto se encuentra en una sola línea en blanco, <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-o</span></code> lo borra. Si el punto se encuentra en una línea que no está en blanco, <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-o</span></code> borra todas las líneas en blanco siguientes, si existen.</p>
</section>
<section id="lineas-de-continuacion">
<span id="id7"></span><h2>8.8 Líneas de Continuación<a class="headerlink" href="#lineas-de-continuacion" title="Link to this heading"></a></h2>
<p>A veces, una línea de texto en el buffer -una <em>línea lógica</em>- es demasiado larga para caber en la ventana, y Emacs la muestra como dos o más <em>líneas en pantalla</em>. Esto se llama <em>ajuste de línea o continuación</em>, y la línea lógica larga se llama <em>línea continuada</em>. En una pantalla gráfica, el Editor indica el ajuste de línea con pequeñas flechas dobladas en los bordes izquierdo y derecho de la ventana. En un terminal de texto, Emacs indica el ajuste de línea mostrando un carácter <code class="docutils literal notranslate"><span class="pre">\</span></code> en el margen derecho.</p>
<p>La mayoría de los comandos que actúan sobre líneas lo hacen sobre líneas lógicas, no sobre líneas de pantalla. Por ejemplo, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">k</kbd> (<code class="docutils literal notranslate"><span class="pre">C-k</span></code>) elimina una línea lógica. Como se describió anteriormente, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">n</kbd> (<code class="docutils literal notranslate"><span class="pre">C-n</span></code>, <code class="docutils literal notranslate"><span class="pre">next-line</span></code>, línea-siguiente) y <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">p</kbd> (<code class="docutils literal notranslate"><span class="pre">C-p</span></code>, <code class="docutils literal notranslate"><span class="pre">previous-line</span></code>, línea-anterior) son excepciones especiales: mueven el punto hacia abajo y hacia arriba, respectivamente, una línea de pantalla (ver <a class="reference internal" href="#id3"><span class="std std-ref">8.2 Cambiar la Ubicación del Punto</span></a>).</p>
<p>Emacs puede opcionalmente <em>truncar</em> líneas lógicas largas en lugar de continuarlas. Esto significa que cada línea lógica ocupa una sola línea de pantalla; si es más larga que el ancho de la ventana, el resto de la línea no se muestra. En una pantalla gráfica, una línea truncada se indica mediante una pequeña flecha recta en la franja derecha; en un terminal de texto, se indica mediante un carácter <code class="docutils literal notranslate"><span class="pre">$</span></code> en el margen derecho. Véase <a class="reference internal" href="15_ControlDisplay.html#id20"><span class="std std-ref">15.22 Truncado de Línea</span></a>.</p>
<p>Por defecto, las líneas continuas se ajustan al borde derecho de la ventana. Dado que el ajuste puede producirse en medio de una palabra, las líneas continuas pueden ser difíciles de leer. La solución habitual es romper las líneas antes de que sean demasiado largas, insertando nuevas líneas. Si lo prefiere, puede hacer que Emacs inserte una nueva línea automáticamente cuando una línea se hace demasiado larga, usando el modo Auto Relleno (Auto Fill mode). Vea <a class="reference internal" href="26_ComandsLengsHuma.html#id7"><span class="std std-ref">26.6 Rellenar Texto</span></a>.</p>
<p>A veces, puede que necesite editar ficheros que contienen muchas líneas lógicas largas, y puede que no sea práctico romperlas todas añadiendo nuevas líneas. En ese caso, puedes usar el modo Línea Visual, que activa el <em>ajuste de palabras:</em> en lugar de ajustar las líneas largas exactamente en el borde derecho de la ventana, Emacs las ajusta en los límites de palabra (es decir, espacios o tabuladores) más cercanos al borde derecho de la ventana. El modo Línea Visual también redefine comandos de edición como <code class="docutils literal notranslate"><span class="pre">C-a</span></code>, <code class="docutils literal notranslate"><span class="pre">C-n</span></code>, y <code class="docutils literal notranslate"><span class="pre">C-k</span></code> para operar en líneas de pantalla en lugar de líneas lógicas. Véase <a class="reference internal" href="15_ControlDisplay.html#id21"><span class="std std-ref">15.23 Modo de Línea Visual</span></a>.</p>
<p>Emacs puede opcionalmente <em>truncar</em> líneas lógicas largas en lugar de continuarlas. Esto significa que cada línea lógica ocupa una sola línea de pantalla; si es más larga que el ancho de la ventana, el resto de la línea no se muestra. En una pantalla gráfica, una línea truncada se indica mediante una pequeña flecha recta en la franja derecha; en un terminal de texto, se indica mediante un carácter <code class="docutils literal notranslate"><span class="pre">$</span></code> en el margen derecho. Véase <a class="reference internal" href="15_ControlDisplay.html#id21"><span class="std std-ref">15.22 Truncado de Línea</span></a>.</p>
<p>Por defecto, las líneas continuas se ajustan al borde derecho de la ventana. Dado que el ajuste puede producirse en medio de una palabra, las líneas continuas pueden ser difíciles de leer. La solución habitual es romper las líneas antes de que sean demasiado largas, insertando nuevas líneas. Si lo prefiere, puede hacer que Emacs inserte una nueva línea automáticamente cuando una línea se hace demasiado larga, usando el modo Auto Relleno (Auto Fill mode). Vea <a class="reference internal" href="26_ComandsLengsHuma.html#id9"><span class="std std-ref">26.6 Rellenar Texto</span></a>.</p>
<p>A veces, puede que necesite editar ficheros que contienen muchas líneas lógicas largas, y puede que no sea práctico romperlas todas añadiendo nuevas líneas. En ese caso, puedes usar el modo Línea Visual, que activa el <em>ajuste de palabras:</em> en lugar de ajustar las líneas largas exactamente en el borde derecho de la ventana, Emacs las ajusta en los límites de palabra (es decir, espacios o tabuladores) más cercanos al borde derecho de la ventana. El modo Línea Visual también redefine comandos de edición como <code class="docutils literal notranslate"><span class="pre">C-a</span></code>, <code class="docutils literal notranslate"><span class="pre">C-n</span></code>, y <code class="docutils literal notranslate"><span class="pre">C-k</span></code> para operar en líneas de pantalla en lugar de líneas lógicas. Véase <a class="reference internal" href="15_ControlDisplay.html#id22"><span class="std std-ref">15.23 Modo de Línea Visual</span></a>.</p>
</section>
<section id="informacion-sobre-la-posicion-del-cursor">
<span id="id8"></span><h2>8.9 Información sobre la posición del cursor<a class="headerlink" href="#informacion-sobre-la-posicion-del-cursor" title="Link to this heading"></a></h2>
@ -430,7 +430,7 @@ verticalmente. La columna de meta permanece vigente hasta que se cancela.</p>
<div class="line"><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">column-number-mode</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">column-number-mode</span></code>)</div>
</div>
<blockquote>
<div><p>Alterna la visualización automática del número de línea o columna actual. Véase <a class="reference internal" href="15_ControlDisplay.html#id9"><span class="std std-ref">15.9 Colores de las Caras</span></a>. Si desea que se muestre un número de línea antes de cada línea, consulte <a class="reference internal" href="15_ControlDisplay.html#id22"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>.</p>
<div><p>Alterna la visualización automática del número de línea o columna actual. Véase <a class="reference internal" href="15_ControlDisplay.html#id9"><span class="std std-ref">15.9 Colores de las Caras</span></a>. Si desea que se muestre un número de línea antes de cada línea, consulte <a class="reference internal" href="15_ControlDisplay.html#id23"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<cite>x</cite> (<code class="docutils literal notranslate"><span class="pre">M-x</span></code>)</p>
<blockquote>
@ -446,11 +446,11 @@ verticalmente. La columna de meta permanece vigente hasta que se cancela.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">hl-line-mode</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">hl-line-mode</span></code>)</p>
<blockquote>
<div><p>Activa o desactiva el resaltado de la línea actual. Véase <a class="reference internal" href="15_ControlDisplay.html#id19"><span class="std std-ref">15.21 Visualización del Cursor</span></a>.</p>
<div><p>Activa o desactiva el resaltado de la línea actual. Véase <a class="reference internal" href="15_ControlDisplay.html#id20"><span class="std std-ref">15.21 Visualización del Cursor</span></a>.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd> <kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">size-indication-mode</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">size-indication-mode</span></code>)</p>
<blockquote>
<div><p>Alterna la visualización automática del tamaño del buffer. Véase <a class="reference internal" href="15_ControlDisplay.html#id17"><span class="std std-ref">15.19 Características Opcionales de la Línea de Modo</span></a>.</p>
<div><p>Alterna la visualización automática del tamaño del buffer. Véase <a class="reference internal" href="15_ControlDisplay.html#id18"><span class="std std-ref">15.19 Características Opcionales de la Línea de Modo</span></a>.</p>
</div></blockquote>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">what-line</span></code> muestra el número de línea actual en el área de eco. Este comando suele ser redundante porque dicho número de línea se muestra en la línea de modo (véase <a class="reference internal" href="../01_OrgPant.html#id6"><span class="std std-ref">1.3 La Línea de Modo</span></a>). Sin embargo, si se estrecha el búfer, la línea de modo muestra el número de línea relativo a la parte accesible (véase <a class="reference internal" href="15_ControlDisplay.html#id1"><span class="std std-ref">15 Controlando la Pantalla</span></a>). Por el contrario, <code class="docutils literal notranslate"><span class="pre">what-line</span></code> muestra tanto el número de línea relativo a la región reducida como el relativo al búfer.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-=</span></code> (<code class="docutils literal notranslate"><span class="pre">count-words-region</span></code>) muestra un mensaje que informa del número de líneas, frases, palabras y caracteres de la región (véase La marca y la Región, para una explicación de la región). Con un argumento prefijo, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">=</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">M-=</span></code>), el comando muestra un recuento para todo el búfer.</p>
@ -469,7 +469,7 @@ verticalmente. La columna de meta permanece vigente hasta que se cancela.</p>
</pre></div>
</div>
<p>donde los dos números extra dan la posición de carácter más pequeño y más grande que ese punto puede asumir. Los caracteres entre esas dos posiciones son los accesibles. Véase <a class="reference internal" href="15_ControlDisplay.html#id5"><span class="std std-ref">15.5 Estrechamiento</span></a>.</p>
<p>Una función relacionada, pero diferente, es el modo de visualización de números de línea (véase <a class="reference internal" href="15_ControlDisplay.html#id22"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>).</p>
<p>Una función relacionada, pero diferente, es el modo de visualización de números de línea (véase <a class="reference internal" href="15_ControlDisplay.html#id23"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>).</p>
</section>
<section id="argumentos-numericos">
<span id="id9"></span><h2>8.10 Argumentos Numéricos<a class="headerlink" href="#argumentos-numericos" title="Link to this heading"></a></h2>
@ -488,7 +488,7 @@ verticalmente. La columna de meta permanece vigente hasta que se cancela.</p>
<p>En lugar de escribir <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">1</kbd> (<code class="docutils literal notranslate"><span class="pre">M-1</span></code>), <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">2</kbd> (<code class="docutils literal notranslate"><span class="pre">M-2</span></code>), etc., otra forma de especificar un argumento numérico es escribir <code class="docutils literal notranslate"><span class="pre">C-u</span></code> (<code class="docutils literal notranslate"><span class="pre">universal-argument</span></code>) seguido de algunos dígitos, o (para un argumento negativo) un signo menos seguido de dígitos. Un signo menos sin dígitos normalmente significa -1.</p>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span></code>) sola tiene el significado especial de «cuatro veces»: multiplica por cuatro el argumento de la siguiente orden. <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-u</span></code>) lo multiplica por dieciséis. Así, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">f</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-u</span> <span class="pre">C-f</span></code>) avanza dieciséis caracteres. Otras combinaciones útiles son <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">n</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-n</span></code>), <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">n</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-u</span> <span class="pre">C-n</span></code>) (baja una buena fracción de pantalla), <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">o</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-u</span> <span class="pre">C-o</span></code>) (hace dieciséis líneas en blanco) y <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd> <kbd class="kbd docutils literal notranslate">k</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-k</span></code>, mata cuatro líneas).</p>
<p>Puede utilizar un argumento numérico antes de un carácter autoinsertado para insertar varias copias del mismo. Esto es sencillo cuando el carácter no es un dígito; por ejemplo, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">6</kbd><kbd class="kbd docutils literal notranslate">4</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">6</span> <span class="pre">4</span></code>) a inserta 64 copias del carácter <code class="docutils literal notranslate"><span class="pre">a</span></code>. Pero esto no funciona para insertar dígitos; <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">6</kbd><kbd class="kbd docutils literal notranslate">4</kbd><kbd class="kbd docutils literal notranslate">1</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">6</span> <span class="pre">4</span> <span class="pre">1</span></code>) especifica un argumento de 641. Puede separar el argumento del dígito a insertar con otra combinación de teclas <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span></code>); por ejemplo, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">6</kbd><kbd class="kbd docutils literal notranslate">4</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">1</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">6</span> <span class="pre">4</span> <span class="pre">C-u</span> <span class="pre">1</span></code>) inserta 64 copias del carácter <code class="docutils literal notranslate"><span class="pre">1</span></code>.</p>
<p>Algunos comandos se preocupan de si hay un argumento, pero ignoran su valor. Por ejemplo, el comando <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">q</kbd> (<code class="docutils literal notranslate"><span class="pre">M-q</span></code>. <code class="docutils literal notranslate"><span class="pre">fill-paragraph</span></code>, rellenar-párrafo) rellena texto; con un argumento, también justifica el texto. (Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id7"><span class="std std-ref">26.6 Rellenar Texto</span></a>, para más información sobre <code class="docutils literal notranslate"><span class="pre">M-q</span></code>.) Para estos comandos, basta con especificar el argumento con una sola <code class="docutils literal notranslate"><span class="pre">C-u</span></code>.</p>
<p>Algunos comandos se preocupan de si hay un argumento, pero ignoran su valor. Por ejemplo, el comando <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">q</kbd> (<code class="docutils literal notranslate"><span class="pre">M-q</span></code>. <code class="docutils literal notranslate"><span class="pre">fill-paragraph</span></code>, rellenar-párrafo) rellena texto; con un argumento, también justifica el texto. (Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id9"><span class="std std-ref">26.6 Rellenar Texto</span></a>, para más información sobre <code class="docutils literal notranslate"><span class="pre">M-q</span></code>.) Para estos comandos, basta con especificar el argumento con una sola <code class="docutils literal notranslate"><span class="pre">C-u</span></code>.</p>
<p>Algunos comandos usan el valor del argumento como contador de repeticiones, pero hacen algo especial cuando no hay argumento. Por ejemplo, el comando (<code class="docutils literal notranslate"><span class="pre">C-k</span></code>, <code class="docutils literal notranslate"><span class="pre">kill-line</span></code>) con argumento <em>n</em> mata <em>n</em> líneas, incluyendo sus nuevas líneas finales. Pero <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">k</kbd> (<code class="docutils literal notranslate"><span class="pre">C-k</span></code>) sin argumento es especial: mata el texto hasta la siguiente nueva línea o, si el punto está justo al final de la línea, mata la propia nueva línea. Así, dos comandos <code class="docutils literal notranslate"><span class="pre">C-k</span></code> sin argumentos pueden eliminar una línea que no esté en blanco, igual que <code class="docutils literal notranslate"><span class="pre">C-k</span></code> con un argumento de uno. (Ver <a class="reference internal" href="13_MatarMoverTxt.html#id1"><span class="std std-ref">13 Matar y Mover Texto</span></a>, para más información sobre <code class="docutils literal notranslate"><span class="pre">C-k</span></code>.)</p>
<p>Algunos comandos tratan a <code class="docutils literal notranslate"><span class="pre">C-u</span></code> de forma diferente a un argumento ordinario. Otros pocos pueden tratar un argumento de sólo un signo menos de forma diferente a un argumento de -1. Estos casos inusuales se describen cuando aparecen; existen para hacer que un comando individual sea más conveniente, y están documentados en la cadena de documentación de ese comando.</p>
<p>Usamos el término <em>argumento prefijo</em> para enfatizar que estos argumentos se escriben <em>antes</em> del comando, y para distinguirlos de los argumentos del minibuffer (vea <a class="reference internal" href="09_ElMinibufer.html#id1"><span class="std std-ref">9 El Minibúfer</span></a>), que se introducen <em>después</em> de invocar el comando.</p>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -206,7 +206,7 @@
<p>A menudo puede usar una característica llamada <em>completado</em> para ayudar a introducir argumentos. Esto significa que después de teclear parte del argumento, Emacs puede rellenar el resto, o parte de él, basándose en lo tecleado hasta el momento.</p>
<p>Cuando el completado está disponible, ciertas teclas (normalmente <kbd class="kbd docutils literal notranslate">TAB</kbd> (<code class="docutils literal notranslate"><span class="pre">TAB</span></code>), <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">RET</span></code>), y <kbd class="kbd docutils literal notranslate">SPACE</kbd> (<code class="docutils literal notranslate"><span class="pre">SPC</span></code>)) son redirigidas en el minibuffer a comandos
especiales de completado ver <a class="reference internal" href="#id5"><span class="std std-ref">9.4.2 Comandos de Completado</span></a>). Estos comandos intentan completar el texto en el minibuffer, basándose en un conjunto de <em>alternativas de completado</em> proporcionadas por el comando que solicitó el argumento. Normalmente puede teclear <kbd class="kbd docutils literal notranslate">?</kbd> (<code class="docutils literal notranslate"><span class="pre">?</span></code>) para ver una lista de alternativas de completado.</p>
<p>Aunque el completado normalmente se lleva a cabo en el minibuffer, a veces esta función también está disponible en los buffers normales. Véase <a class="reference internal" href="27_EdDePrograms.html#id18"><span class="std std-ref">27.8 Completado de Nombres de Símbolos</span></a>.</p>
<p>Aunque el completado normalmente se lleva a cabo en el minibuffer, a veces esta función también está disponible en los buffers normales. Véase <a class="reference internal" href="27_EdDePrograms.html#id20"><span class="std std-ref">27.8 Completado de Nombres de Símbolos</span></a>.</p>
<section id="ejemplos-de-completado">
<h3>9.4.1 Ejemplos de Completado<a class="headerlink" href="#ejemplos-de-completado" title="Link to this heading"></a></h3>
<p>Un simple ejemplo puede ser de ayuda. <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> (<code class="docutils literal notranslate"><span class="pre">M-x</span></code>) usa el minibuffer para leer el nombre de un comando, por lo que el completado funciona comparando el texto del minibuffer con los nombres de los comandos Emacs existentes. Suponga que desea ejecutar el comando auto-fill-mode. Puede hacerlo tecleando <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">auto-fill-mode</span></code> <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">M-x</span></code> <code class="docutils literal notranslate"><span class="pre">auto-fill-mode</span></code> <code class="docutils literal notranslate"><span class="pre">RET</span></code>), pero es más fácil usar el completado.</p>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -223,7 +223,7 @@
</div></blockquote>
<p><code class="docutils literal notranslate"><span class="pre">M-&#64;</span></code>, (<code class="docutils literal notranslate"><span class="pre">mark-word</span></code>, marcar palabra) coloca la marca al final de la palabra siguiente (véase <a class="reference internal" href="26_ComandsLengsHuma.html#id2"><span class="std std-ref">26.1 Palabras</span></a>, para obtener información sobre las palabras). Las invocaciones repetidas de este comando amplían la región haciendo avanzar la marca una palabra cada vez. Como excepción, si la marca está activa y situada antes del punto, <code class="docutils literal notranslate"><span class="pre">M-&#64;</span></code> desplaza la marca hacia atrás desde su posición actual una palabra cada vez.</p>
<p>Este comando también acepta un argumento numérico <em>n</em>, que le indica que avance la marca <em>n</em> palabras. Un argumento negativo <em>-n</em> hace retroceder la marca <em>n</em> palabras.</p>
<p>Del mismo modo, <code class="docutils literal notranslate"><span class="pre">C-M-&#64;</span></code> (<code class="docutils literal notranslate"><span class="pre">marca-sexp</span></code>) coloca la marca al final de la siguiente expresión equilibrada (véase <a class="reference internal" href="27_EdDePrograms.html#id6"><span class="std std-ref">27.4.1 Expresiones con Paréntesis Equilibrados</span></a>). Las invocaciones repetidas extienden la región a expresiones posteriores, mientras que los argumentos numéricos positivos o negativos desplazan la marca hacia delante o hacia atrás el número de expresiones especificado.</p>
<p>Del mismo modo, <code class="docutils literal notranslate"><span class="pre">C-M-&#64;</span></code> (<code class="docutils literal notranslate"><span class="pre">marca-sexp</span></code>) coloca la marca al final de la siguiente expresión equilibrada (véase <a class="reference internal" href="27_EdDePrograms.html#id8"><span class="std std-ref">27.4.1 Expresiones con Paréntesis Equilibrados</span></a>). Las invocaciones repetidas extienden la región a expresiones posteriores, mientras que los argumentos numéricos positivos o negativos desplazan la marca hacia delante o hacia atrás el número de expresiones especificado.</p>
<p>Los demás comandos de la lista anterior establecen tanto el punto como la marca, para delimitar un objeto en el búfer. <code class="docutils literal notranslate"><span class="pre">M-h</span></code> (<code class="docutils literal notranslate"><span class="pre">mark-paragraph</span></code>) marca párrafos (véase véase <a class="reference internal" href="26_ComandsLengsHuma.html#id5"><span class="std std-ref">26.4 Páginas</span></a>), <code class="docutils literal notranslate"><span class="pre">C-M-h</span></code> (<code class="docutils literal notranslate"><span class="pre">mark-defun</span></code>) marca definiciones de nivel superior (véase <a class="reference internal" href="27_EdDePrograms.html#id2"><span class="std std-ref">27.2 Definiciones de Nivel Superior, o Defuns</span></a>), y <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-p</span></code> (<code class="docutils literal notranslate"><span class="pre">mark-page</span></code>) marca páginas. Las invocaciones repetidas juegan de nuevo el mismo papel, extendiendo la región a objetos consecutivos; de forma similar, los argumentos numéricos especifican por cuántos objetos mover la marca.</p>
<p><code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">h</span></code> (<code class="docutils literal notranslate"><span class="pre">mark-whole-buffer</span></code>) establece todo el buffer como región, poniendo el punto al principio y la marca al final.</p>
</section>
@ -234,18 +234,18 @@
<div><ul class="simple">
<li><p>Matar con <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">w</kbd> (<code class="docutils literal notranslate"><span class="pre">C-w</span></code>, ver <a class="reference internal" href="13_MatarMoverTxt.html#id1"><span class="std std-ref">13 Matar y Mover Texto</span></a>).</p></li>
<li><p>Copiar en el anillo de muerte con <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">w</kbd> (<code class="docutils literal notranslate"><span class="pre">M-w</span></code>, vea <a class="reference internal" href="13_MatarMoverTxt.html#id4"><span class="std std-ref">13.2 Tirar de un Texto</span></a>).</p></li>
<li><p>Convertir mayúsculas y minúsculas con <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">l</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-l</span></code>) o <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-u</span></code>) (ver <a class="reference internal" href="26_ComandsLengsHuma.html#id11"><span class="std std-ref">26.7. Comandos de Conversión de Mayúsculas y Minúsculas</span></a>).</p></li>
<li><p>Convertir mayúsculas y minúsculas con <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">l</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-l</span></code>) o <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-u</span></code>) (ver <a class="reference internal" href="26_ComandsLengsHuma.html#id14"><span class="std std-ref">26.7. Comandos de Conversión de Mayúsculas y Minúsculas</span></a>).</p></li>
<li><p>Deshacer los cambios en su interior con <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-:kbd`/` (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-/</span></code>, ver <a class="reference internal" href="17_CmdCorrecErrsTipogr.html#id2"><span class="std std-ref">17.1 Deshacer</span></a>).</p></li>
<li><p>Reemplazar texto con <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">%</kbd> (<code class="docutils literal notranslate"><span class="pre">M-%</span></code>, ver <a class="reference internal" href="16_BusqReemp.html#id18"><span class="std std-ref">16.10.4 Sustitución de Consultas</span></a>).</p></li>
<li><p>Aplicar sangría con <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">TAB</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">TAB</span></code>) o <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">\</kbd> (<code class="docutils literal notranslate"><span class="pre">C-M-\</span></code> , ver <a class="reference internal" href="25_Indentacion.html#id1"><span class="std std-ref">25 Indentación</span></a>).</p></li>
<li><p>Rellenar como texto con <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> (<code class="docutils literal notranslate"><span class="pre">M-x</span></code>) <code class="docutils literal notranslate"><span class="pre">fill-region</span></code> (véase <a class="reference internal" href="26_ComandsLengsHuma.html#id7"><span class="std std-ref">26.6 Rellenar Texto</span></a>).</p></li>
<li><p>Comprobar la ortografía de las palabras que contiene con <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">$</kbd> (<code class="docutils literal notranslate"><span class="pre">M-$</span></code>, consulte <a class="reference internal" href="17_CmdCorrecErrsTipogr.html#id5"><span class="std std-ref">17.4 Comprobar y Corregir la Ortografía</span></a>).</p></li>
<li><p>Rellenar como texto con <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> (<code class="docutils literal notranslate"><span class="pre">M-x</span></code>) <code class="docutils literal notranslate"><span class="pre">fill-region</span></code> (véase <a class="reference internal" href="26_ComandsLengsHuma.html#id9"><span class="std std-ref">26.6 Rellenar Texto</span></a>).</p></li>
<li><p>Comprobar la ortografía de las palabras que contiene con <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">$</kbd> (<code class="docutils literal notranslate"><span class="pre">M-$</span></code>, consulte <a class="reference internal" href="17_CmdCorrecErrsTipogr.html#id6"><span class="std std-ref">17.4 Comprobar y Corregir la Ortografía</span></a>).</p></li>
<li><p>Evaluar como código Lisp con <code class="docutils literal notranslate"><span class="pre">M-x</span></code> <code class="docutils literal notranslate"><span class="pre">eval-region</span></code> (vea <a class="reference internal" href="28_CompProbProg.html#id11"><span class="std std-ref">28.9. Evaluación de Expresiones Emacs Lisp</span></a>).</p></li>
<li><p>Guardar en un registro con <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">r</kbd><kbd class="kbd docutils literal notranslate">s</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">r</span> <span class="pre">s</span></code>, vea <a class="reference internal" href="14_Registros.html#id1"><span class="std std-ref">14 Registros</span></a>).</p></li>
<li><p>Guardarlo en un buffer o en un fichero (vea <a class="reference internal" href="13_MatarMoverTxt.html#id12"><span class="std std-ref">13.4 Acumular Texto</span></a>).</p></li>
</ul>
</div></blockquote>
<p>Algunos comandos tienen un comportamiento por defecto cuando la marca está inactiva, pero operan en la región si la marca está activa. Por ejemplo, <code class="docutils literal notranslate"><span class="pre">M-$</span></code> (<code class="docutils literal notranslate"><span class="pre">ispell-word</span></code>) normalmente comprueba la ortografía de la palabra en el punto, pero comprueba el texto en la región si la marca está activa (véase <a class="reference internal" href="17_CmdCorrecErrsTipogr.html#id5"><span class="std std-ref">17.4 Comprobar y Corregir la Ortografía</span></a>). Normalmente, estos comandos utilizan su comportamiento por defecto si la región está vacía (es decir, si la marca y el punto están en la misma posición). Si desea que operen en la región vacía, cambie la variable <code class="docutils literal notranslate"><span class="pre">use-empty-active-region</span></code> a <code class="docutils literal notranslate"><span class="pre">t</span></code>.</p>
<p>Algunos comandos tienen un comportamiento por defecto cuando la marca está inactiva, pero operan en la región si la marca está activa. Por ejemplo, <code class="docutils literal notranslate"><span class="pre">M-$</span></code> (<code class="docutils literal notranslate"><span class="pre">ispell-word</span></code>) normalmente comprueba la ortografía de la palabra en el punto, pero comprueba el texto en la región si la marca está activa (véase <a class="reference internal" href="17_CmdCorrecErrsTipogr.html#id6"><span class="std std-ref">17.4 Comprobar y Corregir la Ortografía</span></a>). Normalmente, estos comandos utilizan su comportamiento por defecto si la región está vacía (es decir, si la marca y el punto están en la misma posición). Si desea que operen en la región vacía, cambie la variable <code class="docutils literal notranslate"><span class="pre">use-empty-active-region</span></code> a <code class="docutils literal notranslate"><span class="pre">t</span></code>.</p>
<p>Como se describe en <a class="reference internal" href="08_ComBasicEdic.html#id4"><span class="std std-ref">8.3 Borrar Texto</span></a> Borrar texto, los comandos <code class="docutils literal notranslate"><span class="pre">DEL</span></code> (<code class="docutils literal notranslate"><span class="pre">backward-delete-char</span></code>) y <code class="docutils literal notranslate"><span class="pre">Delete</span></code> (<code class="docutils literal notranslate"><span class="pre">delete-forward-char</span></code>) también actúan de esta forma. Si la marca está activa, borran el texto de la región. (Como excepción, si proporciona un argumento numérico <em>n</em>, donde <em>n</em> no es uno, estos comandos borran <em>n</em> caracteres independientemente de si la marca está activa). Si cambia la variable <code class="docutils literal notranslate"><span class="pre">delete-active-region</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>, estos comandos no actuarán de forma diferente cuando la marca esté activa. Si cambia el valor a <em>kill</em> (matar), estos comandos matan la región en lugar de borrarla (véase <a class="reference internal" href="13_MatarMoverTxt.html#id1"><span class="std std-ref">13 Matar y Mover Texto</span></a>).</p>
<p>Otros comandos operan siempre sobre la región y no tienen un comportamiento predeterminado. Estos comandos suelen llevar la palabra región en sus nombres, como <code class="docutils literal notranslate"><span class="pre">C-w</span></code> (<code class="docutils literal notranslate"><span class="pre">kill-region</span></code>) y <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-u</span></code> (<code class="docutils literal notranslate"><span class="pre">upcase-region</span></code>). Si la marca está inactiva, actúan sobre la región inactiva, es decir, sobre el texto situado entre el punto y la posición en la que se estableció la marca por última vez (véase <a class="reference internal" href="#id2"><span class="std std-ref">12.1 Fijar la Marca</span></a>). Para desactivar este comportamiento, cambie la variable <code class="docutils literal notranslate"><span class="pre">mark-even-if-inactive</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>. Entonces estos comandos señalarán un error si la marca está inactiva.</p>
<p>Por defecto, la inserción de texto se produce normalmente incluso si la marca está activa; por ejemplo, al escribir a se inserta el carácter <code class="docutils literal notranslate"><span class="pre">a</span></code> y, a continuación, se desactiva la marca. El modo Borrar selección (Delete Selection mode), un modo secundario, modifica este comportamiento: si activa este modo, la inserción de texto mientras la marca está activa hace que el texto de la región se borre primero. Sin embargo, puede ajustar este comportamiento personalizando la opción <code class="docutils literal notranslate"><span class="pre">delete-selection-temporary-region</span></code> (borrar-selección-región-temporal). Su valor predeterminado es <code class="docutils literal notranslate"><span class="pre">nil</span></code>, pero puede establecerlo en <code class="docutils literal notranslate"><span class="pre">t</span></code>, en cuyo caso sólo se reemplazarán las regiones temporalmente activas: las que se establezcan arrastrando el ratón (véase <a class="reference internal" href="#id2"><span class="std std-ref">12.1 Fijar la Marca</span></a>) o mediante selección con Mayúsculas (véase <a class="reference internal" href="#id8"><span class="std std-ref">12.6 Selección mediante Mayúsculas (Shift)</span></a>), así como mediante <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-x</span> <span class="pre">C-x</span></code>) cuando el Modo de Marca Transitoria esté desactivado. Puede ajustar aún más el comportamiento estableciendo <code class="docutils literal notranslate"><span class="pre">delete-selection-temporary-region</span></code> en <code class="docutils literal notranslate"><span class="pre">selection</span></code>: entonces no se reemplazarán las regiones temporales mediante <code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-x</span> <span class="pre">C-x</span></code>, sino sólo las activadas al arrastrar el ratón o mediante shift-selection. Para activar o desactivar el modo Eliminar selección (Delete Selection mode), escriba <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">delete-selection-mode</span></code>.</p>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -248,7 +248,7 @@
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">BACKSPACE</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">DEL</span></code>)</p>
<blockquote>
<div><p>Mata hasta el principio de la frase (<code class="docutils literal notranslate"><span class="pre">backward-kill-sentence</span></code>). Vea <a class="reference internal" href="26_ComandsLengsHuma.html#id3"><span class="std std-ref">26.2 Frases</span></a>.</p>
<div><p>Mata hasta el principio de la frase (<code class="docutils literal notranslate"><span class="pre">backward-kill-sentence</span></code>). Vea <a class="reference internal" href="26_ComandsLengsHuma.html#id3"><span class="std std-ref">26.2 Frases (u oraciones)</span></a>.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">k</kbd> (<code class="docutils literal notranslate"><span class="pre">M-k</span></code>)</p>
<blockquote>
@ -256,7 +256,7 @@
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">k</kbd> (<code class="docutils literal notranslate"><span class="pre">C-M-k</span></code>)</p>
<blockquote>
<div><p>Mata la siguiente expresión equilibrada (<code class="docutils literal notranslate"><span class="pre">kill-sexp</span></code>). Véase <a class="reference internal" href="27_EdDePrograms.html#id6"><span class="std std-ref">27.4.1 Expresiones con Paréntesis Equilibrados</span></a>.</p>
<div><p>Mata la siguiente expresión equilibrada (<code class="docutils literal notranslate"><span class="pre">kill-sexp</span></code>). Véase <a class="reference internal" href="27_EdDePrograms.html#id8"><span class="std std-ref">27.4.1 Expresiones con Paréntesis Equilibrados</span></a>.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">z</kbd> <em>caracter</em> (<code class="docutils literal notranslate"><span class="pre">M-z</span></code> <em>caracter</em>)</p>
<blockquote>
@ -265,7 +265,7 @@
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">zap-up-to-char</span></code> <em>caracter</em> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">zap-up-to-char</span></code> <em>caracter</em>)</p>
<p>20 Mata hasta, pero sin incluir, la siguiente aparición de <em>caracter</em>.</p>
<p>Uno de los comandos de eliminación más usados es <code class="docutils literal notranslate"><span class="pre">C-w</span></code> (<code class="docutils literal notranslate"><span class="pre">kill-region</span></code>), que elimina el texto de la región (véase <a class="reference internal" href="12_LaMarca-y-LaRegion.html#id1"><span class="std std-ref">12 La marca y la región</span></a>). Del mismo modo, <code class="docutils literal notranslate"><span class="pre">M-w</span></code> (<code class="docutils literal notranslate"><span class="pre">kill-ring-save</span></code>) copia el texto de la región en el anillo de muertes sin eliminarlo del búfer. Si la marca está inactiva cuando teclea <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">w</kbd> (<code class="docutils literal notranslate"><span class="pre">C-w</span></code>) o <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">w</kbd> (<code class="docutils literal notranslate"><span class="pre">M-w</span></code>), el comando actúa sobre el texto entre el punto y donde puso la marca por última vez (ver <a class="reference internal" href="12_LaMarca-y-LaRegion.html#id6"><span class="std std-ref">12.3 Operar en la Región</span></a>).</p>
<p>Emacs también proporciona comandos para matar unidades sintácticas específicas: palabras, con <code class="docutils literal notranslate"><span class="pre">M-DEL</span></code> y <code class="docutils literal notranslate"><span class="pre">M-d</span></code> (vea <a class="reference internal" href="26_ComandsLengsHuma.html#id2"><span class="std std-ref">26.1 Palabras</span></a>); expresiones compuestas, con <code class="docutils literal notranslate"><span class="pre">C-M-k</span></code> (vea <a class="reference internal" href="27_EdDePrograms.html#id6"><span class="std std-ref">27.4.1 Expresiones con Paréntesis Equilibrados</span></a>); y frases, con <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">DEL</span></code> y <code class="docutils literal notranslate"><span class="pre">M-k</span></code> (vea <a class="reference internal" href="26_ComandsLengsHuma.html#id3"><span class="std std-ref">26.2 Frases</span></a>).</p>
<p>Emacs también proporciona comandos para matar unidades sintácticas específicas: palabras, con <code class="docutils literal notranslate"><span class="pre">M-DEL</span></code> y <code class="docutils literal notranslate"><span class="pre">M-d</span></code> (vea <a class="reference internal" href="26_ComandsLengsHuma.html#id2"><span class="std std-ref">26.1 Palabras</span></a>); expresiones compuestas, con <code class="docutils literal notranslate"><span class="pre">C-M-k</span></code> (vea <a class="reference internal" href="27_EdDePrograms.html#id8"><span class="std std-ref">27.4.1 Expresiones con Paréntesis Equilibrados</span></a>); y frases, con <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">DEL</span></code> y <code class="docutils literal notranslate"><span class="pre">M-k</span></code> (vea <a class="reference internal" href="26_ComandsLengsHuma.html#id3"><span class="std std-ref">26.2 Frases (u oraciones)</span></a>).</p>
<p>El comando <code class="docutils literal notranslate"><span class="pre">M-z</span></code> (<code class="docutils literal notranslate"><span class="pre">zap-to-char</span></code>) combina matar con buscar: lee un carácter y mata desde el punto hasta (e incluyendo) la siguiente aparición de ese carácter en el búfer. Un argumento numérico actúa como contador de repeticiones; un argumento negativo significa buscar hacia atrás y matar el texto anterior al punto. Se mantiene un historial de los caracteres usados anteriormente, al que se puede acceder mediante las teclas <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">p</kbd> / <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">n</kbd> (<code class="docutils literal notranslate"><span class="pre">M-p</span></code>/<code class="docutils literal notranslate"><span class="pre">M-n</span></code>). Esto es útil sobre todo si el carácter que se va a utilizar tiene que introducirse mediante un método de entrada complicado. Un comando similar <code class="docutils literal notranslate"><span class="pre">zap-up-to-char</span></code> mata desde el punto hasta, pero sin incluir, la siguiente aparición de un carácter, con un argumento numérico que actúa como contador de repeticiones.</p>
</section>
<section id="opciones-de-matado">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -198,8 +198,8 @@
<p>El número de líneas de solapamiento que dejan estos comandos de desplazamiento está controlado por la variable <code class="docutils literal notranslate"><span class="pre">next-screen-context-lines</span></code>, cuyo valor por defecto es 2. Puede suministrar a los comandos un argumento prefijo numérico, <em>n</em>, para desplazarse <em>n</em> líneas; Emacs intenta dejar el punto sin cambios, de modo que el texto y el punto se muevan juntos hacia arriba o hacia abajo. <code class="docutils literal notranslate"><span class="pre">C-v</span></code> con un argumento negativo es como <code class="docutils literal notranslate"><span class="pre">M-v</span></code> y viceversa.</p>
<p>Por defecto, estos comandos señalan un error (pitando o parpadeando la pantalla) si no es posible más desplazamiento, porque la ventana ha alcanzado el principio o el final del buffer. Si cambia la variable <code class="docutils literal notranslate"><span class="pre">scroll-error-top-bottom</span></code> a <code class="docutils literal notranslate"><span class="pre">t</span></code>, estos comandos mueven el punto a la posición más lejana posible. Si el punto ya está allí, los comandos indican un error.</p>
<p>A algunos Usuarios les gusta que los comandos de desplazamiento mantengan el punto en la misma posición de la pantalla, de modo que el desplazamiento de vuelta a la misma pantalla devuelva convenientemente el punto a su posición original. Puede activar este comportamiento mediante la variable <code class="docutils literal notranslate"><span class="pre">scroll-preserve-screen-position</span></code>. Si el valor es <code class="docutils literal notranslate"><span class="pre">t</span></code>, Emacs ajusta el punto para mantener el cursor en la misma posición de la pantalla cada vez que un comando de desplazamiento lo mueve fuera de la ventana, en lugar de moverlo a la línea superior o inferior. Con cualquier otro valor que no sea nulo, Emacs ajusta el punto de esta manera incluso si el comando de desplazamiento deja el punto en la ventana. Esta variable afecta a todos los comandos de desplazamiento documentados en esta sección, así como al desplazamiento con la rueda del ratón (ver <a class="reference internal" href="22_MarcosPantallasGraf.html#id2"><span class="std std-ref">22.1 Comandos del Ratón para Edición</span></a>); en general, afecta a cualquier comando que tenga una propiedad <code class="docutils literal notranslate"><span class="pre">scroll-command</span></code> no nula. Ver <strong>Lista de Propiedades</strong> en el Manual de Referencia de Emacs Lisp. La misma propiedad también causa que Emacs no salga de la búsqueda incremental cuando uno de estos comandos es invocado y luego, <code class="docutils literal notranslate"><span class="pre">isearch-allow-scroll</span></code> es no-<code class="docutils literal notranslate"><span class="pre">nil</span></code> (ver <a class="reference internal" href="16_BusqReemp.html#id8"><span class="std std-ref">16.1.6 No Salir de la Búsqueda Incremental</span></a>).</p>
<p>A veces, particularmente cuando mantenemos pulsadas teclas como <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">v</kbd> (<code class="docutils literal notranslate"><span class="pre">C-v</span></code>) y <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">v</kbd> (<code class="docutils literal notranslate"><span class="pre">M-v</span></code>), activando la auto-repetición de teclado, Emacs no consigue mantener el ritmo rápido de desplazamiento solicitado; la pantalla no se actualiza y el Editor puede dejar de responder a las entradas durante bastante tiempo. Podemos contrarrestar esta lentitud estableciendo la variable <code class="docutils literal notranslate"><span class="pre">fast-but-imprecise-scrolling</span></code> a un valor no nulo. Esto indica a los comandos de desplazamiento que no tipifiquen (ver <a class="reference internal" href="#id12"><span class="std std-ref">15.13 Modo de Bloqueo de Fuente</span></a>) cualquier texto no tipificado sobre el que se desplacen, asumiendo en su lugar que tiene la fuente por defecto. Esto puede hacer que Emacs se desplace a posiciones de búfer algo erróneas cuando las caras en uso no son todas del mismo tamaño, incluso con operaciones de desplazamiento simples (es decir, sin repetición automática).</p>
<p>Como alternativa a configurar el desplazamiento rápido-pero-impreciso (<code class="docutils literal notranslate"><span class="pre">fast-but-imprecise-scrolling</span></code>), puede que prefiera activar la fontificación diferida de <code class="docutils literal notranslate"><span class="pre">jit-lock</span></code> (vea <a class="reference internal" href="#id12"><span class="std std-ref">15.13 Modo de Bloqueo de Fuente</span></a>). Para ello, personalice <code class="docutils literal notranslate"><span class="pre">jit-lock-defer-time</span></code> a un pequeño número positivo como 0.25, o incluso 0.1 si escribe rápido. De este modo, el desplazamiento será menos brusco cuando mantenga pulsada la tecla <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">v</kbd> (<code class="docutils literal notranslate"><span class="pre">C-v</span></code>), pero el contenido de la ventana después de cualquier acción que se desplace a una nueva porción del búfer estará momentáneamente sin fuente.</p>
<p>A veces, particularmente cuando mantenemos pulsadas teclas como <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">v</kbd> (<code class="docutils literal notranslate"><span class="pre">C-v</span></code>) y <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">v</kbd> (<code class="docutils literal notranslate"><span class="pre">M-v</span></code>), activando la auto-repetición de teclado, Emacs no consigue mantener el ritmo rápido de desplazamiento solicitado; la pantalla no se actualiza y el Editor puede dejar de responder a las entradas durante bastante tiempo. Podemos contrarrestar esta lentitud estableciendo la variable <code class="docutils literal notranslate"><span class="pre">fast-but-imprecise-scrolling</span></code> a un valor no nulo. Esto indica a los comandos de desplazamiento que no tipifiquen (ver <a class="reference internal" href="#id13"><span class="std std-ref">15.13 Modo de Bloqueo de Fuente</span></a>) cualquier texto no tipificado sobre el que se desplacen, asumiendo en su lugar que tiene la fuente por defecto. Esto puede hacer que Emacs se desplace a posiciones de búfer algo erróneas cuando las caras en uso no son todas del mismo tamaño, incluso con operaciones de desplazamiento simples (es decir, sin repetición automática).</p>
<p>Como alternativa a configurar el desplazamiento rápido-pero-impreciso (<code class="docutils literal notranslate"><span class="pre">fast-but-imprecise-scrolling</span></code>), puede que prefiera activar la fontificación diferida de <code class="docutils literal notranslate"><span class="pre">jit-lock</span></code> (vea <a class="reference internal" href="#id13"><span class="std std-ref">15.13 Modo de Bloqueo de Fuente</span></a>). Para ello, personalice <code class="docutils literal notranslate"><span class="pre">jit-lock-defer-time</span></code> a un pequeño número positivo como 0.25, o incluso 0.1 si escribe rápido. De este modo, el desplazamiento será menos brusco cuando mantenga pulsada la tecla <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">v</kbd> (<code class="docutils literal notranslate"><span class="pre">C-v</span></code>), pero el contenido de la ventana después de cualquier acción que se desplace a una nueva porción del búfer estará momentáneamente sin fuente.</p>
<p>Por último, una tercera alternativa a estas variables es <code class="docutils literal notranslate"><span class="pre">redisplay-skip-fontification-on-input</span></code>. Si esta variable no es nula, salta algunas fontificaciones si hay entrada pendiente. Esto normalmente no afecta a la visualización porque la redisplay se salta completamente de todos modos si había entrada pendiente, pero puede hacer que el desplazamiento sea más suave al evitar la fontificación innecesaria.</p>
<p>Los comandos <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">scroll-up</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">scroll-up</span></code>) y <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">scroll-down</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">scroll-down</span></code>) se comportan de forma similar a <code class="docutils literal notranslate"><span class="pre">scroll-up-command</span></code> y <code class="docutils literal notranslate"><span class="pre">scroll-down-command</span></code>, excepto que no obedecen a <code class="docutils literal notranslate"><span class="pre">scroll-error-top-bottom</span></code>. Antes de Emacs 24, estos eran los comandos por defecto para desplazarse arriba y abajo. Los comandos <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">scroll-up-line</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">scroll-up-line</span></code>) y <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">scroll-down-line</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">scroll-down-line</span></code>) desplazan la ventana actual una línea cada vez. Si tiene intención de usar cualquiera de estos comandos, puede que quiera asignarles teclas (vea <a class="reference internal" href="50_Personlzc.html#id20"><span class="std std-ref">50.3.6. Reasignación de Teclas en el Archivo de Inicio</span></a>).</p>
</section>
@ -242,7 +242,7 @@ línea superior, la inferior y así sucesivamente en orden cíclico. Es posible
</section>
<section id="desplazamiento-horizontal">
<span id="id4"></span><h2>15.4 Desplazamiento Horizontal<a class="headerlink" href="#desplazamiento-horizontal" title="Link to this heading"></a></h2>
<p>El <em>desplazamiento horizontal</em> significa desplazar todas las líneas lateralmente dentro de una ventana, de modo que parte del texto cercano al margen izquierdo no se muestra. Cuando el texto de una ventana se desplaza horizontalmente, las líneas de texto se truncan en lugar de continuar (véase <a class="reference internal" href="#id20"><span class="std std-ref">15.22 Truncado de Línea</span></a>). Si una ventana muestra líneas truncadas, Emacs realiza un desplazamiento horizontal automático cada vez que un punto se aleja del borde izquierdo o derecho de la pantalla. Por defecto, todas las líneas de la ventana se desplazan horizontalmente juntas, pero si establece la variable <code class="docutils literal notranslate"><span class="pre">auto-hscroll-mode</span></code> al valor especial de <code class="docutils literal notranslate"><span class="pre">current-line</span></code>, sólo se desplazará la línea que muestra el cursor. Para desactivar por completo el desplazamiento horizontal automático, establezca la variable <code class="docutils literal notranslate"><span class="pre">auto-hscroll-mode</span></code> en <code class="docutils literal notranslate"><span class="pre">nil</span></code>. Tenga en cuenta que cuando el desplazamiento horizontal automático está desactivado, si el punto se desplaza fuera del borde de la pantalla, el cursor desaparece para indicarlo. (En los terminales de texto, en cambio, el cursor se deja en el borde).</p>
<p>El <em>desplazamiento horizontal</em> significa desplazar todas las líneas lateralmente dentro de una ventana, de modo que parte del texto cercano al margen izquierdo no se muestra. Cuando el texto de una ventana se desplaza horizontalmente, las líneas de texto se truncan en lugar de continuar (véase <a class="reference internal" href="#id21"><span class="std std-ref">15.22 Truncado de Línea</span></a>). Si una ventana muestra líneas truncadas, Emacs realiza un desplazamiento horizontal automático cada vez que un punto se aleja del borde izquierdo o derecho de la pantalla. Por defecto, todas las líneas de la ventana se desplazan horizontalmente juntas, pero si establece la variable <code class="docutils literal notranslate"><span class="pre">auto-hscroll-mode</span></code> al valor especial de <code class="docutils literal notranslate"><span class="pre">current-line</span></code>, sólo se desplazará la línea que muestra el cursor. Para desactivar por completo el desplazamiento horizontal automático, establezca la variable <code class="docutils literal notranslate"><span class="pre">auto-hscroll-mode</span></code> en <code class="docutils literal notranslate"><span class="pre">nil</span></code>. Tenga en cuenta que cuando el desplazamiento horizontal automático está desactivado, si el punto se desplaza fuera del borde de la pantalla, el cursor desaparece para indicarlo. (En los terminales de texto, en cambio, el cursor se deja en el borde).</p>
<p>La variable <code class="docutils literal notranslate"><span class="pre">hscroll-margin</span></code> controla lo cerca que se puede llegar a los bordes izquierdo y derecho de la ventana antes de que se produzca el desplazamiento automático. Se mide en columnas. Por ejemplo, si el valor es 5, al mover el punto a menos de 5 columnas de un borde se produce un desplazamiento horizontal desde ese borde.</p>
<p>La variable <code class="docutils literal notranslate"><span class="pre">hscroll-step</span></code> determina cuántas columnas se desplazará la ventana cuando el punto se acerque demasiado al borde. Cero, el valor por defecto, significa centrar el punto horizontalmente dentro de la ventana. Un valor entero positivo especifica el número de columnas por las que desplazarse. Un número de coma flotante (cuyo valor debe estar entre 0 y 1) especifica la fracción del ancho de la ventana por la que desplazarse.</p>
<p>También puede realizar un desplazamiento horizontal explícito con los siguientes comandos:</p>
@ -300,7 +300,7 @@ línea superior, la inferior y así sucesivamente en orden cíclico. Es posible
</section>
<section id="caras-de-texto">
<span id="id8"></span><h2>15.8. Caras de Texto<a class="headerlink" href="#caras-de-texto" title="Link to this heading"></a></h2>
<p>Emacs puede mostrar texto en varios estilos diferentes, llamados <em>caras</em> (faces). Cada cara puede especificar varios <em>atributos de cara</em>, como la fuente, altura, peso, inclinación, color de primer plano y de fondo, y subrayado o superposición. La mayoría de los modos principales asignan caras al texto automáticamente, mediante el modo Bloqueo de Fuente (Font Lock mode). Consulte <a class="reference internal" href="#id12"><span class="std std-ref">15.13 Modo de Bloqueo de Fuente</span></a>, para más información sobre cómo se asignan estas caras.</p>
<p>Emacs puede mostrar texto en varios estilos diferentes, llamados <em>caras</em> (faces). Cada cara puede especificar varios <em>atributos de cara</em>, como la fuente, altura, peso, inclinación, color de primer plano y de fondo, y subrayado o superposición. La mayoría de los modos principales asignan caras al texto automáticamente, mediante el modo Bloqueo de Fuente (Font Lock mode). Consulte <a class="reference internal" href="#id13"><span class="std std-ref">15.13 Modo de Bloqueo de Fuente</span></a>, para más información sobre cómo se asignan estas caras.</p>
<p>Para ver qué fuentes están actualmente definidas y qué aspecto tienen, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">list-faces-display</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">list-faces-display</span></code>). Con un prefijo como argumento, se pide una expresión regular y se muestran sólo las caras cuyos nombres coincidan con esa expresión regular (véase <a class="reference internal" href="16_BusqReemp.html#id13"><span class="std std-ref">16.6 Sintaxis de las Expresiones Regulares</span></a>).</p>
<p>Es posible que una misma cara tenga un aspecto diferente en distintos marcos. Por ejemplo, algunos terminales de texto no soportan todos los atributos de las carátulas, particularmente fuente, altura y anchura, y algunos soportan una gama limitada de colores. Además, la mayoría de las caras de Emacs están definidas para que sus atributos sean diferentes en fondos claros y oscuros, por razones de legibilidad. Por defecto, Emacs elige automáticamente qué conjunto de atributos de cara mostrar en cada marco, basándose en el color de fondo actual del marco. Sin embargo, se puede anular esto dando a la variable <code class="docutils literal notranslate"><span class="pre">frame-background-mode</span></code> un valor no nulo. Un valor de <code class="docutils literal notranslate"><span class="pre">dark</span></code> que Emacs trate todos los marcos como si tuvieran un fondo oscuro, mientras que un valor de <code class="docutils literal notranslate"><span class="pre">light</span></code> hace que trate todos los marcos como si tuvieran un fondo claro.</p>
<p>Puede personalizar una cara para alterar sus atributos, y guardar esas personalizaciones para futuras sesiones de Emacs. Ver <a class="reference internal" href="50_Personlzc.html#id4"><span class="std std-ref">50.1.5. Personalización de Caras</span></a>, para más detalles.</p>
@ -367,15 +367,15 @@ primer plano por defecto, blanco o negro.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">secondary-selection</span></code></dt><dd><p>Esta cara se usa para mostrar una selección X secundaria (véase <a class="reference internal" href="13_MatarMoverTxt.html#id11"><span class="std std-ref">13.3.3 Selección Secundaria</span></a>).</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">trailing-whitespace</span></code></dt><dd><p>La cara para resaltar el exceso de espacios y tabuladores al final de una línea cuando <code class="docutils literal notranslate"><span class="pre">show-trailing-whitespace</span></code> es distinto de nil (véase <a class="reference internal" href="#id16"><span class="std std-ref">15.17 Espacios en Blanco Innecesarios</span></a>).</p>
<dt><code class="docutils literal notranslate"><span class="pre">trailing-whitespace</span></code></dt><dd><p>La cara para resaltar el exceso de espacios y tabuladores al final de una línea cuando <code class="docutils literal notranslate"><span class="pre">show-trailing-whitespace</span></code> es distinto de nil (véase <a class="reference internal" href="#id17"><span class="std std-ref">15.17 Espacios en Blanco Innecesarios</span></a>).</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">escape-glyph</span></code></dt><dd><p>Cara para mostrar caracteres de control y secuencias de escape (véase <a class="reference internal" href="#id18"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a> ).</p>
<dt><code class="docutils literal notranslate"><span class="pre">escape-glyph</span></code></dt><dd><p>Cara para mostrar caracteres de control y secuencias de escape (véase <a class="reference internal" href="#id19"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a> ).</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">homoglyph</span></code></dt><dd><p>La cara para mostrar caracteres semejantes, es decir, caracteres que se parecen pero no son los caracteres representados (véase <a class="reference internal" href="#id18"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>).</p>
<dt><code class="docutils literal notranslate"><span class="pre">homoglyph</span></code></dt><dd><p>La cara para mostrar caracteres semejantes, es decir, caracteres que se parecen pero no son los caracteres representados (véase <a class="reference internal" href="#id19"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>).</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">nobreak-space</span></code></dt><dd><p>Cara para mostrar caracteres espaciados sin salto (véase <a class="reference internal" href="#id18"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>).</p>
<dt><code class="docutils literal notranslate"><span class="pre">nobreak-space</span></code></dt><dd><p>Cara para mostrar caracteres espaciados sin salto (véase <a class="reference internal" href="#id19"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>).</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">nobreak-hyphen</span></code></dt><dd><p>La cara para mostrar caracteres de guión sin ruptura (véase <a class="reference internal" href="#id18"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>).</p>
<dt><code class="docutils literal notranslate"><span class="pre">nobreak-hyphen</span></code></dt><dd><p>La cara para mostrar caracteres de guión sin ruptura (véase <a class="reference internal" href="#id19"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>).</p>
</dd>
</dl>
<p>Las siguientes caras controlan la apariencia de partes del marco de Emacs:</p>
@ -406,9 +406,9 @@ una cara independiente porque la cara de la línea de encabezado puede personali
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">minibuffer-prompt</span></code></dt><dd><p>Esta cara se usa para las cadenas del prompt mostradas en el minibuffer. Por defecto, Emacs añade automáticamente esta cara al valor de <code class="docutils literal notranslate"><span class="pre">minibuffer-prompt-properties</span></code>, que es una lista de propiedades de texto (ver <strong>Propiedades de Texto</strong> en el Manual de Referencia de Emacs Lisp) usadas para mostrar el texto del prompt. (Esta variable tiene efecto cuando entra en el minibuffer).</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">fringe</span></code></dt><dd><p>La cara de los márgenes a la izquierda y a la derecha de las ventanas en las pantallas gráficas. (La franja son las partes estrechas del marco de Emacs entre el área de texto y los bordes derecho e izquierdo de la ventana). Véase <a class="reference internal" href="#id14"><span class="std std-ref">15.15 Bordes de ventana</span></a>.</p>
<dt><code class="docutils literal notranslate"><span class="pre">fringe</span></code></dt><dd><p>La cara de los márgenes a la izquierda y a la derecha de las ventanas en las pantallas gráficas. (La franja son las partes estrechas del marco de Emacs entre el área de texto y los bordes derecho e izquierdo de la ventana). Véase <a class="reference internal" href="#id15"><span class="std std-ref">15.15 Bordes de ventana</span></a>.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">cursor</span></code></dt><dd><p>El atributo <code class="docutils literal notranslate"><span class="pre">background</span></code> de esta cara especifica el color del cursor de texto. Véase <a class="reference internal" href="#id19"><span class="std std-ref">15.21 Visualización del Cursor</span></a>.</p>
<dt><code class="docutils literal notranslate"><span class="pre">cursor</span></code></dt><dd><p>El atributo <code class="docutils literal notranslate"><span class="pre">background</span></code> de esta cara especifica el color del cursor de texto. Véase <a class="reference internal" href="#id20"><span class="std std-ref">15.21 Visualización del Cursor</span></a>.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">tooltip</span></code></dt><dd><p>Esta cara se usa para el texto de la información sobre herramientas. Por defecto, si Emacs está construido con soporte GTK+, los tooltips se dibujan vía GTK+ y esta cara no tiene efecto. Ver <a class="reference internal" href="22_MarcosPantallasGraf.html#id18"><span class="std std-ref">22.19 Sugerencias sobre Herramientas (Tooltips)</span></a>.</p>
</dd>
@ -434,7 +434,7 @@ una cara independiente porque la cara de la línea de encabezado puede personali
</dl>
</section>
<section id="iconos">
<h2>15.11 Iconos<a class="headerlink" href="#iconos" title="Link to this heading"></a></h2>
<span id="id11"></span><h2>15.11 Iconos<a class="headerlink" href="#iconos" title="Link to this heading"></a></h2>
<p>Emacs a veces muestra botones clicables (u otros iconos informativos), y puede personalizar cómo se ven en pantalla.</p>
<p>El principal punto de personalización aquí es la opción de usuario <code class="docutils literal notranslate"><span class="pre">icon-preference</span></code>. Usando esto, puede decirle a Emacs sus preferencias generales para los iconos. Esta es una lista de tipos de iconos, y se usará el primer tipo de icono soportado. Los tipos soportados son:</p>
<dl class="simple">
@ -451,7 +451,7 @@ una cara independiente porque la cara de la línea de encabezado puede personali
<p>Para obtener una descripción rápida de un icono, use el comando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">describe-icon</span></code>.</p>
</section>
<section id="escala-de-texto">
<span id="id11"></span><h2>15.12 Escala de Texto<a class="headerlink" href="#escala-de-texto" title="Link to this heading"></a></h2>
<span id="id12"></span><h2>15.12 Escala de Texto<a class="headerlink" href="#escala-de-texto" title="Link to this heading"></a></h2>
<p>Para aumentar el tamaño de fuente de la cara por defecto en el buffer actual, teclee <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">+</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-+</span></code>) o <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">e</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-=</span></code>). Para disminuirlo, teclee <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">-</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C--</span></code>). Para restablecer el tamaño de fuente predeterminado (global), escriba <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">0</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-0</span></code>). Todas estas teclas están vinculadas al mismo comando, ajuste de escala de texto, que se basa en la última tecla pulsada para determinar qué acción realizar y ajusta el tamaño de la fuente en consecuencia cambiando la altura de la cara por defecto.</p>
<p>La mayoría de las caras no tienen un ajuste explícito del atributo <code class="docutils literal notranslate"><span class="pre">:height</span></code> por lo que heredan la altura de la cara por defecto. Estas caras también se escalan con los comandos anteriores.</p>
<p>Las caras distintas de la predeterminada que tienen un ajuste explícito del atributo <code class="docutils literal notranslate"><span class="pre">:height</span></code> no se ven afectadas por estos cambios de tamaño de fuente. La cara de la línea de cabecera es una excepción: se escalará incluso si tiene un ajuste explícito del atributo <code class="docutils literal notranslate"><span class="pre">:height</span></code>.</p>
@ -465,7 +465,7 @@ una cara independiente porque la cara de la línea de encabezado puede personali
<p>El comando <code class="docutils literal notranslate"><span class="pre">mouse-wheel-text-scale</span></code> también cambia la escala del texto. Normalmente, se ejecuta al pulsar <kbd class="kbd docutils literal notranslate">Ctrl</kbd> (<code class="docutils literal notranslate"><span class="pre">Ctrl</span></code>) mientras se mueve la rueda del ratón. La escala del texto aumenta cuando la rueda se mueve hacia abajo, y disminuye cuando la rueda se mueve hacia arriba.</p>
</section>
<section id="modo-de-bloqueo-de-fuente">
<span id="id12"></span><h2>15.13 Modo de Bloqueo de Fuente<a class="headerlink" href="#modo-de-bloqueo-de-fuente" title="Link to this heading"></a></h2>
<span id="id13"></span><h2>15.13 Modo de Bloqueo de Fuente<a class="headerlink" href="#modo-de-bloqueo-de-fuente" title="Link to this heading"></a></h2>
<p>El modo Font Lock es un modo menor, siempre local a un búfer en particular, que asigna caras (o <em>tipografía</em>) al texto del búfer. El modo principal de cada búfer indica al modo Font Lock qué texto debe tipificar; por ejemplo, los modos del lenguaje de programación tipifican construcciones sintácticamente relevantes como comentarios, cadenas y nombres de funciones.</p>
<p>El modo Font Lock está activado por defecto en los modos principales que lo admiten. Para activarlo en el búfer actual, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">font-lock-mode</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">font-lock-mode</span></code>). Un argumento numérico positivo activa incondicionalmente el modo Font Lock, y un argumento negativo o cero lo desactiva.</p>
<p>Escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">global-font-lock-mode</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">global-font-lock-mode</span></code>) para activar el modo Font Lock en todos los búferes. Para imponer esta configuración para futuras sesiones de Emacs, personalice la variable <code class="docutils literal notranslate"><span class="pre">global-font-lock-mode</span></code> (ver <a class="reference internal" href="50_Personlzc.html#id2"><span class="std std-ref">50.1 Interfaz de Personalización Fácil</span></a>), o añada la siguiente línea a su fichero init:</p>
@ -528,7 +528,7 @@ propiedades, variables, etc.</p>
</section>
</section>
<section id="resaltado-interactivo">
<span id="id13"></span><h2>15.14 Resaltado Interactivo<a class="headerlink" href="#resaltado-interactivo" title="Link to this heading"></a></h2>
<span id="id14"></span><h2>15.14 Resaltado Interactivo<a class="headerlink" href="#resaltado-interactivo" title="Link to this heading"></a></h2>
<p>El modo Highlight Changes (Resaltar cambios) es un modo menor que <em>resalta</em> las partes del búfer que se han modificado más recientemente, dándole a ese texto una cara diferente. Para activar o desactivar este modo, utilice <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">highlight-changes-mode</span></code>.</p>
<p>El modo Hi Lock es un modo menor que resalta el texto que coincide con las expresiones regulares que especifique. Por ejemplo, puede usarlo para resaltar todas las referencias a una determinada variable en un archivo fuente de un programa, resaltar ciertas partes en una salida voluminosa de algún programa o resaltar ciertos nombres en un artículo. Para activar o desactivar el modo Hi Lock, use el comando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">hi-lock-mode</span></code>. Para activar el modo Hi Lock para todos los búferes, use <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">global-hi-lock-mode</span></code> o coloque <code class="docutils literal notranslate"><span class="pre">(global-hi-lock-mode</span> <span class="pre">1)</span></code> en su archivo <code class="docutils literal notranslate"><span class="pre">.emacs</span></code>.</p>
<p>El modo Hi Lock funciona como el modo Font Lock (ver <a class="reference internal" href="#id3"><span class="std std-ref">15.3 Desplazamiento Automático</span></a>), excepto que Usted especifica explícitamente las expresiones regulares a resaltar. Puede controlarlas con los siguientes comandos. (Las combinaciones de teclas de abajo que empiezan por <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">w</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">w</span></code>) están obsoletas en favor de las combinaciones globales <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">h</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">h</span></code>), y serán eliminadas en alguna versión futura de Emacs).</p>
@ -602,17 +602,17 @@ directamente, independientemente del valor de esta variable.</p>
</div></blockquote>
</section>
<section id="bordes-de-ventana">
<span id="id14"></span><h2>15.15 Bordes de ventana<a class="headerlink" href="#bordes-de-ventana" title="Link to this heading"></a></h2>
<span id="id15"></span><h2>15.15 Bordes de ventana<a class="headerlink" href="#bordes-de-ventana" title="Link to this heading"></a></h2>
<p>En las pantallas gráficas, cada ventana de Emacs tiene normalmente <em>franjas</em> estrechas en los bordes izquierdo y derecho. Las franjas se usan para mostrar símbolos que proporcionan información sobre el texto de la ventana. Puede escribir <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">fringe-mode</span></code> para alternar la visualización de dichas franjas o para modificar su anchura. Este comando afecta a las franjas de todos los cuadros; para modificar las franjas sólo en el cuadro seleccionado, utilice <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">set-fringe-style</span></code>. Puede hacer que sus cambios en las franjas sean permanentes personalizando la variable <code class="docutils literal notranslate"><span class="pre">fringe-mode</span></code>.</p>
<p>El uso más común de las franjas es indicar una línea de continuación (véase <a class="reference internal" href="08_ComBasicEdic.html#id7"><span class="std std-ref">8.8 Líneas de Continuación</span></a>). Cuando una línea de texto se divide en varias líneas de pantalla, la franja izquierda muestra una flecha curva para cada línea de pantalla excepto la primera, lo que indica que no es el comienzo real. La franja derecha muestra una flecha curva para cada línea de pantalla excepto la última, indicando que no es el final real. Si la dirección de la línea es de derecha a izquierda (véase <a class="reference internal" href="23_SoporteJuegoCaracIntern.html#id24"><span class="std std-ref">23.20 Edición Bidireccional</span></a>), los significados de las flechas curvas en las franjas se intercambian.</p>
<p>Las franjas indican cuando hay truncamiento de línea (ver <a class="reference internal" href="#id20"><span class="std std-ref">15.22 Truncado de Línea</span></a>) con flechas horizontales cortas que significan que hay más texto en esta línea que se desplaza horizontalmente fuera de la vista. Al hacer clic con el ratón en una de las flechas, la pantalla se desplaza horizontalmente en la dirección de la flecha.</p>
<p>Las franjas también pueden indicar otras cosas, como los límites del búfer (ver Visualizar <a class="reference internal" href="#id15"><span class="std std-ref">15.16 Mostrar Límites</span></a>), líneas no usadas cerca del final de la ventana (ver 4º párrafo de <a class="reference internal" href="#id16"><span class="std std-ref">15.17 Espacios en Blanco Innecesarios</span></a>), y dónde se está ejecutando un programa que estás depurando (ver <a class="reference internal" href="28_CompProbProg.html#id7"><span class="std std-ref">28.6. Ejecutar Depuradores en Emacs</span></a>).</p>
<p>Las franjas indican cuando hay truncamiento de línea (ver <a class="reference internal" href="#id21"><span class="std std-ref">15.22 Truncado de Línea</span></a>) con flechas horizontales cortas que significan que hay más texto en esta línea que se desplaza horizontalmente fuera de la vista. Al hacer clic con el ratón en una de las flechas, la pantalla se desplaza horizontalmente en la dirección de la flecha.</p>
<p>Las franjas también pueden indicar otras cosas, como los límites del búfer (ver Visualizar <a class="reference internal" href="#id16"><span class="std std-ref">15.16 Mostrar Límites</span></a>), líneas no usadas cerca del final de la ventana (ver 4º párrafo de <a class="reference internal" href="#id17"><span class="std std-ref">15.17 Espacios en Blanco Innecesarios</span></a>), y dónde se está ejecutando un programa que estás depurando (ver <a class="reference internal" href="28_CompProbProg.html#id7"><span class="std std-ref">28.6. Ejecutar Depuradores en Emacs</span></a>).</p>
<p>La franja también se usa para dibujar el cursor, si la línea actual es exactamente tan ancha como la ventana y el punto está al final de la línea. Para desactivar esto, cambie la variable <code class="docutils literal notranslate"><span class="pre">overflow-newline-into-fringe</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>; esto hace que Emacs continúe o trunque las líneas que son exactamente tan anchas como la ventana.</p>
<p>Si personaliza el modo franja (fringe-mode) para eliminar las franjas en uno o ambos lados de la ventana de visualización, las características que se muestran en la franja no están disponibles. Los indicadores de continuación y truncamiento de línea son una excepción: cuando las franjas no están disponibles, Emacs usa las celdas de caracteres más a la izquierda y más a la derecha para indicar la continuación y el truncamiento con caracteres ASCII especiales, véase <a class="reference internal" href="08_ComBasicEdic.html#id7"><span class="std std-ref">8.8 Líneas de Continuación</span></a> y <a class="reference internal" href="#id20"><span class="std std-ref">15.22 Truncado de Línea</span></a>. Esto reduce el ancho disponible para mostrar texto en cada línea, porque las celdas de caracteres usadas para los indicadores de truncamiento y continuación están reservadas para ese propósito. Dado que el texto del búfer puede incluir texto bidireccional y, por tanto, párrafos tanto de izquierda a derecha como de derecha a izquierda (véase <a class="reference internal" href="23_SoporteJuegoCaracIntern.html#id24"><span class="std std-ref">23.20 Edición Bidireccional</span></a>), al eliminar sólo una de las franjas se siguen reservando dos celdas de caracteres, una a cada lado de la ventana, para los indicadores de truncamiento y continuación, ya que estos indicadores se muestran en lados opuestos de la ventana en los párrafos de derecha a izquierda.</p>
<p>Si personaliza el modo franja (fringe-mode) para eliminar las franjas en uno o ambos lados de la ventana de visualización, las características que se muestran en la franja no están disponibles. Los indicadores de continuación y truncamiento de línea son una excepción: cuando las franjas no están disponibles, Emacs usa las celdas de caracteres más a la izquierda y más a la derecha para indicar la continuación y el truncamiento con caracteres ASCII especiales, véase <a class="reference internal" href="08_ComBasicEdic.html#id7"><span class="std std-ref">8.8 Líneas de Continuación</span></a> y <a class="reference internal" href="#id21"><span class="std std-ref">15.22 Truncado de Línea</span></a>. Esto reduce el ancho disponible para mostrar texto en cada línea, porque las celdas de caracteres usadas para los indicadores de truncamiento y continuación están reservadas para ese propósito. Dado que el texto del búfer puede incluir texto bidireccional y, por tanto, párrafos tanto de izquierda a derecha como de derecha a izquierda (véase <a class="reference internal" href="23_SoporteJuegoCaracIntern.html#id24"><span class="std std-ref">23.20 Edición Bidireccional</span></a>), al eliminar sólo una de las franjas se siguen reservando dos celdas de caracteres, una a cada lado de la ventana, para los indicadores de truncamiento y continuación, ya que estos indicadores se muestran en lados opuestos de la ventana en los párrafos de derecha a izquierda.</p>
</section>
<section id="mostrar-limites">
<span id="id15"></span><h2>15.16 Mostrar Límites<a class="headerlink" href="#mostrar-limites" title="Link to this heading"></a></h2>
<p>Emacs puede mostrar una indicación de la posición de la columna de relleno (véase <a class="reference internal" href="26_ComandsLengsHuma.html#id9"><span class="std std-ref">26.6.2 Comandos de Relleno Explícito</span></a>). El indicador de columna de relleno es una funcionalidad útil especialmente en modo prog y sus descendientes (ver <a class="reference internal" href="24_ModosMayores-Y-Menores.html#id2"><span class="std std-ref">24.1 Modos Mayores (o Principales)</span></a>) para indicar la posición de una columna específica que tiene algún significado especial para formatear el código fuente de un programa. Esto supone que el búfer usa una fuente de paso fijo, donde todos los caracteres (con la posible excepción de los caracteres de doble ancho) tienen el mismo ancho en pantalla. Si el búfer usa fuentes de paso variable, los indicadores de relleno de columna en diferentes líneas pueden aparecer desalineados.</p>
<span id="id16"></span><h2>15.16 Mostrar Límites<a class="headerlink" href="#mostrar-limites" title="Link to this heading"></a></h2>
<p>Emacs puede mostrar una indicación de la posición de la columna de relleno (véase <a class="reference internal" href="26_ComandsLengsHuma.html#id11"><span class="std std-ref">26.6.2 Comandos de Relleno Explícito</span></a>). El indicador de columna de relleno es una funcionalidad útil especialmente en modo prog y sus descendientes (ver <a class="reference internal" href="24_ModosMayores-Y-Menores.html#id2"><span class="std std-ref">24.1 Modos Mayores (o Principales)</span></a>) para indicar la posición de una columna específica que tiene algún significado especial para formatear el código fuente de un programa. Esto supone que el búfer usa una fuente de paso fijo, donde todos los caracteres (con la posible excepción de los caracteres de doble ancho) tienen el mismo ancho en pantalla. Si el búfer usa fuentes de paso variable, los indicadores de relleno de columna en diferentes líneas pueden aparecer desalineados.</p>
<p>Para activar la indicación de columna de relleno, use los modos menores <code class="docutils literal notranslate"><span class="pre">display-fill-column-indicator-mode</span></code> y <code class="docutils literal notranslate"><span class="pre">global-display-fill-column-indicator-mode</span></code>, que activan el indicador local o globalmente, respectivamente.</p>
<p>Alternativamente, puede establecer las dos variables locales del búfer <code class="docutils literal notranslate"><span class="pre">display-fill-column-indicator</span></code> y <code class="docutils literal notranslate"><span class="pre">display-fill-column-indicator-character</span></code> para activar el indicador y controlar el carácter utilizado para la indicación. Tenga en cuenta que ambas variables deben ser no nulas para que se muestre la indicación. (Activar el modo menor activa ambas variables).</p>
<p>Hay 2 variables locales de búfer y una cara para personalizar este modo:</p>
@ -635,12 +635,12 @@ establecer el color de primer plano de esta cara.</p>
<p>Por ejemplo, <code class="docutils literal notranslate"><span class="pre">((top</span> <span class="pre">.</span> <span class="pre">left)</span> <span class="pre">(t</span> <span class="pre">.</span> <span class="pre">right))</span></code> ((arriba . izquierda) (t . derecha)) coloca el mapa de bits de ángulo superior en la franja izquierda, el mapa de bits de ángulo inferior en la franja derecha y ambos mapas de bits de flecha en la franja derecha. Para mostrar sólo los mapas de bits de ángulo en la franja izquierda, pero no los mapas de bits de flecha, use <code class="docutils literal notranslate"><span class="pre">((top</span> <span class="pre">.</span> <span class="pre">left)</span> <span class="pre">(bottom</span> <span class="pre">.</span> <span class="pre">left))</span></code> ((arriba . izquierda) (abajo . izquierda)).</p>
</section>
<section id="espacios-en-blanco-innecesarios">
<span id="id16"></span><h2>15.17 Espacios en Blanco Innecesarios<a class="headerlink" href="#espacios-en-blanco-innecesarios" title="Link to this heading"></a></h2>
<span id="id17"></span><h2>15.17 Espacios en Blanco Innecesarios<a class="headerlink" href="#espacios-en-blanco-innecesarios" title="Link to this heading"></a></h2>
<p>Es fácil dejar espacios innecesarios al final de una línea, o líneas vacías al final de un búfer, sin darse cuenta. En la mayoría de los casos, estos <em>espacios en blanco</em> al final no tienen ningún efecto, pero a veces pueden ser una molestia.</p>
<p>Puede hacer visibles los espacios en blanco al final de una línea estableciendo la variable local del buffer <code class="docutils literal notranslate"><span class="pre">show-trailing-whitespace</span></code> a <code class="docutils literal notranslate"><span class="pre">t</span></code>. Entonces Emacs muestra los espacios en blanco al final de la línea, usando la cara <code class="docutils literal notranslate"><span class="pre">trailing-whitespace</span></code>.</p>
<p>Esta característica no se aplica cuando el punto está al final de la línea que contiene el espacio en blanco. Estrictamente hablando, eso no deja de ser un espacio en blanco final, pero mostrarlo especialmente en ese caso queda feo mientras escribe un nuevo texto. En este caso especial, la ubicación del punto es suficiente para mostrar que los espacios están presentes.</p>
<p>Escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">delete-trailing-whitespace</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">delete-trailing-whitespace</span></code>) para borrar todos los espacios blancos finales. Este comando borra todos los espacios extra al final de cada línea del búfer, y todas las líneas vacías al final de este; para ignorar estas últimas, cambie la variable <code class="docutils literal notranslate"><span class="pre">delete-trailing-lines</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>. Si la región está activa, el comando elimina los espacios adicionales al final de cada línea de la región.</p>
<p>En pantallas gráficas, Emacs puede indicar las líneas no usadas al final de la ventana con una pequeña imagen en la franja izquierda (ver <a class="reference internal" href="#id14"><span class="std std-ref">15.15 Bordes de ventana</span></a>). La imagen aparece para las líneas de pantalla que no corresponden a ningún texto del búfer, por lo que las líneas en blanco al final del búfer destacan porque carecen de esta imagen. Para activar esta función, ajuste la variable local del búfer <code class="docutils literal notranslate"><span class="pre">indicate-empty-lines</span></code> a un valor no nulo. Puede activar o desactivar esta función para todos los nuevos búferes estableciendo el valor predeterminado de esta variable, por ejemplo, <code class="docutils literal notranslate"><span class="pre">(setq-default</span> <span class="pre">indicate-empty-lines</span> <span class="pre">t)</span></code>.</p>
<p>En pantallas gráficas, Emacs puede indicar las líneas no usadas al final de la ventana con una pequeña imagen en la franja izquierda (ver <a class="reference internal" href="#id15"><span class="std std-ref">15.15 Bordes de ventana</span></a>). La imagen aparece para las líneas de pantalla que no corresponden a ningún texto del búfer, por lo que las líneas en blanco al final del búfer destacan porque carecen de esta imagen. Para activar esta función, ajuste la variable local del búfer <code class="docutils literal notranslate"><span class="pre">indicate-empty-lines</span></code> a un valor no nulo. Puede activar o desactivar esta función para todos los nuevos búferes estableciendo el valor predeterminado de esta variable, por ejemplo, <code class="docutils literal notranslate"><span class="pre">(setq-default</span> <span class="pre">indicate-empty-lines</span> <span class="pre">t)</span></code>.</p>
<p>El modo de espacios en blanco es un modo menor localizado en el búfer que permite visualizar muchos tipos de espacios en blanco en el búfer, ya sea dibujando los caracteres de los espacios en blanco con una cara especial o mostrándolos como glifos especiales. Para activar este modo, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">whitespace-mode</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">whitespace-mode</span></code>). Los tipos de espacios en blanco visualizados están determinados por la variable de lista <code class="docutils literal notranslate"><span class="pre">whitespace-style</span></code>. Los elementos individuales de esa lista pueden activarse o desactivarse en el búfer actual escribiendo <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">whitespace-toggle-options</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">whitespace-toggle-options</span></code>). A continuación se muestra una lista parcial de los posibles elementos (consulte la documentación de la variable para ver la lista completa):</p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">face</span></code></dt><dd><p>Habilita todas las visualizaciones que usan caras especiales. Este elemento tiene un significado especial: si está ausente de la lista, ninguna de las otras visualizaciones tiene
@ -679,10 +679,10 @@ cambiar esto, personalice la expresión regular <code class="docutils literal no
<p>Las líneas ocultas siguen presentes en el búfer, y la mayoría de los comandos de edición las ven como de costumbre, por lo que es posible que encuentre un punto en medio del texto oculto. Cuando ocurre esto, el cursor aparece al final de la línea anterior, después de los tres puntos. Si el punto está al final de la línea visible, antes de la nueva línea que la termina, el cursor aparece antes de los tres puntos.</p>
<p>Para volver a hacer visibles todas las líneas, escriba <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">$</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">$</span></code>) sin argumento.</p>
<p>Si establece la variable <code class="docutils literal notranslate"><span class="pre">selective-display-ellipses</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>, los tres puntos no aparecen al final de una línea que precede a líneas ocultas. Entonces no hay indicación visible de las líneas ocultas. Cuando se configura esta variable, automáticamente se convierte en local.</p>
<p>Véase también <a class="reference internal" href="26_ComandsLengsHuma.html#id12"><span class="std std-ref">26.9 Modo Esquema</span></a> para otra forma de ocultar parte del texto en un búfer.</p>
<p>Véase también <a class="reference internal" href="26_ComandsLengsHuma.html#id16"><span class="std std-ref">26.9 Modo Esquema (mode Outilne)</span></a> para otra forma de ocultar parte del texto en un búfer.</p>
</section>
<section id="caracteristicas-opcionales-de-la-linea-de-modo">
<span id="id17"></span><h2>15.19 Características Opcionales de la Línea de Modo<a class="headerlink" href="#caracteristicas-opcionales-de-la-linea-de-modo" title="Link to this heading"></a></h2>
<span id="id18"></span><h2>15.19 Características Opcionales de la Línea de Modo<a class="headerlink" href="#caracteristicas-opcionales-de-la-linea-de-modo" title="Link to this heading"></a></h2>
<p>El porcentaje del búfer <em>pos</em> indica el porcentaje del búfer por encima de la parte superior de la ventana. Además, puede mostrar el tamaño del búfer escribiendo <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">size-indication-mode</span></code> para activar el modo de indicación de tamaño. El tamaño se mostrará inmediatamente después del porcentaje del búfer, de la siguiente manera:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">pos</span> <span class="k">del</span> <span class="n">tamaño</span>
</pre></div>
@ -707,11 +707,11 @@ cambiar esto, personalice la expresión regular <code class="docutils literal no
<p>Puede personalizar la visualización de la línea de modo para cada uno de los formatos de fin de línea estableciendo cada una de las variables <code class="docutils literal notranslate"><span class="pre">eol-mnemonic-unix</span></code>, <code class="docutils literal notranslate"><span class="pre">eol-mnemonic-dos</span></code>, <code class="docutils literal notranslate"><span class="pre">eol-mnemonic-mac</span></code> y <code class="docutils literal notranslate"><span class="pre">eol-mnemonic-undecided</span></code> a las cadenas que prefiera.</p>
</section>
<section id="como-se-muestra-el-texto">
<span id="id18"></span><h2>15.20 Cómo se Muestra el Texto<a class="headerlink" href="#como-se-muestra-el-texto" title="Link to this heading"></a></h2>
<span id="id19"></span><h2>15.20 Cómo se Muestra el Texto<a class="headerlink" href="#como-se-muestra-el-texto" title="Link to this heading"></a></h2>
<p>La mayoría de los caracteres son <em>caracteres de impresión</em>: cuando aparecen en un búfer, se muestran literalmente en la pantalla. Los caracteres de impresión incluyen números ASCII, letras y caracteres de puntuación, así como muchos caracteres no ASCII.</p>
<p>El conjunto de caracteres ASCII contiene <em>caracteres de control</em> no imprimibles. Dos de ellos se muestran de forma especial: el carácter de nueva línea (punto de código Unicode U+000A) se muestra iniciando una nueva línea, mientras que el carácter de tabulación (U+0009) se muestra como un espacio que se extiende hasta la siguiente columna de tabulación (normalmente cada 8 columnas). El número de espacios por tabulación se controla mediante la variable <code class="docutils literal notranslate"><span class="pre">tab-width</span></code> del búfer-local, que debe tener un valor entero entre 1 y 1000, ambos inclusive. Tenga en cuenta que la forma en que se muestra el carácter de tabulación en el búfer no tiene nada que ver con la definición de <code class="docutils literal notranslate"><span class="pre">TAB</span></code> como comando.</p>
<p>Otros caracteres de control ASCII, cuyos códigos son inferiores a U+0020 (octal 40, decimal 32), se muestran como un signo de intercalación (<code class="docutils literal notranslate"><span class="pre">^</span></code>) seguido de la versión sin control del carácter, con la cara del glifo de escape. Por ejemplo, el carácter <code class="docutils literal notranslate"><span class="pre">control-A</span></code>, U+0001, se muestra como <code class="docutils literal notranslate"><span class="pre">^A</span></code>.</p>
<p>Los bytes en bruto con los códigos U+0080 (octal 200) a U+009F (octal 237) se muestran como <em>secuencias de escape octales</em>, con la cara <code class="docutils literal notranslate"><span class="pre">escape-glyph</span></code>. Por ejemplo, el código de carácter U+0098 (octal 230) se muestra como <code class="docutils literal notranslate"><span class="pre">\230</span></code>. Si cambia la variable local del búfer <code class="docutils literal notranslate"><span class="pre">ctl-arrow</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>, los caracteres de control ASCII también se muestran como secuencias de escape octales en lugar de secuencias de escape caret. (También puede solicitar que los bytes sin procesar se muestren en hexadecimal, consulte <a class="reference internal" href="#id22"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>).</p>
<p>Los bytes en bruto con los códigos U+0080 (octal 200) a U+009F (octal 237) se muestran como <em>secuencias de escape octales</em>, con la cara <code class="docutils literal notranslate"><span class="pre">escape-glyph</span></code>. Por ejemplo, el código de carácter U+0098 (octal 230) se muestra como <code class="docutils literal notranslate"><span class="pre">\230</span></code>. Si cambia la variable local del búfer <code class="docutils literal notranslate"><span class="pre">ctl-arrow</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>, los caracteres de control ASCII también se muestran como secuencias de escape octales en lugar de secuencias de escape caret. (También puede solicitar que los bytes sin procesar se muestren en hexadecimal, consulte <a class="reference internal" href="#id23"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>).</p>
<p>Algunos caracteres no ASCII tienen la misma apariencia que un espacio ASCII o un guión (menos). Tales caracteres pueden causar problemas si se introducen en un búfer sin que se dé cuenta, por ejemplo, tirando; por ejemplo, los compiladores de código fuente normalmente no tratan los espacios no ASCII como caracteres de espacio en blanco. Para solucionar este problema, Emacs muestra estos caracteres de forma especial: muestra U+00A0 NO-BREAK SPACE y otros caracteres de la clase de espacio horizontal Unicode con la cara <code class="docutils literal notranslate"><span class="pre">nobreak-space</span></code>, y muestra U+00AD SOFT HYPHEN, U+2010 HYPHEN, y U+2011 NON-BREAKING HYPHEN con la cara <code class="docutils literal notranslate"><span class="pre">nobreak-hyphen</span></code>. Para desactivarlo, cambie la variable <code class="docutils literal notranslate"><span class="pre">nobreak-char-display</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>. Si le da a esta variable un valor que no sea <code class="docutils literal notranslate"><span class="pre">nil</span></code> ni <code class="docutils literal notranslate"><span class="pre">t</span></code>, Emacs mostrará dichos caracteres como una barra invertida resaltada seguida de un espacio o guión.</p>
<p>Puede personalizar la forma en que se muestra cualquier código de carácter concreto mediante una tabla de visualización. Ver <strong>Tablas de Visualización</strong> en el Manual de Referencia de Emacs Lisp.</p>
<p>En pantallas gráficas, algunos caracteres pueden no tener glifos en ninguna de las fuentes disponibles para Emacs. Estos <em>caracteres sin glifos</em> se muestran normalmente como cuadros que contienen el código hexadecimal del carácter. De forma similar, en los terminales de texto, los caracteres que no pueden mostrarse usando la codificación del terminal (ver <a class="reference internal" href="23_SoporteJuegoCaracIntern.html#id16"><span class="std std-ref">23.13 Sistemas de Codificación para E/S de Terminal</span></a>) se muestran normalmente como signos de interrogación. Puede controlar el método de visualización personalizando la variable <code class="docutils literal notranslate"><span class="pre">glyphless-char-display-control</span></code>. También puede personalizar la variable de cara <code class="docutils literal notranslate"><span class="pre">glyphless-char</span></code> para hacer que estos caracteres destaquen más en pantalla. Vea <strong>Visualización de Caracteres sin Glifos</strong> en el Manual de Referencia de Emacs Lisp, para más detalles.</p>
@ -720,7 +720,7 @@ cambiar esto, personalice la expresión regular <code class="docutils literal no
<p>Si se sabe que las comillas curvas <code class="docutils literal notranslate"><span class="pre"></span></code>, <code class="docutils literal notranslate"><span class="pre"></span></code>, <code class="docutils literal notranslate"><span class="pre"></span></code>, y <code class="docutils literal notranslate"><span class="pre"></span></code> se parecen a los caracteres ASCII, se muestran con la cara del homoglifo. Las comillas curvas que se sabe que no son visualizables se muestran como sus aproximaciones ASCII <code class="docutils literal notranslate"><span class="pre">´</span></code>, <code class="docutils literal notranslate"><span class="pre">'</span></code>, y <code class="docutils literal notranslate"><span class="pre">&quot;</span></code> la cara del homoglifo.</p>
</section>
<section id="visualizacion-del-cursor">
<span id="id19"></span><h2>15.21 Visualización del Cursor<a class="headerlink" href="#visualizacion-del-cursor" title="Link to this heading"></a></h2>
<span id="id20"></span><h2>15.21 Visualización del Cursor<a class="headerlink" href="#visualizacion-del-cursor" title="Link to this heading"></a></h2>
<p>En un terminal de texto, la apariencia del cursor está controlada por el terminal, en gran parte fuera del control de Emacs. Algunos terminales ofrecen dos cursores diferentes: un cursor estático visible, y un cursor parpadeante muy visible. Por defecto, Emacs usa el cursor muy visible, y cambia a él cuando arranca o reanuda Emacs. Si la variable <code class="docutils literal notranslate"><span class="pre">visible-cursor</span></code> es nula (<code class="docutils literal notranslate"><span class="pre">nil</span></code>) cuando Emacs arranca o se reanuda, usa el cursor normal.</p>
<p>En una pantalla gráfica, pueden modificarse muchas más propiedades del cursor de texto. Para personalizar su color, cambie el atributo <code class="docutils literal notranslate"><span class="pre">:background</span></code> de la cara denominada cursor (véase <a class="reference internal" href="50_Personlzc.html#id4"><span class="std std-ref">50.1.5. Personalización de Caras</span></a>). (Los demás atributos de esta cara no tienen ningún efecto; el texto que se muestra bajo el cursor se dibuja utilizando el color de fondo del marco). Para cambiar su forma, personalice la variable local del búfer <code class="docutils literal notranslate"><span class="pre">cursor-type</span></code>; los valores posibles son <code class="docutils literal notranslate"><span class="pre">box</span></code> (por defecto), <code class="docutils literal notranslate"><span class="pre">(box</span> <span class="pre">.</span> <span class="pre">size)</span></code> (el cursor en forma de caja se convierte en una caja hueca bajo imágenes enmascaradas de tamaño superior a píxeles en cualquiera de sus dimensiones), <code class="docutils literal notranslate"><span class="pre">hollow</span></code> (una caja hueca), <code class="docutils literal notranslate"><span class="pre">bar</span></code> (una barra vertical), <code class="docutils literal notranslate"><span class="pre">(bar</span> <span class="pre">.</span> <span class="pre">n)</span></code> (una barra vertical de <em>n</em> píxeles de ancho), <code class="docutils literal notranslate"><span class="pre">hbar</span></code> (una barra horizontal), <code class="docutils literal notranslate"><span class="pre">(hbar</span> <span class="pre">.</span> <span class="pre">n)</span></code> (una barra horizontal de <em>n</em> píxeles de alto), o <code class="docutils literal notranslate"><span class="pre">nil</span></code> (no hay cursor).</p>
<p>Por defecto, el cursor deja de parpadear después de 10 destellos, si Emacs no recibe ninguna entrada durante ese tiempo; cualquier evento de entrada reinicia la cuenta. Puede personalizar la variable <code class="docutils literal notranslate"><span class="pre">blink-cursor-blinks</span></code> para controlar eso: su valor dice cuántas veces parpadear sin entrada antes de parar. Establecer esa variable a cero o a un valor negativo hará que el cursor parpadee para siempre. Para desactivar completamente el parpadeo del cursor, cambie la variable <code class="docutils literal notranslate"><span class="pre">blink-cursor-mode</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code> (vea <a class="reference internal" href="50_Personlzc.html#id2"><span class="std std-ref">50.1 Interfaz de Personalización Fácil</span></a>), o añada la línea</p>
@ -733,14 +733,14 @@ cambiar esto, personalice la expresión regular <code class="docutils literal no
<p>Para que el cursor sea aún más visible, puede usar el modo Línea HL, un modo menor que resalta la línea que contiene el punto. Use <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">hl-line-mode</span></code> para activarlo o desactivarlo en el búfer actual. <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">global-hl-line-mode</span></code> activa o desactiva el mismo modo globalmente.</p>
</section>
<section id="truncado-de-linea">
<span id="id20"></span><h2>15.22 Truncado de Línea<a class="headerlink" href="#truncado-de-linea" title="Link to this heading"></a></h2>
<span id="id21"></span><h2>15.22 Truncado de Línea<a class="headerlink" href="#truncado-de-linea" title="Link to this heading"></a></h2>
<p>Como alternativa a la continuación (véase <a class="reference internal" href="08_ComBasicEdic.html#id7"><span class="std std-ref">8.8 Líneas de Continuación</span></a>), Emacs puede mostrar líneas largas mediante <em>truncamiento</em>. Esto significa que todos los caracteres que no caben en el ancho de la pantalla o ventana no aparecen en absoluto. En las pantallas gráficas, una pequeña flecha recta en la franja indica el truncamiento en cualquiera de los extremos de la línea. En los terminales de texto, esto se indica con signos <code class="docutils literal notranslate"><span class="pre">$</span></code> en las columnas del extremo derecho y/o izquierdo.</p>
<p>El desplazamiento horizontal provoca automáticamente el truncamiento de la línea (véase <a class="reference internal" href="#id4"><span class="std std-ref">15.4 Desplazamiento Horizontal</span></a>). Puede activar explícitamente el truncamiento de líneas para un búfer en particular con el comando <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">x</span> <span class="pre">t</span></code> (<code class="docutils literal notranslate"><span class="pre">toggle-truncate-lines</span></code>). Esto funciona cambiando localmente la variable <code class="docutils literal notranslate"><span class="pre">truncate-lines</span></code>. Si esta variable no es nula, las líneas largas se truncan; si es nula, continúan en varias líneas de la pantalla. Cualquier cambio en la variable <code class="docutils literal notranslate"><span class="pre">truncate-lines</span></code> (truncar-líneas) la hace local al búfer actual; hasta ese momento, el valor por defecto, que normalmente es <code class="docutils literal notranslate"><span class="pre">nil</span></code>, está en efecto.</p>
<p>Dado que el truncamiento y el ajuste de línea (descrito en la siguiente sección) son contradictorios, <code class="docutils literal notranslate"><span class="pre">toggle-truncate-lines</span></code> desactiva el ajuste de línea cuando activa el truncamiento de línea.</p>
<p>Si una ventana dividida se vuelve demasiado estrecha, Emacs puede activar automáticamente el truncamiento de línea. Ver <a class="reference internal" href="21_VariasVentanas.html#id3"><span class="std std-ref">21.3 Utilización de Otras Ventanas</span></a>, para la variable <code class="docutils literal notranslate"><span class="pre">truncate-partial-width-windows</span></code> que controla esto.</p>
</section>
<section id="modo-de-linea-visual">
<span id="id21"></span><h2>15.23 Modo de Línea Visual<a class="headerlink" href="#modo-de-linea-visual" title="Link to this heading"></a></h2>
<span id="id22"></span><h2>15.23 Modo de Línea Visual<a class="headerlink" href="#modo-de-linea-visual" title="Link to this heading"></a></h2>
<p>Otra alternativa a la continuación de línea ordinaria es usar el <em>ajuste de línea</em>. Aquí, cada línea lógica larga se divide en dos o más líneas de pantalla, como en la continuación de línea ordinaria. Sin embargo, Emacs intenta ajustar la línea en los límites de palabra cercanos al borde derecho de la ventana. (si la dirección de la línea es de derecha a izquierda, se envuelve en el borde izquierdo de la ventana). Esto hace que el texto sea más fácil de leer, ya que el ajuste no se produce en medio de las palabras.</p>
<p>El ajuste de palabras se activa mediante el modo Línea Visual (Visual Line), un modo secundario opcional. Para activar este modo en el búfer actual, escriba <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">visual-line-mode</span></code>; repitiendo este comando se desactiva. También puede activar el modo Visual Line mediante la barra de menús: en el menú <code class="docutils literal notranslate"><span class="pre">Options</span></code> (Opciones), seleccione el submenú <code class="docutils literal notranslate"><span class="pre">Line</span> <span class="pre">Wrapping</span> <span class="pre">in</span> <span class="pre">this</span> <span class="pre">Buffer</span></code> (Ajuste de línea en este búfer), seguido del elemento de menú <code class="docutils literal notranslate"><span class="pre">modo</span> <span class="pre">Visual</span> <span class="pre">Line</span></code> (Ajuste de línea). Mientras el modo Visual Line está activado, la línea de modo muestra la cadena <code class="docutils literal notranslate"><span class="pre">wrap</span></code> en la pantalla de modo. El comando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">global-visual-line-mode</span></code> activa el modo Visual Line en todos búferes.</p>
<p>Dado que el ajuste de línea y el truncamiento de línea (descritos en la sección anterior) son contradictorios, al activar el modo de línea visual (<code class="docutils literal notranslate"><span class="pre">visual-line-mode</span></code>) se desactiva el truncamiento de línea.</p>
@ -751,7 +751,7 @@ cambiar esto, personalice la expresión regular <code class="docutils literal no
<p>Romper sólo después de un carácter de espacio en blanco produce resultados incorrectos cuando se mezclan texto CJK y latino (porque los caracteres CJK no usan espacios en blanco para separar palabras). Puede personalizar la opción <code class="docutils literal notranslate"><span class="pre">word-wrap-by-category</span></code> para permitir que Emacs rompa las líneas después de cualquier carácter con categoría <code class="docutils literal notranslate"><span class="pre">|</span></code> (vea <strong>Categorías</strong> en el Manual de Referencia de Emacs Lisp), lo que proporciona un mejor soporte para los caracteres CJK. Además, si esta variable se establece usando Personalizar (Customize), Emacs carga automáticamente <code class="docutils literal notranslate"><span class="pre">kinsoku.el</span></code>. Cuando se carga <code class="docutils literal notranslate"><span class="pre">kinsoku.el</span></code>, 30Emacs respeta las reglas kinsoku al romper líneas. Eso significa que los caracteres con la categoría <code class="docutils literal notranslate"><span class="pre">&gt;</span></code> no aparecen al principio de una línea (por ejemplo, U+FF0C FULLWIDTH COMMA), y los caracteres con la categoría <code class="docutils literal notranslate"><span class="pre">&lt;</span></code> no aparecen al final de una línea (por ejemplo, U+300A LEFT DOUBLE ANGLE BRACKET). Puede ver el conjunto de categorías de un carácter usando los comandos <code class="docutils literal notranslate"><span class="pre">char-category-set</span></code> y <code class="docutils literal notranslate"><span class="pre">category-set-mnemonics</span></code>, o tecleando <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">=</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-x</span> <span class="pre">=</span></code>) con punto sobre el carácter y mirando la sección «categoría» en el informe. Puede añadir categorías a un carácter usando el comando <code class="docutils literal notranslate"><span class="pre">modify-category-entry</span></code>.</p>
</section>
<section id="personalizacion-de-la-pantalla">
<span id="id22"></span><h2>15.24 Personalización de la Pantalla<a class="headerlink" href="#personalizacion-de-la-pantalla" title="Link to this heading"></a></h2>
<span id="id23"></span><h2>15.24 Personalización de la Pantalla<a class="headerlink" href="#personalizacion-de-la-pantalla" title="Link to this heading"></a></h2>
<p>Esta sección describe variables que controlan varios aspectos de la apariencia de la pantalla de Emacs. Los Usuarios principiantes pueden saltársela.</p>
<p>Si quiere que Emacs muestre números de línea para cada línea en el búfer, personalice la variable de búfer local <code class="docutils literal notranslate"><span class="pre">display-line-numbers</span></code>; por defecto es <code class="docutils literal notranslate"><span class="pre">nil</span></code>. Esta variable puede tener varios valores diferentes para soportar varios modos de mostrar números de línea:</p>
<dl class="simple">
@ -760,7 +760,7 @@ cambiar esto, personalice la expresión regular <code class="docutils literal no
<dt><code class="docutils literal notranslate"><span class="pre">relative</span></code></dt><dd><p>Muestra los números de línea relativos antes de las líneas de no-continuación que muestran el texto del búfer. Los números de línea son relativos al punto de visualización de la
línea, por lo que los números crecen tanto hacia arriba como hacia abajo a medida que las líneas se alejan de la línea actual.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">visual</span></code></dt><dd><p>Este valor hace que Emacs cuente las líneas visualmente: sólo se contarán las líneas que se muestren realmente en la pantalla (sin tener en cuenta las líneas en partes invisibles del texto), y las líneas que se enrollan o envuelven para consumir más de una línea de pantalla se contarán ese número de veces. Los números mostrados son relativos, como en el valor <code class="docutils literal notranslate"><span class="pre">relative</span></code> anterior. Esto es útil en modos que pliegan el texto, como el modo Contorno (ver <a class="reference internal" href="26_ComandsLengsHuma.html#id12"><span class="std std-ref">26.9 Modo Esquema</span></a>), y cuando necesita moverse por el número exacto de líneas de pantalla.</p>
<dt><code class="docutils literal notranslate"><span class="pre">visual</span></code></dt><dd><p>Este valor hace que Emacs cuente las líneas visualmente: sólo se contarán las líneas que se muestren realmente en la pantalla (sin tener en cuenta las líneas en partes invisibles del texto), y las líneas que se enrollan o envuelven para consumir más de una línea de pantalla se contarán ese número de veces. Los números mostrados son relativos, como en el valor <code class="docutils literal notranslate"><span class="pre">relative</span></code> anterior. Esto es útil en modos que pliegan el texto, como el modo Contorno (ver <a class="reference internal" href="26_ComandsLengsHuma.html#id16"><span class="std std-ref">26.9 Modo Esquema (mode Outilne)</span></a>), y cuando necesita moverse por el número exacto de líneas de pantalla.</p>
</dd>
<dt><strong>cualquier otra cosa</strong></dt><dd><p>Cualquier otro valor no nulo se trata como <code class="docutils literal notranslate"><span class="pre">t</span></code>.</p>
</dd>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -166,7 +166,7 @@
<section id="busqueda-y-reemplazo">
<span id="id1"></span><h1>16 Búsqueda y Reemplazo<a class="headerlink" href="#busqueda-y-reemplazo" title="Link to this heading"></a></h1>
<p>Como otros editores, Emacs tiene comandos para buscar apariciones de una cadena. También tiene comandos para reemplazar ocurrencias de una cadena con una cadena diferente. Como así también hay comandos que hacen lo mismo, pero buscan patrones en lugar de cadenas fijas.</p>
<p>También puede buscar en varios archivos bajo el control de <code class="docutils literal notranslate"><span class="pre">xref</span></code> (vea <a class="reference internal" href="29_ManyProgrsGrands.html#id16"><span class="std std-ref">29.4.1.3. Buscar y Reemplazar con Identificadores</span></a>) o a través del comando Dired A (vea <a class="reference internal" href="31_DiredEditDirect.html#id10"><span class="std std-ref">31.7 Operar con Archivos</span></a>), o pedirle al programa grep que lo haga (vea <a class="reference internal" href="28_CompProbProg.html#id4"><span class="std std-ref">28.4 Buscar con Grep en Emacs</span></a>).</p>
<p>También puede buscar en varios archivos bajo el control de <code class="docutils literal notranslate"><span class="pre">xref</span></code> (vea <a class="reference internal" href="29_ManyProgrsGrands.html#id17"><span class="std std-ref">29.4.1.3. Buscar y Reemplazar con Identificadores</span></a>) o a través del comando Dired A (vea <a class="reference internal" href="31_DiredEditDirect.html#id10"><span class="std std-ref">31.7 Operar con Archivos</span></a>), o pedirle al programa grep que lo haga (vea <a class="reference internal" href="28_CompProbProg.html#id4"><span class="std std-ref">28.4 Buscar con Grep en Emacs</span></a>).</p>
<section id="busqueda-incremental">
<span id="id2"></span><h2>16.1 Búsqueda Incremental<a class="headerlink" href="#busqueda-incremental" title="Link to this heading"></a></h2>
<p>El comando principal de búsqueda de Emacs es <em>incremental:</em> empieza a buscar en cuanto escribe el primer carácter de la cadena de búsqueda. A medida que escribe la cadena de búsqueda, Emacs le muestra dónde se encontraría la cadena (tal y como la ha escrito hasta ahora). Cuando haya tecleado suficientes caracteres para identificar el lugar que desea, puede detenerse. Dependiendo de lo que planee hacer a continuación, puede que necesite o no terminar la búsqueda explícitamente con <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">RET</span></code>).</p>
@ -220,7 +220,7 @@
<p>Del mismo modo, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">z</kbd> (<code class="docutils literal notranslate"><span class="pre">C-M-z</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-yank-until-char</span></code>) añade a la cadena de búsqueda todo lo que va desde el punto hasta la siguiente aparición de un carácter especificado (sin incluir dicho carácter). Esto es especialmente útil para macros de teclado, por ejemplo en lenguajes de programación o de marcado en los que ese carácter marca un límite de token. Con un argumento numérico de prefijo <em>n</em>, el comando añade todo desde el punto hasta la enésima aparición del carácter especificado.</p>
<p>Dentro de la búsqueda incremental, <code class="docutils literal notranslate"><span class="pre">C-y</span></code> (<code class="docutils literal notranslate"><span class="pre">isearch-yank-kill</span></code>) añade la muerte actual a la cadena de búsqueda. <code class="docutils literal notranslate"><span class="pre">M-y</span></code> (<code class="docutils literal notranslate"><span class="pre">isearch-yank-pop</span></code>), si se invoca después de <code class="docutils literal notranslate"><span class="pre">C-y</span></code> durante la búsqueda incremental, sustituye el texto añadido por una eliminación anterior, de forma similar al comando <code class="docutils literal notranslate"><span class="pre">M-y</span></code> (<code class="docutils literal notranslate"><span class="pre">yank-pop</span></code>) habitual. Hacer clic con <code class="docutils literal notranslate"><span class="pre">ratón-2</span></code> en el área de eco añade la selección X actual (véase <a class="reference internal" href="13_MatarMoverTxt.html#id10"><span class="std std-ref">13.3.2 Cortar y Pegar con Otras Aplicaciones de Ventana</span></a>) a la cadena de búsqueda (<code class="docutils literal notranslate"><span class="pre">isearch-yank-x-selection</span></code>).</p>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">d</kbd> (<code class="docutils literal notranslate"><span class="pre">C-M-d</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-del-char</span></code>) borra el último carácter de la cadena de búsqueda, y <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">y</kbd> (<code class="docutils literal notranslate"><span class="pre">C-M-y</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-yank-char</span></code>) añade el carácter después del punto a la cadena de búsqueda. Un método alternativo para añadir el carácter después del punto es entrar en el minibuffer con <code class="docutils literal notranslate"><span class="pre">M-e</span></code> (véase <a class="reference internal" href="#id4"><span class="std std-ref">16.1.2 Repetición de la Búsqueda Incremental</span></a>) y teclear <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">f</kbd> (<code class="docutils literal notranslate"><span class="pre">C-f</span></code>) o <kbd class="kbd docutils literal notranslate"></kbd> (<code class="docutils literal notranslate"><span class="pre">RIGHT</span></code>, DERECHA) al final de la cadena de búsqueda en el minibuffer. Cada <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">f</kbd> o <kbd class="kbd docutils literal notranslate"></kbd> que escriba añade otro carácter después de punto a la cadena de búsqueda.</p>
<p>Normalmente, cuando la búsqueda no distingue entre mayúsculas y minúsculas, el texto que se introduce en la cadena de búsqueda se convierte a minúsculas, de modo que la búsqueda sigue sin distinguir entre mayúsculas y minúsculas (véase <a class="reference internal" href="26_ComandsLengsHuma.html#id11"><span class="std std-ref">26.7. Comandos de Conversión de Mayúsculas y Minúsculas</span></a>). Sin embargo, si el valor de la variable <code class="docutils literal notranslate"><span class="pre">search-upper-case</span></code> (véase <a class="reference internal" href="#id14"><span class="std std-ref">16.9. Coincidencia Laxa Durante la Búsqueda</span></a>) es distinto de <code class="docutils literal notranslate"><span class="pre">not-yanks</span></code>, se desactiva esta conversión a minúsculas.</p>
<p>Normalmente, cuando la búsqueda no distingue entre mayúsculas y minúsculas, el texto que se introduce en la cadena de búsqueda se convierte a minúsculas, de modo que la búsqueda sigue sin distinguir entre mayúsculas y minúsculas (véase <a class="reference internal" href="26_ComandsLengsHuma.html#id14"><span class="std std-ref">26.7. Comandos de Conversión de Mayúsculas y Minúsculas</span></a>). Sin embargo, si el valor de la variable <code class="docutils literal notranslate"><span class="pre">search-upper-case</span></code> (véase <a class="reference internal" href="#id14"><span class="std std-ref">16.9. Coincidencia Laxa Durante la Búsqueda</span></a>) es distinto de <code class="docutils literal notranslate"><span class="pre">not-yanks</span></code>, se desactiva esta conversión a minúsculas.</p>
<p>Para iniciar una nueva búsqueda incremental con el texto cerca del punto yanked en la cadena de búsqueda inicial, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">.</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">M-.</span></code>) que ejecuta el comando <code class="docutils literal notranslate"><span class="pre">isearch-forward-thing-at-point</span></code>. Si la región estaba activa, entonces introduce el texto de la región en la cadena de búsqueda. En caso contrario, intenta extraer una URL, un símbolo o una expresión que se encuentre cerca del punto. La opción de usuario <code class="docutils literal notranslate"><span class="pre">isearch-forward-thing-at-point</span></code> define lo que se va a extraer.</p>
</section>
<section id="errores-en-la-busqueda-incremental">
@ -233,9 +233,9 @@
<span id="id7"></span><h3>16.1.5 Entrada Especial para la Búsqueda Incremental<a class="headerlink" href="#entrada-especial-para-la-busqueda-incremental" title="Link to this heading"></a></h3>
<p>Además de los caracteres descritos en las subsecciones anteriores, algunos de los caracteres que se introducen durante la búsqueda incremental tienen efectos especiales. A continuación se describen.</p>
<p>Para activar la coincidencia de espacios laxos (véase <a class="reference internal" href="#id14"><span class="std std-ref">16.9. Coincidencia Laxa Durante la Búsqueda</span></a>), escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">SPACE</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">SPC</span></code>).</p>
<p>Para cambiar la distinción entre mayúsculas y minúsculas de la búsqueda, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">c</kbd> (<code class="docutils literal notranslate"><span class="pre">M-c</span></code>) o <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">c</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">c</span></code>). Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id11"><span class="std std-ref">26.7. Comandos de Conversión de Mayúsculas y Minúsculas</span></a>. Si la cadena de búsqueda incluye letras mayúsculas, la búsqueda distingue entre mayúsculas y minúsculas por defecto.</p>
<p>Para cambiar la distinción entre mayúsculas y minúsculas de la búsqueda, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">c</kbd> (<code class="docutils literal notranslate"><span class="pre">M-c</span></code>) o <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">c</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">c</span></code>). Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id14"><span class="std std-ref">26.7. Comandos de Conversión de Mayúsculas y Minúsculas</span></a>. Si la cadena de búsqueda incluye letras mayúsculas, la búsqueda distingue entre mayúsculas y minúsculas por defecto.</p>
<p>Para cambiar si la búsqueda considerará o no caracteres similares y equivalentes como coincidencia, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">'</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">'</span></code>). Véase <em>plegado de caracteres</em> en <a class="reference internal" href="#id14"><span class="std std-ref">16.9. Coincidencia Laxa Durante la Búsqueda</span></a>. Si la cadena de búsqueda incluye caracteres acentuados, se desactiva el plegado de caracteres durante esa búsqueda.</p>
<p>Para activar o desactivar la búsqueda de texto invisible, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">i</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">i</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-toggle-invisible</span></code>). Véase <em>Ocultar Mostrar esquemas</em> en <a class="reference internal" href="26_ComandsLengsHuma.html#id16"><span class="std std-ref">26.9.4 Comandos de Visibilidad del Modo Esquema</span></a>.</p>
<p>Para activar o desactivar la búsqueda de texto invisible, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">i</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">i</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-toggle-invisible</span></code>). Véase <em>Ocultar Mostrar esquemas</em> en <a class="reference internal" href="26_ComandsLengsHuma.html#id19"><span class="std std-ref">26.9.4 Comandos de Visibilidad del Modo Esquema</span></a>.</p>
<p>Para alternar entre la búsqueda incremental sin expresiones regulares y con expresiones regulares, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">r</kbd> (<code class="docutils literal notranslate"><span class="pre">M-r</span></code>) o <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">r</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">r</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-toggle-regexp</span></code>). Vease <a class="reference internal" href="#id12"><span class="std std-ref">16.5 Búsqueda por Expresiones Regulares</span></a>.</p>
<p>Para alternar entre el modo de símbolos, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">_</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">_</span></code>). Véase <a class="reference internal" href="#id11"><span class="std std-ref">16.4 Búsqueda por Símbolos</span></a>.</p>
<p>Para buscar un carácter de nueva línea, escriba <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">j</kbd> (<code class="docutils literal notranslate"><span class="pre">C-j</span></code>) como parte de la cadena de búsqueda.</p>
@ -267,7 +267,7 @@ carácter especificado a la cadena de búsqueda, de forma similar al comando hab
<p>Si se teclea <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">o</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">o</span></code>) en la búsqueda incremental, se invoca <code class="docutils literal notranslate"><span class="pre">isearch-occur</span></code>, que ejecuta occur con la cadena de búsqueda actual. Véase <a class="reference internal" href="#id19"><span class="std std-ref">16.11. Otros Comandos de Búsqueda y Bucle</span></a>.</p>
<p>Si se escribe <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">%</kbd> (<code class="docutils literal notranslate"><span class="pre">M-%</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-query-replace</span></code>) en la búsqueda incremental, se invoca <code class="docutils literal notranslate"><span class="pre">query-replace</span></code> o <code class="docutils literal notranslate"><span class="pre">query-replace-regexp</span></code> (dependiendo del modo de búsqueda) y se usa la cadena de búsqueda actual como cadena a reemplazar. Un argumento de prefijo negativo significa reemplazar hacia atrás. Véase <a class="reference internal" href="#id18"><span class="std std-ref">16.10.4 Sustitución de Consultas</span></a>. Si se escribe <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">%</kbd> (<code class="docutils literal notranslate"><span class="pre">C-M-%</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-query-replace-regexp</span></code>), se invoca <code class="docutils literal notranslate"><span class="pre">query-replace-regexp</span></code> con la cadena de búsqueda actual usada como expreg para reemplazar.</p>
<p>Al escribir <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">TAB</kbd> (<code class="docutils literal notranslate"><span class="pre">M-TAB</span></code>) en la búsqueda incremental se invoca <code class="docutils literal notranslate"><span class="pre">isearch-complete</span></code>, que intenta completar la cadena de búsqueda utilizando el anillo de búsqueda (las cadenas de búsqueda anteriores que utilizó) como una lista de alternativas de finalización. Véase <a class="reference internal" href="09_ElMinibufer.html#id4"><span class="std std-ref">9.4 Completado</span></a>. En muchos sistemas operativos, la secuencia de teclas <code class="docutils literal notranslate"><span class="pre">M-TAB</span></code> es capturada por el gestor de ventanas, por lo que deberá volver a enlazar <code class="docutils literal notranslate"><span class="pre">isearch-completar</span></code> a otra secuencia de teclas si desea utilizarla (consulte <a class="reference internal" href="50_Personlzc.html#id19"><span class="std std-ref">50.3.5. Cambiar las combinaciones de teclas interactivamente</span></a>).</p>
<p>Puede salir de la búsqueda dejando las coincidencias resaltadas escribiendo <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">h</kbd><kbd class="kbd docutils literal notranslate">r</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">h</span> <span class="pre">r</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-highlight-regexp</span></code>). Esto ejecuta <code class="docutils literal notranslate"><span class="pre">highlight-regexp</span></code> (véase <a class="reference internal" href="15_ControlDisplay.html#id13"><span class="std std-ref">15.14 Resaltado Interactivo</span></a>), pasándole la regexp (expresión regular) derivada de la cadena de búsqueda y pidiéndole la cara a utilizar para resaltar. Para resaltar líneas enteras que contengan coincidencias (en lugar de sólo las coincidencias), escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">h</kbd><kbd class="kbd docutils literal notranslate">l</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">h</span> <span class="pre">l</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-highlight-lines-matching-regexp</span></code>). En ambos casos, para eliminar el resaltado, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">h</kbd><kbd class="kbd docutils literal notranslate">u</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">h</span> <span class="pre">u</span></code>, <code class="docutils literal notranslate"><span class="pre">unhighlight-regexp</span></code>).</p>
<p>Puede salir de la búsqueda dejando las coincidencias resaltadas escribiendo <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">h</kbd><kbd class="kbd docutils literal notranslate">r</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">h</span> <span class="pre">r</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-highlight-regexp</span></code>). Esto ejecuta <code class="docutils literal notranslate"><span class="pre">highlight-regexp</span></code> (véase <a class="reference internal" href="15_ControlDisplay.html#id14"><span class="std std-ref">15.14 Resaltado Interactivo</span></a>), pasándole la regexp (expresión regular) derivada de la cadena de búsqueda y pidiéndole la cara a utilizar para resaltar. Para resaltar líneas enteras que contengan coincidencias (en lugar de sólo las coincidencias), escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">h</kbd><kbd class="kbd docutils literal notranslate">l</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">h</span> <span class="pre">l</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-highlight-lines-matching-regexp</span></code>). En ambos casos, para eliminar el resaltado, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">h</kbd><kbd class="kbd docutils literal notranslate">u</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">h</span> <span class="pre">u</span></code>, <code class="docutils literal notranslate"><span class="pre">unhighlight-regexp</span></code>).</p>
<p>Cuando la búsqueda incremental está activa, puede escribir <kbd class="kbd docutils literal notranslate">Ctrl</kbd><kbd class="kbd docutils literal notranslate">h</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd><kbd class="kbd docutils literal notranslate">h</kbd> (<code class="docutils literal notranslate"><span class="pre">C-h</span> <span class="pre">C-h</span></code>, <code class="docutils literal notranslate"><span class="pre">isearch-help-map</span></code>) para acceder a las opciones de ayuda interactiva, incluida una lista de combinaciones de teclas especiales. Estas combinaciones de teclas forman parte del mapa de teclas <code class="docutils literal notranslate"><span class="pre">isearch-mode-map</span></code> (véase <a class="reference internal" href="50_Personlzc.html#id18"><span class="std std-ref">50.3.1 Mapas de teclas</span></a>).</p>
<p>Cuando la búsqueda incremental está activada, al teclear <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">&gt;</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">M-&gt;</span></code>) se irá a la última aparición de la cadena de búsqueda, y <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">s</kbd> <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">&lt;</kbd> (<code class="docutils literal notranslate"><span class="pre">M-s</span> <span class="pre">M-&lt;</span></code>) se irá a la primera aparición. Con un argumento numérico de prefijo <em>n</em>, estos comandos irán a la enésima aparición de la cadena de búsqueda contando desde el principio o el final del búfer, respectivamente.</p>
</section>
@ -773,7 +773,7 @@ y continúa con el siguiente búfer de la secuencia.</p>
</div></blockquote>
<p>Aparte de esto, cualquier otro carácter sale de la consulta-reemplazo (<code class="docutils literal notranslate"><span class="pre">query-replace</span></code>) y se vuelve a leer como parte de una secuencia de teclas. De este modo, si escribe <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">k</kbd> (<code class="docutils literal notranslate"><span class="pre">C-k</span></code>), sale de la consulta-reemplazo y pasa al final de la línea. En particular, <code class="docutils literal notranslate"><span class="pre">C-g</span></code> simplemente sale de la consulta-reemplazo.</p>
<p>Para reiniciar una consulta-reemplazo una vez que se ha salido, utilice <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">ESC</kbd><kbd class="kbd docutils literal notranslate">ESC</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">ESC</span> <span class="pre">ESC</span></code>), que repite la consulta-reemplazo porque ha utilizado el minibúfer para leer sus argumentos. Véase <a class="reference internal" href="09_ElMinibufer.html#id10"><span class="std std-ref">9.6 Repetición de Comandos del Minibúfer</span></a>.</p>
<p>La opción <code class="docutils literal notranslate"><span class="pre">search-invisible</span></code> (búsqueda-invisible) determina cómo <code class="docutils literal notranslate"><span class="pre">query-replace</span></code> trata el texto invisible. Véase <em>Búsqueda de Contornos</em> en <a class="reference internal" href="26_ComandsLengsHuma.html#id16"><span class="std std-ref">26.9.4 Comandos de Visibilidad del Modo Esquema</span></a>.</p>
<p>La opción <code class="docutils literal notranslate"><span class="pre">search-invisible</span></code> (búsqueda-invisible) determina cómo <code class="docutils literal notranslate"><span class="pre">query-replace</span></code> trata el texto invisible. Véase <em>Búsqueda de Contornos</em> en <a class="reference internal" href="26_ComandsLengsHuma.html#id19"><span class="std std-ref">26.9.4 Comandos de Visibilidad del Modo Esquema</span></a>.</p>
<p>Véase <a class="reference internal" href="31_DiredEditDirect.html#id10"><span class="std std-ref">31.7 Operar con Archivos</span></a>, para el comando <code class="docutils literal notranslate"><span class="pre">Q</span></code> de Dired que realiza el reemplazo por consulta en los archivos seleccionados. Véase también <a class="reference internal" href="31_DiredEditDirect.html#id11"><span class="std std-ref">31.10 Transformación de Nombres de Archivos en Dired</span></a>, para los comandos de Dired para renombrar, copiar o enlazar archivos reemplazando las coincidencias expreg en los nombres de archivos.</p>
</section>
</section>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -173,7 +173,7 @@
</aside>
</section>
<section id="transponer-texto">
<h2>17.2 Transponer Texto<a class="headerlink" href="#transponer-texto" title="Link to this heading"></a></h2>
<span id="id5"></span><h2>17.2 Transponer Texto<a class="headerlink" href="#transponer-texto" title="Link to this heading"></a></h2>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">t</kbd> (<code class="docutils literal notranslate"><span class="pre">C-t</span></code>)</p>
<blockquote>
<div><p>Transpone dos caracteres (<code class="docutils literal notranslate"><span class="pre">transpose-chars</span></code>).</p>
@ -204,7 +204,7 @@
</div></blockquote>
<p>El error común de transponer dos caracteres puede solucionarse, cuando son adyacentes, con el comando <code class="docutils literal notranslate"><span class="pre">C-t</span></code> (<code class="docutils literal notranslate"><span class="pre">transpose-chars</span></code>). Normalmente, <code class="docutils literal notranslate"><span class="pre">C-t</span></code> transpone los dos caracteres a ambos lados del punto. Cuando se da al final de una línea, en lugar de transponer el último carácter de la línea con la nueva línea, lo que sería inútil, <code class="docutils literal notranslate"><span class="pre">C-t</span></code> transpone los dos últimos caracteres de la línea. Por lo tanto, si detecta el error de transposición enseguida, puede solucionarlo con <code class="docutils literal notranslate"><span class="pre">C-t</span></code>. Si no lo detecta tan rápido, debe volver a colocar el cursor entre los dos caracteres transpuestos antes de teclear <code class="docutils literal notranslate"><span class="pre">C-t</span></code>. Si ha transpuesto un espacio con el último carácter de la palabra delante, los comandos de movimiento de palabra (<code class="docutils literal notranslate"><span class="pre">M-f</span></code>, <code class="docutils literal notranslate"><span class="pre">M-b</span></code>, etc.) son una buena forma de llegar hasta allí. De lo contrario, una búsqueda inversa (<code class="docutils literal notranslate"><span class="pre">C-r</span></code>) suele ser la mejor manera. Véase <a class="reference internal" href="16_BusqReemp.html#id1"><span class="std std-ref">16 Búsqueda y Reemplazo</span></a>.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-t</span></code> transpone la palabra antes del punto con la palabra después del punto (<code class="docutils literal notranslate"><span class="pre">transpose-words</span></code>). Desplaza el punto hacia delante sobre una palabra, arrastrando también hacia delante la palabra que precede o contiene al punto. Los caracteres de puntuación entre las palabras no se mueven. Por ejemplo, <code class="docutils literal notranslate"><span class="pre">FOO,</span> <span class="pre">BAR</span></code> se transpone a <code class="docutils literal notranslate"><span class="pre">BAR,</span> <span class="pre">FOO</span></code> en lugar de <code class="docutils literal notranslate"><span class="pre">BAR</span> <span class="pre">FOO,</span></code>. Si el punto se encuentra al final de la línea, la palabra anterior al punto se transpondrá con la primera palabra de la línea siguiente.</p>
<p><code class="docutils literal notranslate"><span class="pre">C-M-t</span></code> (<code class="docutils literal notranslate"><span class="pre">transpose-sexps</span></code>) es un comando similar para transponer dos expresiones (véase <a class="reference internal" href="27_EdDePrograms.html#id6"><span class="std std-ref">27.4.1 Expresiones con Paréntesis Equilibrados</span></a>), y <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-t</span></code> (<code class="docutils literal notranslate"><span class="pre">transpose-lines</span></code>) intercambia líneas. <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">transpose-sentences</span></code> y <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">transpose-paragraphs</span></code> transponen frases y párrafos, respectivamente. Estos comandos funcionan como <code class="docutils literal notranslate"><span class="pre">M-t</span></code> excepto en lo que respecta a las unidades de texto que transponen.</p>
<p><code class="docutils literal notranslate"><span class="pre">C-M-t</span></code> (<code class="docutils literal notranslate"><span class="pre">transpose-sexps</span></code>) es un comando similar para transponer dos expresiones (véase <a class="reference internal" href="27_EdDePrograms.html#id8"><span class="std std-ref">27.4.1 Expresiones con Paréntesis Equilibrados</span></a>), y <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-t</span></code> (<code class="docutils literal notranslate"><span class="pre">transpose-lines</span></code>) intercambia líneas. <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">transpose-sentences</span></code> y <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">transpose-paragraphs</span></code> transponen frases y párrafos, respectivamente. Estos comandos funcionan como <code class="docutils literal notranslate"><span class="pre">M-t</span></code> excepto en lo que respecta a las unidades de texto que transponen.</p>
<p>Un argumento numérico para un comando de transposición sirve como recuento de repeticiones: indica al comando de transposición que mueva el carácter (o palabra o expresión o línea) anterior o que contenga el punto a través de varios otros caracteres (o palabras o expresiones o líneas). Por ejemplo, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">3</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">t</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">3</span> <span class="pre">C-t</span></code>) desplaza el carácter anterior al punto hacia adelante a través de otros tres caracteres. Cambiaría <code class="docutils literal notranslate"><span class="pre">foobar</span></code> por <code class="docutils literal notranslate"><span class="pre">oobfar</span></code>. Esto equivale a repetir <code class="docutils literal notranslate"><span class="pre">C-t</span></code> tres veces. <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">-</kbd> <kbd class="kbd docutils literal notranslate">4</kbd> <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">t</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">-</span> <span class="pre">4</span> <span class="pre">M-t</span></code>) mueve la palabra anterior al punto anterior a través de cuatro palabras. <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">u</kbd> <kbd class="kbd docutils literal notranslate">-</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">t</kbd> (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">-</span> <span class="pre">C-M-t</span></code>) anularía el efecto de <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">t</kbd> (<code class="docutils literal notranslate"><span class="pre">C-M-t</span></code>) simple.</p>
<p>A un argumento numérico de cero se le asigna un significado especial (porque de otro modo un comando con un recuento de repeticiones de cero no haría nada): transponer el carácter (o palabra o expresión o línea) que termina después del punto con el que termina después de la marca.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">transpose-regions</span></code> transpone el texto entre el punto y la marca con el texto entre las dos últimas marcas empujado al anillo de la marca (véase <a class="reference internal" href="12_LaMarca-y-LaRegion.html#id2"><span class="std std-ref">12.1 Fijar la Marca</span></a>). Con un argumento de prefijo numérico, transpone el texto entre punto y marca con el texto entre dos marcas sucesivas que muchas entradas atrás en el anillo de marca. Este comando se usa mejor para transponer varios caracteres (o palabras o frases o párrafos) de una sola vez.</p>
@ -223,10 +223,10 @@
<blockquote>
<div><p>Convierte la última palabra a minúscula con inicial mayúscula.</p>
</div></blockquote>
<p>Un error muy común es escribir palabras en mayúsculas o minúsculas equivocadas. Por eso, los comandos de conversión de palabras <code class="docutils literal notranslate"><span class="pre">M-l</span></code>, <code class="docutils literal notranslate"><span class="pre">M-u</span></code> y <code class="docutils literal notranslate"><span class="pre">M-c</span></code> tienen una característica especial cuando se usan con un argumento negativo: no mueven el cursor. En cuanto vea que ha escrito mal la última palabra, puede simplemente convertirla a mayúsculas y seguir escribiendo. Consulte <a class="reference internal" href="26_ComandsLengsHuma.html#id11"><span class="std std-ref">26.7. Comandos de Conversión de Mayúsculas y Minúsculas</span></a>.</p>
<p>Un error muy común es escribir palabras en mayúsculas o minúsculas equivocadas. Por eso, los comandos de conversión de palabras <code class="docutils literal notranslate"><span class="pre">M-l</span></code>, <code class="docutils literal notranslate"><span class="pre">M-u</span></code> y <code class="docutils literal notranslate"><span class="pre">M-c</span></code> tienen una característica especial cuando se usan con un argumento negativo: no mueven el cursor. En cuanto vea que ha escrito mal la última palabra, puede simplemente convertirla a mayúsculas y seguir escribiendo. Consulte <a class="reference internal" href="26_ComandsLengsHuma.html#id14"><span class="std std-ref">26.7. Comandos de Conversión de Mayúsculas y Minúsculas</span></a>.</p>
</section>
<section id="comprobar-y-corregir-la-ortografia">
<span id="id5"></span><h2>17.4 Comprobar y Corregir la Ortografía<a class="headerlink" href="#comprobar-y-corregir-la-ortografia" title="Link to this heading"></a></h2>
<span id="id6"></span><h2>17.4 Comprobar y Corregir la Ortografía<a class="headerlink" href="#comprobar-y-corregir-la-ortografia" title="Link to this heading"></a></h2>
<p>En esta sección se describen los comandos para comprobar la ortografía de una sola palabra o de una parte de un búfer. Estas órdenes sólo funcionan si está instalado un programa corrector ortográfico, uno de Hunspell, Aspell, Ispell o Enchant. Estos programas no forman parte de Emacs, pero uno de ellos suele estar instalado en GNU/Linux y otros sistemas operativos libres. Véase <strong>Aspell</strong> en El manual de Aspell.</p>
<p>Si sólo tiene instalado uno de los programas correctores ortográficos, Emacs lo encontrará cuando invoque por primera vez uno de los comandos descritos aquí. Si tiene más de uno instalado, puede controlar cuál se usa personalizando la variable <code class="docutils literal notranslate"><span class="pre">ispell-program-name</span></code>.</p>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">$</kbd> (<code class="docutils literal notranslate"><span class="pre">M-$</span></code>)</p>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -227,7 +227,7 @@
</div></blockquote>
<p><em>Visitar</em> un archivo significa leer su contenido en un buffer de Emacs para poder editarlo. Emacs crea un nuevo buffer para cada archivo que visita.</p>
<p>Para visitar un archivo, teclee <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">f</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-f</span></code>, <code class="docutils literal notranslate"><span class="pre">find-file</span></code>, buscar-archivo) y use el minibuffer para introducir el nombre del archivo requerido. Mientras esté en el minibúfer, puede abortar el comando tecleando <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">g</kbd> (<code class="docutils literal notranslate"><span class="pre">C-g</span></code>). Consulte <a class="reference internal" href="#id2"><span class="std std-ref">19.1 Nombres de Archivos</span></a> , para más detalles sobre la introducción de nombres de archivos en los minibúferes.</p>
<p>Si el archivo especificado existe pero el sistema no le permite leerlo, se muestra un mensaje de error en el área de eco (en sistemas GNU y Unix podría ser capaz de visitar tal archivo usando los métodos <code class="docutils literal notranslate"><span class="pre">su</span></code> o <code class="docutils literal notranslate"><span class="pre">sudo</span></code>; vea <a class="reference internal" href="#id13"><span class="std std-ref">19.5 Reversión Automática: Mantener los Búferes Actualizados Automáticamente</span></a>). De otro modo, puede saber que <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-f</span></code> se ha completado con éxito por la aparición de nuevo texto en la pantalla, y por el nombre del buffer mostrado en la línea de modo (vea <a class="reference internal" href="../01_OrgPant.html#id6"><span class="std std-ref">1.3 La Línea de Modo</span></a>). Emacs normalmente construye el nombre del buffer a partir del nombre del archivo, omitiendo el nombre del directorio. Por ejemplo, un archivo llamado <code class="docutils literal notranslate"><span class="pre">/usr/rms/emacs.tex</span></code> es visitado en un búfer llamado <code class="docutils literal notranslate"><span class="pre">emacs.tex</span></code>. Si ya existe un búfer con ese nombre, Emacs construye un nombre único; el método normal es añadir un sufijo basado en el nombre del directorio (e.g., <code class="docutils literal notranslate"><span class="pre">&lt;rms&gt;</span></code>, <code class="docutils literal notranslate"><span class="pre">&lt;tmp&gt;</span></code>, y así sucesivamente), pero puede elegir otros métodos. Consulte <a class="reference internal" href="20_UsarVariosBuferes.html#id8"><span class="std std-ref">20.7.1 Hacer que los Nombres de los Búferes sean Únicos</span></a>.</p>
<p>Si el archivo especificado existe pero el sistema no le permite leerlo, se muestra un mensaje de error en el área de eco (en sistemas GNU y Unix podría ser capaz de visitar tal archivo usando los métodos <code class="docutils literal notranslate"><span class="pre">su</span></code> o <code class="docutils literal notranslate"><span class="pre">sudo</span></code>; vea <a class="reference internal" href="#id13"><span class="std std-ref">19.5 Reversión Automática: Mantener los Búferes Actualizados Automáticamente</span></a>). De otro modo, puede saber que <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-f</span></code> se ha completado con éxito por la aparición de nuevo texto en la pantalla, y por el nombre del buffer mostrado en la línea de modo (vea <a class="reference internal" href="../01_OrgPant.html#id6"><span class="std std-ref">1.3 La Línea de Modo</span></a>). Emacs normalmente construye el nombre del buffer a partir del nombre del archivo, omitiendo el nombre del directorio. Por ejemplo, un archivo llamado <code class="docutils literal notranslate"><span class="pre">/usr/rms/emacs.tex</span></code> es visitado en un búfer llamado <code class="docutils literal notranslate"><span class="pre">emacs.tex</span></code>. Si ya existe un búfer con ese nombre, Emacs construye un nombre único; el método normal es añadir un sufijo basado en el nombre del directorio (e.g., <code class="docutils literal notranslate"><span class="pre">&lt;rms&gt;</span></code>, <code class="docutils literal notranslate"><span class="pre">&lt;tmp&gt;</span></code>, y así sucesivamente), pero puede elegir otros métodos. Consulte <a class="reference internal" href="20_UsarVariosBuferes.html#id9"><span class="std std-ref">20.7.1 Hacer que los Nombres de los Búferes sean Únicos</span></a>.</p>
<p>Para crear un nuevo archivo, simplemente visítelo usando el mismo comando, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">f</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-f</span></code>). Emacs muestra <code class="docutils literal notranslate"><span class="pre">(New</span> <span class="pre">file)</span></code> (Archivo nuevo) en el área de eco, pero en otros aspectos se comporta como si hubiera visitado un archivo vacío existente.</p>
<p>Después de visitar un archivo, los cambios que haga con los comandos de edición se hacen en el búfer de Emacs. No tienen efecto en el archivo visitado, hasta que guarde el búfer (vea <a class="reference internal" href="#id4"><span class="std std-ref">19.3 Guardar Archivos</span></a>). Si un búfer contiene cambios que no han sido guardados, decimos que el búfer está <em>modificado</em>. Esto implica que algunos cambios se perderán si no se guarda el búfer. La línea de modo muestra dos asteriscos cerca del margen izquierdo para indicar que el búfer está modificado.</p>
<p>Si visita un archivo que ya está en Emacs, <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-f</span></code> cambia al búfer existente en lugar de hacer otra copia. Antes de hacerlo, comprueba si el archivo ha cambiado desde la última vez que lo visitó o lo guardó. Si el fichero ha cambiado, Emacs ofrece releerlo.</p>
@ -253,7 +253,7 @@
<span class="s1">&#39;((&quot;</span><span class="se">\\</span><span class="s1">([^/]+</span><span class="se">\\</span><span class="s1">)</span><span class="se">\\</span><span class="s1">.c</span><span class="se">\\</span><span class="s1">&#39;</span><span class="s2">&quot; &quot;</span>\\<span class="mf">1.</span><span class="n">h</span><span class="s2">&quot;)))</span>
</pre></div>
</div>
<p>(<code class="docutils literal notranslate"><span class="pre">ff-find-related-file</span></code> ofrece una funcionalidad similar especialmente orientada a archivos C, vea <a class="reference internal" href="27_EdDePrograms.html#id21"><span class="std std-ref">27.12.4 Otros comandos para el Modo C</span></a>).</p>
<p>(<code class="docutils literal notranslate"><span class="pre">ff-find-related-file</span></code> ofrece una funcionalidad similar especialmente orientada a archivos C, vea <a class="reference internal" href="27_EdDePrograms.html#id23"><span class="std std-ref">27.12.4 Otros comandos para el Modo C</span></a>).</p>
<p>O, si quiere considerar todos los ficheros bajo <code class="docutils literal notranslate"><span class="pre">&quot;src/emacs/DIR/nombre-archivo&quot;</span></code> como hermanos de otros <em>directorios</em>, se podría escribir:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">(</span><span class="n">setq</span> <span class="n">find</span><span class="o">-</span><span class="n">sibling</span><span class="o">-</span><span class="n">rules</span>
<span class="s1">&#39;((&quot;src/emacs/[^/]+/</span><span class="se">\\</span><span class="s1">(.*</span><span class="se">\\</span><span class="s1">)</span><span class="se">\\</span><span class="s1">&#39;</span><span class="s2">&quot; &quot;</span><span class="n">src</span><span class="o">/</span><span class="n">emacs</span><span class="o">/.*/</span>\\<span class="mi">1</span><span class="s2">&quot;)))</span>
@ -647,7 +647,7 @@ modificado usando <code class="docutils literal notranslate"><span class="pre">M
<p>Si el punto en las dos ventanas está seguido por texto no coincidente cuando se inicia el comando, <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">compare-windows</span></code> intenta heurísticamente avanzar hasta el texto coincidente en las dos ventanas, y luego sale. Por lo tanto, si utiliza <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">compar-windows</span></code> repetidamente (véase <a class="reference internal" href="08_ComBasicEdic.html#id10"><span class="std std-ref">8.11 Repetición de una orden</span></a>), cada vez se salta un rango coincidente o encuentra el inicio de otro.</p>
<p>Con un argumento numérico, <code class="docutils literal notranslate"><span class="pre">compare-windows</span></code> ignora los cambios en los espacios en blanco. Si la variable <code class="docutils literal notranslate"><span class="pre">compare-ignore-case</span></code> es distinta de <code class="docutils literal notranslate"><span class="pre">nil</span></code>, la comparación también ignora las diferencias entre mayúsculas y minúsculas. Si la variable <code class="docutils literal notranslate"><span class="pre">compare-ignore-whitespace</span></code> no es nula, <code class="docutils literal notranslate"><span class="pre">compare-windows</span></code> ignora por defecto los cambios en los espacios en blanco, pero un argumento prefijo lo desactiva para esa única invocación del comando.</p>
<p>Puede usar <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">smerge-mode</span></code> para activar el modo Smerge, un modo menor para editar la salida del programa <code class="docutils literal notranslate"><span class="pre">diff3</span></code>. Esto es típicamente el resultado de una fusión fallida de una actualización del sistema de control de versiones fuera de VC, debido a cambios conflictivos en un archivo. El modo Smerge proporciona comandos para resolver conflictos seleccionando cambios específicos.</p>
<p>Vea <a class="reference internal" href="29_ManyProgrsGrands.html#id26"><span class="std std-ref">29.6 Fusión de Archivos con Emerge</span></a>, para la herramienta Emerge, que proporciona una potente interfaz para fusionar archivos.</p>
<p>Vea <a class="reference internal" href="29_ManyProgrsGrands.html#id27"><span class="std std-ref">29.6 Fusión de Archivos con Emerge</span></a>, para la herramienta Emerge, que proporciona una potente interfaz para fusionar archivos.</p>
</section>
<section id="modo-diff">
<span id="id21"></span><h2>19.10 Modo Diff<a class="headerlink" href="#modo-diff" title="Link to this heading"></a></h2>
@ -741,11 +741,11 @@ está activa, solo convierte los fragmentos dentro de la región.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">4</kbd> <kbd class="kbd docutils literal notranslate">A</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">4</span> <span class="pre">A</span></code>)</p>
<blockquote>
<div><p>Genera una entrada ChangeLog, como hace <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">4</span> <span class="pre">a</span></code> (ver <a class="reference internal" href="29_ManyProgrsGrands.html#id9"><span class="std std-ref">29.3 Registro de Cambios</span></a>), para cada uno de los bloques (<code class="docutils literal notranslate"><span class="pre">diff-add-change-log-entries-other-window</span></code>). Esto crea un
<div><p>Genera una entrada ChangeLog, como hace <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">4</span> <span class="pre">a</span></code> (ver <a class="reference internal" href="29_ManyProgrsGrands.html#id10"><span class="std std-ref">29.3 Registro de Cambios</span></a>), para cada uno de los bloques (<code class="docutils literal notranslate"><span class="pre">diff-add-change-log-entries-other-window</span></code>). Esto crea un
esqueleto del registro de cambios que puede rellenar más tarde con las descripciones reales de los cambios. El propio <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">4</span> <span class="pre">a</span></code> en modo Diff opera en nombre del archivo del bloque
actual, pero obtiene el nombre de la función del propio parche. Esto es útil para hacer entradas de registro para las funciones que son eliminadas por el parche.</p>
</div></blockquote>
<p>Los parches a veces incluyen espacios en blanco al final de las líneas modificadas, como un cambio involuntario y no deseado. Hay dos formas de solucionar este problema. En primer lugar, si activa el modo de espacios en blanco en un búfer de Diff (vea <a class="reference internal" href="15_ControlDisplay.html#id16"><span class="std std-ref">15.17 Espacios en Blanco Innecesarios</span></a>), automáticamente resaltará los espacios en blanco al final de las líneas modificadas. En segundo lugar, puede usar el comando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">diff-delete-trailing-whitespace</span></code>, que busca los espacios en blanco en las líneas modificadas por el parche, y los elimina tanto en el parche como en los archivos fuente parcheados. Este comando no guarda las modificaciones que realiza, por lo que puede decidir si desea guardar los cambios (la lista de archivos modificados se muestra en el área de eco). Con un argumento prefijo, intenta modificar los archivos fuente originales («antiguos») en lugar de los archivos fuente parcheados («nuevos»).</p>
<p>Los parches a veces incluyen espacios en blanco al final de las líneas modificadas, como un cambio involuntario y no deseado. Hay dos formas de solucionar este problema. En primer lugar, si activa el modo de espacios en blanco en un búfer de Diff (vea <a class="reference internal" href="15_ControlDisplay.html#id17"><span class="std std-ref">15.17 Espacios en Blanco Innecesarios</span></a>), automáticamente resaltará los espacios en blanco al final de las líneas modificadas. En segundo lugar, puede usar el comando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">diff-delete-trailing-whitespace</span></code>, que busca los espacios en blanco en las líneas modificadas por el parche, y los elimina tanto en el parche como en los archivos fuente parcheados. Este comando no guarda las modificaciones que realiza, por lo que puede decidir si desea guardar los cambios (la lista de archivos modificados se muestra en el área de eco). Con un argumento prefijo, intenta modificar los archivos fuente originales («antiguos») en lugar de los archivos fuente parcheados («nuevos»).</p>
<p>Si <code class="docutils literal notranslate"><span class="pre">diff-font-lock-syntax</span></code> es distinto de <code class="docutils literal notranslate"><span class="pre">nil</span></code>, los fragmentos del código fuente en los «hunks» se resaltan según el modo principal apropiado.</p>
</section>
<section id="copiar-nombrar-y-renombrar-archivos">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -327,7 +327,7 @@ produce cuando se teclea <kbd class="kbd docutils literal notranslate">x</kbd> (
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">t</kbd> (<code class="docutils literal notranslate"><span class="pre">t</span></code>)</p>
<blockquote>
<div><p>Visita el búfer como tabla de etiquetas (<code class="docutils literal notranslate"><span class="pre">Buffer-menu-visit-tags-table</span></code>). Véase <a class="reference internal" href="29_ManyProgrsGrands.html#id25"><span class="std std-ref">29.4.3. Seleccionar una Tabla de Etiquetas</span></a>.</p>
<div><p>Visita el búfer como tabla de etiquetas (<code class="docutils literal notranslate"><span class="pre">Buffer-menu-visit-tags-table</span></code>). Véase <a class="reference internal" href="29_ManyProgrsGrands.html#id26"><span class="std std-ref">29.4.3. Seleccionar una Tabla de Etiquetas</span></a>.</p>
</div></blockquote>
<p>Los siguientes comandos se emplean para seleccionar otro búfer o búferes:</p>
<p><kbd class="kbd docutils literal notranslate">q</kbd> (<code class="docutils literal notranslate"><span class="pre">q</span></code>)</p>
@ -392,7 +392,7 @@ equivale a <code class="docutils literal notranslate"><span class="pre">1</span>
<p>Normalmente, el búfer <code class="docutils literal notranslate"><span class="pre">*Buffer</span> <span class="pre">List*</span></code> no se actualiza automáticamente cuando se crean y eliminan búferes; su contenido es sólo texto. Si ha creado, borrado o renombrado búferes, la forma de actualizar <code class="docutils literal notranslate"><span class="pre">*Buffer</span> <span class="pre">List*</span></code> para mostrar lo que ha hecho es teclear <code class="docutils literal notranslate"><span class="pre">g</span></code> (<code class="docutils literal notranslate"><span class="pre">revert-buffer</span></code>). Puede hacer que esto ocurra regularmente cada <code class="docutils literal notranslate"><span class="pre">auto-revert-interval</span></code> de segundos si activa el modo Auto Revert en este búfer, siempre y cuando no esté marcado como modificado. El modo de reversión automática global se aplica al búfer <code class="docutils literal notranslate"><span class="pre">*Buffer</span> <span class="pre">List*</span></code> sólo si <code class="docutils literal notranslate"><span class="pre">global-auto-revert-non-file-bufferspp</span> <span class="pre">es</span> <span class="pre">distinto</span> <span class="pre">de</span> <span class="pre">``nil</span></code>. Véase <a class="reference internal" href="19_ManejoArchivos.html#id15"><span class="std std-ref">19.5.1.1 Reversión Automática del Menú de Búferes</span></a>, para más detalles.</p>
</section>
<section id="buferes-indirectos">
<h2>20.6 Búferes Indirectos<a class="headerlink" href="#buferes-indirectos" title="Link to this heading"></a></h2>
<span id="id7"></span><h2>20.6 Búferes Indirectos<a class="headerlink" href="#buferes-indirectos" title="Link to this heading"></a></h2>
<p>Un <em>búfer indirecto</em> comparte el texto de algún otro búfer, que se denomina <em>búfer base</em> del búfer indirecto. En cierto modo, es un búfer análogo a un enlace simbólico entre archivos.</p>
<div class="line-block">
<div class="line"><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">make-indirect-buffer</span></code> <kbd class="kbd docutils literal notranslate">RETURN</kbd> <em>búfer-base</em> <kbd class="kbd docutils literal notranslate">RETURN</kbd> <em>nombre-indirecto</em> <kbd class="kbd docutils literal notranslate">RETURN</kbd></div>
@ -411,7 +411,7 @@ equivale a <code class="docutils literal notranslate"><span class="pre">1</span>
</div></blockquote>
<p>El texto del búfer indirecto es siempre idéntico al texto de su búfer base; los cambios realizados al editar cualquiera de ellos son visibles inmediatamente en el otro. En este caso, «texto» incluye tanto los caracteres como sus propiedades de texto. Por lo demás, el búfer indirecto y su búfer base son completamente independientes. Pueden tener nombres diferentes, valores de punto diferentes, estrechamientos diferentes, marcadores diferentes, superposiciones diferentes, modos principales diferentes y variables locales diferentes.</p>
<p>Un búfer indirecto no puede visitar un archivo, pero su búfer base sí. Si intenta guardar el búfer indirecto, en realidad lo que hace es guardar el búfer base. Matar el búfer base efectivamente mata al búfer indirecto, pero matar un búfer indirecto no tiene efecto sobre su búfer base.</p>
<p>Una forma de utilizar los búferes indirectos es mostrar múltiples vistas de un contorno. Consulte <a class="reference internal" href="26_ComandsLengsHuma.html#id17"><span class="std std-ref">26.9.5 Visualización de un Esquema en Varias Vistas</span></a>.</p>
<p>Una forma de utilizar los búferes indirectos es mostrar múltiples vistas de un contorno. Consulte <a class="reference internal" href="26_ComandsLengsHuma.html#id20"><span class="std std-ref">26.9.5 Visualización de un Esquema en Varias Vistas</span></a>.</p>
<p>Una forma rápida y práctica de crear un búfer indirecto es con el comando <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">4</span> <span class="pre">c</span></code> (<code class="docutils literal notranslate"><span class="pre">clone-indirect-buffer-other-window</span></code>). Crea y selecciona un búfer indirecto cuyo búfer base es el búfer actual. Con un argumento numérico, pide el nombre del búfer indirecto; de lo contrario, usa el nombre del búfer actual, con un sufijo <code class="docutils literal notranslate"><span class="pre">&lt;n&gt;</span></code> añadido.</p>
<p>La forma más general de crear un búfer indirecto es con el comando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">make-indirect-buffer</span></code>. Crea un búfer indirecto llamado <em>nombre-indirecto</em> a partir de un <em>búfe-base</em>, solicitando ambos usando el minibúfer.</p>
<p>Las funciones que crean búferes indirectos ejecutan el gancho <code class="docutils literal notranslate"><span class="pre">clone-indirect-buffer-hook</span></code> después de crearlos. Cuando se ejecuta este gancho (hook), el búfer indirecto recién creado es el búfer actual.</p>
@ -423,10 +423,10 @@ esa función al gancho en el búfer base y luego hacer que la función opere en
</div>
</section>
<section id="funciones-convenientes-y-personalizacion-del-manejo-de-buferes">
<span id="id7"></span><h2>20.7 Funciones Convenientes y Personalización del Manejo de Búferes<a class="headerlink" href="#funciones-convenientes-y-personalizacion-del-manejo-de-buferes" title="Link to this heading"></a></h2>
<span id="id8"></span><h2>20.7 Funciones Convenientes y Personalización del Manejo de Búferes<a class="headerlink" href="#funciones-convenientes-y-personalizacion-del-manejo-de-buferes" title="Link to this heading"></a></h2>
<p>Esta sección describe varios modos y características que hacen más cómodo el cambio entre búferes.</p>
<section id="hacer-que-los-nombres-de-los-buferes-sean-unicos">
<span id="id8"></span><h3>20.7.1 Hacer que los Nombres de los Búferes sean Únicos<a class="headerlink" href="#hacer-que-los-nombres-de-los-buferes-sean-unicos" title="Link to this heading"></a></h3>
<span id="id9"></span><h3>20.7.1 Hacer que los Nombres de los Búferes sean Únicos<a class="headerlink" href="#hacer-que-los-nombres-de-los-buferes-sean-unicos" title="Link to this heading"></a></h3>
<p>Cuando varios búferes visitan archivos con nombres idénticos, Emacs debe dar a estos búferes nombres distintos. El método por defecto añade un sufijo basado en los nombres de los directorios que contienen los archivos. Por ejemplo, si visita los archivos <code class="docutils literal notranslate"><span class="pre">/foo/bar/nombre/numble</span></code> y <code class="docutils literal notranslate"><span class="pre">/baz/quux/nombre/mumble</span></code> al mismo tiempo, sus búferes se llamarán <code class="docutils literal notranslate"><span class="pre">nombre&lt;bar/mumble&gt;</span></code> y <code class="docutils literal notranslate"><span class="pre">nombre&lt;quux/mumble&gt;</span></code>, respectivamente. Emacs añade tantas partes de directorio como sean necesarias para hacer un nombre único.</p>
<p>Puede elegir entre varios estilos diferentes para construir nombres de búfer únicos, personalizando la opción <code class="docutils literal notranslate"><span class="pre">uniquify-buffer-name-style</span></code>.</p>
<p>El método de nombrar hacia adelante incluye parte del nombre del directorio del archivo al principio del nombre del búfer; usando este método, los búferes que visitan los archivos <code class="docutils literal notranslate"><span class="pre">/u/rms/tmp/Makefile</span></code> y <code class="docutils literal notranslate"><span class="pre">/usr/projects/zaphod/Makefile</span></code> se llamarían <code class="docutils literal notranslate"><span class="pre">tmp/Makefile</span></code> y <code class="docutils literal notranslate"><span class="pre">zaphod/Makefile</span></code>.</p>
@ -439,7 +439,7 @@ esa función al gancho en el búfer base y luego hacer que la función opere en
<p>Qué regla seguir para poner los nombres de directorio en el nombre del búfer no es muy importante si va a mirar los nombres del búfer antes de escribir uno. Pero como Usuario experimentado, si conoce la regla, no tendrá que mirar. Y puede que descubra que una regla u otra le resulta más fácil de recordar y aplicar rápidamente.</p>
</section>
<section id="seleccion-rapida-del-minibufer">
<span id="id9"></span><h3>20.7.2 Selección Rápida del Minibúfer<a class="headerlink" href="#seleccion-rapida-del-minibufer" title="Link to this heading"></a></h3>
<span id="id10"></span><h3>20.7.2 Selección Rápida del Minibúfer<a class="headerlink" href="#seleccion-rapida-del-minibufer" title="Link to this heading"></a></h3>
<p>El modo menor global Icomplete proporciona una forma cómoda de seleccionar rápidamente un elemento entre las posibles terminaciones de un minibúfer. Cuando está activado, al escribir en el minibúfer se muestra continuamente una lista de posibles terminaciones que coinciden con la cadena que ha escrito.</p>
<p>En cualquier momento, puede teclear <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">j</kbd> (<code class="docutils literal notranslate"><span class="pre">C-j</span></code>) para seleccionar la primera terminación de la lista. Por tanto, la forma de seleccionar una terminación concreta es hacer que sea la primera de la lista. Hay dos formas de hacerlo. Puede escribir más del nombre de la terminación y así reducir la lista, excluyendo las terminaciones no deseadas por encima de la deseada. Alternativamente, puede usar <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">.</kbd> (<code class="docutils literal notranslate"><span class="pre">C-.</span></code>) y <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">,</kbd> (<code class="docutils literal notranslate"><span class="pre">C-,</span></code>) para rotar la lista hasta que el búfer deseado sea el primero.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-TAB</span></code> seleccionará la primera terminación de la lista, como <code class="docutils literal notranslate"><span class="pre">C-j</span></code> pero sin salir del minibúfer, para que pueda seguir editándola. Esto se utiliza normalmente al introducir un nombre de archivo, donde <code class="docutils literal notranslate"><span class="pre">M-TAB</span></code> puede utilizarse varias veces para descender en la jerarquía de directorios.</p>
@ -454,7 +454,7 @@ esa función al gancho en el búfer base y luego hacer que la función opere en
<p>El modo Icomplete y el modo Fido muestran por defecto las posibles terminaciones en la misma línea que el prompt. Para mostrar los candidatos a completado verticalmente debajo de este, escriba <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">icomplete-vertical-mode</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">icomplete-vertical-mode</span></code>), o personalice la variable <code class="docutils literal notranslate"><span class="pre">icomplete-vertical-mode</span></code> a <code class="docutils literal notranslate"><span class="pre">t</span></code> (ver <a class="reference internal" href="50_Personlzc.html#id2"><span class="std std-ref">50.1 Interfaz de Personalización Fácil</span></a>).</p>
</section>
<section id="personalizacion-de-los-menus-del-bufer">
<span id="id10"></span><h3>20.7.3 Personalización de los Menús del Búfer<a class="headerlink" href="#personalizacion-de-los-menus-del-bufer" title="Link to this heading"></a></h3>
<span id="id11"></span><h3>20.7.3 Personalización de los Menús del Búfer<a class="headerlink" href="#personalizacion-de-los-menus-del-bufer" title="Link to this heading"></a></h3>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">bs-show</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">bs-show</span></code>)</p>
<blockquote>
<div><p>Crea una lista de búferes similar a la lista de búferes de <code class="docutils literal notranslate"><span class="pre">M-x</span></code> pero personalizable.</p>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -154,7 +154,7 @@
<section id="conceptos-de-las-ventanas-emacs">
<h2>21.1 Conceptos de las Ventanas Emacs<a class="headerlink" href="#conceptos-de-las-ventanas-emacs" title="Link to this heading"></a></h2>
<p>Cada ventana de Emacs muestra un búfer de la aplicación en cualquier momento. Un mismo búfer puede aparecer en más de una ventana; si es así, cualquier cambio en su texto se muestra en todas las ventanas donde aparezca. Pero estas ventanas pueden mostrar diferentes partes del búfer, porque cada ventana tiene su propio valor para el punto.</p>
<p>En cualquier momento, una ventana Emacs es la <em>ventana seleccionada</em>; el búfer que esta ventana está mostrando es el búfer actual. En las pantallas gráficas, el punto se indica mediante un cursor sólido parpadeante en la ventana seleccionada, y mediante una caja hueca en las ventanas no seleccionadas. En los terminales de texto, el cursor sólo se dibuja en la ventana seleccionada. Véase <a class="reference internal" href="15_ControlDisplay.html#id19"><span class="std std-ref">15.21 Visualización del Cursor</span></a>.</p>
<p>En cualquier momento, una ventana Emacs es la <em>ventana seleccionada</em>; el búfer que esta ventana está mostrando es el búfer actual. En las pantallas gráficas, el punto se indica mediante un cursor sólido parpadeante en la ventana seleccionada, y mediante una caja hueca en las ventanas no seleccionadas. En los terminales de texto, el cursor sólo se dibuja en la ventana seleccionada. Véase <a class="reference internal" href="15_ControlDisplay.html#id20"><span class="std std-ref">15.21 Visualización del Cursor</span></a>.</p>
<p>Los comandos para mover el punto afectan al valor del mismo sólo para la ventana Emacs seleccionada. No afectan a dicho valor en otras ventanas de Editor, ni siquiera en las que muestran el mismo búfer. Lo mismo ocurre con los comandos de cambio de búfer como <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">b</span></code>; no afectan a otras ventanas en absoluto. Sin embargo, hay otros comandos como <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">4</span> <span class="pre">b</span></code> que seleccionan una ventana diferente y cambian de búfer en ella. Además, todos los comandos que muestran información en una ventana, incluyendo (por ejemplo) <code class="docutils literal notranslate"><span class="pre">C-h</span> <span class="pre">f</span></code> (<code class="docutils literal notranslate"><span class="pre">describe-función</span></code>) y <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-b</span></code> (<code class="docutils literal notranslate"><span class="pre">list-buffers</span></code>), normalmente funcionan mostrando búferes en una ventana no seleccionada sin afectar a la ventana seleccionada.</p>
<p>Cuando varias ventanas muestran el mismo búfer, pueden tener diferentes regiones, porque pueden tener diferentes valores para el punto. Sin embargo, todas tienen el mismo valor de marca, porque cada búfer sólo tiene una posición de marca.</p>
<p>Cada ventana tiene su propia línea de modo, que muestra el nombre del búfer, el estado de modificación y los modos mayor y menor del búfer que se muestra en la ventana. La línea de modo de la ventana seleccionada aparece en un color diferente. Véase <a class="reference internal" href="../01_OrgPant.html#id6"><span class="std std-ref">1.3 La Línea de Modo</span></a>, para más detalles.</p>
@ -176,7 +176,7 @@
<p><code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">2</span></code> (<code class="docutils literal notranslate"><span class="pre">split-window-below</span></code>) divide la ventana seleccionada en dos, una encima de la otra. Tras la división, la ventana seleccionada es la superior, y la recién dividida es la inferior. Ambas ventanas tienen el mismo valor de punto que antes, y muestran la misma porción del búfer (o lo más cercana posible). Si es necesario, las ventanas se desplazan para mantener el punto en pantalla. Por defecto, las dos ventanas tienen cada una la mitad de la altura de la ventana original. Un argumento numérico positivo especifica cuántas líneas dar a la ventana superior; un argumento numérico negativo especifica cuántas líneas dar a la ventana inferior.</p>
<p>Si cambia la variable <code class="docutils literal notranslate"><span class="pre">split-window-keep-point</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>, <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">2</span></code> ajusta la porción del búfer mostrada por las dos ventanas, así como el valor del punto en cada ventana, para mantener el texto en pantalla lo más cercano posible al que había antes; además, si el punto estaba en la mitad inferior de la ventana original, se selecciona la ventana inferior en lugar de la superior.</p>
<p><code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">3</span></code> (<code class="docutils literal notranslate"><span class="pre">split-window-right</span></code>) divide la ventana seleccionada en dos ventanas contiguas. La ventana izquierda es la seleccionada; la ventana derecha muestra la misma porción del mismo búfer, y tiene el mismo valor del punto. Un argumento numérico positivo especifica cuántas columnas hay que dar a la ventana izquierda; un argumento numérico negativo especifica cuántas columnas hay que dar a la ventana derecha.</p>
<p>Al dividir una ventana con <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">3</span></code>, cada ventana resultante ocupa menos que el ancho total del cuadro. Si se estrecha demasiado, el búfer puede ser difícil de leer si se están usando líneas de continuación (ver <a class="reference internal" href="08_ComBasicEdic.html#id7"><span class="std std-ref">8.8 Líneas de Continuación</span></a>). Por lo tanto, Emacs cambia automáticamente al truncamiento de líneas si el ancho de la ventana se estrecha más de 50 columnas. Este truncamiento ocurre independientemente del valor de la variable <code class="docutils literal notranslate"><span class="pre">truncate-lines</span></code> (ver <a class="reference internal" href="15_ControlDisplay.html#id20"><span class="std std-ref">15.22 Truncado de Línea</span></a>); en su lugar es controlado por la variable <code class="docutils literal notranslate"><span class="pre">truncate-partial-width-windows</span></code>. Si el valor de esta variable es un entero positivo (el valor por defecto es 50), esto especifica la anchura total mínima para una ventana de anchura parcial antes de que se produzca el truncado automático de líneas; si el valor es <code class="docutils literal notranslate"><span class="pre">nil</span></code>, el truncado automático de líneas está desactivado; y para cualquier otro valor no <code class="docutils literal notranslate"><span class="pre">nil</span></code>, Emacs trunca las líneas en cada ventana de anchura parcial independientemente de su anchura. La anchura total de una ventana está en unidades de columna tal y como se informa en <code class="docutils literal notranslate"><span class="pre">window-total-width</span></code> (ver <strong>Tamaños de Ventana</strong> en el Manual de Referencia de Emacs Lisp), incluye los márgenes, los glifos de continuación y truncado, los márgenes y la barra de desplazamiento.</p>
<p>Al dividir una ventana con <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">3</span></code>, cada ventana resultante ocupa menos que el ancho total del cuadro. Si se estrecha demasiado, el búfer puede ser difícil de leer si se están usando líneas de continuación (ver <a class="reference internal" href="08_ComBasicEdic.html#id7"><span class="std std-ref">8.8 Líneas de Continuación</span></a>). Por lo tanto, Emacs cambia automáticamente al truncamiento de líneas si el ancho de la ventana se estrecha más de 50 columnas. Este truncamiento ocurre independientemente del valor de la variable <code class="docutils literal notranslate"><span class="pre">truncate-lines</span></code> (ver <a class="reference internal" href="15_ControlDisplay.html#id21"><span class="std std-ref">15.22 Truncado de Línea</span></a>); en su lugar es controlado por la variable <code class="docutils literal notranslate"><span class="pre">truncate-partial-width-windows</span></code>. Si el valor de esta variable es un entero positivo (el valor por defecto es 50), esto especifica la anchura total mínima para una ventana de anchura parcial antes de que se produzca el truncado automático de líneas; si el valor es <code class="docutils literal notranslate"><span class="pre">nil</span></code>, el truncado automático de líneas está desactivado; y para cualquier otro valor no <code class="docutils literal notranslate"><span class="pre">nil</span></code>, Emacs trunca las líneas en cada ventana de anchura parcial independientemente de su anchura. La anchura total de una ventana está en unidades de columna tal y como se informa en <code class="docutils literal notranslate"><span class="pre">window-total-width</span></code> (ver <strong>Tamaños de Ventana</strong> en el Manual de Referencia de Emacs Lisp), incluye los márgenes, los glifos de continuación y truncado, los márgenes y la barra de desplazamiento.</p>
<p>En las terminales de texto, las ventanas contiguas están separadas por un divisor vertical que se dibuja utilizando la cara <code class="docutils literal notranslate"><span class="pre">vertical-border</span></code>.</p>
<p>Si se pulsa <code class="docutils literal notranslate"><span class="pre">C-ratón-2</span></code> en la línea de modo de una ventana, se divide la ventana, poniendo un divisor vertical donde se pulsó. Dependiendo de cómo esté compilado Emacs, también puede dividir una ventana pulsando <code class="docutils literal notranslate"><span class="pre">C-ratón-2</span></code> en la barra de desplazamiento, que pone un divisor horizontal donde se pulsa (esta característica no funciona cuando Emacs usa barras de desplazamiento GTK+).</p>
<p>Por defecto, cuando se divide una ventana, Emacs da a cada una de las ventanas resultantes dimensiones que son un múltiplo integral del tamaño de fuente por defecto del marco. Esto puede subdividir la pantalla de forma desigual entre las ventanas resultantes. Si establece la variable <code class="docutils literal notranslate"><span class="pre">window-resize-pixelwise</span></code> a un valor no nulo, Emacs dará a cada ventana el mismo número de píxeles (más o menos un píxel si la dimensión inicial era un número impar de píxeles). Tenga en cuenta que cuando el tamaño en píxeles de un marco no es múltiplo del tamaño en caracteres del marco, al menos una ventana puede ser redimensionada en píxeles incluso si esta opción es nula.</p>
@ -235,7 +235,7 @@ sobre cómo se elige la ventana.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">4</kbd><kbd class="kbd docutils literal notranslate">.</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">4</span> <span class="pre">.</span></code>)</p>
<blockquote>
<div><p>Busca la definición de un identificador, de forma similar a <code class="docutils literal notranslate"><span class="pre">M-.</span></code> (véase <a class="reference internal" href="29_ManyProgrsGrands.html#id12"><span class="std std-ref">29.4 Buscar Referencias de Identificador</span></a>), pero en otra ventana (<code class="docutils literal notranslate"><span class="pre">xref-find-definitions-other-window</span></code>).</p>
<div><p>Busca la definición de un identificador, de forma similar a <code class="docutils literal notranslate"><span class="pre">M-.</span></code> (véase <a class="reference internal" href="29_ManyProgrsGrands.html#id13"><span class="std std-ref">29.4 Buscar Referencias de Identificador</span></a>), pero en otra ventana (<code class="docutils literal notranslate"><span class="pre">xref-find-definitions-other-window</span></code>).</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">4</kbd><kbd class="kbd docutils literal notranslate">r</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">4</span> <span class="pre">r</span></code> <em>nombrearchivo</em> <code class="docutils literal notranslate"><span class="pre">RET</span></code>)</p>
<blockquote>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -246,18 +246,18 @@ región, desplazando la pantalla hacia atrás si es necesario.</p>
<p>Varias pulsaciones del ratón con los modificadores Ctrl y SHIFT hacen aparecer menús.</p>
<dl>
<dt><code class="docutils literal notranslate"><span class="pre">C-ratón-1</span></code></dt><dd><p>Este menú sirve para seleccionar un búfer.</p>
<p>El modo menor global MSB («mouse select buffer», selección de búfer con el ratón) hace que este menú sea más inteligente y personalizable. Véase <a class="reference internal" href="20_UsarVariosBuferes.html#id10"><span class="std std-ref">20.7.3 Personalización de los Menús del Búfer</span></a>.</p>
<p>El modo menor global MSB («mouse select buffer», selección de búfer con el ratón) hace que este menú sea más inteligente y personalizable. Véase <a class="reference internal" href="20_UsarVariosBuferes.html#id11"><span class="std std-ref">20.7.3 Personalización de los Menús del Búfer</span></a>.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">C-ratón-2</span></code></dt><dd><p>Este menú contiene entradas para examinar las caras y otras propiedades del texto, así como para ajustarlas (esto último es útil sobre todo al editar texto enriquecido; véase <a class="reference internal" href="26_ComandsLengsHuma.html#id23"><span class="std std-ref">26.14 Texto enriquecido</span></a>).</p>
<dt><code class="docutils literal notranslate"><span class="pre">C-ratón-2</span></code></dt><dd><p>Este menú contiene entradas para examinar las caras y otras propiedades del texto, así como para ajustarlas (esto último es útil sobre todo al editar texto enriquecido; véase <a class="reference internal" href="26_ComandsLengsHuma.html#id27"><span class="std std-ref">26.14 Texto enriquecido</span></a>).</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">C-ratón-3</span></code></dt><dd><p>Este menú es específico de cada modo. En la mayoría de los modos, si el modo Barra de menús está activado, este menú tiene los mismos elementos que todos los menús de la barra de
menús específicos de cada modo juntos. Algunos modos pueden especificar un menú diferente para este botón. Si el modo Barra de menús está desactivado, este menú contiene todos los
elementos que estarían presentes en la barra de menús -no sólo los específicos de cada modo- para que pueda acceder a ellos sin tener que mostrar dicha barra.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">Shift-ratón-1</span></code></dt><dd><p>Este menú sirve para cambiar la cara por defecto dentro del búfer de la ventana. Véase <a class="reference internal" href="15_ControlDisplay.html#id11"><span class="std std-ref">15.12 Escala de Texto</span></a>.</p>
<dt><code class="docutils literal notranslate"><span class="pre">Shift-ratón-1</span></code></dt><dd><p>Este menú sirve para cambiar la cara por defecto dentro del búfer de la ventana. Véase <a class="reference internal" href="15_ControlDisplay.html#id12"><span class="std std-ref">15.12 Escala de Texto</span></a>.</p>
</dd>
</dl>
<p>Muchas aplicaciones GUI usan <code class="docutils literal notranslate"><span class="pre">mouse-3</span></code> para mostrar menús contextuales: menús que proporcionan acceso a varios ajustes y acciones pertinentes para la localización y el contexto del clic del ratón. Si prefiere esto en Emacs a la función por defecto de <code class="docutils literal notranslate"><span class="pre">mouse-3</span></code>, que está ligada al comando <code class="docutils literal notranslate"><span class="pre">mouse-save-then-kill</span></code> (ver <a class="reference internal" href="15_ControlDisplay.html#id11"><span class="std std-ref">15.12 Escala de Texto</span></a>), puede activar el modo menor <code class="docutils literal notranslate"><span class="pre">context-menu-mode</span></code>. Entonces Emacs mostrará menús contextuales cuando pulse <code class="docutils literal notranslate"><span class="pre">ratón-3</span></code>. El contenido exacto de estos menús contextuales depende del modo mayor actual y del contenido del búfer alrededor del lugar donde pulsa el ratón. Para personalizar los contenidos del menú contextual, puede usar la variable <code class="docutils literal notranslate"><span class="pre">context-menu-functions</span></code> (ver <strong>Convenciones del Modo Mayor</strong> en el Manual de Referencia de Emacs Lisp). También puede invocar el menú contextual pulsando <kbd class="kbd docutils literal notranslate">Shift</kbd>-<kbd class="kbd docutils literal notranslate">F10</kbd> (<code class="docutils literal notranslate"><span class="pre">S-F10</span></code>).</p>
<p>Muchas aplicaciones GUI usan <code class="docutils literal notranslate"><span class="pre">mouse-3</span></code> para mostrar menús contextuales: menús que proporcionan acceso a varios ajustes y acciones pertinentes para la localización y el contexto del clic del ratón. Si prefiere esto en Emacs a la función por defecto de <code class="docutils literal notranslate"><span class="pre">mouse-3</span></code>, que está ligada al comando <code class="docutils literal notranslate"><span class="pre">mouse-save-then-kill</span></code> (ver <a class="reference internal" href="15_ControlDisplay.html#id12"><span class="std std-ref">15.12 Escala de Texto</span></a>), puede activar el modo menor <code class="docutils literal notranslate"><span class="pre">context-menu-mode</span></code>. Entonces Emacs mostrará menús contextuales cuando pulse <code class="docutils literal notranslate"><span class="pre">ratón-3</span></code>. El contenido exacto de estos menús contextuales depende del modo mayor actual y del contenido del búfer alrededor del lugar donde pulsa el ratón. Para personalizar los contenidos del menú contextual, puede usar la variable <code class="docutils literal notranslate"><span class="pre">context-menu-functions</span></code> (ver <strong>Convenciones del Modo Mayor</strong> en el Manual de Referencia de Emacs Lisp). También puede invocar el menú contextual pulsando <kbd class="kbd docutils literal notranslate">Shift</kbd>-<kbd class="kbd docutils literal notranslate">F10</kbd> (<code class="docutils literal notranslate"><span class="pre">S-F10</span></code>).</p>
</section>
<section id="comandos-del-raton-en-la-linea-de-modo">
<span id="id6"></span><h2>22.5 Comandos del Ratón en la Línea de Modo<a class="headerlink" href="#comandos-del-raton-en-la-linea-de-modo" title="Link to this heading"></a></h2>
@ -309,7 +309,7 @@ encima y por debajo. Al cambiar la altura con el ratón de esta manera nunca se
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">5</kbd><kbd class="kbd docutils literal notranslate">.</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">5</span> <span class="pre">.</span></code>)</p>
<blockquote>
<div><p>Encuentra la definición de un identificador en otro marco. Esto ejecuta <code class="docutils literal notranslate"><span class="pre">xref-find-definitions-other-frame</span></code>, la variante de marcos múltiples de <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">.</kbd> (<code class="docutils literal notranslate"><span class="pre">M-.</span></code>). Véase <a class="reference internal" href="29_ManyProgrsGrands.html#id12"><span class="std std-ref">29.4 Buscar Referencias de Identificador</span></a>.</p>
<div><p>Encuentra la definición de un identificador en otro marco. Esto ejecuta <code class="docutils literal notranslate"><span class="pre">xref-find-definitions-other-frame</span></code>, la variante de marcos múltiples de <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">.</kbd> (<code class="docutils literal notranslate"><span class="pre">M-.</span></code>). Véase <a class="reference internal" href="29_ManyProgrsGrands.html#id13"><span class="std std-ref">29.4 Buscar Referencias de Identificador</span></a>.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">5</kbd><kbd class="kbd docutils literal notranslate">r</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">5</span> <span class="pre">r</span></code> <em>nombrearchivo</em> <code class="docutils literal notranslate"><span class="pre">RET</span></code>)</p>
<blockquote>
@ -363,7 +363,7 @@ la primera oculta las decoraciones del gestor de ventanas, dando algo más de es
</section>
<section id="fuentes">
<span id="id9"></span><h2>22.8 Fuentes<a class="headerlink" href="#fuentes" title="Link to this heading"></a></h2>
<p>Por defecto, Emacs muestra el texto en pantallas gráficas usando una fuente monospace de 10 puntos, y el tamaño de la fuente puede cambiarse interactivamente (ver <a class="reference internal" href="15_ControlDisplay.html#id11"><span class="std std-ref">15.12 Escala de Texto</span></a>).</p>
<p>Por defecto, Emacs muestra el texto en pantallas gráficas usando una fuente monospace de 10 puntos, y el tamaño de la fuente puede cambiarse interactivamente (ver <a class="reference internal" href="15_ControlDisplay.html#id12"><span class="std std-ref">15.12 Escala de Texto</span></a>).</p>
<p>Hay varias formas de especificar una fuente diferente:</p>
<blockquote>
<div><ul>
@ -776,7 +776,7 @@ Emacs Lisp, y también <strong>Tooltips</strong> en el Manual de Referencia de E
<section id="evitar-el-puntero-del-raton">
<h2>22.20 Evitar el Puntero del Ratón<a class="headerlink" href="#evitar-el-puntero-del-raton" title="Link to this heading"></a></h2>
<p>En terminales gráficos, el puntero del ratón puede oscurecer el texto en el marco de Emacs. Emacs proporciona dos métodos para evitar este problema.</p>
<p>En primer lugar, Emacs oculta el puntero del ratón cada vez que se escribe un carácter autoinsertado, si el puntero se encuentra dentro de un marco Emacs; moviendo el puntero del ratón se hace visible de nuevo. Para desactivar esta característica, establece la variable <code class="docutils literal notranslate"><span class="pre">make-pointer-invisible</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>. Ver <a class="reference internal" href="15_ControlDisplay.html#id22"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>.</p>
<p>En primer lugar, Emacs oculta el puntero del ratón cada vez que se escribe un carácter autoinsertado, si el puntero se encuentra dentro de un marco Emacs; moviendo el puntero del ratón se hace visible de nuevo. Para desactivar esta característica, establece la variable <code class="docutils literal notranslate"><span class="pre">make-pointer-invisible</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>. Ver <a class="reference internal" href="15_ControlDisplay.html#id23"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>.</p>
<p>En segundo lugar, puede usar el modo Mouse Avoidance, un modo menor, para mantener el puntero del ratón alejado del punto. Para usar este modo, personalice la variable <code class="docutils literal notranslate"><span class="pre">mouse-avoidance-mode</span></code>. Puede establecer esto a varios valores para mover el ratón de varias maneras:</p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">banish</span></code></dt><dd><p>Mueve el puntero a una esquina del marco al pulsar cualquier tecla. Puede personalizar la variable <code class="docutils literal notranslate"><span class="pre">mouse-avoidance-banish-position</span></code>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -194,7 +194,7 @@ entrada de teclado correctamente; vea <a class="reference internal" href="#id15"
</pre></div>
</div>
<p>Los cuatro valores después de <code class="docutils literal notranslate"><span class="pre">Char:</span></code> describen el carácter que sigue al punto, primero mostrándolo y luego dando su código de carácter en decimal, octal y hexadecimal. Para un carácter multibyte no ASCII, éstos van seguidos de <code class="docutils literal notranslate"><span class="pre">file</span></code> y de la representación del carácter, en hexadecimal, en el sistema de codificación del búfer, si dicho sistema de codificación codifica el carácter de forma segura y con un solo byte (véase <a class="reference internal" href="#id6"><span class="std std-ref">23.5 Sistemas de Codificación</span></a>). Si la codificación del carácter es mayor que un byte, Emacs muestra <code class="docutils literal notranslate"><span class="pre">file</span> <span class="pre">...</span></code>.</p>
<p>En raras ocasiones, Emacs encuentra <em>bytes crudos</em>: bytes simples cuyos valores están en el rango de 128 (0200 octal) a 255 (0377 octal), que Emacs no puede interpretar como parte de una codificación conocida de algún carácter no ASCII. Tales bytes brutos se tratan como si pertenecieran a un juego de caracteres especial de ocho bits (<code class="docutils literal notranslate"><span class="pre">eight-bit</span></code>); Emacs los muestra como códigos octales escapados (esto puede personalizarse; véase <a class="reference internal" href="15_ControlDisplay.html#id22"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>). En este caso, <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">=</span></code> muestra <code class="docutils literal notranslate"><span class="pre">raw-byte</span></code> en lugar de <code class="docutils literal notranslate"><span class="pre">file</span></code>. Además, <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">=</span></code> muestra los códigos de carácter de los bytes raw como si estuvieran en el rango <code class="docutils literal notranslate"><span class="pre">#x3FFF80..#x3FFFFF</span></code>, que es donde Emacs los mapea para distinguirlos de los caracteres Unicode en el rango <code class="docutils literal notranslate"><span class="pre">#x0080..#x00FF</span></code>.</p>
<p>En raras ocasiones, Emacs encuentra <em>bytes crudos</em>: bytes simples cuyos valores están en el rango de 128 (0200 octal) a 255 (0377 octal), que Emacs no puede interpretar como parte de una codificación conocida de algún carácter no ASCII. Tales bytes brutos se tratan como si pertenecieran a un juego de caracteres especial de ocho bits (<code class="docutils literal notranslate"><span class="pre">eight-bit</span></code>); Emacs los muestra como códigos octales escapados (esto puede personalizarse; véase <a class="reference internal" href="15_ControlDisplay.html#id23"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>). En este caso, <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">=</span></code> muestra <code class="docutils literal notranslate"><span class="pre">raw-byte</span></code> en lugar de <code class="docutils literal notranslate"><span class="pre">file</span></code>. Además, <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">=</span></code> muestra los códigos de carácter de los bytes raw como si estuvieran en el rango <code class="docutils literal notranslate"><span class="pre">#x3FFF80..#x3FFFFF</span></code>, que es donde Emacs los mapea para distinguirlos de los caracteres Unicode en el rango <code class="docutils literal notranslate"><span class="pre">#x0080..#x00FF</span></code>.</p>
<p>Con un argumento prefijo (<code class="docutils literal notranslate"><span class="pre">C-u</span> <span class="pre">C-x</span> <span class="pre">=</span></code>), este comando llama adicionalmente al comando <code class="docutils literal notranslate"><span class="pre">describe-char</span></code>, que muestra una descripción detallada del carácter:</p>
<blockquote>
<div><ul class="simple">
@ -575,7 +575,7 @@ actual (<code class="docutils literal notranslate"><span class="pre">set-buffer-
<p>También puede especificar un conjunto de fuentes con el recurso <code class="docutils literal notranslate"><span class="pre">Font</span></code> (ver <a class="reference internal" href="ApendiceD.html#apendiced"><span class="std std-ref">Apéndice D Opciones y Recursos de X</span></a>).</p>
<p>Si no se especifica un conjunto de fuentes para usar, Emacs usa una fuente ASCII, con <code class="docutils literal notranslate"><span class="pre">fontset-default</span></code> como alternativa para los caracteres que la fuente no cubre. El conjunto de fuentes estándar sólo se usa si se solicita explícitamente, a pesar de su nombre.</p>
<p>Para mostrar la información sobre un conjunto de fuentes específico, use el comando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">describe-fontset</span></code>. Este comando pide un nombre de juego de fuentes, por defecto el usado por el marco actual, y entonces muestra todos los subjuegos de caracteres y las fuentes asignadas a ellos en ese juego de fuentes. Para ver qué fuentes está usando Emacs en una sesión iniciada sin un juego de fuentes específico (que es lo que ocurre normalmente), escriba <code class="docutils literal notranslate"><span class="pre">fontset-default</span></code> <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">fontset-default</span> <span class="pre">RET</span></code>) en el prompt, o simplemente <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">RET</span></code>) para describir el juego de fuentes usado por el marco actual.</p>
<p>Un juego de fuentes no especifica necesariamente una fuente para cada código de carácter. Si un juego de fuentes no especifica ninguna fuente para un carácter determinado, o si especifica una fuente que no existe en su sistema, no podrá mostrar ese carácter correctamente. En su lugar, mostrará el carácter como un código hexadecimal, un espacio en blanco o un recuadro vacío. (Ver <a class="reference internal" href="15_ControlDisplay.html#id18"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>, para más detalles.) O un fontset puede especificar una fuente para algún rango de caracteres, pero puede que no te guste su apariencia visual. Si ocurre esto, es posible que desee modificar su conjunto de fuentes; consulte <a class="reference internal" href="#id21"><span class="std std-ref">23.16 Modificar Conjunto de Fuentes</span></a>, para saber cómo hacerlo.</p>
<p>Un juego de fuentes no especifica necesariamente una fuente para cada código de carácter. Si un juego de fuentes no especifica ninguna fuente para un carácter determinado, o si especifica una fuente que no existe en su sistema, no podrá mostrar ese carácter correctamente. En su lugar, mostrará el carácter como un código hexadecimal, un espacio en blanco o un recuadro vacío. (Ver <a class="reference internal" href="15_ControlDisplay.html#id19"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>, para más detalles.) O un fontset puede especificar una fuente para algún rango de caracteres, pero puede que no te guste su apariencia visual. Si ocurre esto, es posible que desee modificar su conjunto de fuentes; consulte <a class="reference internal" href="#id21"><span class="std std-ref">23.16 Modificar Conjunto de Fuentes</span></a>, para saber cómo hacerlo.</p>
<aside class="footnote-list brackets">
<aside class="footnote brackets" id="id19" role="doc-footnote">
<span class="label"><span class="fn-bracket">[</span><a role="doc-backlink" href="#id18">10</a><span class="fn-bracket">]</span></span>
@ -765,7 +765,7 @@ con el carácter siguiente, una vez cargado <code class="docutils literal notran
<p>Los comandos de movimiento del cursor vinculados a las teclas de flecha, como <kbd class="kbd docutils literal notranslate"></kbd> (<code class="docutils literal notranslate"><span class="pre">LEFT</span></code>, IZQUIERDA) y <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate"></kbd> (<code class="docutils literal notranslate"><span class="pre">C-RIGHT</span></code> C-DERECHA), son sensibles a la dirección base del párrafo actual. En un párrafo de izquierda a derecha, los comandos ligados a DERECHA con o sin modificadores se mueven hacia <em>adelante</em> a través del texto del búfer, pero en un párrafo de derecha a izquierda se mueven hacia <em>atrás</em>. Esto refleja el hecho de que en un párrafo de derecha a izquierda las posiciones del búfer aumentan predominantemente al desplazarse hacia la izquierda en la pantalla.</p>
<p>Cuando se sale de un párrafo, el significado de las teclas de flecha puede cambiar si la dirección base del párrafo anterior o del siguiente es diferente de la del párrafo del que se ha salido. Cuando esto ocurra, deberá ajustar la tecla de flecha que pulse a la nueva dirección base.</p>
<p>Por defecto, <code class="docutils literal notranslate"><span class="pre">LEFT</span></code> (IZQUIERDA) y <code class="docutils literal notranslate"><span class="pre">RIGHT</span></code> (DERECHA) se mueven en el orden lógico, pero si <code class="docutils literal notranslate"><span class="pre">visual-order-cursor-movement</span></code> es no nulo, estos comandos se mueven al carácter que está, correspondientemente, a la izquierda o a la derecha de la posición actual de la pantalla, moviéndose a la línea de pantalla siguiente o anterior según corresponda. Tenga en cuenta que esto podría mover el punto a muchas posiciones de búfer, dependiendo del contexto bidireccional circundante.</p>
<p>El texto bidireccional a veces usa caracteres de formato especiales para afectar a la reordenación del texto en pantalla. Los caracteres LRM y RLM, mencionados anteriormente, son dos de ellos, pero hay más. Se muestran por defecto como glifos de espacio fino en los marcos GUI, y como espacios simples en los marcos de modo texto. Si quiere conocer estos caracteres de control especiales, para que su efecto en la visualización no sea una sorpresa, puede activar el modo de visualización sin glifos (<code class="docutils literal notranslate"><span class="pre">glyphless-display-mode</span></code>) (vea <a class="reference internal" href="15_ControlDisplay.html#id18"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>). Este modo menor hará que estos caracteres de formato se muestren como siglas dentro de un pequeño recuadro, de modo que destaquen en pantalla y su efecto sea más fácil de entender.</p>
<p>El texto bidireccional a veces usa caracteres de formato especiales para afectar a la reordenación del texto en pantalla. Los caracteres LRM y RLM, mencionados anteriormente, son dos de ellos, pero hay más. Se muestran por defecto como glifos de espacio fino en los marcos GUI, y como espacios simples en los marcos de modo texto. Si quiere conocer estos caracteres de control especiales, para que su efecto en la visualización no sea una sorpresa, puede activar el modo de visualización sin glifos (<code class="docutils literal notranslate"><span class="pre">glyphless-display-mode</span></code>) (vea <a class="reference internal" href="15_ControlDisplay.html#id19"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>). Este modo menor hará que estos caracteres de formato se muestren como siglas dentro de un pequeño recuadro, de modo que destaquen en pantalla y su efecto sea más fácil de entender.</p>
</section>
</section>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -143,7 +143,7 @@
<span id="id1"></span><h1>24 Modos Mayores y Menores<a class="headerlink" href="#modos-mayores-y-menores" title="Link to this heading"></a></h1>
<p>Emacs contiene muchos <em>modos de edición</em> que alteran su comportamiento básico de forma útil. Se dividen en <em>modos mayores</em> y <em>modos menores</em>.</p>
<p>Los modos principales proporcionan facilidades especializadas para trabajar con un tipo de archivo en particular, como un fichero fuente C (ver <a class="reference internal" href="27_EdDePrograms.html#id1"><span class="std std-ref">27 Edición de Programas</span></a>), o un tipo particular de búfer no-fichero, como un búfer de shell (ver <a class="reference internal" href="39_ComndShellEmacs.html#id1"><span class="std std-ref">39 Ejecución de comandos de shell desde Emacs</span></a>). Los modos principales son mutuamente excluyentes; cada búfer tiene uno y sólo un modo principal en cualquier momento.</p>
<p>Los modos menores son características opcionales que puedes activar o desactivar, no necesariamente específicas de un tipo de archivo o búfer. Por ejemplo, el modo Relleno automático (Auto Fill mode) es un modo secundario en el que <code class="docutils literal notranslate"><span class="pre">SPC</span></code> interrumpe las líneas entre palabras a medida que escribe (consulte <a class="reference internal" href="26_ComandsLengsHuma.html#id8"><span class="std std-ref">26.6.1 Modo Auto Fill</span></a>). Los modos secundarios son independientes entre sí y del modo principal seleccionado.</p>
<p>Los modos menores son características opcionales que puedes activar o desactivar, no necesariamente específicas de un tipo de archivo o búfer. Por ejemplo, el modo Relleno automático (Auto Fill mode) es un modo secundario en el que <code class="docutils literal notranslate"><span class="pre">SPC</span></code> interrumpe las líneas entre palabras a medida que escribe (consulte <a class="reference internal" href="26_ComandsLengsHuma.html#id10"><span class="std std-ref">26.6.1 Modo de Relleno Automático (Auto Fill)</span></a>). Los modos secundarios son independientes entre sí y del modo principal seleccionado.</p>
<section id="modos-mayores-o-principales">
<span id="id2"></span><h2>24.1 Modos Mayores (o Principales)<a class="headerlink" href="#modos-mayores-o-principales" title="Link to this heading"></a></h2>
<p>Cada búfer posee un modo principal, que determina el comportamiento de edición de Emacs mientras ese búfer está activo. La línea de modo normalmente muestra el nombre del modo principal actual, entre paréntesis (ver <a class="reference internal" href="../01_OrgPant.html#id6"><span class="std std-ref">1.3 La Línea de Modo</span></a>).</p>
@ -156,10 +156,10 @@
</pre></div>
</div>
<p>Si el valor por defecto de <code class="docutils literal notranslate"><span class="pre">major-mode</span></code> es <code class="docutils literal notranslate"><span class="pre">nil</span></code>, el modo mayor se toma del búfer previamente actual.</p>
<p>Los modos principales especializados a menudo cambian el significado de ciertas teclas para hacer algo más adecuado para el modo. Por ejemplo, los modos de lenguaje de programación vinculan <code class="docutils literal notranslate"><span class="pre">TAB</span></code> para sangrar la línea actual de acuerdo con las reglas del lenguaje (ver <a class="reference internal" href="25_Indentacion.html#id1"><span class="std std-ref">25 Indentación</span></a>). Las teclas que suelen cambiarse son <code class="docutils literal notranslate"><span class="pre">TAB</span></code>, <code class="docutils literal notranslate"><span class="pre">DEL</span></code> y <code class="docutils literal notranslate"><span class="pre">C-j</span></code>. Muchos modos también definen comandos especiales propios, normalmente ligados a secuencias de teclas cuyo prefijo es <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">c</kbd> (<code class="docutils literal notranslate"><span class="pre">C-c</span></code>) (ver <a class="reference internal" href="../03_Teclas.html#id1"><span class="std std-ref">3 Teclas</span></a>). Los modos principales también pueden alterar las opciones y variables del Usuario; por ejemplo, los modos de lenguaje de programación suelen establecer un valor local en el búfer para la variable <code class="docutils literal notranslate"><span class="pre">comment-start</span></code>, que determina cómo se delimitan los comentarios del código fuente (véase <a class="reference internal" href="27_EdDePrograms.html#id7"><span class="std std-ref">27.5. Manipulación de Comentarios</span></a>).</p>
<p>Los modos principales especializados a menudo cambian el significado de ciertas teclas para hacer algo más adecuado para el modo. Por ejemplo, los modos de lenguaje de programación vinculan <code class="docutils literal notranslate"><span class="pre">TAB</span></code> para sangrar la línea actual de acuerdo con las reglas del lenguaje (ver <a class="reference internal" href="25_Indentacion.html#id1"><span class="std std-ref">25 Indentación</span></a>). Las teclas que suelen cambiarse son <code class="docutils literal notranslate"><span class="pre">TAB</span></code>, <code class="docutils literal notranslate"><span class="pre">DEL</span></code> y <code class="docutils literal notranslate"><span class="pre">C-j</span></code>. Muchos modos también definen comandos especiales propios, normalmente ligados a secuencias de teclas cuyo prefijo es <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">c</kbd> (<code class="docutils literal notranslate"><span class="pre">C-c</span></code>) (ver <a class="reference internal" href="../03_Teclas.html#id1"><span class="std std-ref">3 Teclas</span></a>). Los modos principales también pueden alterar las opciones y variables del Usuario; por ejemplo, los modos de lenguaje de programación suelen establecer un valor local en el búfer para la variable <code class="docutils literal notranslate"><span class="pre">comment-start</span></code>, que determina cómo se delimitan los comentarios del código fuente (véase <a class="reference internal" href="27_EdDePrograms.html#id9"><span class="std std-ref">27.5. Manipulación de Comentarios</span></a>).</p>
<p>Para ver la documentación del modo principal actual, incluida una lista de sus combinaciones de teclas, escriba <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">h</kbd> (<code class="docutils literal notranslate"><span class="pre">C-h</span> <span class="pre">m</span></code>, <code class="docutils literal notranslate"><span class="pre">describe-mode</span></code>). Consulte <a class="reference internal" href="11_Ayuda.html#id7"><span class="std std-ref">11.8 Otros comandos de Ayuda</span></a>.</p>
<p>Cada modo principal, aparte del modo Fundamental, define un gancho (hook) de modo, una lista personalizable de funciones Lisp que se ejecutarán cada vez que se active el modo en un búfer. Para obtener más información sobre ganchos, consulte <a class="reference internal" href="50_Personlzc.html#id7"><span class="std std-ref">50.2.2 Ganchos (Hooks)</span></a>. Cada gancho de modo recibe el nombre de su modo principal, por ejemplo, el modo Fortran tiene <code class="docutils literal notranslate"><span class="pre">fortran-mode-hook</span></code>. Además, todos los modos principales basados en texto ejecutan <code class="docutils literal notranslate"><span class="pre">text-mode-hook</span></code>, y muchos modos de lenguaje de programación <a class="footnote-reference brackets" href="#id4" id="id3" role="doc-noteref"><span class="fn-bracket">[</span>11<span class="fn-bracket">]</span></a> (incluyendo todos los distribuidos con Emacs) ejecutan <code class="docutils literal notranslate"><span class="pre">prog-mode-hook</span></code>, antes de ejecutar sus propios ganchos de modo. Las funciones gancho pueden mirar el valor de la variable <code class="docutils literal notranslate"><span class="pre">major-mode</span></code> para ver en qué modo se está entrando realmente.</p>
<p>Los ganchos de modo se usan comúnmente para habilitar modos menores (vea <a class="reference internal" href="#id5"><span class="std std-ref">24.2 Modos Menores</span></a>). Por ejemplo, puede poner las siguientes líneas en su archivo init para habilitar el modo menor Flyspell en todos los modos mayores basados en texto (vea <a class="reference internal" href="17_CmdCorrecErrsTipogr.html#id5"><span class="std std-ref">17.4 Comprobar y Corregir la Ortografía</span></a>), y el modo menor ElDoc en el modo Emacs Lisp (vea <a class="reference internal" href="27_EdDePrograms.html#id17"><span class="std std-ref">27.6.3. Búsqueda de Documentación en Lenguajes de Programación</span></a>):</p>
<p>Los ganchos de modo se usan comúnmente para habilitar modos menores (vea <a class="reference internal" href="#id5"><span class="std std-ref">24.2 Modos Menores</span></a>). Por ejemplo, puede poner las siguientes líneas en su archivo init para habilitar el modo menor Flyspell en todos los modos mayores basados en texto (vea <a class="reference internal" href="17_CmdCorrecErrsTipogr.html#id6"><span class="std std-ref">17.4 Comprobar y Corregir la Ortografía</span></a>), y el modo menor ElDoc en el modo Emacs Lisp (vea <a class="reference internal" href="27_EdDePrograms.html#id19"><span class="std std-ref">27.6.3. Búsqueda de Documentación en Lenguajes de Programación</span></a>):</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">(</span><span class="n">add</span><span class="o">-</span><span class="n">hook</span> <span class="s1">&#39;text-mode-hook &#39;</span><span class="n">flyspell</span><span class="o">-</span><span class="n">mode</span><span class="p">)</span>
<span class="p">(</span><span class="n">add</span><span class="o">-</span><span class="n">hook</span> <span class="s1">&#39;emacs-lisp-mode-hook &#39;</span><span class="n">eldoc</span><span class="o">-</span><span class="n">mode</span><span class="p">)</span>
</pre></div>
@ -194,19 +194,19 @@ trata como un argumento prefijo interactivo, como se ha descrito anteriormente.<
<div><ul class="simple">
<li><p>El modo Abbrev amplía automáticamente el texto basándose en definiciones de abreviaturas predefinidas. Consulte <a class="reference internal" href="30_Abreviaturas.html#id1"><span class="std std-ref">30 Abreviaturas</span></a>.</p></li>
<li><p>El modo Relleno automático (Auto Fill mode) inserta nuevas líneas a medida que escribe para evitar que las líneas se alarguen
demasiado. Ver <a class="reference internal" href="26_ComandsLengsHuma.html#id7"><span class="std std-ref">26.6 Rellenar Texto</span></a>.</p></li>
demasiado. Ver <a class="reference internal" href="26_ComandsLengsHuma.html#id9"><span class="std std-ref">26.6 Rellenar Texto</span></a>.</p></li>
<li><p>El modo Autoguardar (Auto Save mode) guarda el contenido del búfer periódicamente para reducir la cantidad de trabajo que puede
perder en caso de fallo. Véase <a class="reference internal" href="19_ManejoArchivos.html#id16"><span class="std std-ref">19.6 Guardado Automático: Protección Frente a Desastres</span></a>.</p></li>
<li><p>El modo Electric Quote convierte automáticamente las comillas. Por ejemplo, entrecomilla el texto escrito <code class="docutils literal notranslate"><span class="pre">`así'</span></code> a texto
<code class="docutils literal notranslate"><span class="pre">así</span></code>. Puede controlar en qué tipo de texto funciona, y puede desactivarlo por completo en búferes individuales. Véase
<a class="reference internal" href="26_ComandsLengsHuma.html#id6"><span class="std std-ref">26.5 Comillas</span></a>.</p></li>
<li><p>El modo enriquecido (Enriched mode) permite editar y guardar texto formateado. Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id23"><span class="std std-ref">26.14 Texto enriquecido</span></a>.</p></li>
<li><p>El modo Flyspell (Flyspell mode) resalta automáticamente las palabras mal escritas. Véase <a class="reference internal" href="17_CmdCorrecErrsTipogr.html#id5"><span class="std std-ref">17.4 Comprobar y Corregir la Ortografía</span></a>.</p></li>
<li><p>El modo enriquecido (Enriched mode) permite editar y guardar texto formateado. Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id27"><span class="std std-ref">26.14 Texto enriquecido</span></a>.</p></li>
<li><p>El modo Flyspell (Flyspell mode) resalta automáticamente las palabras mal escritas. Véase <a class="reference internal" href="17_CmdCorrecErrsTipogr.html#id6"><span class="std std-ref">17.4 Comprobar y Corregir la Ortografía</span></a>.</p></li>
<li><p>El modo Bloqueo de Fuentes (Font-Lock mode) resalta automáticamente ciertas unidades de texto que se encuentran en los programas.
Está activado globalmente por defecto, pero puede desactivarlo en búferes individuales. Véase <a class="reference internal" href="15_ControlDisplay.html#id8"><span class="std std-ref">15.8. Caras de Texto</span></a>.</p></li>
<li><p>El modo Visualizar números de línea (Display Line Numbers mode) es un práctico asistente para la visualización de números de línea
(<code class="docutils literal notranslate"><span class="pre">display-line-numbers</span></code>), que se configura usando el valor de <code class="docutils literal notranslate"><span class="pre">display-line-numbers-type</span></code>. Véase <a class="reference internal" href="15_ControlDisplay.html#id22"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>.</p></li>
<li><p>El modo menor Esquema (Outline mode) proporciona facilidades similares al modo mayor llamado Outline mode. Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id12"><span class="std std-ref">26.9 Modo Esquema</span></a>.</p></li>
(<code class="docutils literal notranslate"><span class="pre">display-line-numbers</span></code>), que se configura usando el valor de <code class="docutils literal notranslate"><span class="pre">display-line-numbers-type</span></code>. Véase <a class="reference internal" href="15_ControlDisplay.html#id23"><span class="std std-ref">15.24 Personalización de la Pantalla</span></a>.</p></li>
<li><p>El modo menor Esquema (Outline mode) proporciona facilidades similares al modo mayor llamado Outline mode. Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id16"><span class="std std-ref">26.9 Modo Esquema (mode Outilne)</span></a>.</p></li>
<li><p>El modo de Sobrescritura (Overwrite mode) hace que los caracteres de impresión normales sustituyan al texto existente en lugar de
desplazarlo a la derecha. Por ejemplo, si hay un punto delante de la <code class="docutils literal notranslate"><span class="pre">B</span></code> de <code class="docutils literal notranslate"><span class="pre">FOOBAR</span></code>, en el modo de sobrescritura, si se escribe
una <code class="docutils literal notranslate"><span class="pre">G</span></code>, se convierte en <code class="docutils literal notranslate"><span class="pre">FOOGAR</span></code>, en lugar de producir <code class="docutils literal notranslate"><span class="pre">FOOGBAR</span></code> como de costumbre. En el modo de sobrescritura, el comando
@ -216,7 +216,7 @@ sustituir uno existente. El comando de modo, <code class="docutils literal notra
trata las nuevas líneas y los tabuladores como otros caracteres, de modo que sobrescriben a otros y pueden ser sobrescritos por
ellos. En el modo Sobrescritura binaria, los dígitos después de <code class="docutils literal notranslate"><span class="pre">C-q</span></code> especifican un código de carácter octal, como es habitual.</p></li>
<li><p>El modo Línea visual (Visual Line mode) realiza el ajuste de palabras, haciendo que las líneas largas se ajusten a los límites de
palabra. Véase <a class="reference internal" href="15_ControlDisplay.html#id21"><span class="std std-ref">15.23 Modo de Línea Visual</span></a>.</p></li>
palabra. Véase <a class="reference internal" href="15_ControlDisplay.html#id22"><span class="std std-ref">15.23 Modo de Línea Visual</span></a>.</p></li>
</ul>
</div></blockquote>
<p>Y aquí hay algunos modos menores globales útiles:</p>
@ -226,7 +226,7 @@ palabra. Véase <a class="reference internal" href="15_ControlDisplay.html#id21"
<li><p>El modo Borrar Selección (Delete Selection mode) hace que la inserción de texto borre primero el texto de la región, si la región
está activa. Véase <a class="reference internal" href="12_LaMarca-y-LaRegion.html#id6"><span class="std std-ref">12.3 Operar en la Región</span></a>.</p></li>
<li><p>El modo Icompletar muestra una indicación de las terminaciones disponibles cuando se está en el minibúfer y la terminación está
activa. Véase <a class="reference internal" href="20_UsarVariosBuferes.html#id9"><span class="std std-ref">20.7.2 Selección Rápida del Minibúfer</span></a>.</p></li>
activa. Véase <a class="reference internal" href="20_UsarVariosBuferes.html#id10"><span class="std std-ref">20.7.2 Selección Rápida del Minibúfer</span></a>.</p></li>
<li><p>El modo Número de línea (Line Number mode) permite mostrar el número de línea actual en la línea de modo. Está activado por defecto.
Véase <a class="reference internal" href="../01_OrgPant.html#id6"><span class="std std-ref">1.3 La Línea de Modo</span></a>.</p></li>
<li><p>El modo Barra de Menús (Menu Bar mode) proporciona a cada marco una barra de menús. Está activado por defecto. Véase <a class="reference internal" href="22_MarcosPantallasGraf.html#id14"><span class="std std-ref">22.15 Barras de Menús</span></a>.</p></li>
@ -271,7 +271,7 @@ marca está activa. Está activado por defecto. Véase <a class="reference inter
</pre></div>
</div>
<p>donde <em>match-function</em> es una función Lisp que se llama al principio del búfer; si la función devuelve un valor no nulo, Emacs establece el modo principal con mode-function.</p>
<p>2Quinto -si Emacs todavía no ha encontrado un modo principal adecuado- mira el nombre del archivo. La correspondencia entre nombres de archivo y modos principales está controlada por la variable <code class="docutils literal notranslate"><span class="pre">auto-mode-alist</span></code>. Su valor es una lista en la que cada elemento tiene esta forma,</p>
<p>Quinto -si Emacs todavía no ha encontrado un modo principal adecuado- mira el nombre del archivo. La correspondencia entre nombres de archivo y modos principales está controlada por la variable <code class="docutils literal notranslate"><span class="pre">auto-mode-alist</span></code>. Su valor es una lista en la que cada elemento tiene esta forma,</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">(</span><span class="n">regexp</span> <span class="o">.</span> <span class="n">mode</span><span class="o">-</span><span class="n">function</span><span class="p">)</span>
</pre></div>
</div>
@ -284,7 +284,7 @@ marca está activa. Está activado por defecto. Véase <a class="reference inter
<p>En GNU/Linux y otros sistemas con nombres de archivo que distinguen mayúsculas de minúsculas, Emacs realiza una búsqueda que distingue mayúsculas de minúsculas a través de la lista <code class="docutils literal notranslate"><span class="pre">auto-mode-alist</span></code>; si esta búsqueda falla, realiza una segunda búsqueda que no distingue mayúsculas de minúsculas a través de la lista alist. Para suprimir la segunda búsqueda, cambie la variable <code class="docutils literal notranslate"><span class="pre">auto-mode-case-fold</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>. En sistemas con nombres de archivo que no distinguen mayúsculas de minúsculas, como Microsoft Windows, Emacs realiza una única búsqueda que no distingue mayúsculas de minúsculas a través de <code class="docutils literal notranslate"><span class="pre">auto-mode-alist</span></code>.</p>
<p>Finalmente, si Emacs todavía no ha encontrado un modo principal que usar, compara el texto al principio del búfer con la variable <code class="docutils literal notranslate"><span class="pre">magic-fallback-mode-alist</span></code>. Esta variable funciona como <code class="docutils literal notranslate"><span class="pre">magic-mode-alist</span></code>, descrita anteriormente, excepto que se consulta sólo después de <code class="docutils literal notranslate"><span class="pre">auto-mode-alist</span></code>. Por defecto, <code class="docutils literal notranslate"><span class="pre">magic-fallback-mode-alist</span></code> contiene formularios que comprueban archivos de imagen, archivos HTML/XML/SGML, archivos PostScript y archivos Conf estilo Unix.</p>
<p>Una vez que se encuentra un modo principal, Emacs hace una comprobación final para ver si el modo ha sido remapeado por <code class="docutils literal notranslate"><span class="pre">major-mode-remap-alist</span></code>, en cuyo caso usa el modo remapeado en su lugar. Esto se usa cuando se pueden usar varios modos principales diferentes para el mismo tipo de archivo, para que pueda especificar qué modo prefiere.</p>
<p>Si ha cambiado el modo principal de un búfer, puede volver al modo principal que Emacs habría elegido automáticamente, tecleando <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-kbd:<cite>x</cite> <code class="docutils literal notranslate"><span class="pre">normal-mode</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">normal-mode</span></code>). Esta es la misma función que <code class="docutils literal notranslate"><span class="pre">find-file</span></code> llama para elegir el modo principal. Si el búfer está visitando un archivo, este comando también procesa la línea <code class="docutils literal notranslate"><span class="pre">-*-</span></code> del archivo y la lista de variables locales del archivo (si existe). Véase <a class="reference internal" href="50_Personlzc.html#id9"><span class="std std-ref">50.2.4. Variables locales en Archivos</span></a>. Si el búfer no visita un archivo, el comando procesa sólo la especificación de modo principal, si la hay, en la línea <code class="docutils literal notranslate"><span class="pre">-*-</span></code> y en la lista de variables locales del archivo.</p>
<p>Si ha cambiado el modo principal de un búfer, puede volver al modo principal que Emacs habría elegido automáticamente, tecleando <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">normal-mode</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">normal-mode</span></code>). Esta es la misma función que <code class="docutils literal notranslate"><span class="pre">find-file</span></code> llama para elegir el modo principal. Si el búfer está visitando un archivo, este comando también procesa la línea <code class="docutils literal notranslate"><span class="pre">-*-</span></code> del archivo y la lista de variables locales del archivo (si existe). Véase <a class="reference internal" href="50_Personlzc.html#id9"><span class="std std-ref">50.2.4. Variables locales en Archivos</span></a>. Si el búfer no visita un archivo, el comando procesa sólo la especificación de modo principal, si la hay, en la línea <code class="docutils literal notranslate"><span class="pre">-*-</span></code> y en la lista de variables locales del archivo.</p>
<p>Los comandos <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-w</span></code> y`` set-visited-file-name`` cambian a un nuevo modo principal si el nuevo nombre de archivo implica un modo (véase <a class="reference internal" href="19_ManejoArchivos.html#id4"><span class="std std-ref">19.3 Guardar Archivos</span></a>). (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">C-s</span></code> también lo hace, si el búfer no estaba visitando un archivo.) Sin embargo, esto no ocurre si el contenido del búfer especifica un modo principal, y ciertos modos principales especiales no permiten cambiar el modo. Puede desactivar esta función de cambio de modo estableciendo <code class="docutils literal notranslate"><span class="pre">change-major-mode-with-file-name</span></code> en <code class="docutils literal notranslate"><span class="pre">nil</span></code>.</p>
</section>
</section>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -77,7 +77,7 @@
<li class="toctree-l1"><a class="reference internal" href="24_ModosMayores-Y-Menores.html">24 Modos Mayores y Menores</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">25 Indentación</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#comandos-de-indentado">25.1 Comandos de Indentado</a></li>
<li class="toctree-l2"><a class="reference internal" href="#paradas-de-tabulacion">25.2 Paradas de Tabulación</a></li>
<li class="toctree-l2"><a class="reference internal" href="#topes-de-tabulacion">25.2 Topes de Tabulación</a></li>
<li class="toctree-l2"><a class="reference internal" href="#tabulaciones-vs-espacios">25.3 Tabulaciones vs. Espacios</a></li>
<li class="toctree-l2"><a class="reference internal" href="#funciones-practicas-para-la-sangria">25.4 Funciones Prácticas para la Sangría</a></li>
</ul>
@ -142,81 +142,98 @@
<section id="indentacion">
<span id="id1"></span><h1>25 Indentación<a class="headerlink" href="#indentacion" title="Link to this heading"></a></h1>
<p>La sangría se refiere a la inserción o ajuste de caracteres de espacio en blanco (caracteres de espacio y/o tabulación) al principio de una línea de texto. Este capítulo documenta los comandos y opciones de sangría que son comunes al modo Texto y modos relacionados, así como a los modos de lenguaje de programación. Consulte Indentación para Programas, para obtener documentación adicional sobre la indentación en los modos de programación.</p>
<p>La forma más sencilla de realizar la sangría es la tecla TAB. En la mayoría de los modos principales, esto ejecuta el comando indent-for-tab-command. (En C y modos relacionados, TAB ejecuta el comando c-indent-line-or-region, que se comporta de forma similar, ver Comandos para la Indentación en C).</p>
<dl class="simple">
<dt>TAB</dt><dd><p>Inserta un espacio en blanco o aplica una sangría (o indentación) a la línea actual según el modo (comando sangría por tabulación). Si la región está activa, indenta todas las líneas
dentro de ella.</p>
</dd>
</dl>
<p>El comportamiento exacto de TAB depende del modo principal. En el modo Texto y modos principales relacionados, TAB normalmente inserta alguna combinación de caracteres de espacio y tabulación para avanzar el punto hasta la siguiente parada de tabulación (véase Paradas de TABulación). Para este propósito, la posición del primer carácter que no sea un espacio en blanco en la línea precedente se trata como un tabulador adicional, por lo que puede usar TAB para alinear el punto con la línea precedente. Si la región está activa (véase Funcionamiento de la Región), TAB actúa de forma especial: sangrará cada línea de la región de forma que su primer carácter que no sea un espacio en blanco se alinee con la línea precedente.</p>
<p>En los modos de programación, TAB aplica una sangría a la línea de código actual de forma que tenga sentido teniendo en cuenta el código de las líneas precedentes. Si la región está activa, todas las líneas de la región tienen esta sangría. Si el punto estaba inicialmente dentro de la sangría de la línea actual, se reposiciona al primer carácter no espacio en blanco de la línea.</p>
<p>Si sólo desea insertar un carácter de tabulación en el búfer, escriba C-q TAB (véase Inserción de Texto).</p>
<section id="comandos-de-indentado">
<h2>25.1 Comandos de Indentado<a class="headerlink" href="#comandos-de-indentado" title="Link to this heading"></a></h2>
<p>Aparte del comando TAB (indent-for-tab-command), Emacs proporciona una variedad de comandos para realizar la sangría de otras maneras.</p>
<dl>
<dt>C-M-o</dt><dd><p>Divide la línea actual en el punto (línea dividida). El texto de la línea posterior al punto se convierte en una nueva línea, con sangría en la misma columna en la que se encuentra el
punto. Este comando primero desplaza el punto por encima de los espacios y tabulaciones. Después, el punto se sitúa antes de la nueva línea insertada.</p>
</dd>
<dt>M-m</dt><dd><p>Se desplaza (hacia delante o hacia atrás) hasta el primer carácter que no sea un espacio en blanco de la línea actual (hacia atrás hasta la sangría). Si no hay caracteres que no sean
espacios en blanco en la línea, se desplaza al final de la línea.</p>
</dd>
<dt>M-i</dt><dd><p>Sangra (o indentna) los espacios en blanco en un punto, hasta el siguiente tabulador (tab to tab-stop). Véase Paradas de Tabulación.</p>
</dd>
<dt>M-x indent-relative</dt><dd><p>Inserta espacios en blanco en el punto, hasta que el punto esté alineado con el primer carácter sin espacio en blanco de la línea anterior (en realidad, la última línea sin espacios en
blanco). Si el punto ya está más a la derecha que eso, ejecute tab-to-tab-stop en su lugar, a menos que se llame con un argumento numérico, en cuyo caso no hace nada.</p>
</dd>
<dt>M-^</dt><dd><p>Une la línea anterior y la actual (delete indentation, eliminar sangría). Une las dos líneas limpiamente, sustituyendo cualquier sangría al principio de la línea actual, junto con el
límite de la línea, por un único espacio.</p>
<p>Como caso especial (útil para código Lisp), el espacio simple se omite si los caracteres a unir son paréntesis consecutivos de apertura y cierre, o si la unión sigue a otra nueva línea.</p>
<p>Si hay un prefijo de relleno, M-^ borra el prefijo de relleno si aparece después de la nueva línea que se borra. Véase El Prefijo de Relleno.</p>
<p>Con un argumento de prefijo, une la línea actual con la siguiente. Si la región está activa y no se da ningún argumento de prefijo, une todas las líneas de la región.</p>
</dd>
<dt>C-M-</dt><dd><p>Indenta todas las líneas de la región, como si hubiera escrito TAB al principio de cada línea (indent-region).</p>
<p>Si se proporciona un argumento numérico, se indentará cada línea de la región hasta ese número de columna.</p>
</dd>
<dt>C-x TAB</dt><dd><p>Indenta todas las líneas que comienzan en la región, moviendo las líneas afectadas como una unidad rígida (indent-rigidly).</p>
<p>Si se ejecuta sin argumento, este comando activa un modo transitorio para ajustar la sangría de las líneas afectadas de forma interactiva. Mientras este modo transitorio está activo,
al teclear IZQUIERDA o DERECHA se aplica una sangría de un espacio hacia la izquierda o hacia la derecha, respectivamente. También puede teclear S-LEFT o S-RIGHT para sangrar hacia la
izquierda o hacia la derecha hasta el siguiente tabulador (véase Paradas de Tabulación). Si se teclea cualquier otra tecla, se desactiva el modo transitorio y se actúa normalmente
sobre esta tecla.</p>
<p>Si se invoca con un argumento prefijo n, este comando avanza las líneas n espacios (sin activar el modo transitorio). Los valores negativos de n sangrar hacia atrás, por lo que puede
eliminar toda la sangría de las líneas de la región usando un argumento negativo grande, como este:</p>
<p>La <em>sangría</em> o <em>identación</em> se refiere a la inserción o ajuste de caracteres de <em>espacio en blanco</em> (caracteres de espacio y/o tabulación) al principio de una línea de texto. Este capítulo documenta los comandos y opciones de sangría que son comunes al modo Texto y modos relacionados, así como a los modos de lenguaje de programación. Consulte <a class="reference internal" href="27_EdDePrograms.html#id5"><span class="std std-ref">27.3 Indentación de Programas</span></a>, para obtener documentación adicional sobre la indentación en los modos de programación.</p>
<p>La forma más sencilla de realizar la sangría es la tecla <kbd class="kbd docutils literal notranslate">TAB</kbd> (<code class="docutils literal notranslate"><span class="pre">TAB</span></code>). En la mayoría de los modos principales, esto ejecuta el comando <code class="docutils literal notranslate"><span class="pre">indent-for-tab-command</span></code>. (En C y modos relacionados, <code class="docutils literal notranslate"><span class="pre">TAB</span></code> ejecuta el comando <code class="docutils literal notranslate"><span class="pre">c-indent-line-or-region</span></code>, que se comporta de forma similar, ver <a class="reference internal" href="27_EdDePrograms.html#id6"><span class="std std-ref">27.3.4 Comandos para la Indentación en C</span></a>).</p>
<p><kbd class="kbd docutils literal notranslate">TAB</kbd> (<code class="docutils literal notranslate"><span class="pre">TAB</span></code>)</p>
<blockquote>
<div><p>C-u -999 C-x TAB</p>
<div><p>Inserta un espacio en blanco o aplica una sangría (o indentación) a la línea actual según el modo (comando sangría por tabulación). Si la
región está activa, indenta todas las líneas dentro de ella.</p>
</div></blockquote>
</dd>
</dl>
</section>
<section id="paradas-de-tabulacion">
<h2>25.2 Paradas de Tabulación<a class="headerlink" href="#paradas-de-tabulacion" title="Link to this heading"></a></h2>
<p>Emacs define ciertos números de columna como tabuladores. Estos son usados como puntos de parada por TAB cuando se insertan espacios en blanco en modo Texto y modos relacionados (ver Indentación), y por comandos como M-i (ver Comandos de Indentación). La variable tab-stop-list controla estas posiciones. El valor por defecto es nil, lo que significa un tabulador cada 8 columnas. El valor también puede ser una lista de números de columna basados en cero (en orden creciente) en los que colocar los tabuladores. Emacs extiende la lista para siempre repitiendo la diferencia entre el último y el penúltimo elemento.</p>
<p>En lugar de personalizar la variable tab-stop-list directamente, una forma conveniente de ver y establecer los tabuladores es mediante el comando M-x edit-tab-stops. Esto cambia a un búfer que contiene una descripción de los ajustes de tabulación, que tiene este aspecto:</p>
<p>El comportamiento exacto de <code class="docutils literal notranslate"><span class="pre">TAB</span></code> depende del modo principal. En el modo Texto y modos principales relacionados, <code class="docutils literal notranslate"><span class="pre">TAB</span></code> normalmente inserta alguna combinación de caracteres de espacio y tabulación para avanzar el punto hasta la siguiente parada de tabulación (véase <a class="reference internal" href="#id3"><span class="std std-ref">25.2 Topes de Tabulación</span></a>). Para este propósito, la posición del primer carácter que no sea un espacio en blanco en la línea precedente se trata como un tabulador adicional, por lo que puede usar <code class="docutils literal notranslate"><span class="pre">TAB</span></code> para alinear el punto con la línea precedente. Si la región está activa (véase <a class="reference internal" href="12_LaMarca-y-LaRegion.html#id6"><span class="std std-ref">12.3 Operar en la Región</span></a>), <code class="docutils literal notranslate"><span class="pre">TAB</span></code> actúa de forma especial: sangrará cada línea de la región de forma que su primer carácter que no sea un espacio en blanco se alinee con la línea precedente.</p>
<p>En los modos de programación, <code class="docutils literal notranslate"><span class="pre">TAB</span></code> aplica una sangría a la línea de código actual de forma que tenga sentido teniendo en cuenta el código de las líneas precedentes. Si la región está activa, todas las líneas de la región tienen esta sangría. Si el punto estaba inicialmente dentro de la sangría de la línea actual, se reposiciona al primer carácter no espacio en blanco de la línea.</p>
<p>Si sólo desea insertar un carácter de tabulación en el búfer, escriba <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">q</kbd> <kbd class="kbd docutils literal notranslate">TAB</kbd> (<code class="docutils literal notranslate"><span class="pre">C-q</span> <span class="pre">TAB</span></code>) (véase <a class="reference internal" href="08_ComBasicEdic.html#id2"><span class="std std-ref">8.1 Inserción de Texto</span></a>).</p>
<section id="comandos-de-indentado">
<span id="id2"></span><h2>25.1 Comandos de Indentado<a class="headerlink" href="#comandos-de-indentado" title="Link to this heading"></a></h2>
<p>Aparte del comando <code class="docutils literal notranslate"><span class="pre">TAB</span></code> (<code class="docutils literal notranslate"><span class="pre">indent-for-tab-command</span></code>), Emacs proporciona una variedad de comandos para realizar la sangría de otras maneras.</p>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">q</kbd> (<code class="docutils literal notranslate"><span class="pre">C-M-o</span></code>)</p>
<blockquote>
<div><p>Divide la línea actual en el punto (<code class="docutils literal notranslate"><span class="pre">split-line</span></code>, dividir línea). El texto de la línea posterior al punto se convierte en una nueva
línea, con sangría en la misma columna en la que se encuentra el punto. Este comando primero desplaza el punto por encima de los espacios
y tabulaciones. Después, el punto se sitúa antes de la nueva línea insertada.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">m</kbd> (<code class="docutils literal notranslate"><span class="pre">M-m</span></code>)</p>
<blockquote>
<div><p>Se desplaza (hacia delante o hacia atrás) hasta el primer carácter que no sea un espacio en blanco de la línea actual (hacia atrás hasta
la sangría). Si no hay caracteres que no sean espacios en blanco en la línea, se desplaza al final de la línea.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">i</kbd> (<code class="docutils literal notranslate"><span class="pre">M-i</span></code>)</p>
<blockquote>
<div><p>Sangra (o indentna) los espacios en blanco en un punto, hasta el siguiente tabulador (<code class="docutils literal notranslate"><span class="pre">tab</span> <span class="pre">to</span> <span class="pre">tab-stop</span></code>). Véase <a class="reference internal" href="#id3"><span class="std std-ref">25.2 Topes de Tabulación</span></a>.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">indent-relative</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">indent-relative</span></code>)</p>
<blockquote>
<div><p>Inserta espacios en blanco en el punto, hasta que el punto esté alineado con el primer carácter sin espacio en blanco de la línea anterior
(en realidad, la última línea sin espacios en blanco). Si el punto ya está más a la derecha que eso, ejecute <code class="docutils literal notranslate"><span class="pre">tab-to-tab-stop</span></code> en su
lugar, a menos que se llame con un argumento numérico, en cuyo caso no hace nada.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">^</kbd> (<code class="docutils literal notranslate"><span class="pre">M-^</span></code>)</p>
<blockquote>
<div><blockquote>
<div><p>: : : : : :</p>
<div><p>Une la línea anterior y la actual (<code class="docutils literal notranslate"><span class="pre">delete-indentation</span></code>, eliminar sangría). Une las dos líneas limpiamente, sustituyendo cualquier
sangría al principio de la línea actual, junto con el límite de la línea, por un único espacio.</p>
<p>Como caso especial (útil para código Lisp), el espacio simple se omite si los caracteres a unir son paréntesis consecutivos de apertura y
cierre, o si la unión sigue a otra nueva línea.</p>
<p>Si hay un prefijo de relleno, <code class="docutils literal notranslate"><span class="pre">M-^</span></code> borra el prefijo de relleno si aparece después de la nueva línea que se borra. Véase <a class="reference internal" href="26_ComandsLengsHuma.html#id12"><span class="std std-ref">26.6.3 El Prefijo de Relleno</span></a>.</p>
</div></blockquote>
<p>0 1 2 3 4
0123456789012345678901234567890123456789012345678
To install changes, type C-c C-c</p>
<p>Con un argumento de prefijo, une la línea actual con la siguiente. Si la región está activa y no se da ningún argumento de prefijo, une
todas las líneas de la región.</p>
</div></blockquote>
<p>La primera línea contiene dos puntos en cada tabulador. Los números de las dos líneas siguientes están presentes sólo para indicar dónde están los dos puntos. Si el valor de tab-stop-list es nulo, como ocurre por defecto, no se muestran dos puntos inicialmente.</p>
<p>Puede editar este búfer para especificar diferentes paradas de tabulación colocando dos puntos en las columnas deseadas. El búfer usa el modo de sobreescritura (ver Modos Menores). Recuerde que Emacs extenderá la lista de paradas de tabulación para siempre repitiendo la diferencia entre las dos últimas paradas explícitas que coloque. Cuando haya terminado, teclee C-c C-c para que los nuevos tabuladores surtan efecto. Normalmente, los nuevos ajustes de tabulación se aplican a todos los búferes. Sin embargo, si ha hecho que la variable tab-stop-list sea local al búfer donde llamó a M-x edit-tab-stops (vea Variables Locales), entonces los nuevos ajustes de tabulación se aplican sólo a ese búfer. Para guardar la configuración de tabuladores para futuras sesiones de Emacs, usa la interfaz Personalizar para guardar el valor de tab-stop-list (ver Interfaz de Personalización Fácil).</p>
<p>Tenga en cuenta que las paradas de tabulación discutidas en esta sección no tienen nada que ver con cómo se muestran los caracteres de tabulación en el búfer. Los caracteres de tabulación siempre se muestran como espacios vacíos que se extienden hasta la siguiente parada de tabulación. Véase Cómo se Muestra el Texto.</p>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">\</kbd> (<code class="docutils literal notranslate"><span class="pre">C-M-\</span></code>)</p>
<blockquote>
<div><p>Indenta todas las líneas de la región, como si hubiera escrito <kbd class="kbd docutils literal notranslate">TAB</kbd> (<code class="docutils literal notranslate"><span class="pre">TAB</span></code>) al principio de cada línea (<code class="docutils literal notranslate"><span class="pre">indent-region</span></code>).</p>
<p>Si se proporciona un argumento numérico, se indentará cada línea de la región hasta ese número de columna.</p>
</div></blockquote>
<p><kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <kbd class="kbd docutils literal notranslate">TAB</kbd> (<code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">TAB</span></code>)</p>
<blockquote>
<div><p>Indenta todas las líneas que comienzan en la región, moviendo las líneas afectadas como una unidad rígida (<code class="docutils literal notranslate"><span class="pre">indent-rigidly</span></code>).</p>
<p>Si se ejecuta sin argumento, este comando activa un modo transitorio para ajustar la sangría de las líneas afectadas de forma interactiva.
Mientras este modo transitorio está activo, al teclear <kbd class="kbd docutils literal notranslate"></kbd> (<code class="docutils literal notranslate"><span class="pre">LEFT</span></code>, IZQUIERDA) o <kbd class="kbd docutils literal notranslate"></kbd> (<code class="docutils literal notranslate"><span class="pre">RIGTH</span></code>, DERECHA) se aplica una
sangría de un espacio hacia la izquierda o hacia la derecha, respectivamente. También puede teclear <kbd class="kbd docutils literal notranslate">Shift</kbd>-<kbd class="kbd docutils literal notranslate"></kbd> (<code class="docutils literal notranslate"><span class="pre">S-LEFT</span></code>) o
<kbd class="kbd docutils literal notranslate">Shift</kbd>-<kbd class="kbd docutils literal notranslate"></kbd> (<code class="docutils literal notranslate"><span class="pre">S-RIGHT</span></code>) para sangrar hacia la izquierda o hacia la derecha hasta el siguiente tabulador (véase <a class="reference internal" href="#id3"><span class="std std-ref">25.2 Topes de Tabulación</span></a>). Si se teclea cualquier otra tecla, se desactiva el modo transitorio y se actúa normalmente sobre esta tecla.</p>
<p>Si se invoca con un argumento prefijo <em>n</em>, este comando avanza las líneas <em>n</em> espacios (sin activar el modo transitorio). Los valores
negativos de <em>n</em> sangrar hacia atrás, por lo que puede eliminar toda la sangría de las líneas de la región usando un argumento negativo
grande, como este:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">C</span><span class="o">-</span><span class="n">u</span> <span class="o">-</span><span class="mi">999</span> <span class="n">C</span><span class="o">-</span><span class="n">x</span> <span class="n">TAB</span>
</pre></div>
</div>
</div></blockquote>
</section>
<section id="topes-de-tabulacion">
<span id="id3"></span><h2>25.2 Topes de Tabulación<a class="headerlink" href="#topes-de-tabulacion" title="Link to this heading"></a></h2>
<p>Emacs define ciertos números de columna como <em>topes de tabulación</em>. Estos son usados como puntos de parada por <code class="docutils literal notranslate"><span class="pre">TAB</span></code> cuando se insertan espacios en blanco en modo Texto y modos relacionados (ver <a class="reference internal" href="#id1"><span class="std std-ref">25 Indentación</span></a>), y por comandos como <code class="docutils literal notranslate"><span class="pre">M-i</span></code> (ver <a class="reference internal" href="#id2"><span class="std std-ref">25.1 Comandos de Indentado</span></a>). La variable <code class="docutils literal notranslate"><span class="pre">tab-stop-list</span></code> controla estas posiciones. El valor por defecto es <code class="docutils literal notranslate"><span class="pre">nil</span></code>, lo que significa un tabulador cada 8 columnas. El valor también puede ser una lista de números de columna basados en cero (en orden creciente) en los que colocar los tabuladores. Emacs extiende la lista para siempre repitiendo la diferencia entre el último y el penúltimo elemento.</p>
<p>En lugar de personalizar la variable <code class="docutils literal notranslate"><span class="pre">tab-stop-list</span></code> directamente, una forma conveniente de ver y establecer los tabuladores es mediante el comando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">edit-tab-stops</span></code>. Esto cambia a un búfer que contiene una descripción de los ajustes de tabulación, que tiene este aspecto:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span> <span class="p">:</span> <span class="p">:</span> <span class="p">:</span> <span class="p">:</span> <span class="p">:</span> <span class="p">:</span>
<span class="mi">0</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mi">4</span>
<span class="mi">0123456789012345678901234567890123456789012345678</span>
<span class="n">To</span> <span class="n">install</span> <span class="n">changes</span><span class="p">,</span> <span class="nb">type</span> <span class="n">C</span><span class="o">-</span><span class="n">c</span> <span class="n">C</span><span class="o">-</span><span class="n">c</span>
</pre></div>
</div>
<p>La primera línea contiene dos puntos en cada tabulador. Los números de las dos líneas siguientes están presentes sólo para indicar dónde están los dos puntos. Si el valor de <code class="docutils literal notranslate"><span class="pre">tab-stop-list</span></code> es nulo, como ocurre por defecto, no se muestran dos puntos inicialmente.</p>
<p>Puede editar este búfer para especificar diferentes paradas de tabulación colocando dos puntos en las columnas deseadas. El búfer usa el modo de sobreescritura (ver <a class="reference internal" href="24_ModosMayores-Y-Menores.html#id5"><span class="std std-ref">24.2 Modos Menores</span></a>). Recuerde que Emacs extenderá la lista de paradas de tabulación para siempre repitiendo la diferencia entre las dos últimas paradas explícitas que coloque. Cuando haya terminado, teclee <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">c</kbd> <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">c</kbd> (<code class="docutils literal notranslate"><span class="pre">C-c</span> <span class="pre">C-c</span></code>) para que los nuevos tabuladores surtan efecto. Normalmente, los nuevos ajustes de tabulación se aplican a todos los búferes. Sin embargo, si ha hecho que la variable <code class="docutils literal notranslate"><span class="pre">tab-stop-list</span></code> sea local al búfer donde llamó a <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">edit-tab-stops</span></code> (vea <a class="reference internal" href="50_Personlzc.html#id8"><span class="std std-ref">50.2.3 Variables Locales</span></a>), entonces los nuevos ajustes de tabulación se aplican sólo a ese búfer. Para guardar la configuración de tabuladores para futuras sesiones de Emacs, usa la interfaz Personalizar para guardar el valor de <code class="docutils literal notranslate"><span class="pre">tab-stop-list</span></code> (ver <a class="reference internal" href="50_Personlzc.html#id2"><span class="std std-ref">50.1 Interfaz de Personalización Fácil</span></a>).</p>
<p>Tenga en cuenta que las paradas de tabulación discutidas en esta sección no tienen nada que ver con cómo se muestran los caracteres de tabulación en el búfer. Los caracteres de tabulación siempre se muestran como espacios vacíos que se extienden hasta la siguiente parada de tabulación. Véase <a class="reference internal" href="15_ControlDisplay.html#id19"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>.</p>
</section>
<section id="tabulaciones-vs-espacios">
<h2>25.3 Tabulaciones vs. Espacios<a class="headerlink" href="#tabulaciones-vs-espacios" title="Link to this heading"></a></h2>
<p>Normalmente, los comandos de sangría insertan (o eliminan) la serie más corta posible de caracteres de tabulación y espacio para alinearse con la columna deseada. Los caracteres de tabulación se muestran como un tramo de espacio vacío que se extiende hasta el siguiente tabulador. Por defecto, hay un tabulador por cada columna de ancho de tabulación (8 por defecto). Véase Cómo se Muestra el Texto.</p>
<p>Si lo prefiere, toda la indentación puede hacerse sólo a partir de espacios. Para ello, establezca la variable local del búfer indent-tabs-mode a nil. Consulte Variables Locales, para más información sobre la configuración de variables locales del búfer. Tenga en cuenta, sin embargo, que C-q TAB siempre inserta un carácter de tabulación, independientemente del valor de indent-tabs-mode.</p>
<p>Una razón para establecer indent-tabs-mode a nil es que no todos los editores muestran los caracteres de tabulación de la misma manera. Los Usuarios de Emacs, también, pueden tener diferentes valores personalizados de tab-width. Usando sólo espacios, puede asegurarse de que su archivo tiene siempre el mismo aspecto. Si sólo le importa cómo se ve dentro de Emacs, otra forma de abordar este problema es establecer la variable tab-width en una variable local de archivo (vea Variables Locales en Archivos).</p>
<p>También hay comandos para convertir tabuladores en espacios o viceversa, preservando siempre las columnas de todo el texto que no tenga espacios en blanco. M-x tabify escanea la región en busca de secuencias de espacios, y convierte secuencias de al menos dos espacios en tabuladores si puede hacerse sin cambiar la sangría. M-x untabify cambia todos los tabuladores de la región por el número de espacios apropiado.</p>
<p>Normalmente, los comandos de sangría insertan (o eliminan) la serie más corta posible de caracteres de tabulación y espacio para alinearse con la columna deseada. Los caracteres de tabulación se muestran como un tramo de espacio vacío que se extiende hasta el siguiente <em>tope tabulación</em>. Por defecto, hay un tabulador por cada columna de ancho de tabulación (8 por defecto). Véase <a class="reference internal" href="15_ControlDisplay.html#id19"><span class="std std-ref">15.20 Cómo se Muestra el Texto</span></a>.</p>
<p>Si lo prefiere, toda la indentación puede hacerse sólo a partir de espacios. Para ello, establezca la variable local del búfer <code class="docutils literal notranslate"><span class="pre">indent-tabs-mode</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>. Consulte <a class="reference internal" href="50_Personlzc.html#id8"><span class="std std-ref">50.2.3 Variables Locales</span></a>, para más información sobre la configuración de variables locales del búfer. Tenga en cuenta, sin embargo, que <code class="docutils literal notranslate"><span class="pre">C-q</span> <span class="pre">TAB</span></code> siempre inserta un carácter de tabulación, independientemente del valor de <code class="docutils literal notranslate"><span class="pre">indent-tabs-mode</span></code>.</p>
<p>Una razón para establecer <code class="docutils literal notranslate"><span class="pre">indent-tabs-mode</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code> es que no todos los editores muestran los caracteres de tabulación de la misma manera. Los Usuarios de Emacs, también, pueden tener diferentes valores personalizados de <code class="docutils literal notranslate"><span class="pre">tab-width</span></code>. Usando sólo espacios, puede asegurarse de que su archivo tiene siempre el mismo aspecto. Si sólo le importa cómo se ve dentro de Emacs, otra forma de abordar este problema es establecer la variable <code class="docutils literal notranslate"><span class="pre">tab-width</span></code> en una variable local de archivo (vea <a class="reference internal" href="50_Personlzc.html#id9"><span class="std std-ref">50.2.4. Variables locales en Archivos</span></a>).</p>
<p>También hay comandos para convertir tabuladores en espacios o viceversa, preservando siempre las columnas de todo el texto que no tenga espacios en blanco. <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">tabify</span></code> escanea la región en busca de secuencias de espacios, y convierte secuencias de al menos dos espacios en tabuladores si puede hacerse sin cambiar la sangría. <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">untabify</span></code> cambia todos los tabuladores de la región por el número de espacios apropiado.</p>
</section>
<section id="funciones-practicas-para-la-sangria">
<span id="id2"></span><h2>25.4 Funciones Prácticas para la Sangría<a class="headerlink" href="#funciones-practicas-para-la-sangria" title="Link to this heading"></a></h2>
<p>La variable tab-always-indent modifica el comportamiento del comando TAB (sangría para el comando tab). El valor por defecto, t, proporciona el comportamiento descrito en Sangría. Si cambia el valor por el símbolo complete, TAB intentará primero aplicar la sangría a la línea actual y, si la línea ya estaba sangrada, intentará completar el texto en el punto (véase Completar nombres de símbolos). Si el valor es nil, TAB aplica sangría a la línea actual sólo si el punto está en el margen izquierdo o en la sangría de la línea; en caso contrario, inserta un carácter de tabulación.</p>
<p>Si tab-always-indent es completo, la opción de expandir o sangrar puede personalizarse aún más mediante la variable tab-first-completion. Por ejemplo, si esa variable es eol, sólo completa si el punto está al final de una línea. Vea Modo Específico de Sangría en el Manual de Referencia de Emacs Lisp, para más detalles.</p>
<p>El modo Electric Indent es un modo global menor que automáticamente indenta la línea después de cada RET que escriba. Este modo está activado por defecto. Para activar este modo menor, escriba M-x electric-indent-mode. Para activar este modo en un único búfer, use M-x electric-indent-local-mode.</p>
<span id="id4"></span><h2>25.4 Funciones Prácticas para la Sangría<a class="headerlink" href="#funciones-practicas-para-la-sangria" title="Link to this heading"></a></h2>
<p>La variable <code class="docutils literal notranslate"><span class="pre">tab-always-indent</span></code> modifica el comportamiento del comando <code class="docutils literal notranslate"><span class="pre">TAB</span></code> (<code class="docutils literal notranslate"><span class="pre">indent-for-tab-command</span></code> ,sangría para el comando tab). El valor por defecto, <code class="docutils literal notranslate"><span class="pre">t</span></code>, proporciona el comportamiento descrito en Sangría. Si cambia el valor por el símbolo complete, TAB intentará primero aplicar la sangría a la línea actual y, si la línea ya estaba sangrada, intentará completar el texto en el punto (véase <a class="reference internal" href="27_EdDePrograms.html#id20"><span class="std std-ref">27.8 Completado de Nombres de Símbolos</span></a>). Si el valor es <code class="docutils literal notranslate"><span class="pre">nil</span></code>, <code class="docutils literal notranslate"><span class="pre">TAB</span></code> aplica sangría a la línea actual sólo si el punto está en el margen izquierdo o en la sangría de la línea; en caso contrario, inserta un carácter de tabulación.</p>
<p>Si <code class="docutils literal notranslate"><span class="pre">tab-always-indent</span></code> es completo, la opción de expandir o sangrar puede personalizarse aún más mediante la variable <code class="docutils literal notranslate"><span class="pre">tab-first-completion</span></code>. Por ejemplo, si esa variable es eol, sólo completa si el punto está al final de una línea. Vea <strong>Modo Específico de Sangría</strong> en el Manual de Referencia de Emacs Lisp, para más detalles.</p>
<p>El modo Electric Indent es un modo global menor que automáticamente indenta la línea después de cada <code class="docutils literal notranslate"><span class="pre">RET</span></code> que escriba. Este modo está activado por defecto. Para activar este modo menor, escriba <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">electric-indent-mode</span></code>. Para activar este modo en un único búfer, use <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">electric-indent-local-mode</span></code>.</p>
</section>
</section>

File diff suppressed because it is too large Load Diff

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -86,7 +86,10 @@
<li class="toctree-l3"><a class="reference internal" href="#modo-que-funcion-which-function-mode">27.2.4 Modo Qué función (Which Function Mode)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#indentacion-de-programas">27.3 Indentación de Programas</a></li>
<li class="toctree-l2"><a class="reference internal" href="#indentacion-de-programas">27.3 Indentación de Programas</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#comandos-para-la-indentacion-en-c">27.3.4 Comandos para la Indentación en C</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#comandos-para-la-edicion-con-parentesis">27.4 Comandos para la Edición con Paréntesis</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#expresiones-con-parentesis-equilibrados">27.4.1 Expresiones con Paréntesis Equilibrados</a></li>
</ul>
@ -248,7 +251,7 @@
</section>
</section>
<section id="indentacion-de-programas">
<h2>27.3 Indentación de Programas<a class="headerlink" href="#indentacion-de-programas" title="Link to this heading"></a></h2>
<span id="id5"></span><h2>27.3 Indentación de Programas<a class="headerlink" href="#indentacion-de-programas" title="Link to this heading"></a></h2>
<p>La mejor manera de mantener un programa correctamente indentado es usar el Editor para reindentarlo a medida que lo cambia. Emacs tiene comandos para sangrar una sola línea, un número específico de líneas, o todas las líneas dentro de una sola agrupación parentética.</p>
<p>Ver Indentación, para información general sobre la indentación. Esta sección describe las características de sangría específicas de los modos de lenguaje de programación.</p>
<p>Emacs también proporciona un Lisp pretty-printer en el paquete pp, que reformatea objetos Lisp con una sangría de aspecto agradable. Vea pp en el Manual de Referencia de Emacs Lisp.</p>
@ -297,7 +300,8 @@
</dd>
</dl>
</div></blockquote>
<p>27.3.4 Comandos para la Indentación en C</p>
<section id="comandos-para-la-indentacion-en-c">
<span id="id6"></span><h3>27.3.4 Comandos para la Indentación en C<a class="headerlink" href="#comandos-para-la-indentacion-en-c" title="Link to this heading"></a></h3>
<p>Estas son las funciones especiales para la sangría en modo C y modos relacionados:</p>
<dl>
<dt>C-c C-q</dt><dd><p>Reindenta la definición de función de nivel superior actual o la declaración de tipo agregado (c-indent-defun en modo CC, c-ts-mode-indent-defun en modo c-ts basado en tree-sitter).</p>
@ -340,13 +344,14 @@ equilibrada que comienza en la línea actual, si la línea actual necesita reent
<p>Vea Conceptos Básicos del Motor de Sangría en el Manual del Modo CC, y Personalización de la Sangría en el Manual del Modo CC, para más información sobre la personalización de la sangría para C y modos relacionados, incluyendo cómo anular partes de un estilo existente y cómo definir sus propios estilos.</p>
<p>Como alternativa a especificar un estilo, puedes decirle a Emacs que adivine un estilo tecleando M-x c-guess en un búfer de código de ejemplo. Luego puede aplicar el estilo adivinado a otros búferes con M-x c-guess-install. Ver Adivinar el Estilo en el Manual del Modo CC, para más detalles.</p>
</section>
</section>
<section id="comandos-para-la-edicion-con-parentesis">
<span id="id5"></span><h2>27.4 Comandos para la Edición con Paréntesis<a class="headerlink" href="#comandos-para-la-edicion-con-parentesis" title="Link to this heading"></a></h2>
<span id="id7"></span><h2>27.4 Comandos para la Edición con Paréntesis<a class="headerlink" href="#comandos-para-la-edicion-con-parentesis" title="Link to this heading"></a></h2>
<p>Esta sección describe los comandos y características que aprovechan la estructura de paréntesis en un programa, o le ayudan a mantenerla equilibrada.</p>
<p>Cuando se habla de estas facilidades, el término «paréntesis» también incluye llaves, corchetes, o cualquier delimitador que se defina para coincidir en pares. El modo principal controla qué delimitadores son significativos, a través de la tabla de sintaxis (véase Tablas de Sintaxis en El Manual de Referencia de Emacs Lisp). En Lisp, sólo cuentan los paréntesis; en C, estos comandos se aplican también a llaves y corchetes.</p>
<p>Puede usar M-x check-parens para encontrar cualquier paréntesis y comillas de cadena no balanceados en el búfer.</p>
<section id="expresiones-con-parentesis-equilibrados">
<span id="id6"></span><h3>27.4.1 Expresiones con Paréntesis Equilibrados<a class="headerlink" href="#expresiones-con-parentesis-equilibrados" title="Link to this heading"></a></h3>
<span id="id8"></span><h3>27.4.1 Expresiones con Paréntesis Equilibrados<a class="headerlink" href="#expresiones-con-parentesis-equilibrados" title="Link to this heading"></a></h3>
<p>Cada modo de lenguaje de programación tiene su propia definición de una expresión balanceada. Las expresiones balanceadas típicamente incluyen símbolos individuales, números y constantes de cadena, así como trozos de código encerrados en un par de delimitadores coincidentes. Los siguientes comandos tratan con expresiones balanceadas (en Emacs, tales expresiones se denominan internamente sexps14).</p>
<dl class="simple">
<dt>C-M-f</dt><dd><p>Avanza sobre una expresión equilibrada (forward-sexp).</p>
@ -433,7 +438,7 @@ pantalla.</p>
</section>
</section>
<section id="manipulacion-de-comentarios">
<span id="id7"></span><h2>27.5. Manipulación de Comentarios<a class="headerlink" href="#manipulacion-de-comentarios" title="Link to this heading"></a></h2>
<span id="id9"></span><h2>27.5. Manipulación de Comentarios<a class="headerlink" href="#manipulacion-de-comentarios" title="Link to this heading"></a></h2>
<p>Debido a que los comentarios son una parte tan importante de la programación, Emacs proporciona comandos especiales para editar e insertar comentarios. También puede revisar la ortografía de los comentarios con el modo Flyspell Prog (ver Revisar y Corregir la Ortografía).</p>
<p>Algunos modos principales tienen reglas especiales para sangrar diferentes tipos de comentarios. Por ejemplo, en el código Lisp, los comentarios que empiezan con dos puntos y coma tienen sangría como si fueran líneas de código, mientras que los que empiezan con tres puntos y coma se supone que están alineados con el margen izquierdo y se usan a menudo para seccionar. Emacs entiende estas convenciones; por ejemplo, si se escribe TAB en una línea de comentario, el comentario se sangrará a la posición adecuada.</p>
<blockquote>
@ -479,21 +484,21 @@ C-c C-c (in C-like modes)</p>
<p>Para modos similares a C, puede configurar el efecto exacto de M-; estableciendo las variables c-indent-comment-alist y c-indent-comments-syntactically-p. Por ejemplo, en una línea que termina en una llave de cierre, M-; pone el comentario un espacio después de la llave en lugar de en la columna-comentario. Para más detalles, consulte Comandos de Comentario en el Manual del Modo CC.</p>
<p>27.5.2 Varias Líneas de Comentarios</p>
<p>Si está escribiendo un comentario y desea continuarlo en otra línea, escriba M-j o C-M-j (default-indent-new-line). Esto rompe la línea actual e inserta los delimitadores de comentario y la sangría necesarios para continuar el comentario.</p>
<p>Para lenguajes con delimitadores de comentario de cierre (por ejemplo, “<a href="#id8"><span class="problematic" id="id9">*</span></a>/” en C), el comportamiento exacto de M-j depende del valor de la variable comment-multi-line. Si el valor es nulo, el comando cierra el comentario en la línea anterior e inicia un nuevo comentario en la nueva línea. En caso contrario, abre una nueva línea dentro de los delimitadores de comentario actuales.</p>
<p>Para lenguajes con delimitadores de comentario de cierre (por ejemplo, “<a href="#id10"><span class="problematic" id="id11">*</span></a>/” en C), el comportamiento exacto de M-j depende del valor de la variable comment-multi-line. Si el valor es nulo, el comando cierra el comentario en la línea anterior e inicia un nuevo comentario en la nueva línea. En caso contrario, abre una nueva línea dentro de los delimitadores de comentario actuales.</p>
<p>Cuando el modo Relleno automático (Auto Fill mode) está activado, pasar la columna de relleno mientras se escribe un comentario también continúa el comentario, del mismo modo que una invocación explícita de M-j.</p>
<p>Para convertir líneas existentes en líneas de comentario, use M-; con la región activa, o use M-x comment-region como se describe en la sección anterior.</p>
<p>Puede configurar el modo C para que cuando escriba una “/” al principio de una línea en un comentario de bloque multilínea, se cierre el comentario. Para ello, active la función de limpieza comment-close-slash. Vea Limpiezas en el Manual del Modo CC.</p>
<p>27.5.3 Opciones que Controlan los Comentarios</p>
<p>Como se mencionó en Comandos de comentario, cuando el comando M-j añade un comentario a una línea, intenta colocar el comentario entre las columnas especificadas por las variables locales del búfer comment-column (columna-comentario) y comment-fill-column (o si es nil, entonces el valor de fill-column, ver Comandos Explícitos de Relleno). Puede establecer el valor local o el valor por defecto de estas variables locales del búfer de la forma habitual (consulte Variables Locales). Alternativamente, puede teclear C-x ; (comment-set-column) para establecer el valor de comment-column en el búfer actual a la columna donde se encuentra actualmente el punto. C-u C-x ; establece la columna de comentario para que coincida con el último comentario antes del punto en el búfer, y luego hace un M-; para alinear el comentario de la línea actual bajo el anterior.</p>
<p>Los comandos de comentario reconocen los comentarios basándose en la expresión regular que es el valor de la variable comment-start-skip. Asegúrese de que esta expresión regular no coincide con la cadena nula. Puede coincidir con más que el delimitador de inicio de comentario en el sentido más estricto de la palabra; por ejemplo, en modo C el valor de la variable podría ser «/\*+[ t]*|//+[ t]*», que coincide con asteriscos y espacios extra después del propio “/<a href="#id10"><span class="problematic" id="id11">*</span></a>”, y acepta también comentarios estilo C++ (“//”). (Observe que “\' es necesario en la sintaxis Lisp para incluir un “' en la cadena, que es necesario para negar a la primera estrella su significado especial en la sintaxis expreg. Véase Barra Invertida en Expresiones Regulares).</p>
<p>Cuando un comando comment crea un nuevo comentario, inserta el valor de comment-start como delimitador de apertura del comentario. También inserta el valor de comment-end después del punto, como delimitador de cierre del comentario. Por ejemplo, en modo Lisp, comment-start es “»;»” y comment-end es «» (la cadena vacía). En modo C, comment-start es «/* « y comment-end es « <a href="#id12"><span class="problematic" id="id13">*</span></a>/».</p>
<p>Los comandos de comentario reconocen los comentarios basándose en la expresión regular que es el valor de la variable comment-start-skip. Asegúrese de que esta expresión regular no coincide con la cadena nula. Puede coincidir con más que el delimitador de inicio de comentario en el sentido más estricto de la palabra; por ejemplo, en modo C el valor de la variable podría ser «/\*+[ t]*|//+[ t]*», que coincide con asteriscos y espacios extra después del propio “/<a href="#id12"><span class="problematic" id="id13">*</span></a>”, y acepta también comentarios estilo C++ (“//”). (Observe que “\' es necesario en la sintaxis Lisp para incluir un “' en la cadena, que es necesario para negar a la primera estrella su significado especial en la sintaxis expreg. Véase Barra Invertida en Expresiones Regulares).</p>
<p>Cuando un comando comment crea un nuevo comentario, inserta el valor de comment-start como delimitador de apertura del comentario. También inserta el valor de comment-end después del punto, como delimitador de cierre del comentario. Por ejemplo, en modo Lisp, comment-start es “»;»” y comment-end es «» (la cadena vacía). En modo C, comment-start es «/* « y comment-end es « <a href="#id14"><span class="problematic" id="id15">*</span></a>/».</p>
<p>La variable comment-padding especifica una cadena que los comandos de comentario deben insertar entre el delimitador o delimitadores del comentario y el texto del comentario. El valor por defecto, “» «”, especifica un único espacio. Alternativamente, el valor puede ser un número, que especifica ese número de espacios, o nil, que significa ningún espacio.</p>
<p>La variable comment-multi-line controla cómo M-j y el modo Auto Fill continúan los comentarios en múltiples líneas. Véase Múltiples Líneas de Comentarios.</p>
<p>La variable comment-indent-function debe contener una función que será llamada para calcular la alineación de un comentario recién insertado o para alinear un comentario existente. Se establece de forma diferente en los distintos modos principales. La función se llama sin argumentos, pero con un punto al principio del comentario, o al final de una línea si se va a insertar un nuevo comentario. Debe devolver la columna en la que debe comenzar el comentario. Por ejemplo, la función por defecto basa su decisión en cuántos caracteres de comentario comienzan un comentario existente.</p>
<p>Emacs también intenta alinear los comentarios en líneas adyacentes. Para anular esto, la función puede devolver una cons de dos enteros (posiblemente iguales) para indicar un rango aceptable de sangría.</p>
</section>
<section id="busqueda-de-documentacion">
<span id="id14"></span><h2>27.6 Búsqueda de Documentación<a class="headerlink" href="#busqueda-de-documentacion" title="Link to this heading"></a></h2>
<span id="id16"></span><h2>27.6 Búsqueda de Documentación<a class="headerlink" href="#busqueda-de-documentacion" title="Link to this heading"></a></h2>
<p>Emacs proporciona varias características que puede usar para buscar la documentación de funciones, variables y comandos que planea usar en su programa.</p>
<p>27.6.1 Búsqueda de Documentación en Info</p>
<p>Para los modos principales que se aplican a lenguajes que tienen documentación en Info, puede usar C-h S (info-lookup-symbol) para ver la documentación Info de un símbolo usado en el programa. Especifique el símbolo con el minibúfer; el valor predeterminado es el símbolo que aparece en el búfer en el punto. Por ejemplo, en modo C se busca el símbolo en el Manual de la Biblioteca C. El comando sólo funciona si están instalados los archivos Info del manual correspondiente.</p>
@ -504,13 +509,13 @@ C-c C-c (in C-like modes)</p>
<p>Puede leer la página man de un comando del sistema operativo, función de biblioteca o llamada al sistema, con el comando M-x man. Esto solicita un tema, con completado (ver Completado), y ejecuta el programa man para formatear la página man correspondiente. Si el sistema lo permite, ejecuta man de forma asíncrona, para que pueda seguir editando mientras se formatea la página. El resultado va a un búfer llamado <em>Man topic</em>. Estos búferes usan un modo principal especial, el modo Man, que facilita el desplazamiento y el salto a otras páginas de manual. Para más detalles, teclee C-h m mientras se encuentre en un búfer en modo Man (man Mode).</p>
<p>Cada página del manual pertenece a una de las diez o más secciones, cada una de ellas nombrada por un dígito o por un dígito y una letra. A veces hay páginas del manual con el mismo nombre en diferentes secciones. Para leer una página del manual de una sección específica, escriba “topic(section)” o “section topic” cuando M-x man le pregunte por el tema. Por ejemplo, la página del manual de la función chmod de la biblioteca C está en la sección 2, pero hay un comando de shell con el mismo nombre, cuya página del manual está en la sección 1; para ver la primera, escriba M-x man RET chmod(2) RET.</p>
<p>Si no especifica una sección, M-x man normalmente muestra sólo la primera página man encontrada. En algunos sistemas, el programa man acepta una opción de línea de comandos “-a”, que le indica que muestre todas las páginas man del tema especificado. Para usar esta opción, cambie el valor de la variable Man-switches a “»-a»”. Entonces, en el búfer del modo Man, puede escribir M-n y M-p para cambiar entre páginas de manual de diferentes secciones. La línea de modo muestra cuántas páginas de manual hay disponibles.</p>
<p>Una forma alternativa de leer páginas de manual es el comando M-x woman. A diferencia de M-x man, no ejecuta ningún programa externo para formatear y mostrar las páginas de manual; el formateo lo hace Emacs, por lo que funciona en sistemas como MS-Windows donde el programa man puede no estar disponible. Pide una página man, y la muestra en un búfer llamado <a href="#id15"><span class="problematic" id="id16">*</span></a>WoMan section topic.</p>
<p>Una forma alternativa de leer páginas de manual es el comando M-x woman. A diferencia de M-x man, no ejecuta ningún programa externo para formatear y mostrar las páginas de manual; el formateo lo hace Emacs, por lo que funciona en sistemas como MS-Windows donde el programa man puede no estar disponible. Pide una página man, y la muestra en un búfer llamado <a href="#id17"><span class="problematic" id="id18">*</span></a>WoMan section topic.</p>
<p>M-x woman calcula la lista de completado de las páginas de manual la primera vez que se invoca el comando. Con un argumento numérico, vuelve a calcular esta lista; esto es útil si añade o elimina páginas de manual.</p>
<p>Si escribe el nombre de una página de manual y M-x woman encuentra que existen varias páginas de manual con el mismo nombre en diferentes secciones, aparece una ventana con posibles candidatos pidiéndole que elija uno de ellos.</p>
<p>Tenga en cuenta que M-x woman aún no soporta las últimas características de las páginas man modernas, por lo que recomendamos usar M-x man si está disponible en su sistema.</p>
<p>Para más información sobre cómo configurar y usar M-x woman, vea el manual WoMan Info, que se distribuye con Emacs.</p>
<section id="busqueda-de-documentacion-en-lenguajes-de-programacion">
<span id="id17"></span><h3>27.6.3. Búsqueda de Documentación en Lenguajes de Programación<a class="headerlink" href="#busqueda-de-documentacion-en-lenguajes-de-programacion" title="Link to this heading"></a></h3>
<span id="id19"></span><h3>27.6.3. Búsqueda de Documentación en Lenguajes de Programación<a class="headerlink" href="#busqueda-de-documentacion-en-lenguajes-de-programacion" title="Link to this heading"></a></h3>
<p>Cuando edite código Emacs Lisp, puede usar los comandos C-h f (describe-function) y C-h v (describe-variable) para ver la documentación incorporada para las funciones y variables Lisp que quiera usar. Consulte Ayuda por Comando o Nombre de Variable.</p>
<p>ElDoc15 es un modo menor de búfer local que ayuda a buscar documentación de símbolos (funciones, métodos, clases, variables, etc.) en su programa. Cuando este modo está activado, el área de eco muestra información útil siempre que haya un símbolo documentado en el punto. Por ejemplo, en búferes bajo el modo Emacs Lisp, muestra la lista de argumentos de una función en el punto, y para una variable Lisp muestra la primera línea de la cadena de documentación de la variable.</p>
<p>Para activar el modo ElDoc, escriba M-x eldoc-mode. También existe un modo ElDoc global, que está activado por defecto, y activa el modo ElDoc en los búferes cuyo modo principal establece las variables que se describen a continuación. Use M-x global-eldoc-mode para desactivarlo globalmente.</p>
@ -598,7 +603,7 @@ comentarios). El valor por defecto es code.</p>
</dl>
</section>
<section id="completado-de-nombres-de-simbolos">
<span id="id18"></span><h2>27.8 Completado de Nombres de Símbolos<a class="headerlink" href="#completado-de-nombres-de-simbolos" title="Link to this heading"></a></h2>
<span id="id20"></span><h2>27.8 Completado de Nombres de Símbolos<a class="headerlink" href="#completado-de-nombres-de-simbolos" title="Link to this heading"></a></h2>
<p>El completado se hace normalmente en el minibúfer (ver Completado), pero también puede completar nombres de símbolos en búferes Emacs ordinarios.</p>
<p>En la mayoría de los modos de lenguaje de programación, C-M-i (o M-TAB16) invoca el comando completion-at-point, que genera la lista de posibles terminaciones para el símbolo en el punto. Este comando usa las facilidades de soporte disponibles para obtener las terminaciones candidatas:</p>
<p>Si Eglot está activado para el proyecto del búfer actual (véase Trabajar con Proyectos) y el modo principal del búfer actual, el comando intenta usar el servidor de idiomas correspondiente para producir la lista de candidatos a finalización. Véase Características de Eglot en Eglot: El cliente LSP de Emacs.</p>
@ -684,7 +689,7 @@ precedente. Con el argumento prefijo n, retrocede n - 1 sentencias.</p>
</section>
<section id="caracteres-c-electricos">
<h3>27.12.2 Caracteres C Eléctricos<a class="headerlink" href="#caracteres-c-electricos" title="Link to this heading"></a></h3>
<p>En modo C y modos relacionados, ciertos caracteres de impresión son eléctricos, además de insertarse a sí mismos, también reentintan la línea actual, y opcionalmente también insertan nuevas líneas. Los caracteres eléctricos son {, }, :, #, ;, ,, &lt;, &gt;, /, <a href="#id19"><span class="problematic" id="id20">*</span></a>, (, y ).</p>
<p>En modo C y modos relacionados, ciertos caracteres de impresión son eléctricos, además de insertarse a sí mismos, también reentintan la línea actual, y opcionalmente también insertan nuevas líneas. Los caracteres eléctricos son {, }, :, #, ;, ,, &lt;, &gt;, /, <a href="#id21"><span class="problematic" id="id22">*</span></a>, (, y ).</p>
<p>Puede que la sangría eléctrica le resulte incómoda si está editando código con sangría caótica. Si es nuevo en el modo CC, puede que le resulte desconcertante. Puede activar la acción eléctrica con el comando C-c C-l; cuando está activada, “/cl” aparece en la línea de modo después del nombre del modo (donde c, si está presente, es “*” o “/”, dependiendo de si el estilo de comentario es bloque o línea). Consulte Modos Menores en el Manual del Modo CC, para más información sobre los indicadores de línea de modo en el Modo CC.</p>
<dl class="simple">
<dt>C-c C-l</dt><dd><p>Alterna la acción eléctrica (c-toggle-electric-state). Con un argumento prefijo positivo, este comando activa la acción eléctrica, con uno negativo la desactiva.</p>
@ -721,7 +726,7 @@ desactiva si es negativo.</p>
<p>La variable c-hungry-delete-key controla si la función hungry-delete está activada.</p>
</section>
<section id="otros-comandos-para-el-modo-c">
<span id="id21"></span><h3>27.12.4 Otros comandos para el Modo C<a class="headerlink" href="#otros-comandos-para-el-modo-c" title="Link to this heading"></a></h3>
<span id="id23"></span><h3>27.12.4 Otros comandos para el Modo C<a class="headerlink" href="#otros-comandos-para-el-modo-c" title="Link to this heading"></a></h3>
<dl>
<dt>M-x c-context-line-break</dt><dd><p>Este comando inserta un salto de línea y aplica a la nueva línea la sangría adecuada al contexto. En código normal, hace el trabajo de RET (newline, nueva línea), en una línea de
preprocesador C inserta adicionalmente un “' en el salto de línea, y dentro de los comentarios es como M-j (c-indent-new-comment-line).</p>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -871,7 +871,7 @@ de rama y su VCS distingue ramas de etiquetas. (vc-retrieve-tag).</p>
</section>
</section>
<section id="trabajar-con-proyectos">
<h2>29.2 Trabajar con Proyectos<a class="headerlink" href="#trabajar-con-proyectos" title="Link to this heading"></a></h2>
<span id="id9"></span><h2>29.2 Trabajar con Proyectos<a class="headerlink" href="#trabajar-con-proyectos" title="Link to this heading"></a></h2>
<p>Un proyecto es una colección de archivos usados para producir uno o más programas. Los archivos que pertenecen a un proyecto suelen almacenarse en una jerarquía de directorios; el directorio de nivel superior de la jerarquía se conoce como raíz del proyecto.</p>
<p>El que un directorio dado sea raíz de algún proyecto viene determinado por la infraestructura específica del proyecto, conocida como back-end del proyecto. Emacs actualmente soporta dos de estos back-ends: VC-aware (véase Control de Versiones), por el que un repositorio VCS se considera un proyecto; y EDE (véase Entorno de Desarrollo Emacs). Se espera que esto se extienda en el futuro para soportar tipos adicionales de proyectos.</p>
<p>El back-end del proyecto también determina qué archivos pertenecen o no a un proyecto. Por ejemplo, el back-end VC-aware no considera que los archivos «ignorados» (véase Ignorar Archivos de Control de Versiones) formen parte del proyecto. Además, el back-end VC-aware Project considera archivos «no rastreados» por defecto. Este comportamiento se puede controlar con la variable project-vc-include-untracked.</p>
@ -945,7 +945,7 @@ Elimina un proyecto conocido del archivo de lista de proyectos.</p>
</section>
</section>
<section id="registro-de-cambios">
<span id="id9"></span><h2>29.3 Registro de Cambios<a class="headerlink" href="#registro-de-cambios" title="Link to this heading"></a></h2>
<span id="id10"></span><h2>29.3 Registro de Cambios<a class="headerlink" href="#registro-de-cambios" title="Link to this heading"></a></h2>
<p>Muchos proyectos de software mantienen un registro de cambios. Se trata de un archivo, normalmente llamado ChangeLog, que contiene un registro cronológico de cuándo y cómo se ha modificado el programa. A veces, estos archivos se generan automáticamente a partir de las entradas del registro de cambios almacenadas en los sistemas de control de versiones, o se usan para generar estas entradas del registro de cambios. A veces, hay varios archivos de registro de cambios, cada uno registrando los cambios en un directorio o árbol de directorios.</p>
<section id="comandos-de-registro-de-cambios">
<h3>29.3.1. Comandos de Registro de Cambios<a class="headerlink" href="#comandos-de-registro-de-cambios" title="Link to this heading"></a></h3>
@ -957,7 +957,7 @@ Elimina un proyecto conocido del archivo de lista de proyectos.</p>
<p>Si add-log-always-start-new-record no es nulo, C-x 4 a siempre hace una nueva entrada, incluso si la última entrada fue hecha por Usted y en la misma fecha.</p>
<p>Si el valor de la variable change-log-version-info-enabled no es nulo, C-x 4 a añade el número de versión del archivo a la entrada del registro de cambios. Encuentra el número de versión buscando en el primer diez por ciento del archivo, usando expresiones regulares de la variable change-log-version-number-regexp-list.</p>
<p>El archivo de registro de cambios se visita en el modo Registro de Cambios. En este modo principal, cada conjunto de elementos agrupados cuenta como un párrafo, y cada entrada se considera una página. Esto facilita la edición de las entradas. C-j y autocompletar sangría cada nueva línea como la línea anterior; esto es conveniente para introducir el contenido de una entrada.</p>
<p>Puede usar el comando change-log-goto-source (por defecto vinculado a C-c C-c) para ir a la ubicación de origen de la entrada del registro de cambios cerca del punto, cuando el modo Registro de Cambios está activado. Entonces, las invocaciones posteriores del comando next-error (por defecto enlazado a M-g M-n y C-x <a href="#id10"><span class="problematic" id="id11">`</span></a>) se moverán entre las entradas del registro de cambios. Saltará al sitio real del archivo que fue modificado, no sólo a la siguiente entrada del registro de cambios. También puede usar previous-error para retroceder a través de las entradas del registro de cambios.</p>
<p>Puede usar el comando change-log-goto-source (por defecto vinculado a C-c C-c) para ir a la ubicación de origen de la entrada del registro de cambios cerca del punto, cuando el modo Registro de Cambios está activado. Entonces, las invocaciones posteriores del comando next-error (por defecto enlazado a M-g M-n y C-x <a href="#id11"><span class="problematic" id="id12">`</span></a>) se moverán entre las entradas del registro de cambios. Saltará al sitio real del archivo que fue modificado, no sólo a la siguiente entrada del registro de cambios. También puede usar previous-error para retroceder a través de las entradas del registro de cambios.</p>
<p>Puede usar el comando M-x change-log-merge para fusionar otros archivos de registro en un búfer en el modo de registro de cambios, preservando el orden de fechas de las entradas.</p>
<p>Los sistemas de control de versiones son otra forma de hacer un seguimiento de los cambios en su programa y mantener un registro de ellos. Muchos proyectos que usan un VCS no mantienen un archivo de registro de cambios versionado separado hoy en día, así que puede que desee evitar tener tal archivo en el repositorio. Si el valor de add-log-dont-create-changelog-file no es nulo, comandos como C-x 4 a (add-change-log-entry-other-window) registrarán los cambios en un búfer temporal con un nombre apropiado en lugar de en un archivo, si tal archivo no existe ya.</p>
<p>Tanto si tiene un archivo de registro de cambios como si usa un búfer temporal para registros de cambios, puede teclear C-c C-a (log-edit-insert-changelog) en el búfer de registro VC para insertar las entradas de registro de cambios relevantes, si existen. Ver Características del Búfer de Entrada de Logs.</p>
@ -996,7 +996,7 @@ siempre que se conserven el aviso de copyright y este aviso.</p>
</section>
</section>
<section id="buscar-referencias-de-identificador">
<span id="id12"></span><h2>29.4 Buscar Referencias de Identificador<a class="headerlink" href="#buscar-referencias-de-identificador" title="Link to this heading"></a></h2>
<span id="id13"></span><h2>29.4 Buscar Referencias de Identificador<a class="headerlink" href="#buscar-referencias-de-identificador" title="Link to this heading"></a></h2>
<p>Un identificador es el nombre de una subunidad sintáctica del programa: una función, una subrutina, un método, una clase, un tipo de datos, una macro, etc. En un lenguaje de programación, cada identificador es un símbolo de la sintaxis del lenguaje. Los identificadores también se denominan etiquetas.</p>
<p>El desarrollo y el mantenimiento de programas requieren capacidades para encontrar rápidamente dónde se definió y se hizo referencia a cada identificador, para renombrar identificadores en todo el proyecto, etc. Estas capacidades también son útiles para encontrar referencias en modos principales distintos de los definidos para soportar lenguajes de programación. Por ejemplo, los capítulos, secciones, apéndices, etc. de un texto o un documento TeX también pueden tratarse como subunidades, y sus nombres pueden usarse como identificadores. En este capítulo, usamos el término «identificadores» para referirnos colectivamente a los nombres de cualquier tipo de subunidades, tanto en el código fuente de un programa como en otros tipos de texto.</p>
<p>Emacs proporciona una interfaz unificada para estas capacidades, llamada “xref”.</p>
@ -1021,7 +1021,7 @@ razonablemente actualizadas, reconstruyéndolas de vez en cuando).</p></li>
<p>Si Eglot está activado para el proyecto del búfer actual (véase Trabajar con Proyectos) y el modo principal del búfer actual, Eglot consulta un programa servidor de lenguaje externo y proporciona los datos suministrados por el servidor sobre las definiciones de los identificadores del proyecto. Véase Características de Eglot en Eglot: El cliente LSP de Emacs.</p>
<p>Un programa externo puede extraer referencias escaneando los archivos relevantes, y construir una base de datos de estas referencias. Un backend puede entonces acceder a esta base de datos siempre que necesite listar o buscar referencias. La distribución de Emacs incluye etags, un comando para etiquetar definiciones de identificadores en programas, que soporta muchos lenguajes de programación y otros modos principales, como HTML, extrayendo referencias en tablas de etiquetas. Véase Creación de Tablas de Etiquetas. Los modos principales para lenguajes soportados por etags pueden usar tablas de tags como base para su backend. (Una desventaja de este tipo de backend es que las tablas de etiquetas deben mantenerse razonablemente actualizadas, reconstruyéndolas de vez en cuando).</p>
<section id="encontrar-identificadores">
<span id="id13"></span><h3>29.4.1 Encontrar Identificadores<a class="headerlink" href="#encontrar-identificadores" title="Link to this heading"></a></h3>
<span id="id14"></span><h3>29.4.1 Encontrar Identificadores<a class="headerlink" href="#encontrar-identificadores" title="Link to this heading"></a></h3>
<p>Esta subsección describe los comandos que encuentran referencias a identificadores y realizan varias consultas sobre identificadores. Cada una de estas referencias puede definir un identificador, por ejemplo, proporcionar la implementación de una subunidad de programa o el texto de una sección de un documento; o puede utilizar el identificador, por ejemplo, llamar a una función o a un método, asignar un valor a una variable, mencionar un capítulo en una referencia cruzada, etc.</p>
<section id="busqueda-de-identificadores">
<h4>29.4.1.1. Búsqueda de Identificadores<a class="headerlink" href="#busqueda-de-identificadores" title="Link to this heading"></a></h4>
@ -1055,7 +1055,7 @@ razonablemente actualizadas, reconstruyéndolas de vez en cuando).</p></li>
<p>Algunos modos principales instalan facilidades de soporte xref que a veces pueden fallar al encontrar ciertos identificadores. Por ejemplo, en el modo Emacs Lisp (vea Evaluando Expresiones Emacs Lisp) M-. encontrará por defecto sólo funciones y variables de paquetes Lisp que estén cargados en la sesión Emacs actual o que estén autocargados (vea Autocarga en El Manual de Referencia de Emacs Lisp). Si M-. no encuentra algunos identificadores, puede intentar forzar a xref a usar el backend etags (vea Encontrar Referencias de Identificadores). Para ello, active el modo menor Xref Etags con M-x xref-etags-mode, y luego invoque M-. de nuevo. (Para que esto funcione, asegúrese de ejecutar etags para crear la tabla de etiquetas en el árbol de directorios de los archivos fuente; consulte Creación de Tablas de Etiquetas)</p>
</section>
<section id="comandos-disponibles-en-el-bufer-xref">
<h4>29.4.1.2 Comandos Disponibles en el Búfer <a href="#id14"><span class="problematic" id="id15">*</span></a>xref<a class="headerlink" href="#comandos-disponibles-en-el-bufer-xref" title="Link to this heading"></a></h4>
<h4>29.4.1.2 Comandos Disponibles en el Búfer <a href="#id15"><span class="problematic" id="id16">*</span></a>xref<a class="headerlink" href="#comandos-disponibles-en-el-bufer-xref" title="Link to this heading"></a></h4>
<p>El modo especial XREF proporciona los siguientes comandos en el búfer <em>xref</em>:</p>
<p>RET
ratón-1</p>
@ -1099,7 +1099,7 @@ sólo puede usarse en búferes <em>xref</em> que muestren todas las coincidencia
<p>Además, dispone de los comandos de navegación habituales, como las teclas de flecha, C-n y C-p, para desplazarse por el búfer sin mostrar las referencias.</p>
</section>
<section id="buscar-y-reemplazar-con-identificadores">
<span id="id16"></span><h4>29.4.1.3. Buscar y Reemplazar con Identificadores<a class="headerlink" href="#buscar-y-reemplazar-con-identificadores" title="Link to this heading"></a></h4>
<span id="id17"></span><h4>29.4.1.3. Buscar y Reemplazar con Identificadores<a class="headerlink" href="#buscar-y-reemplazar-con-identificadores" title="Link to this heading"></a></h4>
<p>Los comandos de esta sección realizan varias operaciones de búsqueda y reemplazo en los propios identificadores o en los archivos que hacen referencia a ellos.</p>
<dl class="simple">
<dt>M-?</dt><dd><p>Encuentra todas las referencias del identificador en el punto.</p>
@ -1247,7 +1247,7 @@ etiquetas de Ada tienen sufijos que indican el tipo de entidad</p>
<li><p>En código Perl, las etiquetas son los paquetes, subrutinas y variables definidas por las palabras clave package, sub, use constant, my y local. Use “globals” si quiere etiquetar</p></li>
</ul>
<p>variables globales. Las etiquetas para subrutinas se denominan “package::sub”. El nombre para subrutinas definidas en el paquete por defecto es “main::sub”.</p>
<p><a href="#id17"><span class="problematic" id="id18">*</span></a>En código PHP, las etiquetas son funciones, clases y defines. Los vars también son etiquetas, a menos que use la opción “no-members”.</p>
<p><a href="#id18"><span class="problematic" id="id19">*</span></a>En código PHP, las etiquetas son funciones, clases y defines. Los vars también son etiquetas, a menos que use la opción “no-members”.</p>
<ul class="simple">
<li><p>En código PostScript, las etiquetas son las funciones.</p></li>
<li><p>En código Prolog, las etiquetas son predicados y reglas al principio de línea.</p></li>
@ -1274,7 +1274,7 @@ etiquetas de Ada tienen sufijos que indican el tipo de entidad</p>
<p>Si especifica nombres de archivo absolutos como argumentos para etags, el archivo de etiquetas contendrá nombres de archivo absolutos. De este modo, el archivo de etiquetas seguirá haciendo referencia a los mismos archivos aunque lo desplace, siempre que los archivos de origen permanezcan en el mismo lugar. Los nombres de archivo absolutos empiezan por “/”, o por “device:/” en MS-DOS y MS-Windows.</p>
<p>Cuando quiera hacer una tabla de etiquetas a partir de un gran número de archivos, puede tener problemas para listarlos en la línea de comandos, porque algunos sistemas tienen un límite en su longitud. Puede eludir este límite diciéndole a etags que lea los nombres de los archivos desde su entrada estándar, escribiendo un guión en lugar de los nombres de los archivos, de esta forma</p>
<blockquote>
<div><p>find . -name «<a href="#id19"><span class="problematic" id="id20">*</span></a>.[chCH]» -print | etags -</p>
<div><p>find . -name «<a href="#id20"><span class="problematic" id="id21">*</span></a>.[chCH]» -print | etags -</p>
</div></blockquote>
<p>etags reconoce el idioma usado en un archivo de entrada basándose en su nombre y contenido. Primero intenta hacer coincidir el nombre y la extensión del archivo con los que se usan habitualmente con determinados lenguajes. Algunos lenguajes tienen intérpretes con nombres conocidos (por ejemplo, perl para Perl o pl para Prolog), así que etags busca una especificación de intérprete de la forma “#!interp” en la primera línea de un archivo de entrada, y la compara con los intérpretes conocidos. Si nada de esto funciona, o si desea anular la detección automática del idioma, puede especificar el idioma explícitamente con la opción “language=nombre”. Puede entremezclar estas opciones con los nombres de archivo; cada una se aplica a los nombres de archivo que le siguen. Especifique “language=auto” para indicar a etags que vuelva a adivinar el idioma a partir de los nombres y el contenido de los archivos. Especifique “language=none” para desactivar por completo el procesamiento específico del idioma; entonces etags reconoce las etiquetas únicamente mediante la coincidencia de expresiones regulares (consulte Etags Regexps). Esto es útil cuando un archivo de entrada usa un lenguaje no soportado por etags, y se quiere evitar que etags recurra a Fortran y C como lenguajes por defecto.</p>
<p>La opción “parse-stdin=archivo” es útil sobre todo cuando se llama a etags desde programas. Se puede usar (sólo una vez) en lugar de un nombre de archivo en la línea de comandos. etags leerá de la entrada estándar y marcará las etiquetas producidas como pertenecientes al archivo file.</p>
@ -1309,7 +1309,7 @@ etiquetas de Ada tienen sufijos que indican el tipo de entidad</p>
<p>Aquí etags elige el lenguaje de análisis para voo.doo y bar.ber según su contenido. etags también usa reg1 para reconocer etiquetas adicionales en voo.doo, y tanto reg1 como reg2 para reconocer etiquetas adicionales en bar.ber. reg1 se comprueba con cada línea de voo. doo y bar.ber, sin distinguir entre mayúsculas y minúsculas, mientras que reg2 se comprueba en todo el archivo bar.ber, permitiendo coincidencias multilínea, sin distinguir entre mayúsculas y minúsculas. etags usa sólo las reglas de etiquetas de Lisp, sin coincidencias expreg especificadas por el Usuario, para reconocer etiquetas en los.er.</p>
<p>Puede restringir una opción “regex” para que coincida sólo con archivos de un idioma determinado usando el prefijo opcional {language}. (“etags help” imprime la lista de idiomas reconocidos por etags.) Esto es particularmente útil cuando se almacenan muchas expresiones regulares predefinidas para etags en un archivo. El siguiente ejemplo etiqueta las macros DEFVAR en los archivos fuente de Emacs, sólo para el lenguaje C:</p>
<blockquote>
<div><p>regex=”{c}/[ t]*DEFVAR_[<a href="#id31"><span class="problematic" id="id32">A-Z_</span></a> t(]+»([^»]+)»/1/”</p>
<div><p>regex=”{c}/[ t]*DEFVAR_[<a href="#id32"><span class="problematic" id="id33">A-Z_</span></a> t(]+»([^»]+)»/1/”</p>
</div></blockquote>
<p>Cuando se tienen expresiones regulares complejas, se puede almacenar la lista de ellas en un archivo. La siguiente sintaxis de opción indica a etags que lea dos archivos de expresiones regulares. Las expresiones regulares contenidas en el segundo archivo se comparan sin tener en cuenta mayúsculas y minúsculas.</p>
<blockquote>
@ -1321,7 +1321,7 @@ etiquetas de Ada tienen sufijos que indican el tipo de entidad</p>
<div><blockquote>
<div><p> Esto es para archivos fuente C de GNU Emacs</p>
</div></blockquote>
<p>{c}/[ t]*DEFVAR_[<a href="#id33"><span class="problematic" id="id34">A-Z_</span></a> t(]+»([^»]+)»/1/</p>
<p>{c}/[ t]*DEFVAR_[<a href="#id34"><span class="problematic" id="id35">A-Z_</span></a> t(]+»([^»]+)»/1/</p>
</div></blockquote>
<p>y luego usarlo de esta manera:</p>
<blockquote>
@ -1332,7 +1332,7 @@ etiquetas de Ada tienen sufijos que indican el tipo de entidad</p>
<div><ul class="simple">
<li><dl class="simple">
<dt>Etiqueta archivos Octave:</dt><dd><dl class="simple">
<dt>etags language=none </dt><dd><p>regex=”/[ t]*function.*=[ t]*([^ t]*)[ t]*(/1/” regex=”/###key (.*)/1/” regex=”/[ t]*global[ t].*/” <a href="#id21"><span class="problematic" id="id22">*</span></a>.m</p>
<dt>etags language=none </dt><dd><p>regex=”/[ t]*function.*=[ t]*([^ t]*)[ t]*(/1/” regex=”/###key (.*)/1/” regex=”/[ t]*global[ t].*/” <a href="#id22"><span class="problematic" id="id23">*</span></a>.m</p>
</dd>
</dl>
</dd>
@ -1343,7 +1343,7 @@ etiquetas de Ada tienen sufijos que indican el tipo de entidad</p>
</div></blockquote>
<p>Etiqueta archivos Tcl:</p>
<blockquote>
<div><p>etags language=none regex=”/proc[ t]+([^ t]+)/1/” <a href="#id23"><span class="problematic" id="id24">*</span></a>.tcl</p>
<div><p>etags language=none regex=”/proc[ t]+([^ t]+)/1/” <a href="#id24"><span class="problematic" id="id25">*</span></a>.tcl</p>
</div></blockquote>
<p>Etiqueta archivos VHDL:</p>
<blockquote>
@ -1355,7 +1355,7 @@ etiquetas de Ada tienen sufijos que indican el tipo de entidad</p>
</section>
</section>
<section id="seleccionar-una-tabla-de-etiquetas">
<span id="id25"></span><h3>29.4.3. Seleccionar una Tabla de Etiquetas<a class="headerlink" href="#seleccionar-una-tabla-de-etiquetas" title="Link to this heading"></a></h3>
<span id="id26"></span><h3>29.4.3. Seleccionar una Tabla de Etiquetas<a class="headerlink" href="#seleccionar-una-tabla-de-etiquetas" title="Link to this heading"></a></h3>
<p>Emacs tiene en cualquier momento como máximo una tabla de etiquetas seleccionada. Todos los comandos para trabajar con tablas de etiquetas usan primero la seleccionada. Para seleccionar una tabla de etiquetas, escribe M-x visit-tags-table, que lee el nombre del archivo de la tabla de etiquetas como argumento, con TAGS por defecto en el primer directorio que contenga un archivo llamado TAGS encontrado al buscar recursivamente hacia arriba desde el directorio por defecto.</p>
<p>Emacs no lee realmente los contenidos de la tabla de etiquetas hasta que intenta usarlos; todo lo que hace visit-tags-table es almacenar el nombre del archivo en la variable tags-file-name, y no mucho más. El valor inicial de la variable es nil; ese valor le dice a todos los comandos para trabajar con tablas de etiquetas que deben preguntar por un nombre de archivo de tabla de etiquetas para usar.</p>
<p>Además de la tabla de etiquetas seleccionada, Emacs mantiene disponible la lista de varias tablas de etiquetas que usas juntas. Por ejemplo, si esta trabajando en un programa que usa una librería, puede que desee tener disponibles las tablas de etiquetas tanto del programa como de la librería, para que Emacs pueda encontrar fácilmente los identificadores de ambos. Si la tabla de etiquetas seleccionada no tiene el identificador o no menciona el archivo fuente que necesita un comando de etiquetas, el comando intentará usar todas las demás tablas de etiquetas de la lista actual de tablas de etiquetas.</p>
@ -1386,7 +1386,7 @@ etiquetas de Ada tienen sufijos que indican el tipo de entidad</p>
<p>Para construir un objetivo, escriba C-c . c (ede-compile-target). Para compilar todos los objetivos del proyecto, escriba C-c . C (ede-compile-project). EDE usa los tipos de archivo para adivinar cómo debe construirse el objetivo.</p>
</section>
<section id="fusion-de-archivos-con-emerge">
<span id="id26"></span><h2>29.6 Fusión de Archivos con Emerge<a class="headerlink" href="#fusion-de-archivos-con-emerge" title="Link to this heading"></a></h2>
<span id="id27"></span><h2>29.6 Fusión de Archivos con Emerge<a class="headerlink" href="#fusion-de-archivos-con-emerge" title="Link to this heading"></a></h2>
<p>No es raro que los programadores se confundan y modifiquen el mismo programa en dos versiones diferentes. Para recuperarse de esta confusión, es necesario fusionar las dos versiones. Emerge facilita esta tarea. Para conocer otras formas de comparar archivos, consulte Comparación de Archivos, y Ediff en El Manual de Ediff.</p>
<section id="descripcion-general-de-emerge">
<h3>29.6.1 Descripción General de Emerge<a class="headerlink" href="#descripcion-general-de-emerge" title="Link to this heading"></a></h3>
@ -1559,11 +1559,11 @@ antecesora.</p>
versión del búfer B
#else /* no NEW <em>/
versión del búfer A
#endif /</em> no NEW <a href="#id27"><span class="problematic" id="id28">*</span></a>/</p>
#endif /</em> no NEW <a href="#id28"><span class="problematic" id="id29">*</span></a>/</p>
</div></blockquote>
<p>Aunque este ejemplo muestra condicionales del preprocesador C delimitando las dos versiones alternativas, puede especificar las cadenas a usar estableciendo la variable emerge-combine-versions-template a una cadena de su elección. En la cadena, “%a” dice dónde poner la versión A, y “%b” dice dónde poner la versión B. La configuración por defecto, que produce los resultados mostrados arriba, tiene este aspecto:</p>
<blockquote>
<div><p>«#ifdef NEWn%b#else /* not NEW <em>/n%a#endif /</em> not NEW <a href="#id29"><span class="problematic" id="id30">*</span></a>/n»</p>
<div><p>«#ifdef NEWn%b#else /* not NEW <em>/n%a#endif /</em> not NEW <a href="#id30"><span class="problematic" id="id31">*</span></a>/n»</p>
</div></blockquote>
</section>
<section id="puntos-mas-delicados-de-emerge">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -151,6 +151,53 @@
<p>En la mayoría de los sistemas operativos, los comandos de impresión anteriores envían los archivos para su impresión llamando al programa lpr. Para cambiar el programa de impresión, personalice la variable lpr-command. Para especificar opciones adicionales para el programa de impresión, personalice la variable de lista lpr-switches. Su valor debe ser una lista de cadenas de opciones, cada una de las cuales debe empezar por “-” (por ejemplo, la cadena de opciones «-w80» especifica un ancho de línea de 80 columnas). El valor por defecto es la lista vacía, nil.</p>
<p>Para especificar la impresora a utilizar, establezca la variable nombre-impresora. El valor por defecto, nil, especifica la impresora por defecto. Si la establece con un nombre de impresora (una cadena), ese nombre se pasa a lpr con el modificador “-P”; si no está usando lpr, debe especificar el modificador con lpr-printer-switch.</p>
<p>La variable lpr-headers-switches especifica de manera similar los switches extra a usar para hacer los encabezados de página. La variable lpr-add-switches controla si se suministran las opciones “-T” y “-J” (adecuadas para lpr) al programa de impresión: nil significa no añadirlas (este debería ser el valor si su programa de impresión no es compatible con lpr).</p>
<p>41.1 Impresión PostScript</p>
<p>Estos comandos convierten el contenido del búfer a PostScript, imprimiéndolo o dejándolo en otro búfer de Emacs.</p>
<p>41.1 Impresión PostScript</p>
<p>Estos comandos convierten el contenido del búfer a PostScript, imprimiéndolo o dejándolo en otro búfer de Emacs.</p>
<dl class="simple">
<dt>M-x ps-print-buffer</dt><dd><p>Imprime una copia en papel del búfer actual en formato PostScript.</p>
</dd>
<dt>M-x ps-print-region</dt><dd><p>Imprime una copia en papel de la región actual en formato PostScript.</p>
</dd>
<dt>M-x ps-print-buffer-with-faces</dt><dd><p>Imprime una copia en papel del búfer actual en formato PostrScript, mostrando las caras usadas en el texto mediante funciones PostScript.</p>
</dd>
<dt>M-x ps-print-region-with-faces</dt><dd><p>Imprime en formato PostScript una copia en papel de la región actual mostrando las caras usadas en el texto.</p>
</dd>
<dt>M-x ps-spool-buffer</dt><dd><p>Genera y envía a la impresora una imagen PostScript del texto del búfer actual.</p>
</dd>
<dt>M-x ps-spool-region</dt><dd><p>Genera y envía a la impresora una imagen PostScript de la región actual.</p>
</dd>
<dt>M-x ps-spool-buffer-with-faces</dt><dd><p>Genera y envía a la impresora una imagen PostScript del búfer actual mostrando las caras usadas.</p>
</dd>
<dt>M-x ps-spool-region-with-faces</dt><dd><p>Genera y envía a la impresora una imagen PostScript de la región actual mostrando las caras usadas.</p>
</dd>
<dt>M-x ps-despool</dt><dd><p>Envía a la impresora la cola de impresión de PostScript.</p>
</dd>
<dt>M-x handwrite</dt><dd><p>Genera/imprime en formato PostScritp del búfer actual como si estuviera escrito a mano.</p>
</dd>
</dl>
<p>Los comandos ps-print-buffer y ps-print-region imprimen el contenido del buffer en formato PostScript. Un comando imprime todo el búfer; el otro, sólo la región. Los comandos ps-print-buffer-with-faces y ps-print-region-with-faces se comportan de forma similar, pero utilizan características PostScript para mostrar las caras (fuentes y colores) del texto del buffer.</p>
<p>Interactivamente, cuando se utiliza un argumento prefijo (C-u), estos comandos piden al usuario un nombre de archivo, y guardan la imagen PostScript en ese archivo en lugar de enviarla a la impresora.</p>
<p>Los comandos cuyos nombres tienen “spool” en lugar de “print”, generan la salida PostScript en un buffer de Emacs en lugar de enviarla a la impresora.</p>
<p>Utilice el comando ps-despool para enviar las imágenes en spool a la impresora. Este comando envía el PostScript generado por los comandos “-spool-” (ver comandos anteriores) a la impresora. Con un argumento prefijo (C-u), pide un nombre de archivo y guarda la imagen PostScript en ese archivo en lugar de enviarla a la impresora.</p>
<p>M-x handwrite es más informal. Genera una representación PostScript del búfer actual como un documento manuscrito en cursiva. Se puede personalizar en escritura a mano en grupo. Esta función sólo admite caracteres ISO 8859-1.</p>
<p>41.2 Variables para PostScript Hardcopy</p>
<p>Todas las órdenes de copia impresa PostScript utilizan las variables ps-lpr-command y ps-lpr-switches para especificar cómo imprimir la salida. ps-lpr-command especifica el nombre de la orden a ejecutar, ps-lpr-switches especifica las opciones de línea de órdenes a utilizar, y ps-printer-name especifica la impresora. Si no establece las dos primeras variables, éstas tomarán sus valores iniciales de lpr-command y lpr-switches. Si ps-printer-name es nil, se utiliza nombre-impresora.</p>
<p>La variable ps-print-header controla si estos comandos añaden líneas de cabecera a cada página - ajústela a nil para desactivar las cabeceras.</p>
<p>Si su impresora no soporta colores, debería desactivar el procesado de color estableciendo ps-print-color-p a nil. Por defecto, si la pantalla soporta colores, Emacs produce una copia impresa con información en color; en impresoras en blanco y negro, los colores se emulan con tonos de gris. Esto puede producir una salida apenas legible o incluso ilegible, incluso si los colores de su pantalla sólo utilizan tonos de gris.</p>
<p>Alternativamente, puede configurar ps-print-color-p a blanco-negro para que los colores se muestren mejor en impresoras blanco-negro. Esto funciona utilizando la información en ps-black-white-faces para expresar los colores mediante una lista personalizable de tonos de gris, aumentada por atributos de negrita y cursiva.</p>
<p>Por defecto, la impresión PostScript ignora los colores de fondo de las caras, a menos que la variable ps-use-face-background sea distinta de cero. Esto es para evitar interferencias no deseadas con las rayas de cebra y la imagen/texto de fondo.</p>
<p>La variable ps-paper-type especifica para qué tamaño de papel formatear; los valores permitidos incluyen a4, a3, a4small, b4, b5, executive, ledger, legal, letter, letter-small, statement, tabloid. El valor por defecto es carta. Puede definir tamaños de papel adicionales cambiando la variable ps-page-dimensions-database.</p>
<p>La variable ps-landscape-mode especifica la orientación de la impresión en la página. El valor por defecto es nil, que significa modo vertical. Cualquier valor distinto de nil especifica el modo horizontal.</p>
<p>La variable ps-number-of-columns especifica el número de columnas; tiene efecto tanto en modo horizontal como vertical. El valor por defecto es 1.</p>
<p>La variable ps-font-family especifica la familia de fuentes a utilizar para la impresión de texto ordinario. Los valores legítimos incluyen Courier, Helvetica, NewCenturySchlbk, Palatino y Times. La variable ps-font-size especifica el tamaño de la fuente para el texto ordinario y por defecto es de 8,5 puntos. El valor de ps-font-size también puede ser una cons de 2 floats: uno para el modo horizontal, el otro para el modo vertical.</p>
<p>Emacs soporta más scripts y caracteres que una impresora PostScript típica. Por lo tanto, algunos de los caracteres de su búfer podrían no ser imprimibles usando las fuentes incorporadas en su impresora. Puede aumentar las fuentes suministradas con la impresora con las del paquete GNU Intlfonts, o puede indicar a Emacs que use Intlfonts exclusivamente. La variable ps-multibyte-buffer controla esto: el valor por defecto, nil, es apropiado para imprimir caracteres ASCII y Latin-1; un valor de non-latin-printer es para impresoras que tienen las fuentes para caracteres ASCII, Latin-1, Japonés y Coreano incorporadas. El valor bdf-font permite utilizar las fuentes BDF del paquete Intlfonts para todos los caracteres. Por último, un valor de bdf-font-except-latin indica a la impresora que utilice las fuentes incorporadas para los caracteres ASCII y Latin-1, y las fuentes BDF de Intlfonts para el resto.</p>
<p>Para poder utilizar las fuentes BDF, Emacs necesita saber dónde encontrarlas. La variable bdf-directory-list contiene la lista de directorios donde Emacs debe buscar las fuentes; el valor por defecto incluye un único directorio /usr/local/share/emacs/fonts/bdf.</p>
<p>Muchas otras variables de personalización para estos comandos se definen y describen en los archivos Lisp ps-print.el y ps-mule.el.</p>
<p>41.3. Paquete Printing</p>
<p>Las facilidades básicas de Emacs para imprimir en papel pueden ampliarse utilizando el paquete Printing. Éste proporciona una interfaz fácil de usar para elegir qué imprimir, previsualizar archivos PostScript antes de imprimir y configurar varias opciones de impresión, como cabeceras de impresión, modos horizontal o vertical, modos dúplex, etc. En los sistemas GNU/Linux o Unix, el paquete Printing se basa en las utilidades gs y gv, que se distribuyen como parte del programa GhostScript. En MS-Windows, puede utilizarse el puerto gstools de Ghostscript.</p>
<p>Para usar el paquete Printing, añade (require “printing) a su fichero init (ver El Archivo de Inicialización de Emacs), seguido de (pr-update-menus). Esta función sustituye los comandos de impresión habituales de la barra de menús por un submenú “Printing” que contiene varias opciones de impresión. También puede escribir M-x pr-interface RET; esto crea un búfer <em>Printing Interface</em> (Interfaz de Impresión), similar a un búfer de personalización, donde puede configurar las opciones de impresión. Después de seleccionar qué y cómo imprimir, inicie el trabajo de impresión utilizando el botón « Print « (Imprimir) (haga clic con ratón-2 sobre él, o mueva el punto sobre él y escriba RET). Para más información sobre las distintas opciones, utilice el botón “Interface Help” (Ayuda de la interfaz).</p>
</section>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -141,7 +141,7 @@
<div itemprop="articleBody">
<section id="edicion-de-imagenes">
<h1>43 Edición de Imágenes<a class="headerlink" href="#edicion-de-imagenes" title="Link to this heading"></a></h1>
<span id="id1"></span><h1>43 Edición de Imágenes<a class="headerlink" href="#edicion-de-imagenes" title="Link to this heading"></a></h1>
<p>Para editar una imagen formada por caracteres de texto (por ejemplo, una imagen de la división de un registro en campos, como un comentario en un programa), utilice el comando M-x picture-mode para acceder al modo Imagen.</p>
<p>En el modo Imagen, la edición se basa en el modelo de cuarto plano del texto, según el cual los caracteres de texto se encuentran dispuestos en un área que se extiende infinitamente hacia la derecha y hacia abajo. El concepto de final de línea no existe en este modelo; lo más que se puede decir es dónde se encuentra el último carácter no en blanco de la línea.</p>
<p>Por supuesto, Emacs siempre considera el texto como una secuencia de caracteres, y las líneas realmente tienen un final. Pero el modo Imagen sustituye los comandos más utilizados por variantes que simulan el modelo de cuarto de plano del texto. Lo hacen insertando espacios o convirtiendo tabuladores en espacios.</p>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -37,7 +37,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">

View File

@ -1,3 +1,5 @@
.. _2:
2 Tipos de Entrada del Usuario
==============================

View File

@ -376,7 +376,7 @@ El comando :kbd:`Ctrl`-:kbd:`h` :kbd:`C` (``C-h C``, ``described-coding-system``
.. _11.8:
11.8 Otros comandos de ayuda
11.8 Otros comandos de Ayuda
----------------------------
:kbd:`Ctrl`-:kbd:`h` :kbd:`i` (``C-h i``, ``info``) ejecuta el programa Info, que explora archivos de documentación estructurados. :kbd:`Ctrl`-:kbd:`h` :kbd:`4` :kbd:`i` (``C-h 4 i``, ``info-other-window``) hace lo mismo, pero muestra el buffer de Info en otra ventana. El manual completo de Emacs está disponible en Info, junto con muchos otros manuales del sistema GNU. Escriba :kbd:`h` (``h``) después de entrar en Info para ejecutar un tutorial sobre el uso de Info.

View File

@ -382,6 +382,8 @@ Las siguientes caras también controlan la apariencia de partes del marco de Ema
``tty-menu-selected-face``
Esta cara se usa para mostrar en terminales en modo texto el elemento de menú que se seleccionaría si se hace clic con el ratón o se pulsa :kbd:`RETURN` (``RET``).
.. _15.11:
15.11 Iconos
------------

View File

@ -42,6 +42,8 @@ Independientemente de los valores de esas variables, el cambio más reciente nun
.. [6] Además de ``C-/``, el comando deshacer también está asociado a ``C-x u`` porque es más fácil de recordar para los principiantes: ``u`` significa ":emphasis:`u`\ndo" (deshacer). También está vinculado a ``C-_`` porque al teclear :kbd:`Ctrl`-:kbd:`/` (``C-/``) en algunos terminales de texto en realidad se introduce ``C-_``.
.. _17.2:
17.2 Transponer Texto
---------------------

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">

View File

@ -35,7 +35,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">

View File

@ -37,7 +37,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
@ -480,19 +480,19 @@ de la libertad del software.»</p>
</li>
<li class="toctree-l1"><a class="reference internal" href="CapConSecciones/25_Indentacion.html">25 Indentación</a><ul>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/25_Indentacion.html#comandos-de-indentado">25.1 Comandos de Indentado</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/25_Indentacion.html#paradas-de-tabulacion">25.2 Paradas de Tabulación</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/25_Indentacion.html#topes-de-tabulacion">25.2 Topes de Tabulación</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/25_Indentacion.html#tabulaciones-vs-espacios">25.3 Tabulaciones vs. Espacios</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/25_Indentacion.html#funciones-practicas-para-la-sangria">25.4 Funciones Prácticas para la Sangría</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html">26 Comandos para Lenguajes Humanos</a><ul>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#palabras">26.1 Palabras</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#frases">26.2 Frases</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#frases-u-oraciones">26.2 Frases (u oraciones)</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#parrafos">26.3 Párrafos</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#paginas">26.4 Páginas</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#comillas">26.5 Comillas</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#rellenar-texto">26.6 Rellenar Texto</a><ul>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-auto-fill">26.6.1 Modo Auto Fill</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-de-relleno-automatico-auto-fill">26.6.1 Modo de Relleno Automático (Auto Fill)</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#comandos-de-relleno-explicito">26.6.2 Comandos de Relleno Explícito</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#el-prefijo-de-relleno">26.6.3 El Prefijo de Relleno</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#relleno-adaptativo">26.6.4 Relleno Adaptativo</a></li>
@ -500,7 +500,7 @@ de la libertad del software.»</p>
</li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#comandos-de-conversion-de-mayusculas-y-minusculas">26.7. Comandos de Conversión de Mayúsculas y Minúsculas</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-texto">26.8 Modo Texto</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-esquema">26.9 Modo Esquema</a><ul>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-esquema-mode-outilne">26.9 Modo Esquema (mode Outilne)</a><ul>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-menor-esquema">26.9.1 Modo Menor Esquema</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#formato-de-los-esquemas">26.9.2 Formato de los Esquemas</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#comandos-de-movimiento-en-el-modo-esquema">26.9.3 Comandos de Movimiento en el Modo Esquema</a></li>
@ -509,12 +509,22 @@ de la libertad del software.»</p>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#edicion-de-plegado">26.9.6 Edición de Plegado</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-org-org-mode">26.10. Modo Org (Org Mode)</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-tex">26.11 Modo TeX</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-org-org-mode">26.10. Modo Org (Org Mode)</a><ul>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#org-como-organizador">26.10.1 Org como Organizador</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#org-como-sistema-de-composicion">26.10.2 Org como Sistema de Composición</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-tex">26.11 Modo TeX</a><ul>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#comandos-de-edicion-tex">26.11.1 Comandos de edición TeX</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#comandos-de-edicion-latex">26.11.2 Comandos de Edición LaTeX</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#comandos-de-impresion-tex">26.11.3. Comandos de Impresión TeX</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#miscelanea-del-modo-tex">26.11.4. Miscelánea del Modo TeX</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modos-sgml-y-html">26.12 Modos SGML y HTML</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-nroff">26.13 Modo Nroff</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#texto-enriquecido">26.14 Texto enriquecido</a><ul>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-enriquecido">26.14.1 Modo enriquecido</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#modo-enriquecido">26.14.1 Modo Enriquecido</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#nuevas-lineas-duras-y-flexibles">26.14.2. Nuevas Líneas Duras y Flexibles</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#editar-informacion-de-formato">26.14.3 Editar Información de Formato</a></li>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/26_ComandsLengsHuma.html#caras-en-texto-enriquecido">26.14.4 Caras en texto enriquecido</a></li>
@ -546,7 +556,10 @@ de la libertad del software.»</p>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/27_EdDePrograms.html#modo-que-funcion-which-function-mode">27.2.4 Modo Qué función (Which Function Mode)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/27_EdDePrograms.html#indentacion-de-programas">27.3 Indentación de Programas</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/27_EdDePrograms.html#indentacion-de-programas">27.3 Indentación de Programas</a><ul>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/27_EdDePrograms.html#comandos-para-la-indentacion-en-c">27.3.4 Comandos para la Indentación en C</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/27_EdDePrograms.html#comandos-para-la-edicion-con-parentesis">27.4 Comandos para la Edición con Paréntesis</a><ul>
<li class="toctree-l3"><a class="reference internal" href="CapConSecciones/27_EdDePrograms.html#expresiones-con-parentesis-equilibrados">27.4.1 Expresiones con Paréntesis Equilibrados</a></li>
</ul>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
@ -140,7 +140,7 @@
<p>Llamamos <em>avanzado</em> a Emacs porque puede hacer mucho más que una simple inserción y borrado 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 funcionan 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.</p>
<p><em>Autodocumentado</em> significa que en cualquier momento puede utilizar comandos especiales, conocidos como <em>comandos de ayuda</em>, para averiguar cuáles son sus opciones, o para averiguar qué hace
cualquier comando, o para encontrar todos los comandos que pertenecen a un tema determinado. Véase <a class="reference internal" href="CapConSecciones/11_Ayuda.html#id1"><span class="std std-ref">11 Ayuda</span></a>.</p>
<p><em>Personalizable</em> significa que puede alterar fácilmente el comportamiento de los comandos de Emacs de maneras sencillas. Por ejemplo, si usa un lenguaje de programación en el que los comentarios empiezan con <code class="docutils literal notranslate"><span class="pre">&lt;**</span></code> y terminan con <code class="docutils literal notranslate"><span class="pre">**&gt;</span></code>, puede decirle a los comandos de manipulación de comentarios de Emacs que usen esas cadenas (vea <a class="reference internal" href="CapConSecciones/27_EdDePrograms.html#id7"><span class="std std-ref">27.5. Manipulación de Comentarios</span></a>). Por poner otro ejemplo, puede reenlazar 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 <a class="reference internal" href="CapConSecciones/50_Personlzc.html#id1"><span class="std std-ref">50 Personalización</span></a>.</p>
<p><em>Personalizable</em> significa que puede alterar fácilmente el comportamiento de los comandos de Emacs de maneras sencillas. Por ejemplo, si usa un lenguaje de programación en el que los comentarios empiezan con <code class="docutils literal notranslate"><span class="pre">&lt;**</span></code> y terminan con <code class="docutils literal notranslate"><span class="pre">**&gt;</span></code>, puede decirle a los comandos de manipulación de comentarios de Emacs que usen esas cadenas (vea <a class="reference internal" href="CapConSecciones/27_EdDePrograms.html#id9"><span class="std std-ref">27.5. Manipulación de Comentarios</span></a>). Por poner otro ejemplo, puede reenlazar 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 <a class="reference internal" href="CapConSecciones/50_Personlzc.html#id1"><span class="std std-ref">50 Personalización</span></a>.</p>
<p><em>Extensible</em> 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 lenguaje Lisp, que son ejecutados por el propio intérprete Lisp de Emacs. Los comandos existentes pueden incluso redefinirse en mitad 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 usan C en su lugar por eficiencia. Escribir una extensión es programar, pero los no programadores pueden usarla después. <strong>Ver Prefacio</strong> en Una Introducción a la Programación en Emacs Lisp, si quiere aprender programación en Emacs Lisp.</p>
</section>

Binary file not shown.

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.66
Traducción Revisón: 1.70
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="#" method="get">

File diff suppressed because one or more lines are too long