Emacs

Usando Lisp en Emacs

Usando Lisp en Emacs
La rápida progresión de la tecnología ha permitido que varias herramientas de programación se destaquen y se conviertan en el centro de atención. Los editores de texto están incluidos en estas herramientas debido al desarrollo masivo que ocurre dentro del negocio de la tecnología. Su naturaleza liviana, junto con su flexibilidad para editar y compilar archivos y su fuerte rendimiento listo para usar, ha hecho que los editores de texto sean muy apreciados entre la comunidad. Las ventajas que ofrecen los editores de texto a menudo llevan a los desarrolladores a favorecer estas herramientas sobre otras similares, como IDE. Los editores de texto se encuentran a la vanguardia del trabajo realizado por los desarrolladores, por lo que es importante utilizar un editor que proporcione una variedad de funciones de acuerdo con sus necesidades.

Emacs es un ejemplo de un editor de texto que, debido a su versatilidad y naturaleza personalizable, se ha ganado un gran nombre entre la comunidad de desarrolladores. Como uno de los editores de texto más antiguos que existen, Emacs es conocido por su estabilidad y consistencia.

Lo que hace especial a Emacs es que no es solo un editor de texto, sino una máquina en toda regla. Emacs se puede configurar como un shell, un cliente de correo electrónico, un organizador y mucho más. La complejidad de Emacs surge del intérprete Lisp en su núcleo, que a su vez permite a los usuarios personalizarlo con aún más funcionalidades usando el lenguaje Lisp.

Este artículo cubre cómo usar Lisp a través de varios métodos para configurar y personalizar Emacs.

Conceptos básicos de Lisp

Antes de ver cómo se puede usar Lisp para configurar Emacs, primero es importante mirar algunos de los conceptos básicos del lenguaje Lisp para comprender mejor esta característica.

En Lisp, los programas se componen de expresiones simbólicas, abreviadas como s-exps. Estas expresiones pueden constar de variables únicamente o incluir otras funciones, además.

Una función se anota envolviendo el texto entre paréntesis. Por ejemplo, para llamar a la función de suma, se usa la siguiente sintaxis:

(+ 2 2)

La declaración anterior dice "sume 2 a 2.”Los s-exps anidados se verán así:

(+ 2 (+ 1 1))

También puede almacenar valores dentro de una variable usando el comando setq:

(setq mi-nombre "John")

Las funciones se pueden definir utilizando el defun palabra clave. Por ejemplo, una función que calcula el cuadrado de un número se escribe de la siguiente manera:

(defun cuadrado (x)
(* x x))
(cuadrado 2)

Puede evaluar funciones definidas utilizando las teclas Ctrl + x seguido por Ctrl + e. Esto producirá una salida dentro del mini-búfer. Por ejemplo, la función cuadrada tendrá la siguiente salida:

Nota: debe evaluar tanto el segmento defun como el segmento cuadrado.

Que cubre lo básico. Las siguientes secciones mostrarán cómo configurar Emacs usando Lisp.

Archivo de inicialización

Cuando se inicia Emacs, el primer archivo procesado es el archivo de inicialización, o archivo init, que contiene comandos escritos en Lisp que permiten a los usuarios configurar Emacs. Para abrir el archivo de inicialización, presione Ctrl + x, seguido por Ctrl + f, y luego entrar ~ /.emacs. Dentro de esta expresión, puede insertar código adicional para personalizar Emacs.

1) Adición de soporte para paquetes

Lisp se puede usar para agregar soporte en Emacs para paquetes de diferentes fuentes. Melpa es una de las fuentes desde las que los usuarios pueden instalar estas extensiones. Para agregar Melpa a Emacs, agregue las siguientes líneas al archivo init:

(requiere 'paquete)
(agregar a la lista 'paquetes-archivos
'("melpa" . "http: // melpa.org / paquetes / ") t)
(inicializar paquete)
(paquete-refresco-contenido)

Este código agrega el archivo Melpa a la lista de repositorios de paquetes, le da permiso a Emacs para usar estos paquetes, inicializa estos paquetes y actualiza el contenido para que ocurran los cambios. Si abre su lista de paquetes presionando Alt + x y entrar paquetes-lista-paquetes, puedes ver los paquetes instalados en el archivo Melpa.


-

2) Cambio de tema de Emacs

Inicialmente, cuando cargue Emacs, obtendrá una pantalla que le dará la bienvenida a Emacs y le dará varias opciones, como el Tutorial de Emacs.

Sin embargo, esta página no se ve tan bien. Lisp le permite cambiar el tema de Emacs y la página de inicio de acuerdo con sus preferencias. Los usuarios pueden cargar varios tipos de temas, cambiar el tamaño de fuente e incluso agregar viñetas de línea.

Por ejemplo, digamos que desea reemplazar la página de inicio en el búfer temporal, cargar el tema Material y agregar viñetas de línea. Esto se puede hacer agregando las siguientes líneas al archivo init:

(setq inhibir-mensaje-inicio-t)
(tema de carga 'material t)
(modo global-linum t)

Como se definió anteriormente, la sintaxis setq hace que el mensaje de inicio de inhibición sea verdadero, lo que elimina la página de inicio inicial. El tema de carga carga el tema del material. La sintaxis global-linum-mode es simplemente una función que se establece para ser verdadera y se ejecuta para producir números de línea. Así es como debería verse Emacs después de ingresar los comandos anteriores:

3) Vincular atajos a combinaciones de teclas

Lisp también se puede usar para vincular comandos o atajos a teclas. Esto permite a los usuarios personalizar Emacs de acuerdo con sus preferencias, así como ejecutar funciones personalizadas creadas por el usuario con solo un clic.

Suponga que ha definido una función que simplemente produce un carácter de barra invertida y desea asignarlo a las teclas Ctrl + x seguido por Ctrl + o. Esto se puede hacer agregando las siguientes líneas al archivo de inicialización:

(defun insert_backslash ()
(interactivo)
(inserte "\"))
(clave de conjunto global (kbd ""C-x C-o"")
'insert_backslash)

Aquí, la función insert_backslash se define, se hace interactiva (esto permite que la función se llame de forma interactiva, es decir, con el enlace de teclas) y la salida es una barra invertida. Luego, puede vincular la función con las teclas dadas anteriormente usando la palabra clave global-set-key.

Por qué usar Lisp?

Lisp es una parte integral de Emacs, ya que le permite a Emacs tener más poder y funcionalidad. Lisp brinda una oportunidad para que los usuarios personalicen Emacs y lo conviertan en algo que coincida con sus intereses y necesidades. Lisp es lo que hace que Emacs sea verdaderamente poderoso y único en comparación con otros editores de texto.

"
Cómo cambiar los botones izquierdo y derecho del mouse en una PC con Windows 10
Es una norma que todos los dispositivos de mouse de computadora estén diseñados ergonómicamente para usuarios diestros. Pero hay dispositivos de mouse...
Emule los clics del mouse colocando el mouse con Clickless Mouse en Windows 10
El uso excesivo de un mouse o teclado en una postura incorrecta puede provocar muchos problemas de salud, como tensión, síndrome del túnel carpiano y ...
Agregue gestos del mouse a Windows 10 con estas herramientas gratuitas
En los últimos años, las computadoras y los sistemas operativos han evolucionado enormemente. Hubo un momento en que los usuarios tenían que usar coma...