5 Teclas y Comandos
Este manual está lleno de pasajes que le dicen lo que hacen determinadas teclas. Pero Emacs no asigna significados a las teclas directamente. En su lugar, asigna significados a comandos con nombre, y luego da a las teclas sus significados vinculándolas a comandos.
Cada comando tiene un nombre elegido por el programador. El nombre suele estar formado por unas pocas palabras en inglés separadas por guiones; por ejemplo, next-line
(siguiente-línea) o forward-word
(palabra-anterior). Internamente, cada comando es un tipo especial de función Lisp, y las acciones asociadas al comando se realizan ejecutando la función. Vea Qué es una Función en el Manual de Referencia de Emacs Lisp.
Los enlaces entre teclas y comandos se registran en tablas llamadas mapas de teclas. Ver 50.3.1 Mapas de teclas.
Cuando decimos que «C-n
se mueve verticalmente una línea hacia abajo» estamos pasando por alto una sutil distinción que es irrelevante en el uso ordinario, pero vital para la personalización de Emacs. El comando next-line
hace un movimiento vertical hacia abajo. C-n
tiene este efecto porque está ligado a next-line
. Si redefine la vinculación C-n
al comando forward-word
, C-n
se moverá una palabra hacia delante.
En este manual, hablaremos a menudo de teclas como Ctrl-n (C-n
) como comandos, aunque estrictamente hablando la tecla o combinación de ellas esté asociada a un comando. Normalmente, indicamos el nombre del comando que realmente hace el trabajo entre paréntesis después de mencionar la tecla que lo ejecuta. Por ejemplo, diremos que «El ncomando C-n
(next-line
, línea siguiente) mueve el punto verticalmente hacia abajo», lo que significa que el comando next-line
se mueve verticalmente hacia abajo, y la tecla Ctrl-n (C-n
) normalmente está vinculada a él.
Ya que estamos hablando de personalización, deberíamos hablarle de variables. A menudo la descripción de un comando dirá: «Para cambiar esto, establezca la variable mumble-foo
. Una variable es un nombre usado para almacenar un valor. La mayoría de las variables documentadas en este manual están pensadas para la personalización: algún comando u otra parte de Emacs examina la variable y se comporta de forma diferente según el valor que establezca. Puede ignorar la información sobre variables hasta que esté interesado en personalizarlas. Entonces lea la información básica sobre variables (vea 50.2 Variables) y la información sobre variables específicas tendrá sentido.