Preguntas etiquetadas con elisp

para preguntas sobre Emacs Lisp como idioma, en comparación con otros idiomas, en particular, en comparación con otros dialectos de Lisp. Es decir, es para preguntas * sobre el lenguaje * en sí. * NO LO USE * para preguntas sobre * el uso de * Emacs Lisp. Emacs Lisp es el lenguaje de programación y scripting en el que se basa el editor Emacs.

4
¿Ventajas de establecer variables con setq en lugar de custom.el?
Veo que muchas personas (autores de extensiones y otros) dan ejemplos de configuración con setq: (setq foo 'bar) Estos parámetros a menudo se definen con defcustom, haciéndolos disponibles para su personalización custom.el. Normalmente uso custom.elpara configurarlos. ¿Tendría alguna ventaja usarlo setqo los dos métodos son más o menos equivalentes?

6
¿Puedo usar el modo org para estructurar mi .emacs u otro archivo de configuración .el?
Mi .emacsarchivo de configuración se hace cada vez más grande y me gustaría obtener una mejor visión general y estructuración agregando encabezados, subtítulos y poder ocultarlos o mostrarlos como puedo hacer con Emacs org-mode. Noté que también puedo activar org-modeen el .emacsbúfer y que es posible agregar encabezados y colapsarlos. …

3
¿Cómo guardar una macro de teclado como una función Lisp?
Con mucha frecuencia tendría que realizar el conjunto de pasos que requieren múltiples pulsaciones de teclas. Para la misma sesión, esos pasos se pueden grabar en una macro de teclado. Un ejemplo es guardar una operación de búsqueda / reemplazo ejecutada con frecuencia como una macro de teclado. Pero esa …

2
¿Por qué elisp no tiene espacios de nombres?
P: ¿Por qué elisp no tiene espacios de nombres y cómo podríamos obtenerlos? Elisp no tiene espacios de nombres que no sean el global, lo que ha llevado a la convención de codificación de prefijar todas las funciones, variables y constantes globales con un prefijo único. Además del factor de …
40 elisp 

9
¿Cómo puedo comenzar a aprender Emacs Lisp?
Fondo: Soy principalmente un usuario vi y me estoy convirtiendo a Emacs. Pasó lo básico y ahora lo usa para escribir código en C y en Python con planes para hacer una conversión de R también. Escribí LISP (común) durante años hace más de dos décadas cuando estaba en la …

5
¿Cómo reemplazar un elemento de una lista?
Tengo esto por defecto en mi auto-mode-alist: ("\\.js\\'" . javascript-mode) (incluso con emacs -Q). Me gustaría sustituir js2-modepor javascript-mode. Por supuesto, podría usar assq-delete-ally luego add-to-listotra vez, pero me pregunto si no hay una mejor manera. Editar: explícitamente no quiero usar Personalizar, prefiero crear mi propio init.el.

3
¿Por qué es 'let' más rápido con alcance léxico?
Mientras leía el código fuente de la dolistmacro, me encontré con el siguiente comentario. ;; Esta no es una prueba confiable, pero no importa porque ambas semánticas son aceptables, una es ligeramente más rápida con alcance dinámico y la otra es ligeramente más rápida (y tiene una semántica más limpia) …

3
¿Cómo saber cuándo o cuándo no usar la comilla simple antes de los nombres de variables?
Tengo lo siguiente: (setq some-variable "less") Estoy confundido por qué tengo que usar la comilla simple con boundppero no con bound-and-true-p. Ejemplo 1: (when (boundp 'some-variable) (message "some-variable is %s" some-variable)) Resultado: "alguna variable es menos" Ejemplo 2a: (when (bound-and-true-p some-variable) ;; Note that using single-quote causes error (message "some-variable …
31 elisp  quote 

4
¿Cuándo citar una expresión lambda?
P: ¿ Cuándo, si alguna vez, es útil citar con precisión a lambda, y cuándo, si alguna vez, no debemos citar con precisión a lambda? Las personas usan lambdas de tres maneras: llanura: (lambda (x) x) citado: '(lambda (x) x) comillas afiladas: #'(lambda (x) x) Este subproceso SO analiza los …
30 elisp  functions 



1
¿Cómo uso nadvice?
Mi configuración está llena de consejos, y sigo escuchando sobre el nuevo nadvice.elpaquete minimalista brillante . He buscado en los manuales y he leído la fuente , pero admito abiertamente: todavía no tengo idea de cómo usarlo realmente. ¿Alguien aquí puede señalarme una guía o decirme cómo comenzar a portar …

2
exec-path y $ PATH
He visto ejemplos en línea donde las personas agregan rutas a la ruta predeterminada en Emacs con: (add-to-list 'exec-path "/usr/local/bin/") Soy nuevo en Elisp y creo que entiendo lo que hace la declaración anterior, pero tengo algunas preguntas: ¿ En qué orden Emacs busca a través de las rutas de …
28 elisp  path 

3
¿Cuál es la diferencia entre push y add-to-list?
Descubrí que los diferentes paquetes en sus instrucciones de instalación usan push o add-to-list (por ejemplo, agregar un directorio a load-path) y me preguntaba cuál es la diferencia y cuál sería el caso de uso para cada uno.
28 elisp 

2
Parámetros opcionales predeterminados
Emacs Lisp no tiene soporte sintáctico para valores predeterminados no nulos de parámetros opcionales. ¿Cuál es el idioma recomendado para suministrar estos parámetros? Para aclarar mi punto, aquí hay una forma demasiado explícita de hacerlo. (defun command (a &optional supplied-b) (let ((b (or supplied-b default-b))) (command-body a b))) ¿Cuál, en …
26 elisp