Réponses:
Copier et coller à partir de la FAQ Emacs, http://www.gnu.org/software/emacs/windows/ :
Sous Windows, le .emacs
fichier peut être appelé _emacs
pour une compatibilité descendante avec les systèmes de fichiers DOS et FAT où les noms de fichiers ne peuvent pas commencer par un point. Certains utilisateurs préfèrent continuer à utiliser un tel nom, car l'Explorateur Windows ne peut pas créer un fichier avec un nom commençant par un point, même si le système de fichiers et la plupart des autres programmes peuvent le gérer. Dans Emacs 22 et versions ultérieures, le fichier init peut également être appelé .emacs.d/init.el
. La plupart des autres fichiers créés par les packages Lisp sont désormais stockés dans le .emacs.d
répertoire également, ce qui permet de conserver tous vos fichiers liés à Emacs au même endroit.
Tous les fichiers mentionnés ci-dessus doivent aller dans votre répertoire HOME. Le répertoire HOME est déterminé en suivant les étapes ci-dessous:
C:\.emacs
existe, utilisez C:/
. C'est pour la compatibilité descendante, car les versions précédentes C:/
étaient par défaut si HOME n'était pas défini.Dans Emacs, ~
au début d'un nom de fichier est développé dans votre répertoire HOME, vous pouvez donc toujours trouver votre fichier .emacs avec C-x C-f ~/.emacs
.
Vous trouverez de plus amples informations sur les répertoires HOME et de démarrage sur MS-Windows .
Il doit être stocké dans la variable user-init-file. Utilisez C-H v user-init-file RET
pour vérifier. Vous pouvez également l'ouvrir directement en utilisantM-x eval-expression RET (find-file user-init-file) RET
trailing garbage following expression
?
Ouvrez le fichier comme ceci dans Emacs pour Windows:
C-x C-f ~/.emacs
Plus d'informations dans le Wiki Emacs
Sur ma boîte Vista, c'est dans C:\Users\<USER>\AppData\Roaming\
Notez qu'il ne suffit pas de taper Ctrl-x Ctrl-f ~/.emacs
et de créer le fichier.
Il se peut que votre application Emacs utilise un endroit différent pour stocker votre fichier init, et si c'est le cas, la création du fichier ~ / .emacs crée simplement un fichier inutile que votre application Emacs ignore.
De plus, vous voudrez peut-être faire plus que simplement accéder au fichier d'initialisation .emacs, mais vous voudrez peut-être savoir où il se trouve, c'est-à-dire son chemin.
Pour y parvenir, il existe deux méthodes:
Méthode simple: tapez Ctrl+ H Vuser-init-fileReturn
Méthode un peu plus délicate: vous pouvez savoir où votre système stocke son propre fichier .emacs en:
c:/Users/user1/AppData/Roaming/.emacs.el
. Ce site emacswiki.org/emacs/DotEmacsDotD m'a aidé à réaliser que j'avais besoin de nommer le fichier, ~/.emacs.d/init.el
ce qui signifiait que le fichier dans le système de fichiers se trouvait c:\Users\user1\AppData\Roaming\.emacs.d\init.el
(pas du tout ce à quoi je m'attendais). Je préfère définir la variable d'environnement HOME et placer le fichier dans mon %USERPROFILE%
répertoire qui est le répertoire HOME logique sur Windows (du moins en ce qui me concerne).
Dans Windows 7, placez votre init.el
fichier C:\Users\user-name\AppData\Roaming\.emacs.d\
, où nom d' utilisateur est votre dossier d'utilisateur / de connexion.
Veillez à ce que votre init.el
fichier ne soit pas nommé init.el.txt
. C'est quelque chose que Windows fait si vous créez votre fichier avec un éditeur comme le Bloc-notes.
Sur les versions d'Emacs sous Windows au-dessus de 22, il semble s'être déplacé vers
~/.emacs.d/init.el
, ~
étant la valeur de votre variable d'environnement HOME (voir Panneau de configuration → Système → Avancé → Variables d'environnement ).
Le fichier lui-même peut ne pas exister. Dans ce cas, créez-le simplement.
Vous devez créer un fichier d'initialisation emacs. Un n'est pas créé automatiquement. J'ai eu un problème similaire et cette réponse retrace ce que j'ai fait.
Mon problème était que mon ~/.emacs.el
fichier ne se chargeait pas. Etrange parce que cela a toujours fonctionné pour moi.
Cette question / réponse m'a aidé mais j'ai dû mettre mon fichier init dans le %USERPROFILE%\AppData\Roaming\.emacs.d\init.el
car c'est apparemment le comportement par défaut sous Windows.
Pour résoudre ce problème, j'ai exécuté ce qui suit dans le tampon emacs * scratch * .
user-emacs-directory
"~/.emacs.d/"
Quand j'ai vu user-emacs-directory
était ~/.emacs.d
, j'ai simplement déplacé mon fichier .emacs.el vers %USERPROFILE%\.emacs.d\init.el
. Mais cela ne fonctionnait toujours pas. J'ai continué expand-file-name
comme indiqué ci-dessous:
(expand-file-name user-emacs-directory)
"c:/Users/pats/AppData/Roaming/.emacs.d/"
Je dois adorer le fonctionnement de Windows. (non) J'ai donc déplacé mon emacs.el
fichier vers le %USERPROFILE%\AppData\Roaming\.emacs.d\init.el
et cela a fonctionné. Le fichier était en cours de lecture. Mais j'ai eu d'autres erreurs parce que mon fichier d'initialisation chargeait d'autres fichiers (emacs personnels) (au format ~/myenv/emacs/*.el
.
Warning (initialization): An error occurred while loading ‘c:/Users/pats/AppData/Roaming/.emacs.d/init.el’:
Hum ... On dirait que tous mes fichiers ~/myenv/emacs/*.el
auraient besoin d'être déplacés pour que cela fonctionne mais je ne voulais pas le faire. Puis j'ai réalisé que parce que la variable d'environnement HOME n'était pas définie, emacs exécutait son comportement par défaut .
SOLUTION
Une fois que j'ai défini ma HOME
variable d'environnement Windows sur %USERPROFILE%
tout, tout a commencé à fonctionner comme au cours des 25 dernières années. :-)
Pour définir la variable d'environnement HOME, j'ai tapé WindowsKey + "modifier les variables d'environnement pour votre compte" pour ouvrir la boîte de dialogue Variables d'environnement , et je suis entré HOME=%USERPROFILE%
.
Maintenant, mon fichier d'initialisation emacs .emacs.el est de retour à sa juste place $HOME/.emacs.el
et non dans%USERPROFILE%\AppData\Roaming\.emacs.d\init.el
Pour être honnête, si Windows n'avait qu'un seul endroit pour placer les fichiers des packages installés par l'utilisateur, la solution consistant à créer HOME = %USERPROFILE\AppData\Roaming
pourrait être acceptable, mais comme certaines applications l'utilisent %USERPROFILE%
, certaines l'utilisent %USERPROFILE\AppData\Roaming
et d'autres l'utilisent, %USERPROFILE\AppData\Local
il est simplement difficile de savoir où trouver votre configuration. des dossiers.
Je préfère tout avoir dans mon répertoire% USERPROFILE% ou $ HOME.
Une autre question similaire était ici:
Comme kanja a répondu, le chemin d'accès à ce fichier est stocké dans la user-init-file
variable (ou si aucun fichier d'initialisation n'existe, la variable contient la valeur par défaut de l'endroit où le créer).
Ainsi, quel que soit le nom de fichier d'initialisation possible que vous utilisez et le répertoire dans lequel il se trouve, vous devriez pouvoir visiter votre fichier d'initialisation avec:
M-: (find-file user-init-file)
RET
Ou affichez son chemin complet dans la zone d'écho avec:
M-: (expand-file-name user-init-file)
RET
Sur Emacs 23 et Windows 7, cela ne fonctionne que si vous définissez:
HKCU\SOFTWARE\GNU\Emacs\HOME
J'ai constaté qu'Emacs 22 ouvrirait occasionnellement soit "C: \ Documents and Settings \ username \ Application Data \ .emacs", ou simplement "C: \ Documents and Settings \ username \ .emacs" sur ma machine XP. Je n'ai pas trouvé d'explication pour expliquer pourquoi cela change parfois d'avis.
~ pointera toujours vers ce que l'instance actuelle d'emacs pense être HOME, mais le conseil de kanja (Ch v user-init-file) vous dira toujours à quoi ~ / .emacs correspond réellement.
HOME
variable d'environnement différemment, selon la façon dont je commence runemacs.exe
. Si je le lance à partir de l'Explorateur, HOME
est défini sur C:\Documents and Settings\username
, mais si je le démarre à partir du menu Démarrer, HOME
est C:\Documents and Settings\username\Application Data
. Étrange.
Sur Windows XP, c'est:
C:\Documents and Settings\yourusernamehere\Application Data\
Il existe une liste de répertoires basée sur votre version de Windows et des informations supplémentaires: http://www.gnu.org/software/emacs/manual/html_node/emacs/Windows-HOME.html
Sous Windows 8.1, si Emacs est démarré à partir de l' Explorateur Windows , d'un raccourci ou de la console cmd, il utilise le fichier d'initialisation C: \ Users \ <USER> \ AppData \ Roaming.emacs . Lorsque je démarre Emacs à partir de PowerShell, Emacs recherche son fichier init dans le dossier C: \ Users \ <USER> . Le correctif à ce problème consistait à définir la variable d'environnement de l'utilisateur HOME (Panneau de configuration \ Système et sécurité \ Système-> Paramètres système avancés-> Avancé-> Variables d'environnement) sur C: \ Users \ <USER> . Après ce changement, peu importe comment je lance Emacs, il utilise le même fichier init (voir la réponse acceptée à cette question )
Pour WIndows7 & Emacs26.3 :
si l' HOME
environnement est défini, le .emacs
fichier doit se trouver dans ce dossier.
sinon, il devrait être dans c:\
.
Dans les deux cas, s'il .emacs
n'y en a pas, _emacs
doit être utilisé.
C'est parce que nous ne pouvons pas créer de .emacs
fichier selon les règles de dénomination des fichiers Windows (mais nous pouvons le télécharger ou le copier ailleurs).