archivo de inicio específico del proyecto

10

Tengo algunas personalizaciones para emacs que me gustaría usar para un solo proyecto, pero que no afectan a emacs a nivel mundial. ¿Hay alguna manera de que emacs cargue un archivo de inicio específico cuando se inicia desde un determinado directorio o carga automáticamente todos los archivos de inicio en el directorio desde el que se inició?

Connor
fuente

Respuestas:

17

Es posible que desee echar un vistazo a las variables de directorio . Básicamente, deberá crear un .dir-locals.elarchivo en la raíz del proyecto con toda la configuración específica del proyecto. Ahora, cada vez que abra un archivo en el directorio o en cualquiera de sus subdirectorios, emacs aplicará la configuración en el .dir-locals.elarchivo.

Entonces, por ejemplo, suponga que desea usar el make package installcomando como compilación solo en el proyecto A, deberá crear un archivo llamado .dir-locals.el en el directorio raíz del proyecto y agregar algo como lo siguiente

((nil . ((compile-command . "make package install"))))

En adelante, siempre que ejecute un compilecomando desde cualquier archivo en el directorio A, el valor predeterminado compile-commandserá el especificado anteriormente, sin embargo, los compile commandarchivos fuera del directorio A permanecerán intactos.

Iqbal Ansari
fuente
2

Una alternativa menos destacada .dir-locals.eles el estándar EditorConfig , que tiene un paquete emacs . No admite casi tantas opciones, sin embargo, permite a un equipo de personas estandarizar algunas configuraciones y usarlas en diferentes editores.

Se comporta de la misma manera, con un .editorconfigarchivo específico del proyecto en el nivel superior.

Lee H
fuente