Estoy usando una computadora con Windows 7 y no tengo acceso de administrador. Por lo tanto, no puedo colocar un archivo dot emacs en el directorio raíz. ¿Hay alguna manera de especificar una ubicación diferente para el archivo dot emacs?
init-file
microsoft-windows
Startec
fuente
fuente
site-start.el
cargar la suyainit.el
y ya no necesita a.emacs
. En este ejemplo, no necesita jugar con el directorio de inicio (a menos que alguien más en la computadora esté agregando cosas que afectarán lo que usted hace). En otras palabras, puede estar en blanco y nunca es necesario tocarlo.Respuestas:
Emacs tiene varios lugares donde busca archivos de inicio, como se documenta en el manual . Si desea personalizar Emacs, debe comenzar con uno de esos archivos.
Un enfoque común es usar el archivo
init.el
en suuser-emacs-directory
, en lugar de tener un.emacs
en su directorio HOME.El valor
user-emacs-directory
predeterminado es~/.emacs.d
, por lo que aún es relativo a su HOME, pero el beneficio de este enfoque es que puede mantener todo lo relacionado con su configuración de Emacs en un solo lugar. Ese directorio podría estar bajo control de versiones, respaldado, compartido en varias máquinas, etc. Puede usar un enlace simbólico (mklink
en Windows) para mantener los archivos en otra ubicación.Por ejemplo, es bastante común ver a las personas mantener su configuración de Emacs en Github. Usted puede encontrar muchos ejemplos de esto mediante la búsqueda de Github para proyectos elisp con archivos init.el .
fuente
user-emacs-directory
En cada instalación de Windows en la que uso Emacs, tengo el siguiente código en un
.emacs
archivo en la ubicación indicada:De esta manera puedo poner mi
.emacs
y.emacs.d/
donde quiera.fuente
Su archivo .emacs va en su
HOME
directorio. Del manual de Emacs:fuente
HOME
directorio a algo muy diferente. Por eso llamo a ese cambio un truco. Establecerlo en su valor apropiado está obviamente bien.Tu dices:
Su archivo de inicio va en su directorio de inicio, que puede colocar en cualquier lugar. Aparentemente desea tener un directorio diferente para las cosas que carga Emacs. Eso no es un problema. Coloque su archivo init en su directorio de inicio y haga que ese archivo agregue otro directorio al valor de variable
load-path
y luego requiera las otras bibliotecas de Emacs que desee usar. Pon esas bibliotecas en ese otro directorio.IOW, su archivo de inicio no necesita contener nada más allá de la configuración del directorio donde guarda las bibliotecas de Emacs que desea cargar.
fuente
Solo por razones de integridad, proporciono un enlace a:
https://www.gnu.org/software/emacs/manual/html_node/efaq-w32/Location-of-init-file.html
Lo que dice que puede establecer un
HOME
valor en la ruta del registro:HKCU\SOFTWARE\GNU\Emacs\HOME
Pero este valor es anulado por la variable de entorno
HOME
.fuente
Piensa que podrías poner
(setq user-init-file "C:/path/to/.emacs")
y otras líneas propuestas por @ryan en site-start.elfuente