Compare commits

...

3 Commits

Author SHA1 Message Date
tanomarcelo f226b4a0fe magit; sphinx GNU/Emacs 29.1
Confirmación (commit) tanomarcelo-git
2024-02-07 03:02:16 -03:00
tanomarcelo 9d00fd0a54 magit; sphinx GNU/Emacs 29.1
Confirmación (commit) tanomarcelo-git
2024-02-06 07:22:33 -03:00
tanomarcelo 2b0ebbcd39 magit; sphinx GNU/Emacs 29.1
Confirmación (commit) tanomarcelo-git
2024-02-06 01:44:00 -03:00
27 changed files with 131 additions and 101 deletions

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
@ -105,6 +105,7 @@
<li class="toctree-l2"><a class="reference internal" href="#comparacion-de-archivos">19.9 Comparación de Archivos</a></li>
<li class="toctree-l2"><a class="reference internal" href="#modo-diff">19.10 Modo Diff</a></li>
<li class="toctree-l2"><a class="reference internal" href="#copiar-nombrar-y-renombrar-archivos">19.11 Copiar, Nombrar y Renombrar Archivos</a></li>
<li class="toctree-l2"><a class="reference internal" href="#operaciones-varias-con-archivos">19.12 Operaciones Varias con Archivos</a></li>
<li class="toctree-l2"><a class="reference internal" href="#acceso-a-archivos-comprimidos">19.13. Acceso a Archivos Comprimidos</a></li>
<li class="toctree-l2"><a class="reference internal" href="#archivos-de-archivos">19.14 Archivos de Archivos</a></li>
<li class="toctree-l2"><a class="reference internal" href="#archivos-remotos">19.15 Archivos Remotos</a></li>
@ -711,100 +712,128 @@ actual, pero obtiene el nombre de la función del propio parche. Esto es útil p
</section>
<section id="copiar-nombrar-y-renombrar-archivos">
<h2>19.11 Copiar, Nombrar y Renombrar Archivos<a class="headerlink" href="#copiar-nombrar-y-renombrar-archivos" title="Link to this heading"></a></h2>
<p>Emacs tiene varios comandos para copiar, nombrar y renombrar archivos. Todos ellos leen dos nombres de archivo, antiguo (o destino) y nuevo, usando el minibúfer, y luego copian o ajustan el nombre de un archivo en consecuencia; no aceptan nombres de archivo comodín.</p>
<p>En todos estos comandos, si el argumento new es sólo un nombre de directorio (véase Nombres de Directorio en el Manual de Referencia de Emacs Lisp), el verdadero nombre nuevo está en ese directorio, con el mismo componente no-directorio que old. Por ejemplo, el comando M-x rename-file RET ~/foo RET /tmp/ RET renombra ~/foo a /tmp/foo. En GNU y otros sistemas POSIX, los nombres de directorio terminan en “/”.</p>
<p>Todos estos comandos piden confirmación cuando el nuevo nombre de archivo ya existe.</p>
<p>M-x copy-file copia el contenido del archivo antiguo en el archivo nuevo.</p>
<p>M-x copy-directory copia directorios, de forma similar al comando de shell cp -r. Si nuevo es un nombre de directorio, crea una copia del directorio antiguo y la coloca en nuevo. En caso contrario, copia todo el contenido del directorio antiguo en uno nuevo. Si copy-directory-create-symlink es distinto de nil y old es un enlace simbólico, este comando copiará el enlace simbólico. Si es nil, este comando seguirá el enlace y copiará el contenido en su lugar. (Esta es la opción por defecto).</p>
<p>M-x rename-file renombra el archivo antiguo como nuevo. Si el nombre de archivo nuevo ya existe, debe confirmar con sí o el renombramiento no se realizará; esto se debe a que el renombramiento hace que se pierda el antiguo significado del nombre nuevo. Si antiguo y nuevo están en sistemas de archivos diferentes, el archivo antiguo se copia y se borra.</p>
<p>Si un archivo está bajo control de versiones (véase Control de Versiones), deberá renombrarlo usando M-x vc-rename-file en lugar de M-x rename-file. Consulte Borrar y Renombrar Archivos Controlados por Versión.</p>
<p>M-x add-name-to-file añade un nombre adicional a un archivo existente sin eliminar el nombre antiguo. El nuevo nombre se crea como un enlace duro al archivo existente. El nuevo nombre debe pertenecer al mismo sistema de archivos que el archivo. En MS-Windows, este comando sólo funciona si el archivo reside en un sistema de archivos NTFS. En MS-DOS, y algunos tipos de sistemas remotos, funciona copiando el archivo.</p>
<p>M-x make-symbolic-link crea un enlace simbólico llamado new, que apunta al objetivo. El efecto es que los futuros intentos de abrir el archivo new se referirán al archivo que se llame destino en el momento de la apertura, o se producirá un error si el nombre destino no existe en ese momento. Este comando no expande el argumento target, por lo que permite especificar un nombre relativo como destino del enlace. Sin embargo, este comando expande el “~” inicial en destino para que pueda especificar fácilmente directorios de inicio, y elimina el “/:” inicial para que pueda especificar nombres relativos que comiencen con “~” o “/:” literales. Véase Nombres de Archivos Entrecomillados. En MS-Windows, este comando sólo funciona en MS Windows Vista y versiones posteriores. Cuando nuevo es remoto, funciona dependiendo del tipo de sistema.</p>
<p>Por defecto, los comandos de borrado de Emacs no usan la Papelera. Esto afecta a los comandos M-x borrar-archivo y M-x borrar-directorio (ver Directorios de Archivos), así como a los comandos de borrado en Dired (ver Borrado de Archivos con Dired). Proporcionar un argumento prefijo a M-x borrar-archivo o M-x borrar-directorio hace que se borren directamente, en lugar de usar la Papelera, independientemente de borrar-moviéndose-a-la- papelera.</p>
<p>Si tiene configurado delete-by-moving-to-trash, y quiere borrar archivos manualmente en Emacs desde el directorio Trash, usar comandos como D (dired-do-delete) no funciona bien en el directorio Trash (sólo le dará un nuevo nombre al archivo, pero no borrará nada). Si desea poder hacer esto, debe crear un archivo .dir-locals.el que contenga algo como lo siguiente en el directorio Papelera:</p>
<blockquote>
<div><p>((dired-mode . ((delete-by-moving-to-trash . nil))))</p>
</div></blockquote>
<p>Tenga en cuenta, sin embargo, que si usa el comando del sistema «vaciar papelera», es probable que también borre este archivo .dir-locals.el, por lo que esto sólo debería hacerse si borra archivos del directorio Papelera manualmente.</p>
<p>Si un archivo está bajo control de versiones (vea Control de Versiones), debería borrarlo usando M-x vc-delete-file en lugar de M-x delete-file. Consulte Borrar y Renombrar Archivos Controlados por Versión.</p>
<p>M-x insertar-archivo (también C-x i) inserta una copia del contenido del archivo especificado en el búfer actual en el punto, dejando el punto sin cambios antes del contenido. La posición después del contenido insertado se añade al anillo de marcas, sin activar la marca (véase El Anillo de Marcas).</p>
<p>M-x insert-file-literally (insertar-archivo-literalmente) es como M-x insert-file, excepto que el archivo se inserta literalmente: se trata como una secuencia de caracteres ASCII sin codificación especial ni conversión, de forma similar al comando M-x find-file-literally (ver Visitando Archivos).</p>
<p>M-x escribir-región es el comando inverso de M-x insertar-archivo; copia el contenido de la región en el archivo especificado. M-x append-to-file añade el texto de la región al final del archivo especificado. Véase Acumular Texto. La variable write-region-inhibit-fsync se aplica a estos comandos, así como al guardado de archivos; véase Personalización del Guardado de Archivos.</p>
<p>M-x set-file-modes lee un nombre de archivo seguido de un modo de archivo y aplica ese modo de archivo al archivo especificado. Los modos de archivo, también llamados permisos de archivo, determinan si un archivo puede leerse, escribirse o ejecutarse, y quién puede hacerlo. Este comando lee los modos de archivo usando el mismo formato simbólico u octal aceptado por el comando chmod; por ejemplo, “u+x” significa añadir permiso de ejecución para el Usuario propietario del archivo. No tiene efecto en sistemas operativos que no soportan modos de archivo. chmod es un alias de conveniencia para esta función.</p>
<p>Emacs tiene varios comandos para copiar, nombrar y renombrar archivos. Todos ellos leen dos nombres de archivo, <em>antiguo</em> (<em>anterior</em> o <em>destino</em>) y <em>nuevo</em>, usando el minibúfer, y luego copian o ajustan el nombre de un archivo en consecuencia; no aceptan nombres de archivo comodín.</p>
<p>En todos estos comandos, si el argumento <em>nuevo</em> es sólo un nombre de directorio (véase <strong>Nombres de Directorio</strong> en el Manual de Referencia de Emacs Lisp), el verdadero nombre nuevo está en ese directorio, con el mismo componente no-directorio que <em>anterior</em>. Por ejemplo, el comando <kbd class="kbd docutils literal notranslate">Alt</kbd>-<kbd class="kbd docutils literal notranslate">x</kbd> <code class="docutils literal notranslate"><span class="pre">rename-file</span></code> <kbd class="kbd docutils literal notranslate">RETURN</kbd> <em>~/foo</em> <kbd class="kbd docutils literal notranslate">RETURN</kbd> <em>~/tmp/foo</em> <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">rename-file</span> <span class="pre">RET</span></code> <em>~/foo</em> <code class="docutils literal notranslate"><span class="pre">RET</span></code> <em>/tmp/foo</em> <code class="docutils literal notranslate"><span class="pre">RET</span></code>) renombra <em>~/foo</em> a <em>/tmp/foo</em>. En GNU y otros sistemas POSIX, los nombres de directorio terminan en <code class="docutils literal notranslate"><span class="pre">/</span></code>.</p>
<p>Todos estos comandos piden confirmación cuando <em>nuevo</em> nombre de archivo ya existe.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">copy-file</span></code> copia el contenido del archivo <em>anterior</em> en el archivo <em>nuevo</em>.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">copy-directory</span></code> copia directorios, de forma similar al comando de shell <code class="docutils literal notranslate"><span class="pre">cp</span> <span class="pre">-r</span></code>. Si <em>nuevo</em> es un nombre de directorio, crea una copia del directorio <em>anterior</em> y la coloca en <em>nuevo</em>. En caso contrario, copia todo el contenido del directorio <em>anterior</em> en uno <em>nuevo</em>. Si <code class="docutils literal notranslate"><span class="pre">copy-directory-create-symlink</span></code> es distinto de <code class="docutils literal notranslate"><span class="pre">nil</span></code> y <em>antiguo</em> es un enlace simbólico, este comando copiará el enlace simbólico. Si es <code class="docutils literal notranslate"><span class="pre">nil</span></code>, este comando seguirá el enlace y copiará el contenido en su lugar. (Esta es la opción por defecto).</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">rename-file</span></code> renombra al archivo <em>antiguo</em> como <em>nuevo</em>. Si nombre de archivo <em>nuevo</em> ya existe, debe confirmar con <code class="docutils literal notranslate"><span class="pre">yes</span></code> (si) o no se llevará a cabo el renombrado; esto se debe a que el renombramiento hace que se pierda el significado <em>anterior</em> del nombre <em>nuevo</em>. Si <em>antiguo</em> y <em>nuevo</em> están en sistemas de archivos diferentes, el archivo <em>antiguo</em> se copia y se borra.</p>
<p>Si un archivo está bajo control de versiones (véase <strong>Control de Versiones</strong>), deberá renombrarlo usando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">vc-rename-file</span></code> en lugar de <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">rename-file</span></code>. Consulte <strong>Borrar y Renombrar Archivos Controlados por Versión</strong>.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">add-name-to-file</span></code> añade un nombre adicional a un archivo existente sin eliminar nombre <em>anterior</em>. El archivo de nombre <em>nuevo</em> se crea como un enlace duro al archivo existente. El fichero de nombre <em>nuevo</em> debe pertenecer al mismo sistema de ficheros que el archivo a renombrar. En MS-Windows, este comando sólo funciona si el archivo reside en un sistema de archivos NTFS. En MS-DOS, y algunos tipos de sistemas remotos, funciona copiando el archivo.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">make-symbolic-link</span></code> crea un enlace simbólico llamado <em>nuevo</em>, que apunta al archivo <em>anterior</em>. El efecto es que los futuros intentos de abrir el archivo <em>nuevo</em> se referirán al archivo que se llame <em>destino</em> en el momento de la apertura, o se producirá un error si el nombre <em>destino</em> no existe en ese momento. Este comando no expande el argumento <em>destino</em>, por lo que permite especificar un nombre relativo como <em>destino</em> del enlace. Sin embargo, este comando expande el <code class="docutils literal notranslate"><span class="pre">~</span></code> inicial en <em>destino</em> para que pueda especificar fácilmente directorios de inicio, y elimina el <code class="docutils literal notranslate"><span class="pre">/:</span></code> inicial para que pueda especificar nombres relativos que comiencen con <code class="docutils literal notranslate"><span class="pre">~</span></code> o <code class="docutils literal notranslate"><span class="pre">/:</span></code> literales. Véase <strong>Nombres de Archivos Entrecomillados</strong>. En MS-Windows, este comando sólo funciona en MS Windows Vista y versiones posteriores. Cuando <em>nuevo</em> es remoto, funciona dependiendo del tipo de sistema.</p>
</section>
<section id="operaciones-varias-con-archivos">
<h2>19.12 Operaciones Varias con Archivos<a class="headerlink" href="#operaciones-varias-con-archivos" title="Link to this heading"></a></h2>
<p>Emacs tiene comandos para realizar muchas otras operaciones con archivos. Todos operan sobre un fichero; no aceptan nombres de archivo comodín.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">delete-file</span></code> solicita un archivo y lo borra. Si está borrando muchos archivos en un directorio, puede ser más conveniente usar Dired en lugar de delete-file. Consulte Borrado de archivos con Dired.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">move-file-to-trash</span></code> mueve un archivo a la <em>Papelera</em> del sistema (o <em>Papelera de Reciclaje</em>). Se trata de una función disponible en la mayoría de los sistemas operativos; los archivos que se mueven a la Papelera pueden recuperarse más tarde si cambia de opinión. (La forma de restaurar los archivos de la papelera depende del sistema).</p>
<p>Por defecto, los comandos de borrado de Emacs <em>no</em> utilizan la Papelera. Para usar la Papelera (cuando esté disponible) para los comandos comunes de borrado, cambie la variable <code class="docutils literal notranslate"><span class="pre">delete-by-moving-to-trash</span></code> a <code class="docutils literal notranslate"><span class="pre">t</span></code>. Esto afecta a los comandos <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">delete-file</span></code> y <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">delete-directory</span></code> (ver <strong>Directorios de Archivos</strong>), así como a los comandos de borrado en Dired (ver <strong>Borrado de Archivos con Dired</strong>). Suministrar un argumento prefijo a <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">delete-file</span></code> o <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">delete-directory</span></code> hace que se borren directamente, en lugar de usar la Papelera, independientemente de <code class="docutils literal notranslate"><span class="pre">delete-by-moving-to-trash</span></code>.</p>
<p>Si tiene configurado <code class="docutils literal notranslate"><span class="pre">delete-by-moving-to-trash</span></code>, y quiere borrar archivos manualmente en Emacs desde el directorio Trash, usar comandos como <code class="docutils literal notranslate"><span class="pre">D</span></code> (<code class="docutils literal notranslate"><span class="pre">dired-do-delete</span></code>) no funciona
bien en este directorio (sólo le dará un nuevo nombre al archivo, pero no borrará nada). Si desea poder hacer esto, debe crear un archivo <code class="docutils literal notranslate"><span class="pre">.dir-locals.el</span></code> que contenga algo como lo siguiente en el directorio Papelera:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">((</span><span class="n">dired</span><span class="o">-</span><span class="n">mode</span> <span class="o">.</span> <span class="p">((</span><span class="n">delete</span><span class="o">-</span><span class="n">by</span><span class="o">-</span><span class="n">moving</span><span class="o">-</span><span class="n">to</span><span class="o">-</span><span class="n">trash</span> <span class="o">.</span> <span class="n">nil</span><span class="p">))))</span>
</pre></div>
</div>
<p>Tenga en cuenta, sin embargo, que si usa el comando del sistema «vaciar papelera», es probable que también borre este archivo <code class="docutils literal notranslate"><span class="pre">.dir-locals.el</span></code>, por lo que esto sólo debería hacerse si borra archivos del directorio Papelera manualmente.</p>
<p>Si un archivo está bajo control de versiones (vea <strong>Control de Versiones</strong>), debería borrarlo usando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">vc-delete-file</span></code> en lugar de <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">delete-file</span></code>. Consulte <strong>Borrar y Renombrar Archivos Controlados por Sistema de Control de Versiones</strong>.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">insert-file</span></code> (también <code class="docutils literal notranslate"><span class="pre">C-x</span> <span class="pre">i</span></code>) inserta una copia del contenido del archivo especificado en el búfer actual en el punto, dejando el punto sin cambios antes del contenido. La posición después del contenido insertado se añade al anillo de marcas, sin activar la marca (véase <strong>El Anillo de Marcas</strong>).</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">insert-file-literally</span></code> es como <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">insert-file</span></code>, excepto que el archivo se inserta literalmente: se trata como una secuencia de caracteres ASCII sin codificación especial ni conversión, de forma similar al comando <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">find-file-literally</span></code> (ver <strong>Visitar Archivos</strong>).</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">write-región</span></code> es el comando inverso de <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">insert-file</span></code>; copia el contenido de la región en el archivo especificado. <code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">append-to-file</span></code> añade el texto de la región al final del archivo especificado. Véase <strong>Acumular Texto</strong>. La variable <code class="docutils literal notranslate"><span class="pre">write-region-inhibit-fsync</span></code> se aplica a estos comandos, así como al guardado de archivos; véase <strong>Personalización del Guardado de Archivos</strong>.</p>
<p><code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">set-file-modes</span></code> lee un nombre de archivo seguido de un <em>modo de archivo</em> y aplica ese modo de archivo al archivo especificado. Los modos de archivo, también llamados <em>permisos de archivo</em>, determinan si un archivo puede leerse, escribirse o ejecutarse, y quién puede hacerlo. Este comando lee los modos de archivo usando el mismo formato simbólico u octal aceptado por el comando chmod; por ejemplo, <code class="docutils literal notranslate"><span class="pre">u+x</span></code> significa añadir permiso de ejecución para el Usuario propietario del archivo. No tiene efecto en sistemas operativos que no soportan modos de archivo. <code class="docutils literal notranslate"><span class="pre">chmod</span></code> es un alias de conveniencia para esta función.</p>
</section>
<section id="acceso-a-archivos-comprimidos">
<h2>19.13. Acceso a Archivos Comprimidos<a class="headerlink" href="#acceso-a-archivos-comprimidos" title="Link to this heading"></a></h2>
<p>Emacs descomprime automáticamente los archivos comprimidos cuando los visita, y los recomprime automáticamente si los modifica y guarda. Emacs reconoce los archivos comprimidos por sus nombres. Los nombres de archivo que terminan en “.gz” indican un archivo comprimido con gzip. Otras terminaciones indican otros programas de compresión.</p>
<p>Emacs descomprime automáticamente los archivos comprimidos cuando los visita, y los recomprime automáticamente si los modifica y guarda. Emacs reconoce los archivos comprimidos por sus nombres. Los nombres de archivo que terminan en <code class="docutils literal notranslate"><span class="pre">.gz</span></code> indican un archivo comprimido con <code class="docutils literal notranslate"><span class="pre">gzip</span></code>. Otras terminaciones indican otros programas de compresión.</p>
<p>La descompresión y compresión automáticas se aplican a todas las operaciones en las que Emacs usa el contenido de un archivo. Esto incluye visitarlo, guardarlo, insertar su contenido en un búfer, cargarlo y compilarlo en bytes.</p>
<p>Para desactivar esta función, escriba el comando M-x auto-compression-mode. Puede desactivarla permanentemente personalizando la variable auto-compression-mode.</p>
<p>Para desactivar esta función, escriba el comando <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-compression-mode</span></code> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">auto-compression-mode</span></code>). Puede desactivarla permanentemente personalizando la variable <code class="docutils literal notranslate"><span class="pre">auto-compression-mode</span></code>.</p>
</section>
<section id="archivos-de-archivos">
<h2>19.14 Archivos de Archivos<a class="headerlink" href="#archivos-de-archivos" title="Link to this heading"></a></h2>
<p>Un archivo cuyo nombre termina en “.tar” es normalmente un archivo hecho por el programa tar. Emacs visualiza estos archivos en un modo especial llamado modo Tar que proporciona una lista de contenidos similar a Dired (ver Dired, el Editor de Directorios). Puede moverse por la lista como lo haría en Dired, y visitar los subficheros contenidos en el archivo. Sin embargo, no todos los comandos de Dired están disponibles en modo Tar.</p>
<p>Si el modo de compresión automática está activado (ver Acceso a Archivos Comprimidos), entonces el modo Tar se usa también para archivos comprimidos -archivos con extensiones “.tgz”, .tar.Z y .tar.gz.</p>
<p>Las teclas e, f y RET extraen un archivo componente a su propio búfer. Puede editarlo allí y, si guarda el búfer, la versión editada sustituirá a la del búfer Tar. Hacer clic con el ratón sobre el nombre del archivo en el búfer Tar hace lo mismo. v extrae un archivo a un búfer en modo Visualizar (ver Modo Visualizar). o extrae el archivo y lo muestra en otra ventana, de forma que pueda editar el archivo y operar en el archivo simultáneamente.</p>
<p>La tecla I añade un nuevo archivo (normal) al archivo. El archivo está inicialmente vacío, pero puede editarse fácilmente usando los comandos anteriores. El comando inserta el nuevo archivo antes que el actual, de modo que usarlo en la primera línea del búfer Tar hace que el nuevo archivo sea el primero del archivo, y usarlo al final del búfer hace que sea el último.</p>
<p>d marca un archivo para que se borre cuando más tarde uses x, y u desmarca un archivo, como en Dired. C copia un archivo del archivo al disco y R renombra un archivo dentro del archivo. g revierte el búfer del archivo al disco. Las claves M, G y O cambian los bits de permiso, el grupo y el propietario del archivo, respectivamente.</p>
<p>Un fichero cuyo nombre termina en <code class="docutils literal notranslate"><span class="pre">.tar</span></code> es normalmente un <em>archivo</em> hecho por el programa <code class="docutils literal notranslate"><span class="pre">tar</span></code>. Emacs visualiza estos archivos en un modo especial llamado modo Tar que proporciona una lista de contenidos similar a Dired (ver <strong>Dired, el Editor de Directorios</strong>). Puede moverse por la lista como lo haría en Dired, y visitar los subarchivos contenidos en el archivo. Sin embargo, no todos los comandos de Dired están disponibles en modo Tar.</p>
<p>Si el modo de compresión automática está activado (ver <strong>Acceso a Archivos Comprimidos</strong>), entonces el modo Tar se usa también para archivos comprimidos -archivos con extensiones <code class="docutils literal notranslate"><span class="pre">.tgz</span></code>, <code class="docutils literal notranslate"><span class="pre">.tar.Z</span></code> y <code class="docutils literal notranslate"><span class="pre">.tar.gz</span></code>.</p>
<p>Las teclas <kbd class="kbd docutils literal notranslate">e</kbd> (<code class="docutils literal notranslate"><span class="pre">e</span></code>), <kbd class="kbd docutils literal notranslate">f</kbd> (<code class="docutils literal notranslate"><span class="pre">f</span></code>) y <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">RET</span></code>) extraen un archivo componente a su propio búfer. Puede editarlo allí y, si guarda el búfer, la versión editada sustituirá a la del búfer Tar. Hacer clic con el ratón sobre el nombre del archivo en el búfer Tar hace lo mismo. v extrae un archivo a un búfer en modo Visualizar (ver <strong>Modo Visualizar</strong>). o extrae el archivo y lo muestra en otra ventana, de forma que pueda editar el archivo y operar en el archivo simultáneamente.</p>
<p>La tecla <kbd class="kbd docutils literal notranslate">I</kbd> (<code class="docutils literal notranslate"><span class="pre">I</span></code>) añade un nuevo archivo (normal) al archivo. El archivo está inicialmente vacío, pero puede editarse fácilmente usando los comandos anteriores. El comando inserta el nuevo archivo antes que el actual, de modo que usarlo en la primera línea del búfer Tar hace que el nuevo archivo sea el primero del archivo, y usarlo al final del búfer hace que sea el último.</p>
<p><kbd class="kbd docutils literal notranslate">d</kbd> (<code class="docutils literal notranslate"><span class="pre">d</span></code>) marca un archivo para que se borre cuando más tarde use <kbd class="kbd docutils literal notranslate">x</kbd> (<code class="docutils literal notranslate"><span class="pre">x</span></code>), y <kbd class="kbd docutils literal notranslate">u</kbd> (<code class="docutils literal notranslate"><span class="pre">u</span></code>) desmarca un archivo, como en Dired. <kbd class="kbd docutils literal notranslate">C</kbd> (<code class="docutils literal notranslate"><span class="pre">C</span></code>) copia un archivo del archivo al disco y <kbd class="kbd docutils literal notranslate">R</kbd> (<code class="docutils literal notranslate"><span class="pre">R</span></code>) renombra un archivo dentro del archivo. <kbd class="kbd docutils literal notranslate">g</kbd> (<code class="docutils literal notranslate"><span class="pre">g</span></code>) revierte el búfer del archivo al disco. Las teclas <kbd class="kbd docutils literal notranslate">M</kbd> (<code class="docutils literal notranslate"><span class="pre">M</span></code>), <kbd class="kbd docutils literal notranslate">G</kbd> (<code class="docutils literal notranslate"><span class="pre">G</span></code>) y <kbd class="kbd docutils literal notranslate">O</kbd> (<code class="docutils literal notranslate"><span class="pre">O</span></code>) cambian los bits de permiso, el grupo y el propietario del archivo, respectivamente.</p>
<p>Al guardar el búfer Tar se escribe una nueva versión del archivo en el disco con los cambios realizados en los componentes.</p>
<p>No necesita el programa tar para usar el modo Tar: Emacs lee los archivos directamente. Sin embargo, para acceder a archivos comprimidos se necesita el programa de descompresión adecuado.</p>
<p>Se usa un modo de archivo separado pero similar para los archivos arc, jar, lzh, zip, rar, 7z y zoo, así como para los archivos exe que son ejecutables autoextraíbles.</p>
<p>Las combinaciones de teclas del modo Archivo son similares a las del modo Tar, con la adición de la tecla m, que marca un archivo para operaciones posteriores, y M-DEL, que desmarca todos los archivos marcados. Además, la tecla a activa la visualización de información detallada del archivo, para aquellos tipos de archivo en los que no cabe en una sola línea. Operaciones como renombrar un subfichero, o cambiar su modo o propietario, sólo están soportadas para algunos de los formatos de archivo.</p>
<p>A diferencia del modo Tar, el modo Archivo ejecuta los programas de archivado para descomprimir y volver a empaquetar los archivos. Sin embargo, no necesita estos programas para ver la tabla de contenidos del archivo, sólo para extraer o manipular los subficheros del archivo. Los detalles de los nombres de los programas y sus opciones se pueden configurar en el grupo de personalización “Archivo” (ver Grupos de Personalización).</p>
<p>No necesita el programa <code class="docutils literal notranslate"><span class="pre">tar</span></code> para usar el modo Tar: Emacs lee los archivos directamente. Sin embargo, para acceder a archivos comprimidos se necesita el programa de descompresión adecuado.</p>
<p>Se usa un modo de archivo separado pero similar para los archivos <code class="docutils literal notranslate"><span class="pre">arc</span></code>, <code class="docutils literal notranslate"><span class="pre">jar</span></code>, <code class="docutils literal notranslate"><span class="pre">lzh</span></code>, <code class="docutils literal notranslate"><span class="pre">zip</span></code>, <code class="docutils literal notranslate"><span class="pre">rar</span></code>, <code class="docutils literal notranslate"><span class="pre">7z</span></code> y <code class="docutils literal notranslate"><span class="pre">zoo</span></code>, así como para los archivos exe que son ejecutables autoextraíbles.</p>
<p>Las combinaciones de teclas del modo Archivo son similares a las del modo Tar, con la adición de la tecla <kbd class="kbd docutils literal notranslate">m</kbd> (<code class="docutils literal notranslate"><span class="pre">m</span></code>), que marca un archivo para operaciones posteriores, y <code class="docutils literal notranslate"><span class="pre">M-DEL</span></code>, que desmarca todos los archivos marcados. Además, la tecla a activa la visualización de información detallada del archivo, para aquellos tipos de archivo en los que no cabe en una sola línea. Operaciones como renombrar un subarchivo, o cambiar su modo o propietario, sólo están soportadas para algunos de los formatos de archivo.</p>
<p>A diferencia del modo Tar, el modo Archivo ejecuta los programas de archivado para descomprimir y volver a empaquetar los archivos. Sin embargo, no necesita estos programas para ver la tabla de contenidos del archivo, sólo para extraer o manipular los subarchivos del archivo. Los detalles de los nombres de los programas y sus opciones se pueden configurar en el grupo de personalización <code class="docutils literal notranslate"><span class="pre">Archive</span></code> (ver <strong>Grupos de Personalización</strong>).</p>
</section>
<section id="archivos-remotos">
<h2>19.15 Archivos Remotos<a class="headerlink" href="#archivos-remotos" title="Link to this heading"></a></h2>
<p>Puede hacer referencia a archivos de otras máquinas usando una sintaxis especial de nombres de archivo:</p>
<blockquote>
<div><p>/method:host:nombrearchivo
/method:usuario&#64;host:nombrearchivo
/method:usuario&#64;host#port:nombrearchivo</p>
</div></blockquote>
<p>Para llevar a cabo esta petición, Emacs usa un programa de inicio de sesión remoto como ssh. Siempre debe especificar en el nombre del archivo qué método usar-por ejemplo, /<a class="reference external" href="ssh:usuario&#64;host:nombredearchivo">ssh:usuario&#64;host:nombredearchivo</a> usa ssh. Cuando se especifica el pseudo-método “-” en el nombre del archivo, Emacs elige el método de la siguiente manera:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">/</span><span class="n">method</span><span class="p">:</span><span class="n">host</span><span class="p">:</span><span class="n">nombrearchivo</span>
<span class="o">/</span><span class="n">method</span><span class="p">:</span><span class="n">usuario</span><span class="nd">@host</span><span class="p">:</span><span class="n">nombrearchivo</span>
<span class="o">/</span><span class="n">method</span><span class="p">:</span><span class="n">usuario</span><span class="nd">@host</span><span class="c1">#port:nombrearchivo</span>
</pre></div>
</div>
<p>Para llevar a cabo esta petición, Emacs usa un programa de inicio de sesión remoto como <code class="docutils literal notranslate"><span class="pre">ssh</span></code>. Siempre debe especificar en el nombre del archivo qué método usar-por ejemplo, <code class="docutils literal notranslate"><span class="pre">/ssh:usuario&#64;host:nombredearchivo</span></code> usa <code class="docutils literal notranslate"><span class="pre">ssh</span></code>. Cuando se especifica el pseudo-método <code class="docutils literal notranslate"><span class="pre">-</span></code> en el nombre del archivo, Emacs elige el método de la siguiente manera:</p>
<blockquote>
<div><ol class="arabic simple">
<li><p>Si el nombre de host empieza por “ftp.” (con punto), Emacs usa FTP.</p></li>
<li><p>Si el nombre de Usuario es “ftp” o “anonymous”, Emacs usa FTP.</p></li>
<li><p>Si la variable tramp-default-method es “ftp”, Emacs usa FTP.</p></li>
<li><p>Si ssh-agent se está ejecutando, Emacs usa scp.</p></li>
<li><p>Si no, Emacs usa ssh.</p></li>
<li><p>Si el nombre de host empieza por <code class="docutils literal notranslate"><span class="pre">ftp.</span></code> (con punto), Emacs usa FTP.</p></li>
<li><p>Si el nombre de Usuario es <code class="docutils literal notranslate"><span class="pre">ftp</span></code> o <code class="docutils literal notranslate"><span class="pre">anonymous</span></code>, Emacs usa FTP.</p></li>
<li><p>Si la variable <code class="docutils literal notranslate"><span class="pre">tramp-default-method</span></code> es <code class="docutils literal notranslate"><span class="pre">ftp</span></code>, Emacs usa FTP.</p></li>
<li><p>Si <code class="docutils literal notranslate"><span class="pre">ssh-agent</span></code> se está ejecutando, Emacs usa <code class="docutils literal notranslate"><span class="pre">scp</span></code>.</p></li>
<li><p>Si no, Emacs usa <code class="docutils literal notranslate"><span class="pre">ssh</span></code>.</p></li>
</ol>
</div></blockquote>
<p>Puede desactivar completamente la función de nombre de archivo remoto estableciendo la variable tramp-mode a nil. Puede desactivar la función en casos individuales entrecomillando el nombre de archivo con “/:” (consulte Nombres de Archivos Entrecomillados).</p>
<p>El acceso remoto a archivos a través de FTP se gestiona mediante el paquete Ange-FTP, que se documenta a continuación. El acceso remoto a archivos a través de otros métodos es gestionado por el paquete Tramp, que tiene su propio manual. Ver El Manual de Tramp en El Manual de Tramp.</p>
<p>Cuando se usa el paquete Ange-FTP, Emacs entra a través de FTP usando el nombre Usuario, si se especifica en el nombre del archivo remoto. Si no especifica usuario, Emacs inicia la sesión usando su nombre de usuario en el sistema local; pero si establece la variable ange-ftp-default-user a una cadena, se usará esa cadena en su lugar. Al iniciar sesión, Emacs también puede pedir una contraseña.</p>
<p>Por razones de rendimiento, Emacs no hace por defecto copias de seguridad de los archivos a los que se accede por FTP. Para hacerlo, cambie la variable ange-ftp-make-backup-files a un valor no nulo.</p>
<p>Por defecto, los archivos de autoguardado para archivos remotos se realizan en el directorio de archivos temporales de la máquina local, tal y como especifica la variable auto-save-file-name-transforms. Véase Autoguardar Archivos.</p>
<p>Para visitar archivos accesibles por FTP anónimo, se usan nombres de usuario especiales “anonymous” o “ftp”. Las contraseñas para estos nombres de usuario se tratan de forma especial. La variable ange-ftp-generate-anonymous-password controla lo que ocurre: si el valor de esta variable es una cadena, entonces esa cadena se usa como contraseña; si no es nula (por defecto), entonces se usa el valor de user-mail-address; si es nula, Emacs le pide una contraseña como siempre (vea Ingreso de Contraseñas).</p>
<p>A veces puede que no pueda acceder a los archivos de una máquina remota porque un cortafuegos intermedio bloquea la conexión por razones de seguridad. Si puede conectarse a una máquina pasarela desde la que se pueda acceder a los archivos de destino, y cuyo servidor FTP admita las funciones de pasarela, puede seguir usando nombres de archivo remotos; todo lo que tiene que hacer es especificar el nombre de la máquina pasarela configurando la variable ange-ftp-gateway-host, y configurar ange-ftp-smart-gateway como t. De lo contrario, puede hacer que funcionen los nombres de archivo remotos, pero el procedimiento es complejo. Puede leer las instrucciones escribiendo M-x finder-commentary RET ange-ftp RET.</p>
<p>Puede desactivar completamente la función de nombre de archivo remoto estableciendo la variable <code class="docutils literal notranslate"><span class="pre">tramp-mode</span></code> a <code class="docutils literal notranslate"><span class="pre">nil</span></code>. Puede desactivar la función en casos individuales entrecomillando el nombre de archivo con <code class="docutils literal notranslate"><span class="pre">/:</span></code> (consulte <strong>Nombres de Archivos Entrecomillados</strong>).</p>
<p>El acceso remoto a archivos a través de FTP se gestiona mediante el paquete Ange-FTP, que se documenta a continuación. El acceso remoto a archivos a través de otros métodos es gestionado por el paquete Tramp, que tiene su propio manual. Ver <strong>El Manual de Tramp</strong>.</p>
<p>Cuando se usa el paquete Ange-FTP, Emacs entra a través de FTP usando el nombre <em>Usuario</em>, si se especifica en el nombre del archivo remoto. Si no especifica Usuario, Emacs inicia la sesión usando su nombre de Usuario en el sistema local; pero si establece la variable <code class="docutils literal notranslate"><span class="pre">ange-ftp-default-user</span></code> a una cadena, se usará esa cadena en su lugar. Al iniciar sesión, Emacs también puede pedir una contraseña.</p>
<p>Por razones de rendimiento, Emacs no hace por defecto copias de seguridad de los archivos a los que se accede por FTP. Para hacerlo, cambie la variable <code class="docutils literal notranslate"><span class="pre">ange-ftp-make-backup-files</span></code> a un valor no nulo.</p>
<p>Por defecto, los archivos de autoguardado para archivos remotos se realizan en el directorio de archivos temporales de la máquina local, tal y como especifica la variable <code class="docutils literal notranslate"><span class="pre">auto-save-file-name-transforms</span></code>. Véase <strong>Autoguardar Archivos</strong>.</p>
<p>Para visitar archivos accesibles por FTP anónimo, se usan nombres de Usuario especiales <code class="docutils literal notranslate"><span class="pre">anonymous</span></code> o <code class="docutils literal notranslate"><span class="pre">ftp</span></code>. Las contraseñas para estos nombres de Usuario se tratan de forma especial. La variable <code class="docutils literal notranslate"><span class="pre">ange-ftp-generate-anonymous-password</span></code> controla lo que ocurre: si el valor de esta variable es una cadena, entonces esa cadena se usa como contraseña; si no es nula (por defecto), entonces se usa el valor de <code class="docutils literal notranslate"><span class="pre">user-mail-address</span></code>; si es nula, Emacs le pide una contraseña como siempre (vea <strong>Ingreso de Contraseñas</strong>).</p>
<p>A veces puede que no pueda acceder a los archivos de una máquina remota porque un cortafuegos intermedio bloquea la conexión por razones de seguridad. Si puede conectarse a una máquina pasarela desde la que se pueda acceder a los archivos de destino, y cuyo servidor FTP admita las funciones de pasarela, puede seguir usando nombres de archivo remotos; todo lo que tiene que hacer es especificar el nombre de la máquina pasarela configurando la variable <code class="docutils literal notranslate"><span class="pre">ange-ftp-gateway-host</span></code>, y configurar <code class="docutils literal notranslate"><span class="pre">ange-ftp-smart-gateway</span></code> como <code class="docutils literal notranslate"><span class="pre">t</span></code>. De lo contrario, puede hacer que funcionen los nombres de archivo remotos, pero el procedimiento es complejo. Puede leer las instrucciones 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">finder-commentary</span></code> <kbd class="kbd docutils literal notranslate">RETURN</kbd> <code class="docutils literal notranslate"><span class="pre">ange-ftp</span></code> <kbd class="kbd docutils literal notranslate">RETURN</kbd> (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">finder-commentary</span> <span class="pre">RET</span> <span class="pre">ange-ftp</span> <span class="pre">RET</span></code>).</p>
</section>
<section id="nombres-de-archivos-entrecomillados">
<h2>19.16 Nombres de Archivos Entrecomillados<a class="headerlink" href="#nombres-de-archivos-entrecomillados" title="Link to this heading"></a></h2>
<p>Puede entrecomillar un nombre de archivo absoluto para evitar que los caracteres especiales y la sintaxis que contenga tengan sus efectos especiales. La forma de hacerlo es añadir “/:” al principio.</p>
<p>Por ejemplo, puede entrecomillar un nombre de archivo local que parezca remoto para evitar que se trate como un nombre de archivo remoto. Así, si tienes un directorio llamado /foo: y un archivo llamado bar en él, puede referirse a ese archivo en Emacs como “/:/foo:/bar”.</p>
<p>Si sólo quiere citar caracteres especiales en la parte local de un nombre de archivo remoto, puede citar sólo la parte local. /<a class="reference external" href="ssh:baz:/:/foo:/bar">ssh:baz:/:/foo:/bar</a>” se refiere al archivo bar del directorio /foo: en el host baz.</p>
<p>“/:” también puede evitar que “~” sea tratado como un carácter especial para el directorio personal de un Usuario. Por ejemplo, /:/tmp/~hack se refiere a un archivo cuyo nombre es ~hack en el directorio /tmp.</p>
<p>Citar con “/:” es también una forma de introducir en el minibúfer un nombre de archivo que contenga “$”. Para que esto funcione, el “/:” debe estar al principio del contenido del minibúfer. (También puede duplicar cada “$”; consulte Nombres de archivo con $).</p>
<p>También puede entrecomillar caracteres comodín con “/:”, para visitas. Por ejemplo, /:/tmp/foo*bar visita el archivo /tmp/foo*bar.</p>
<p>Otro método para obtener el mismo resultado es introducir /tmp/foo[*]bar, que es una especificación comodín que sólo coincide con /tmp/foo*bar. Sin embargo, en muchos casos no es necesario entrecomillar los caracteres comodín porque incluso sin entrecomillar dan el resultado correcto. Por ejemplo, si el único nombre de archivo de /tmp que empieza por «foo» y termina por «bar» es foo*bar, al especificar /tmp/foo*bar sólo se visitará /tmp/foo*bar.</p>
<p>Puede <em>entrecomillar</em> un nombre de archivo absoluto para evitar que los caracteres especiales y la sintaxis que contenga tengan sus efectos especiales. La forma de hacerlo es añadir <code class="docutils literal notranslate"><span class="pre">/:</span></code> al principio.</p>
<p>Por ejemplo, puede entrecomillar un nombre de archivo local que parezca remoto para evitar que se trate como un nombre de archivo remoto. Así, si tiene un directorio llamado <code class="docutils literal notranslate"><span class="pre">/foo:</span></code> y un archivo llamado <code class="docutils literal notranslate"><span class="pre">bar</span></code> en él, puede referirse a ese archivo en Emacs como <code class="docutils literal notranslate"><span class="pre">/:/foo:/bar</span></code>.</p>
<p>Si sólo quiere citar caracteres especiales en la parte local de un nombre de archivo remoto, puede citar sólo la parte local. <code class="docutils literal notranslate"><span class="pre">/ssh:baz:/:/foo:/bar</span></code> se refiere al archivo <code class="docutils literal notranslate"><span class="pre">bar</span></code> del directorio <code class="docutils literal notranslate"><span class="pre">/foo:</span></code> en el host <code class="docutils literal notranslate"><span class="pre">baz</span></code>.</p>
<p><code class="docutils literal notranslate"><span class="pre">/:</span></code> también puede evitar que <code class="docutils literal notranslate"><span class="pre">~</span></code> sea tratado como un carácter especial para el directorio personal de un Usuario. Por ejemplo, <code class="docutils literal notranslate"><span class="pre">/:/tmp/~hack</span></code> se refiere a un archivo cuyo nombre es <code class="docutils literal notranslate"><span class="pre">~hack</span></code> en el directorio <code class="docutils literal notranslate"><span class="pre">/tmp</span></code>.</p>
<p>Citar con <code class="docutils literal notranslate"><span class="pre">/:</span></code> es también una forma de introducir en el minibúfer un nombre de archivo que contenga <code class="docutils literal notranslate"><span class="pre">$</span></code>. Para que esto funcione, el <code class="docutils literal notranslate"><span class="pre">/:</span></code> debe estar al principio del contenido del minibúfer. (También puede duplicar cada <code class="docutils literal notranslate"><span class="pre">$</span></code>; consulte <strong>Nombres de Archivo con $</strong></p>
<p>También puede entrecomillar caracteres comodín con <code class="docutils literal notranslate"><span class="pre">/:</span></code>, para visitas. Por ejemplo, <code class="docutils literal notranslate"><span class="pre">/:/tmp/foo*bar</span></code> visita el archivo <code class="docutils literal notranslate"><span class="pre">/tmp/foo*bar</span></code>.</p>
<p>Otro método para obtener el mismo resultado es introducir <code class="docutils literal notranslate"><span class="pre">/tmp/foo[*]bar</span></code>, que es una especificación comodín que sólo coincide con <code class="docutils literal notranslate"><span class="pre">/tmp/foo*bar</span></code>. Sin embargo, en muchos casos no es necesario entrecomillar los caracteres comodín porque incluso sin entrecomillar dan el resultado correcto. Por ejemplo, si el único nombre de archivo de /tmp que empieza por <code class="docutils literal notranslate"><span class="pre">foo</span></code> y termina por <code class="docutils literal notranslate"><span class="pre">bar</span></code> es <code class="docutils literal notranslate"><span class="pre">foo*bar</span></code>, al especificar <code class="docutils literal notranslate"><span class="pre">/tmp/foo*bar</span></code> sólo se visitará <code class="docutils literal notranslate"><span class="pre">/tmp/foo*bar</span></code>.</p>
</section>
<section id="cache-de-nombres-de-archivo">
<h2>19.17 Caché de Nombres de Archivo<a class="headerlink" href="#cache-de-nombres-de-archivo" title="Link to this heading"></a></h2>
<p>Puede usar la caché de nombres de archivo para facilitar la localización de un archivo por su nombre, sin tener que recordar exactamente dónde se encuentra. Al escribir un nombre de archivo en el minibúfer, C-TAB (file-cache-minibuffer-complete) lo completa usando la caché de nombres de archivo. Si repite C-TAB, eso hace un ciclo a través de las posibles terminaciones de lo que había tecleado originalmente. (Sin embargo, tenga en cuenta que el carácter C-TAB no se puede teclear en la mayoría de los terminales de texto).</p>
<p>La caché de nombres de archivo no se llena automáticamente. En su lugar, usted carga los nombres de archivo en la caché usando estos comandos:</p>
<dl class="simple">
<dt>M-x file-cache-add-directory RET directory RET</dt><dd><p>Añade cada nombre de archivo del directorio a la caché de nombres de archivo.</p>
</dd>
<dt>M-x file-cache-add-directory-using-find RET directory RET</dt><dd><p>Añade cada nombre de archivo del directorio y todos sus subdirectorios anidados a la caché de nombres de archivo.</p>
</dd>
<dt>M-x file-cache-add-directory-using-locate RET directory RET</dt><dd><p>Añade cada nombre de archivo del directorio y todos sus subdirectorios anidados a la caché de nombres de archivo, usando locate para encontrarlos a todos.</p>
</dd>
<dt>M-x file-cache-add-directory-list RET variable RET</dt><dd><p>Añade cada nombre de archivo de cada directorio enumerado en variable a la caché de nombres de archivo. variable debe ser una variable Lisp cuyo valor sea una lista de directorios,
como load-path.</p>
</dd>
<dt>M-x file-cache-clear-cache RET</dt><dd><p>Borra la caché; es decir, elimina todos los nombres de archivo de la misma.</p>
</dd>
</dl>
<p>La caché de nombres de archivo no es persistente: se guarda y mantiene sólo mientras dura la sesión de Emacs. Puede ver el contenido de la caché con el comando file-cache-display.</p>
<p>Puede usar la <em>caché de nombres de archivo</em> para facilitar la localización de un archivo por su nombre, sin tener que recordar exactamente dónde se encuentra. Al escribir un nombre de archivo en el minibúfer, <kbd class="kbd docutils literal notranslate">Ctrl</kbd>-<kbd class="kbd docutils literal notranslate">TAB</kbd> (<code class="docutils literal notranslate"><span class="pre">C-TAB</span></code>, <code class="docutils literal notranslate"><span class="pre">file-cache-minibuffer-complete</span></code>) lo completa usando la caché de nombres de archivo. Si repite <code class="docutils literal notranslate"><span class="pre">C-TAB</span></code>, eso hace un ciclo a través de las posibles terminaciones de lo que había tecleado originalmente. (Sin embargo, tenga en cuenta que el carácter <code class="docutils literal notranslate"><span class="pre">C-TAB</span></code> no se puede teclear en la mayoría de los terminales de texto).</p>
<p>La caché de nombres de archivo no se llena automáticamente. En su lugar, Usted carga los nombres de archivo en la caché usando estos comandos:</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">file-cache-add-directory</span></code> <kbd class="kbd docutils literal notranslate">RETURN</kbd> <em>directorio</em> <kbd class="kbd docutils literal notranslate">RETURN</kbd></div>
<div class="line">(<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">file-cache-add-directory</span> <span class="pre">RET</span></code> <em>directorio</em> <code class="docutils literal notranslate"><span class="pre">RET</span></code>)</div>
</div>
<blockquote>
<div><p>Añade cada nombre de archivo del <em>directorio</em> a la caché de nombres de archivo.</p>
</div></blockquote>
<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">file-cache-add-directory-using-find</span></code> <kbd class="kbd docutils literal notranslate">RETURN</kbd> <em>directorio</em> <kbd class="kbd docutils literal notranslate">RETURN</kbd></div>
<div class="line">(<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">file-cache-add-directory-using-find</span> <span class="pre">RET</span></code> <em>directorio</em> <code class="docutils literal notranslate"><span class="pre">RET</span></code>)</div>
</div>
<blockquote>
<div><p>Añade cada nombre de archivo del <em>directorio</em> y todos sus subdirectorios anidados a la caché de nombres de archivo.</p>
</div></blockquote>
<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">file-cache-add-directory-using-locate</span></code> <kbd class="kbd docutils literal notranslate">RETURN</kbd> <em>directorio</em> <kbd class="kbd docutils literal notranslate">RETURN</kbd></div>
<div class="line">(<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">file-cache-add-directory-using-locate</span> <span class="pre">RET</span></code> <em>directorio</em> <code class="docutils literal notranslate"><span class="pre">RET</span></code>)</div>
</div>
<blockquote>
<div><p>Añade cada nombre de archivo del <em>directorio</em> y todos sus subdirectorios anidados a la caché de nombres de archivo, usando <code class="docutils literal notranslate"><span class="pre">locate</span></code> para encontrarlos a todos.</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">file-cache-add-directory</span></code> <em>variable</em> <kbd class="kbd docutils literal notranslate">RETURN</kbd>
| (<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">file-cache-add-directory-list</span> <span class="pre">RET</span></code> <em>variable</em> <code class="docutils literal notranslate"><span class="pre">RET</span></code>)</p>
<blockquote>
<div><p>Añade cada nombre de archivo de cada <em>directorio</em> enumerado en variable a la caché de nombres de archivo. <em>variable</em> ser una variable Lisp cuyo valor sea una lista de directorios,
como <code class="docutils literal notranslate"><span class="pre">load-path</span></code>.</p>
</div></blockquote>
<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">file-cache-clear-cache</span></code> <kbd class="kbd docutils literal notranslate">RETURN</kbd></div>
<div class="line">(<code class="docutils literal notranslate"><span class="pre">M-x</span> <span class="pre">file-cache-clear-cache</span> <span class="pre">RET</span></code>)</div>
</div>
<blockquote>
<div><p>Borra la caché; es decir, elimina todos los nombres de archivo de la misma.</p>
</div></blockquote>
<p>La caché de nombres de archivo no es persistente: se guarda y mantiene sólo mientras dura la sesión de Emacs. Puede ver el contenido de la caché con el comando <code class="docutils literal notranslate"><span class="pre">file-cache-display</span></code>.</p>
<p>19.18 Funciones Útiles para Encontrar Archivos</p>
<p>En esta sección, presentamos algunas facilidades convenientes para encontrar archivos abiertos recientemente, leyendo nombres de archivos desde un búfer.</p>
<p>Si habilita el modo recentf, con M-x recentf-mode, Emacs mantiene una lista de archivos abiertos recientemente. Para abrir un archivo de esta lista, use el comando M-x recentf-open. Cuando este modo está activado, el menú “File” (Archivo) incluirá un submenú que puede usar para visitar uno de estos archivos. M-x recentf-save-list guarda la lista recentf actual en un archivo, y M-x recentf-edit-list la edita.</p>
@ -815,7 +844,7 @@ como load-path.</p>
<p>Al visitar archivos de imagen se selecciona automáticamente el modo Imagen (Image mode). En este modo principal, puede teclear C-c C-c (image-toggle-display) para alternar entre mostrar el archivo como una imagen en el búfer de Emacs, y mostrar su representación de texto en bruto (o byte en bruto). Además, puede escribir C-c C-x (image-toggle-hex-display) para alternar entre mostrar el archivo como una imagen en el búfer de Emacs y mostrarlo en representación hexadecimal. Mostrar el archivo como una imagen sólo funciona si Emacs está compilado con soporte para mostrar este tipo de imágenes.</p>
<p>Si la imagen mostrada es más ancha o más alta que la ventana en la que se muestra, las teclas habituales de movimiento de puntos (C-f, C-p, etc.) hacen que se muestren diferentes partes de la imagen. Sin embargo, por defecto las imágenes se redimensionan automáticamente para ajustarse a la ventana, por lo que esto sólo es necesario si se personaliza el comportamiento por defecto usando las opciones image-auto-resize e image-auto-resize-on-window-resize.</p>
<p>Para redimensionar la imagen manualmente puede usar el comando image-transform-fit-to-window enlazado a s w que ajusta la imagen tanto a la altura como a la anchura de la ventana. Para escalar la imagen a un porcentaje de su tamaño original, use el comando image-transform-set-percent enlazado a s p. Para escalar la imagen especificando un factor de escala, use el comando image-transform-set-scale enlazado a s s. Para restablecer todas las transformaciones al estado inicial, use image-transform-reset-to-initial enlazado a s 0, o image-transform-reset-to-original enlazado a s o.</p>
<p>Puede pulsar n (image-next-file) y p (image-previous-file) para visitar el siguiente archivo de imagen y el archivo de imagen anterior en el mismo directorio, respectivamente. Estos comandos consultarán el búfer del directorio «padre» para determinar cuál es el archivo de imagen siguiente/anterior. Estos comandos también funcionan al abrir un archivo desde ficheros de archivo (como ficheros zip o tar), y consultarán en su lugar el búfer de modo de archivo. Si no se puede encontrar ni un archivo ni un búfer «padre», se abrirá un búfer «padre».</p>
<p>Puede pulsar n (image-next-file) y p (image-previous-file) para visitar el siguiente archivo de imagen y el archivo de imagen anterior en el mismo directorio, respectivamente. Estos comandos consultarán el búfer del directorio «padre» para determinar cuál es el archivo de imagen siguiente/anterior. Estos comandos también funcionan al abrir un archivo desde archivos de archivo (como archivos zip o tar), y consultarán en su lugar el búfer de modo de archivo. Si no se puede encontrar ni un archivo ni un búfer «padre», se abrirá un búfer «padre».</p>
<p>Al examinar imágenes, a veces es conveniente poder marcar los archivos para procesarlos posteriormente (por ejemplo, si desea seleccionar un grupo de imágenes para copiarlas en otro lugar). El comando m (image-mode-mark-file) marcará el archivo actual en cualquier búfer(es) Dired que muestre el directorio del archivo actual. Si no hay ningún búfer abierto, el directorio se abre en uno nuevo. Para desmarcar archivos, use el comando u (image-mode-mark-file). Por último, si sólo desea copiar el nombre del archivo del búfer actual en el anillo kill, puede usar el comando w (image-mode-copy-file-name-as-kill).</p>
<p>Si la imagen se puede animar, el comando RET (image-toggle-animation) inicia o detiene la animación. La animación se reproduce una vez, a menos que la opción image-animate-loop no sea nula. Con f (image-next-frame) y b (image-previous-frame) puede recorrer los distintos fotogramas. Ambos comandos aceptan un prefijo numérico para recorrer varios fotogramas a la vez. Puede ir a un marco específico con F (image-goto-frame). Los marcos se indexan a partir de 1. Si escribe a + (image-increase-speed) aumenta la velocidad de la animación, a - (image-decrease-speed) la disminuye y a r (image-reverse-speed) la invierte. El comando a 0 (image-reset-speed) restablece la velocidad al valor original.</p>
<p>Además de las combinaciones de teclas anteriores, que son específicas del modo Imagen, las imágenes mostradas en cualquier búfer de Emacs tienen combinaciones de teclas especiales cuando el punto está en la imagen o dentro de ella:</p>
@ -838,7 +867,7 @@ imágenes cortadas.</p>
<dt>i o</dt><dd><p>Guardar la imagen en un archivo (image-save). Este comando le pide el nombre del archivo para guardar la imagen.</p>
</dd>
<dt>i c</dt><dd><p>Recorta la imagen (image-crop). Este comando sólo está disponible si su sistema tiene instalado un programa externo que pueda usarse para recortar y cortar imágenes; la opción de
usuario image-crop-crop-command determina qué programa usar, y por defecto usa el programa de conversión de ImageMagick. El comando muestra la imagen con un marco rectangular
Usuario image-crop-crop-command determina qué programa usar, y por defecto usa el programa de conversión de ImageMagick. El comando muestra la imagen con un marco rectangular
superpuesto, y le permite usar el ratón para mover y redimensionar el marco. Escriba m para que los movimientos del ratón muevan el marco en lugar de redimensionarlo; escriba s para
mover un marco cuadrado en su lugar. Cuando esté satisfecho con la posición y el tamaño del marco de recorte, escriba RET para recortar la parte que está debajo del marco; o escriba q
para salir sin recortar. Puede guardar la imagen recortada usando i o o M-x imagen-guardar.</p>
@ -873,9 +902,9 @@ prefijo, el comando pregunta por el color a usar.</p>
</section>
<section id="conjunto-de-archivos">
<h2>19.20 Conjunto de Archivos<a class="headerlink" href="#conjunto-de-archivos" title="Link to this heading"></a></h2>
<p>Si edita regularmente un determinado grupo de archivos, puede definirlos como un conjunto de archivos. Esto le permite realizar ciertas operaciones, como visitar, query-replace (consultar-reemplazar), y comandos shell en todos los archivos a la vez. Para usar conjuntos de ficheros, primero debe añadir la expresión (filesets-init) a su archivo init (vea El Archivo de Inicialización de Emacs). Esto añade un submenú “Filesets” al menú “File” de la barra de menú.</p>
<p>Si edita regularmente un determinado grupo de archivos, puede definirlos como un conjunto de archivos. Esto le permite realizar ciertas operaciones, como visitar, query-replace (consultar-reemplazar), y comandos shell en todos los archivos a la vez. Para usar conjuntos de archivos, primero debe añadir la expresión (filesets-init) a su archivo init (vea El Archivo de Inicialización de Emacs). Esto añade un submenú “Filesets” al menú “File” de la barra de menú.</p>
<p>La forma más sencilla de definir un fileset es añadiéndole archivos de uno en uno. Para añadir un archivo a un conjunto de archivos, visite el archivo y escriba M-x conjuntos-de-archivos-añadir-búfer RET nombre RET. Si no hay ningún nombre de fileset, se crea uno nuevo, que inicialmente sólo contiene el archivo actual. El comando M-x filesets-remove-buffer elimina el archivo actual de un fileset.
También puede editar la lista de conjuntos de archivos directamente, con M-x filesets-edit (o eligiendo “Edit Filesets” (Editar Conjuntos de Archivos) en el menú “Filesets” (Conjuntos de archivos)). La edición se realiza en un búfer de personalización (véase Interfaz de Personalización Fácil). Normalmente, un conjunto de archivos es una simple lista de archivos, pero también puede definir un conjunto de archivos como una expresión regular que coincida con nombres de archivo. Algunos ejemplos de estos conjuntos de ficheros más complicados se muestran en el búfer Personalizar. Recuerde seleccionar “Save for future sessions” (Guardar para futuras sesiones) si quiere usar los mismos conjuntos de ficheros en futuras sesiones de Emacs.</p>
También puede editar la lista de conjuntos de archivos directamente, con M-x filesets-edit (o eligiendo “Edit Filesets” (Editar Conjuntos de Archivos) en el menú “Filesets” (Conjuntos de archivos)). La edición se realiza en un búfer de personalización (véase Interfaz de Personalización Fácil). Normalmente, un conjunto de archivos es una simple lista de archivos, pero también puede definir un conjunto de archivos como una expresión regular que coincida con nombres de archivo. Algunos ejemplos de estos conjuntos de ficheros más complicados se muestran en el búfer Personalizar. Recuerde seleccionar “Save for future sessions” (Guardar para futuras sesiones) si quiere usar los mismos conjuntos de archivos en futuras sesiones de Emacs.</p>
<p>Puede usar el comando M-x filesets-open para visitar todos los archivos de un fileset, y M-x filesets-close para cerrarlos. Usa M-x filesets-run-cmd para ejecutar un comando de shell en todos los archivos de un fileset. Estos comandos también están disponibles en el menú “Filesets”, donde cada fileset existente está representado por un submenú.</p>
<p>Véase Control de Versiones, para un concepto diferente de los conjuntos de archivos: grupos de archivos agrupados para operaciones de control de versiones. Los filesets de este tipo no tienen nombre, y no permanecen a través de las sesiones de Emacs.</p>
</section>

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</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.01
Traducción Revisón: 1.02
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
@ -345,6 +345,7 @@ de la libertad del software.»</p>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/19_ManejoArchivos.html#comparacion-de-archivos">19.9 Comparación de Archivos</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/19_ManejoArchivos.html#modo-diff">19.10 Modo Diff</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/19_ManejoArchivos.html#copiar-nombrar-y-renombrar-archivos">19.11 Copiar, Nombrar y Renombrar Archivos</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/19_ManejoArchivos.html#operaciones-varias-con-archivos">19.12 Operaciones Varias con Archivos</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/19_ManejoArchivos.html#acceso-a-archivos-comprimidos">19.13. Acceso a Archivos Comprimidos</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/19_ManejoArchivos.html#archivos-de-archivos">19.14 Archivos de Archivos</a></li>
<li class="toctree-l2"><a class="reference internal" href="CapConSecciones/19_ManejoArchivos.html#archivos-remotos">19.15 Archivos Remotos</a></li>

View File

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

Binary file not shown.

View File

@ -38,7 +38,7 @@
GNU/Emacs 29.1
</a>
<div class="version">
Traducción Revisón: 1.01
Traducción Revisón: 1.02
</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