2011-05-01 9 views
6

Soy un novato en LaTeX, pero he estado haciendo mi tarea, y ahora tengo una pregunta que parece que no puedo encontrar la respuesta. puedo crear la definición de una ecuación, digamos que es éste:¿Cómo uso renewcommand para recuperar mis letras griegas?

The potential is characterized by a length $\sigma$ and an energy $\epsilon$. 

En realidad, esta ecuación es más compleja, por lo que quería probar un acceso directo. Si mi ecuación fuera así de simplista, no probaría mi técnica de sustitución. uso el \ renewcommand me ahorrar algo de tiempo:

\renewcommand{\sigma}{1} 

y esto funciona fabulosamente y sustituirá todas las instancias de sigma con 1. Lamentablemente, sin embargo, ya que \ sigma tiene un alcance global, lo que deba restaurar . Intenté un par de maneras diferentes:
¿Intento 1: -deadlock debido a la referencia circular?

\newcommand{\holdsigma}{\sigma} 
\renewcommand{\sigma}{1} 
The potential is characterized by a length $\sigma$ and an energy $\epsilon$. 
\renewcommand{\sigma}{\holdsigma} 

yo creo que para restablecer el orden, debe ser algo como esto:

\renewcommand{\sigma}{\greek{\sigma}} 

pero que obviamente no ha funcionado para mí.

¿Alguna idea de cómo se definen originalmente las letras griegas en el idioma?

+1

No se olvide de http://tex.stackexchange.com/ – Gabe

+1

Esto parece una muy mala idea. Tendrás que voltear la definición de '\ sigma' hacia adelante y hacia atrás cada vez que necesites usarla. No puedes editar la (s) ecuación (es) y usar un '\ mysigma' o algo así. – drysdam

+0

Pensé en eso, y eso es probablemente lo que terminaré haciendo, pero para referencia futura, quería saber si era posible cambiar de un lado a otro. – TopherGopher

Respuesta

3

Para saber cómo se definió originalmente \sigma o cualquier otro comando, puede usar \show\sigma. (La respuesta es que \sigma se define como \mathchar"11B). Puede escribir esto en su propio documento: la compilación se detendrá y puede escribir Enter después de leer la respuesta, o puede escribir esto en el modo interactivo de TeX/LaTeX.

Ejemplo con un documento:

\documentclass{article} 
\begin{document} 
What is $\sigma$?   % Prints "What is σ" in the DVI/PS/PDF. 
\show\sigma    % Prints "> \sigma=\mathchar"11B." in the compilation. 
Now that we know, let us redefine it. 
\renewcommand{\sigma}{1} 
Now it is: $\sigma$.  % Prints "Now it is: 1." in the DVI/PS/PDF. 
OK, let's go back. 
\renewcommand{\sigma}{\mathchar"11B} 
We again have: $\sigma$. %Prints "We again have: σ." in the DVI/PS/PDF. 
\end{document} 

O bien en el símbolo del sistema, escriba latex, a continuación, escriba \relax, a continuación, escriba \show\sigma, leer lo que dice, a continuación, escriba x para salir.

10

Tengo que admitir que yo no entiendo por qué usted quiere hacer lo que estás pidiendo, pero esto debería funcionar:

\documentclass{article} 
\begin{document} 

Before redefinition, \verb|\sigma| looks like $\sigma$. 

% Copy the current definition of \sigma to \oldsigma 
\let\oldsigma\sigma 

% Redefine \sigma to be '1' 
\renewcommand{\sigma}{1} 

After redefinition, \verb|\sigma| looks like $\sigma$. 

You can still use \verb|\oldsigma| if you want to use the original definition $\oldsigma$. 

% Restore the original definition of \sigma 
\let\sigma\oldsigma 

Now \verb|\sigma| is back to its normal appearance $\sigma$. 

\end{document} 
Cuestiones relacionadas