emacs, gendoc
This commit is contained in:
parent
549dc2b4f9
commit
97470ce05c
1 changed files with 149 additions and 1 deletions
|
@ -12,7 +12,7 @@
|
|||
<div class="frame content">
|
||||
<input type="radio" name="page" id="_" checked><input type="radio" name="page" id="_la_organizacion_de_la_pantalla"><input type="radio" name="page" id="_tipo_de_entradas_de_los_usuarios"><input type="radio" name="page" id="_teclas_comandos"><input type="radio" name="page" id="_entrar_y_salir_de_emacs"><input type="radio" name="page" id="_comandos_basicos_de_edicion"><input type="radio" name="page" id="_el_minibufer"><input type="radio" name="page" id="_ejecutar_comandos_por_nombres"><input type="radio" name="page" id="_ayuda_help"><input type="radio" name="page" id="_la_marca_y_la_region"><input type="radio" name="page" id="_matar_y_mover_texto"><input type="radio" name="page" id="_registros"><input type="radio" name="page" id="_control_de_la_pantalla"><input type="radio" name="page" id="_busqueda_y_reemplazo"><input type="radio" name="page" id="_macros_de_teclado"><input type="radio" name="page" id="_manejo_de_archivos"><input type="radio" name="page" id="_usando_multiples_buffers"><input type="radio" name="page" id="_ventanas_multiples"><input type="radio" name="page" id="_marcos_y_pantallas_graficas"><input type="radio" name="page" id="_soporte_de_juegos_de_caracteres_internacionales"><input type="radio" name="page" id="_modos_mayores_y_menores"><input type="radio" name="page" id="_sangria"><input type="radio" name="page" id="_comandos_para_lenguajes_humanos"><input type="radio" name="page" id="_edicion_de_programas"><input type="radio" name="page" id="_compilacion_y_prueba_de_programas"><input type="radio" name="page" id="_mantener_programas_grandes">
|
||||
<nav class="side nav"><div>
|
||||
<div class="title"><a href="./00_Emacs.html">GNU Emacs 28.2</a><div class="version">Revisión: 0.86</div><input id="_q" class="search" type="text" required="required" onkeyup="s(this.value);"></div> <div id="_s" class="nav"></div>
|
||||
<div class="title"><a href="./00_Emacs.html">GNU Emacs 28.2</a><div class="version">Revisión: 0.87</div><input id="_q" class="search" type="text" required="required" onkeyup="s(this.value);"></div> <div id="_s" class="nav"></div>
|
||||
<div id="_t" class="nav">
|
||||
<p>Conceptos Generales Importantes</p>
|
||||
<ul>
|
||||
|
@ -482,6 +482,9 @@
|
|||
<li class="h3"><a href="#buscar_identificadores">Buscar identificadores</a></li>
|
||||
<li class="h4"><a href="#busqueda_de_identificadores">Búsqueda de identificadores</a></li>
|
||||
<li class="h4"><a href="#comandos_disponibles_en_el_bufer_tt_xref_tt">Comandos disponibles en el búfer <tt>*xref*</tt></a></li>
|
||||
<li class="h4"><a href="#buscar_y_reemplazar_con_identificadores">Buscar y reemplazar con identificadores</a></li>
|
||||
<li class="h4"><a href="#consultas_sobre_identificadores">Consultas sobre identificadores</a></li>
|
||||
<li class="h3"><a href="#tablas_de_etiquetas">Tablas de etiquetas</a></li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -19920,6 +19923,151 @@ Sale de la ventana que muestra el buffer <samp>*xref*</samp> (<samp>xref-quit</s
|
|||
<p>
|
||||
Además, los comandos de navegación habituales, como las teclas de flecha, <kbd>Ctrl</kbd>-<kbd>n</kbd> (<samp>C-n</samp>) y <kbd>Ctrl</kbd>-<kbd>p</kbd> (<samp>C-p</samp>) están disponibles
|
||||
para moverse por el buffer sin mostrar las referencias.
|
||||
</p>
|
||||
<h4 id="buscar_y_reemplazar_con_identificadores">Buscar y reemplazar con identificadores<a href="#buscar_y_reemplazar_con_identificadores"></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>
|
||||
<dt><kbd>Alt</kbd>-<kbd>?</kbd> (<samp>M-?</samp>)</dt>
|
||||
<dd>
|
||||
Busca todas las referencias del identificador en el punto.
|
||||
</dd>
|
||||
<dt><kbd>Alt</kbd>-<kbd>x</kbd> <samp>xref-query-replace-in-results</samp> <kbd>RETURN</kbd> <i><samp>expreg</samp></i> <kbd>RETURN</kbd> <i><samp>reemplazo</samp></i> <kbd>RETURN</kbd><br/>
|
||||
(<samp>M-x xref-query-replace-in-results RET</samp> <i><samp>expreg</samp></i> <samp>RET</samp> <i><samp>reemplazo</samp></i> <samp>RET</samp>)</dt>
|
||||
<dd>
|
||||
Reemplaza interactivamente <i>expreg</i> con <i>reemplazo</i> en los nombres de todos los identificadores mostrados en el buffer <samp>*xref*</samp>.
|
||||
</dd>
|
||||
<dt><kbd>Alt</kbd>-<kbd>x</kbd> <samp>tags-search</samp> <kbd>RETURN</kbd> <i><samp>expreg</samp></i> <kbd>RETURN</kbd><br/>(<samp>M-x tags-search RET</samp> <i><samp>expreg</samp></i>
|
||||
<samp>RET</samp>)</dt>
|
||||
<dd>
|
||||
Busca <i>expreg</i> en los archivos de la tabla de etiquetas seleccionada.
|
||||
</dd>
|
||||
<dt><kbd>Alt</kbd>-<kbd>x</kbd> <samp>tags-query-replace</samp> <kbd>RETURN</kbd> <i><samp>expreg</samp></i> <kbd>RETURN</kbd> <i><samp>reemplazo</samp></i> <kbd>RETURN</kbd><br/>(<samp>M-x
|
||||
tags-query-replace</samp> <samp>RET</samp> <i><samp>expreg</samp></i> <samp>RET</samp> <i><samp>reemplazo</samp></i> <samp>RET</samp>)</dt>
|
||||
<dd>
|
||||
Realiza una consulta-reemplazo de expresiones regulares (query-replace-regexp) en cada archivo de la tabla de etiquetas seleccionada.
|
||||
</dd>
|
||||
<dt><kbd>Alt</kbd>-<kbd>x</kbd> <samp>fileloop-continue</samp> (<samp>M-x fileloop-continue</samp>)</dt>
|
||||
<dd>
|
||||
Reinicia uno de los 2 últimos comandos anteriores, desde la ubicación actual del punto.
|
||||
</dd>
|
||||
</dl>
|
||||
<p>
|
||||
<kbd>Alt</kbd>-<kbd>?</kbd> (<samp>M-?</samp>) encuentra todas las referencias para el identificador en el punto, solicitando el identificador según sea necesario, con la finalización.
|
||||
Dependiendo del backend actual (ver Buscar referencias de identificadores), el comando puede preguntar incluso si encuentra un identificador válido en el punto. Cuando se invoca con
|
||||
un argumento de prefijo, siempre pide el identificador. (Si quiere que pregunte siempre, personalice el valor de la variable <samp>xref-prompt-for-identifier</samp> a <samp>t</samp>; o
|
||||
póngalo a <samp>nil</samp> para preguntar sólo si no hay un identificador utilizable en el punto). El comando presenta entonces el buffer <samp>*xref*</samp> con todas las referencias al
|
||||
identificador, mostrando el nombre del archivo y la línea donde se hace referencia al identificador. Los comandos del modo XREF están disponibles en este búfer, véase Comandos
|
||||
disponibles en el búfer <samp>*xref*</samp>.
|
||||
</p>
|
||||
<p>
|
||||
Si el valor de la variable <samp>xref-auto-jump-to-first-xref</samp> es <samp>t</samp>, <samp>xref-find-references</samp> salta automáticamente al primer resultado y selecciona la ventana donde
|
||||
se muestra. Si el valor es <samp>show</samp>, se muestra el primer resultado, pero se deja seleccionada la ventana que muestra el buffer <samp>*xref*</samp>. Si el valor es <samp>move</samp>, el
|
||||
primer resultado se selecciona en el buffer <samp>*xref*</samp>, pero no se muestra. El valor por defecto es <samp>nil</samp>, que sólo muestra los resultados en el buffer <samp>*xref*</samp>,
|
||||
pero no selecciona ninguno de ellos.
|
||||
</p>
|
||||
<p>
|
||||
<kbd>Alt</kbd>-<kbd>x</kbd> <samp>xref-query-replace-in-results</samp> (<samp>M-x xref-query-replace-in-results</samp>) lee una regexp para que coincida con los nombres de los
|
||||
identificadores y una cadena de reemplazo, igual que la <kbd>Alt</kbd>-<kbd>x</kbd> <samp>query-replace-regexp</samp> (<samp>M-x query-replace-regexp</samp>) ordinaria. A continuación,
|
||||
realiza el reemplazo especificado en los nombres de los identificadores que coinciden en todos los lugares de todos los archivos en los que se hace referencia a estos
|
||||
identificadores. Esto es útil cuando se cambia el nombre de los identificadores como parte de la refactorización. Este comando debe ser invocado en el buffer <samp>*xref*</samp> generado
|
||||
por <kbd>Alt</kbd>-<kbd>?</kbd> (<samp>M-?</samp>)
|
||||
</p>
|
||||
<p>
|
||||
<kbd>Alt</kbd>-<kbd>x</kbd> <b><samp>tags-search</samp></b> (<samp>M-x tags-search</samp>) lee una regexp usando el minibuffer, luego busca coincidencias en todos los archivos de la tabla de
|
||||
etiquetas seleccionada, un archivo a la vez. Muestra el nombre del archivo que se está buscando para que puedas seguir su progreso. En cuanto <samp>tags-search</samp> encuentra una
|
||||
coincidencia, devuelve el resultado de la búsqueda. Este comando requiere que las tablas de etiquetas estén disponibles (véase Tablas de etiquetas).
|
||||
</p>
|
||||
<p>
|
||||
Tras encontrar una coincidencia con <samp>tags-search</samp>, probablemente quiera encontrar todas las demás. <kbd>Alt</kbd>-<kbd>x</kbd> <samp>fileloop-continue</samp> (<samp>M-x
|
||||
fileloop-continue</samp>) reanuda la búsqueda de etiquetas, encontrando una coincidencia más. Esto busca el resto del buffer actual, seguido por los archivos restantes de la tabla de
|
||||
etiquetas.
|
||||
</p>
|
||||
<p>
|
||||
<kbd>Alt</kbd>-<kbd>x</kbd> <b><samp>tags-query-replace</samp></b> (<samp>M-x tags-query-replace</samp>) realiza una única <samp>query-replace-regexp</samp> a través de todos los archivos de la
|
||||
tabla de etiquetas. Lee una regexp para buscar y una cadena con la que reemplazar, igual que el <kbd>Alt</kbd>-<kbd>x</kbd> <b><samp>query-replace-regexp</samp></b> (<samp>M-x
|
||||
query-replace-regexp</samp>) ordinario. Busca como <kbd>Alt</kbd>-<kbd>x</kbd> <b><samp>tags-search</samp></b> (<samp>M-x tags-search</samp>), pero repetidamente, procesando las
|
||||
coincidencias de acuerdo a su entrada. Ver Query Replace, para más información sobre query replace.
|
||||
</p>
|
||||
<p>
|
||||
Puede controlar la sensibilidad a las mayúsculas y minúsculas de los comandos de búsqueda de etiquetas personalizando el valor de la variable <samp>tags-case-fold-search</samp>. El valor
|
||||
por defecto es el mismo que el de <samp>case-fold-search</samp> (ver Lax Matching During Searching).
|
||||
</p>
|
||||
<p>
|
||||
Es posible recorrer todos los archivos de la tabla de etiquetas con una sola invocación de <kbd>Alt</kbd>-<kbd>x</kbd> <b><samp>tags-query-replace</samp></b> (<samp>M-x
|
||||
tags-query-replace</samp>). Pero a menudo es útil salir temporalmente, lo que se puede hacer con cualquier evento de entrada que no tenga un significado especial de query replace.
|
||||
Puede reanudar el reemplazo de la consulta posteriormente escribiendo <kbd>Alt</kbd>-<kbd>x</kbd> <b><samp>fileloop-continue</samp></b> (<samp>M-x fileloop-continue</samp>); este comando
|
||||
reanuda el último comando de búsqueda o reemplazo de etiquetas que haya realizado. Por ejemplo, para saltar el resto del archivo actual, puede escribir <kbd>Alt</kbd>-<kbd>></kbd>
|
||||
<kbd>Alt</kbd>-<kbd>x</kbd> <b><samp>fileloop-continue</samp></b> (<samp>M-> M-x fileloop-continue</samp>) .
|
||||
</p>
|
||||
<p>
|
||||
Tenga en cuenta que los comandos descritos anteriormente realizan búsquedas mucho más amplias que la familia <samp>xref-find-definitions</samp>. Los comandos
|
||||
<samp>xref-find-definitions</samp> sólo buscan definiciones de identificadores que coincidan con su cadena o regexp. Los comandos <samp>xref-find-references</samp>, <samp>tags-search</samp>, y
|
||||
<samp>tags-query-replace</samp> encuentran cada ocurrencia del identificador o regexp, como lo hacen los comandos ordinarios de búsqueda y reemplazo en el buffer actual.
|
||||
</p>
|
||||
<p>
|
||||
Como alternativa a <samp>xref-find-references</samp> y <samp>tags-search</samp>, puedes ejecutar grep como un subproceso y hacer que <samp>Emacs</samp> te muestre las líneas coincidentes una por
|
||||
una. Ver Buscar con Grep en Emacs.
|
||||
</p>
|
||||
<h4 id="consultas_sobre_identificadores">Consultas sobre identificadores<a href="#consultas_sobre_identificadores"></a></h4>
|
||||
<dl>
|
||||
<dt><kbd>Ctrl</kbd>-<kbd>Alt</kbd>-<kbd>i</kbd> (<samp>C-M-i</samp>)<br/><kbd>Alt</kbd>-<kbd>TAB</kbd> (<samp>M-TAB</samp>)</dt>
|
||||
<dd>
|
||||
Realiza la finalización del texto alrededor del punto, posiblemente utilizando la tabla de etiquetas seleccionada si se carga una (<samp>completion-at-point</samp>).
|
||||
</dd>
|
||||
<dt><kbd>Alt</kbd>-<kbd>x</kbd> <samp>list-tags</samp> <kbd>RETURN</kbd> <i><samp>archivo</samp></i> <kbd>RETURN</kbd> (<samp>M-x list-tags RET</samp> <i><samp>archivo</samp></i> <samp>RET</samp>)</dt>
|
||||
<dd>
|
||||
Mostrar una lista de los identificadores definidos en el archivo del programa.
|
||||
</dd>
|
||||
<dt><kbd>Ctrl</kbd>-<kbd>Alt</kbd>-<kbd>.</kbd> <i><samp>expreg</samp></i> (<samp>C-M-.</samp> <i><samp>expreg</samp></i> <samp>RET</samp>)</dt>
|
||||
<dd>
|
||||
Muestra una lista de todos los identificadores que coinciden con regexp (xref-find-apropos). Véase Búsqueda de identificadores.
|
||||
</dd>
|
||||
<dt><kbd>Alt</kbd>-<kbd>x</kbd> <samp>tags-next-file</samp> (<samp>M-x tags-next-file</samp>)</dt>
|
||||
<dd>
|
||||
Visitar los archivos registrados en la tabla de etiquetas seleccionadas.
|
||||
</dd>
|
||||
</dl>
|
||||
<p>
|
||||
En la mayoría de los modos del lenguaje de programación, puede escribir <kbd>Ctrl</kbd>-<kbd>Alt</kbd>-<kbd>i</kbd> (<samp>C-M-i</samp>) o <kbd>Alt</kbd>-<kbd>TAB</kbd> (<samp>M-TAB</samp>,
|
||||
<samp>completion-at-point</samp>) para completar el símbolo en el punto. Algunos modos proporcionan una finalización especializada para este comando adaptada al modo; para aquellos que
|
||||
no lo hacen, si hay una tabla de etiquetas cargada, este comando puede utilizarla para generar candidatos a la finalización. Véase Completar los nombres de los símbolos.
|
||||
</p>
|
||||
<p>
|
||||
<kbd>Alt</kbd>-<kbd>x</kbd> <b><samp>list-tags</samp></b> (<samp>M-x list-tags</samp>) lee el nombre de uno de los archivos cubiertos por la tabla de etiquetas seleccionada, y muestra una
|
||||
lista de etiquetas definidas en ese archivo. No incluya un directorio como parte del nombre del archivo, a menos que el nombre del archivo registrado en la tabla de etiquetas incluya
|
||||
un directorio. Este comando sólo funciona con el backend etags, y requiere que haya una tabla de etiquetas para el proyecto. Véase Tablas de etiquetas. Si se utiliza de forma
|
||||
interactiva, la etiqueta por defecto es el nombre de archivo de la memoria intermedia actual.
|
||||
</p>
|
||||
<p>
|
||||
<kbd>Alt</kbd>-<kbd>x</kbd> <b><samp>tags-next-file</samp></b> (<samp>M-x tags-next-file</samp>) visita los archivos cubiertos por la tabla de etiquetas seleccionada. La primera vez que se
|
||||
llama, visita el primer archivo cubierto por la tabla. Cada vez que se llama, visita el siguiente archivo cubierto, a menos que se proporcione un argumento de prefijo, en cuyo caso
|
||||
vuelve al primer archivo. Este comando requiere que se seleccione una tabla de etiquetas.
|
||||
</p>
|
||||
<h3 id="tablas_de_etiquetas">Tablas de etiquetas<a href="#tablas_de_etiquetas"></a></h3>
|
||||
<p>
|
||||
Una <i>tabla de etiquetas</i> registra las etiquetas <sup>(15)</sup> extraídas al escanear el código fuente de un determinado programa o un determinado documento. Las etiquetas
|
||||
extraídas de archivos generados hacen referencia a los archivos originales, en lugar de a los archivos generados que fueron escaneados durante la extracción de etiquetas. Ejemplos de
|
||||
archivos generados son los archivos C generados a partir de archivos fuente Cweb, de un analizador Yacc o de definiciones de escáner Lex; archivos C preprocesados <samp>.i</samp> y
|
||||
archivos Fortran producidos mediante el preprocesamiento de archivos fuente <samp>.fpp</samp>.
|
||||
</p>
|
||||
<div class="info"><p><span>Nota</span></p><p>
|
||||
<sup>(15)</sup> Una <i>etiqueta</i> es un sinónimo de identificador de referencia. Los comandos y funciones basados en el paquete etags utilizan tradicionalmente "etiqueta" con este
|
||||
significado, y esta subsección sigue esa tradición.
|
||||
</p></div>
|
||||
<p>
|
||||
Para producir una tabla de etiquetas, se ejecuta el comando de shell <samp>etags</samp> en un documento o en el archivo de código fuente. El programa ‘<samp>etags</samp>’ escribe las
|
||||
etiquetas en un <i>archivo de tabla de etiquetas</i>, o archivo de etiquetas en definitiva. El nombre convencional de un archivo de etiquetas es TAGS. Véase Creación de tablas de
|
||||
etiquetas. (También es posible crear una tabla de tags usando uno de los comandos de otros paquetes que pueden producir tales tablas en el mismo formato).
|
||||
</p>
|
||||
<p>
|
||||
<samp>Emacs</samp> utiliza las tablas de tags a través del paquete <samp>etags</samp> como uno de los backends soportados por <samp>xref</samp>. Debido a que las tablas de etiquetas son
|
||||
producidas por el comando <samp>etags</samp> que es parte de una distribución de <samp>Emacs</samp>, describimos las tablas de etiquetas en más detalle aquí.
|
||||
</p>
|
||||
<p>
|
||||
La facilidad Ebrowse es similar a <samp>etags</samp> pero específicamente adaptada a C++. Vea Ebrowse en el Manual del usuario de Ebrowse. El paquete Semantic proporciona otra forma de
|
||||
generar y 8utilizar etiquetas, aparte de la facilidad etags. Ver Semantic.
|
||||
</p><label class="btn prev" accesskey="p" for="_compilacion_y_prueba_de_programas" title="Compilación y prueba de programas">Anterior</label></div>
|
||||
<footer><hr><p>© Copyright Tano 2.022<br/><small>Generated by <a href="https://gitlab.com/bztsrc/gendoc">gendoc</a> v1.0.0</small></p></footer>
|
||||
</div>
|
||||
|
|
Loading…
Reference in a new issue