Respuestas:
Copie y pegue de las Preguntas frecuentes de Emacs, http://www.gnu.org/software/emacs/windows/ :
En Windows, el .emacs
archivo puede ser llamado _emacs
para compatibilidad con versiones anteriores de los sistemas de archivos DOS y FAT donde los nombres de archivo no pueden comenzar con un punto. Algunos usuarios prefieren seguir usando ese nombre, porque el Explorador de Windows no puede crear un archivo con un nombre que comience con un punto, aunque el sistema de archivos y la mayoría de los otros programas pueden manejarlo. En Emacs 22 y posteriores, también se puede llamar al archivo init .emacs.d/init.el
. Muchos de los otros archivos que son creados por paquetes Lisp ahora también se almacenan en el .emacs.d
directorio, por lo que esto mantiene todos sus archivos relacionados con Emacs en un solo lugar.
Todos los archivos mencionados anteriormente deben ir a su directorio HOME. El directorio HOME se determina siguiendo los pasos a continuación:
C:\.emacs
existe, utilice C:/
. Esto es por compatibilidad con versiones anteriores, ya que las versiones anteriores lo hacían de forma predeterminada C:/
si no se configuraba HOME.Dentro de Emacs, ~
al principio de un nombre de archivo se expande a su directorio HOME, por lo que siempre puede encontrar su archivo .emacs con C-x C-f ~/.emacs
.
Hay más información en HOME y Directorios de inicio en MS-Windows .
Debe almacenarse en la variable user-init-file. Utilice C-H v user-init-file RET
para comprobar. También puede abrirlo directamente usandoM-x eval-expression RET (find-file user-init-file) RET
trailing garbage following expression
.
Abra el archivo como este en Emacs para Windows:
C-x C-f ~/.emacs
Más información en el Wiki de Emacs
En mi caja de Vista está en C:\Users\<USER>\AppData\Roaming\
Tenga en cuenta que puede que NO sea suficiente con escribir Ctrl-x Ctrl-f ~/.emacs
y crear el archivo.
Puede ser que su aplicación Emacs use un lugar diferente para almacenar su archivo init, y si es así, entonces crear el archivo ~ / .emacs simplemente crea un archivo inútil que su aplicación Emacs ignora.
Además, es posible que desee hacer algo más que acceder al archivo de inicio .emacs, pero es posible que desee saber dónde está, es decir, su nombre de ruta.
Para llegar a esto, hay dos métodos:
Manera fácil: escriba Ctrl+H V user-init-fileReturn
Manera un poco más complicada: puede averiguar dónde su sistema está almacenando su propio archivo .emacs de la siguiente manera:
c:/Users/user1/AppData/Roaming/.emacs.el
. Este sitio emacswiki.org/emacs/DotEmacsDotD me ayudó a darme cuenta de que necesitaba nombrar el archivo, lo ~/.emacs.d/init.el
que significaba que el archivo en el sistema de archivos estaba en c:\Users\user1\AppData\Roaming\.emacs.d\init.el
(nada de lo que esperaba). Prefiero configurar la variable de entorno HOME y colocar el archivo en mi %USERPROFILE%
directorio, que es el directorio HOME lógico en Windows (al menos en lo que a mí respecta).
En Windows 7, coloque su init.el
archivo C:\Users\user-name\AppData\Roaming\.emacs.d\
, donde nombre de usuario es su carpeta de usuario / inicio de sesión.
Tenga cuidado para que su init.el
archivo no tenga nombre init.el.txt
. Esto es algo que hace Windows si crea su archivo con algún editor como el Bloc de notas.
En las versiones de Emacs en Windows por encima de la 22, parece haberse movido a
~/.emacs.d/init.el
, ~
siendo el valor de la variable de entorno HOME (consulte Panel de control → Sistema → Avanzado → Variables de entorno ).
Es posible que el archivo en sí no exista. En ese caso, simplemente créelo.
Debe crear un archivo de inicialización de emacs. Uno no se crea automáticamente. Tuve un problema similar y esta respuesta rastrea lo que hice.
Mi problema era mi ~/.emacs.el
archivo no se cargaba. Extraño porque esto siempre me ha funcionado.
Esta pregunta / respuesta me ayudó, pero tuve que poner mi archivo de inicio en el %USERPROFILE%\AppData\Roaming\.emacs.d\init.el
porque aparentemente este es el comportamiento predeterminado en Windows.
Para solucionar este problema, ejecuté lo siguiente en el búfer emacs * scratch * .
user-emacs-directory
"~/.emacs.d/"
Cuando vi user-emacs-directory
fue ~/.emacs.d
, simplemente moví mi archivo .emacs.el a %USERPROFILE%\.emacs.d\init.el
. Pero esto todavía no funcionó. Continué con expand-file-name
como se muestra a continuación:
(expand-file-name user-emacs-directory)
"c:/Users/pats/AppData/Roaming/.emacs.d/"
Me encanta cómo funciona Windows. (no) Así que moví mi emacs.el
archivo al %USERPROFILE%\AppData\Roaming\.emacs.d\init.el
y esto funcionó. Ahora se estaba leyendo el archivo. Pero obtuve otros errores porque mi archivo de inicialización cargó otros archivos (emacs personales) (en formato ~/myenv/emacs/*.el
.
Warning (initialization): An error occurred while loading ‘c:/Users/pats/AppData/Roaming/.emacs.d/init.el’:
Hum ... Parece que todos mis archivos ~/myenv/emacs/*.el
tendrían que ser movidos para que esto funcione, pero no quería hacer eso. Luego me di cuenta de que debido a que la variable de entorno HOME no estaba configurada, emacs estaba realizando su comportamiento predeterminado .
SOLUCIÓN
Una vez que configuré mi HOME
variable de entorno de Windows para que %USERPROFILE%
todo comenzara a funcionar como lo ha hecho durante los últimos 25 años. :-)
Para configurar la variable de entorno HOME, escribí WindowsKey + "editar variables de entorno para su cuenta" para abrir el cuadro de diálogo Variables de entorno , e ingreséHOME=%USERPROFILE%
.
Ahora mi archivo de inicialización de emacs .emacs.el está de vuelta en el lugar que le corresponde $HOME/.emacs.el
y no en%USERPROFILE%\AppData\Roaming\.emacs.d\init.el
Para ser justos, si Windows tuviera un solo lugar para colocar archivos para los paquetes instalados por el usuario, la solución de hacer HOME = %USERPROFILE\AppData\Roaming
podría ser aceptable, pero debido a que algunas aplicaciones lo usan %USERPROFILE%
, otras lo usan %USERPROFILE\AppData\Roaming
y otras lo usan %USERPROFILE\AppData\Local
, es difícil saber dónde encontrar su configuración. archivos.
Prefiero tener todo en mi directorio% USERPROFILE% o $ HOME.
Otra pregunta similar estaba aquí:
Como respondió kanja, la ruta a este archivo se almacena en la user-init-file
variable (o si no existe un archivo de inicio, la variable contiene el valor predeterminado de dónde crearlo).
Entonces, independientemente de cuál de los posibles nombres de archivo de inicio esté utilizando y en qué directorio se encuentra, debería poder visitar su archivo de inicio con:
M-: (find-file user-init-file)
RET
O muestre su ruta completa en el área de eco con:
M-: (expand-file-name user-init-file)
RET
En Emacs 23 y Windows 7, solo funciona si configura:
HKCU\SOFTWARE\GNU\Emacs\HOME
Descubrí que Emacs 22 ocasionalmente abrirá "C: \ Documents and Settings \ username \ Application Data \ .emacs" o simplemente "C: \ Documents and Settings \ username \ .emacs" en mi máquina XP. No he encontrado una explicación de por qué ocasionalmente cambia de opinión.
~ siempre apuntará a lo que sea que la instancia actual de emacs piense que es HOME, pero la sugerencia de kanja (Ch v user-init-file) siempre le dirá a qué se asigna ~ / .emacs.
HOME
variable de entorno de manera diferente, dependiendo de cómo empiece runemacs.exe
. Si lo inicio desde el Explorador, HOME
está configurado en C:\Documents and Settings\username
, pero si lo inicio desde el menú Inicio, HOME
es C:\Documents and Settings\username\Application Data
. Extraño.
Hay una lista de directorios según su versión de Windows e información adicional: http://www.gnu.org/software/emacs/manual/html_node/emacs/Windows-HOME.html
En Windows 8.1, si Emacs se inicia desde el Explorador de Windows , un acceso directo o desde la consola cmd , usa el archivo de inicio C: \ Users \ <USER> \ AppData \ Roaming.emacs . Cuando inicio Emacs desde PowerShell, Emacs busca su archivo de inicio en la carpeta C: \ Users \ <USER> . La solución a este problema fue establecer la variable de entorno del usuario HOME (Panel de control \ Sistema y seguridad \ Sistema-> Configuración avanzada del sistema-> Avanzado-> Variables de entorno) en C: \ Usuarios \ <USUARIO> . Después de este cambio, no importa cómo inicie Emacs, usa el mismo archivo de inicio (vea la respuesta aceptada de esta pregunta )
Para WIndows7 y Emacs26.3:
si HOME
se establece el entorno, entonces el.emacs
archivo debe estar en esa carpeta.
de lo contrario, debería estar en formato c:\
.
En ambos casos, si .emacs
no está,_emacs
debe utilizar.
Esto se debe a que no podemos crear un .emacs
archivo de acuerdo con las reglas de nomenclatura de archivos de Windows (pero podemos descargarlo o copiarlo desde otro lugar).