TeXstudio: Autocompletar "recursivo" para comandos personalizados

TeXstudio: Autocompletar "recursivo" para comandos personalizados

Agregué este comando a las secciones de referencia (figuras, capítulos, etc.):

\newcommand{\secref}[1]{Section~\ref{#1}}

Ahora el autocompletado de TeXstudio me muestra

ingrese la descripción de la imagen aquí

pero me falta el autocompletado para las secciones reales. Como en el autocompletar para \ref{.... es posible?

Una solución no tan buena sería omitir el \refcomando.

\newcommand{\secref}[1]{Section~#1}

y luego ve por ejemplo \secref{\ref{sec:setup}}.

Respuesta1

En lugar de reinventar la rueda, prefiero usar cleveref. Esto insertará automáticamente los nombres apropiados de las etiquetas a las que se hace referencia, además de ser compatible con el autocompletado de texstudios.

Por ejemplo en el siguiente documento

\documentclass{article}

\usepackage[capitalise, noabbrev]{cleveref}

\begin{document}

\section{test}
\label{sec:test}

\begin{figure}
\caption{bla}\label{fig:bla}
\end{figure}

\cref{fig:bla} \cref{sec:test}

\end{document}

Texstudio le pedirá

ingrese la descripción de la imagen aquí

y la salida será

ingrese la descripción de la imagen aquí

Respuesta2

EDITAR: Esto no responde a la pregunta, como se indica en los comentarios. En esta respuesta, explico cómo agregar macros en texstudio, para que el cursor salte a una ubicación específica en esa macro. Un asunto completamente diferente, en verdad.


Respuesta original

Aunque estoy de acuerdo con Samcarter, para completar, hay una manera de hacer lo que originalmente querías en texstudio.

Vaya a [Macros > Editar macros...] Luego cree una nueva macro, asígnele un nombre, una abreviatura (no obligatoria y bastante inútil en mi humilde opinión) y un disparador (un buen diseño es importante para los disparadores). En la sección de código, agregarías

 \secref{%|section%|}

Guardar y cerrar. En la ventana de su editor, escriba el activador y el texto del activador será reemplazado automáticamente por el código de macro \secref{section}con el foco del cursor, seleccione la palabra sectionentre llaves, lista para ser editada.

ingrese la descripción de la imagen aquí

Como puedes ver, abuso de esta función. (Hay mucha basura en la imagen, ya que estaba probando lo que me resultó útil y aún no he limpiado el desorden).


Por cierto, uso un espacio al principio y al final de la mayoría de mis activadores para evitar que texstudio convierta "texto normal" en alguna macro. P.ej. la macro mlsin espacios sería realmente molesta, ya que cualquier palabra que contenga la secuencia 'ml' tendría una macro justo en el medio. Si estuviera escribiendo Umlaut sin mirar, obtendría U\SI{aut and the rest of the text in the braces,}{\ml}lo que no tiene ningún sentido. Puedes hacer mucho más con los disparadores y las macros, simplemente haz clic en al ?lado de la palabra "Trigger" y pruébalo tú mismo.

información relacionada