elisp-macros

elisp-macros

elisp-macros – ¿Entendiendo los símbolos no internados y la macro expansión?

Pregunta: Quiero demostrar mi falta de conocimiento con un ejemplo. Usando las siguientes dos definiciones macro, (defmacro for (var from init to final do &rest body) “Execute a simple for loop: (for i from 1 to 10 do (print i)).” (let ((tempvar ‘max)) `(let ((,var ,init) (,tempvar ,final)) (while (<= ,var ,tempvar) ,@body (setq ,var …

elisp-macros – ¿Entendiendo los símbolos no internados y la macro expansión? Read More »

elisp-macros – Hacer que la "referencia a la variable libre" de flycheck funcione con macros

Pregunta: Use use-package es una macro útil y popular para instalar paquetes, pero flycheck siempre se queja porque oculta definiciones de variables. Por ejemplo, si intento (use-package org) , Flycheck advertirá de una reference to free variable 'org . También tengo una macro defcom que me simplifica las definiciones de comandos, pero que oculta las …

elisp-macros – Hacer que la "referencia a la variable libre" de flycheck funcione con macros Read More »

elisp-macros – La macro "cl-flet" no permite funciones recursivas

Pregunta: Estoy acostumbrado al flet macro elisp obsoleto y me dijeron que cambiara a cl-flet . Sin embargo, al realizar este cambio, algunos de mis programas elisp dejaron de funcionar y me di cuenta de que la razón es que, a diferencia de flet , cl-flet no permite funciones recursivas. Por ejemplo, definir la función …

elisp-macros – La macro "cl-flet" no permite funciones recursivas Read More »

elisp-macros – ¿Cómo puedo modificar una macro a la que llamo con frecuencia?

Pregunta: Utilizo use-package para organizar mi init.el Noté que todas mis declaraciones usan :ensure t . Un ejemplo de declaración es: (use-package auto-complete :ensure t :diminish auto-complete-mode :init (global-auto-complete-mode t)) Dado que todas mis declaraciones de use-package uso usan :ensure t , ¿hay alguna manera de modificar use-package para incluir implícitamente :ensure t sin modificar …

elisp-macros – ¿Cómo puedo modificar una macro a la que llamo con frecuencia? Read More »

elisp-macros – ¿Cómo puedo crear múltiples defun recorriendo una lista?

Pregunta: Estoy trabajando en la optimización de mi configuración de emacs donde puedo crear dinámicamente funciones interactivas para todos los temas que tengo en una lista. A continuación se muestra una versión simplificada de la construcción que estoy tratando de hacer que funcione. ;; List containing names of functions that I want to create (setq …

elisp-macros – ¿Cómo puedo crear múltiples defun recorriendo una lista? Read More »

elisp-macros – eval-when-compile: defsubst vs defmacro vs define-inline

Pregunta: Definí algunas funciones simples en init.el, por ejemplo, my-cache-file : (defconst my-cache-directory (expand-file-name “.cache” user-emacs-directory)) ; ~/.emacs/.cache (defun my-cache-file (x) (expand-file-name x my-cache-directory)) ; ~/.emacs/.cache/x (setq savehist-file (my-cache-file “savehist”)) (setq backup-directory-alist `((“.” . ,(my-cache-file “backups/”)))) Este parecía un buen caso de uso para defsubst : (defsubst my-cache-file (x) …) Luego comencé a aprender sobre …

elisp-macros – eval-when-compile: defsubst vs defmacro vs define-inline Read More »

web tasarım