En LaTeX, ¿cómo puedo definir una variable de cadena cuyo contenido se usa en lugar de la variable en el PDF compilado?
Digamos que estoy escribiendo un documento técnico en un software y quiero definir el nombre del paquete en el preámbulo o en algún lugar para que si su nombre cambia, no tenga que reemplazarlo en muchos lugares, sino solo en un lugar .
Respuestas:
agregue lo siguiente a su preámbulo:
Entonces puedes usarlo
\newCommandName{}
en el textoPara obtener más información sobre
\newcommand
, consulte, por ejemplo, wikilibrosEjemplo:
Salida:
fuente
Use el
\def
comando:Tenga en cuenta que
\def
anula las macros preexistentes sin ninguna advertencia y, por lo tanto, puede causar varios errores sutiles. Para superar esto, ya sea utilizar variables de espacios de nombres comomy_var
o caer de nuevo a\newcommand
,\renewcommand
los comandos en su lugar.fuente
\def
puede ser problemático ya que no busca macros preexistentes. Vea el segundo círculo del infierno de LaTeX : como tal, es preferible usarlo\newcommand
variable
que es probable que cambie? :)\def
. En cambio, creo que es una buena práctica primero "inicializar" todas las variables que desea usar\newcommand
(incluso si es solo con\@empty
), y luego crear su comando para modificar la variable usando\renewcommand
. Esto le permitirá saber si su variable ya existe, ya\newcommand
que arrojará un error (o al menos una advertencia).\def
funciona para cosas en modo matemático, mientras\newCommandName
que no. (Por ejemplo,\def\mathExpression{\pi^2 + \sin x}
)Para las variables que describen las distancias, se utiliza
\newlength
(y manipular los valores con\setlength
,\addlength
,\settoheight
,\settolength
y\settodepth
).Del mismo modo, tiene acceso a
\newcounter
elementos como números de sección y figura que deberían incrementarse a lo largo del documento. He usado este en el pasado para proporcionar ejemplos de código numerados por separado de otras figuras ...También es de destacar
\makebox
que le permite almacenar un poco de documento diseñado para su posterior reutilización (y para su uso con\settolength
...).fuente
\newlength{\hcolw}
y\setlength{\hcolw}{0.47\textwidth}
sería útil.Si desea usar
\newcommand
, también puede incluir\usepackage{xspace}
y definir comandos por\newcommand{\newCommandName}{text to insert\xspace}
. Esto puede permitirle usar en\newCommandName
lugar de\newCommandName{}
.Para más detalles, http://www.math.tamu.edu/~harold.boas/courses/math696/why-macros.html
fuente
Creo que es probable que desee utilizar una lista de tokens para este propósito: para configurar la lista de símbolos
\newtoks\packagename
para asignar el nombre de:\packagename={New Name for the package}
poner el nombre en su salida:\the\packagename
.fuente