¿Cómo usar use-package con paquetes integrados?

9

En aras de la limpieza, me gustaría agrupar setq (s) bajo un banner único y relacionado. Digamos que quiero establecer el valor de compilación-desplazamiento-salida en la unidad "compilación" de esta manera:

(use-package compilation
  :init
  (progn
    (setq compilation-scroll-output t)))

Todo lo que obtengo es:

Could not load compilation

¿Cómo es?

jacekmigacz
fuente
3
FWIW, use describe-variableo describe-functionpara averiguar en qué paquete se encuentra una var o func, luego mire hacia abajo en la providellamada para averiguar el nombre del paquete.
Jordon Biondo
Su código para configurar compilation-scroll-outputes un noop, debería ser(progn (setq compilation-scroll-output t))
npostavs
Gracias npostavs. Por alguna razón desconocida, estaba tratando de usar 'como un alias de setq.
jacekmigacz
@npostavs Ni siquiera me di cuenta de eso ... también lo arreglé en mi respuesta.
Kaushal Modi

Respuestas:

11

El nombre del paquete es compile.

A continuación debería funcionar.

(use-package compile
  :init
  (progn
    (setq compilation-scroll-output t)))

Valdría la pena notar el comentario de @JordonBiondo sobre cómo descifrar el nombre de un paquete.

Si desea saber a qué paquete pertenece una variable, haga C-h vo M-x describe-variableseguido por el nombre de la variable (para un nombre de función, C-h fo M-x describe-function). Desde la ventana * Ayuda * que aparece, navegue hasta el .elarchivo del paquete y vea la (provide ..)llamada para averiguar el nombre del paquete.

Kaushal Modi
fuente
2
La sintaxis de use-package alrededor de las palabras clave es ligeramente inusual. Los formularios que siguen a la mayoría de las palabras clave se agrupan para esa palabra clave. Por lo tanto, rara vez se necesita el progn. (use-package compile :init (message "init for compile") (setq compilation-scroll-output t))
Ben Hyde
55
@BenHyde Eso es correcto; prognno es obligatorio pero lo uso por conveniencia. Si tengo un montón de formularios debajo :inity un montón de formularios debajo :config, haberlos envuelto (progn ..)hace que sea muy conveniente evaluar todo :inito :configusar C-x C-e.
Kaushal Modi