Salin dan tempel dari FAQ Emacs, http://www.gnu.org/software/emacs/windows/ :
Pada Windows, .emacs
file mungkin dipanggil _emacs
untuk kompatibilitas dengan sistem file DOS dan FAT di mana nama file tidak dapat dimulai dengan titik. Beberapa pengguna lebih memilih untuk terus menggunakan nama seperti itu, karena Windows Explorer tidak dapat membuat file dengan nama yang dimulai dengan titik, meskipun sistem file dan sebagian besar program lain dapat menanganinya. Di Emacs 22 dan yang lebih baru, file init juga dapat dipanggil .emacs.d/init.el
. Banyak file lain yang dibuat oleh paket Lisp sekarang disimpan di .emacs.d
direktori juga, jadi ini menyimpan semua file terkait Emacs Anda di satu tempat.
Semua file yang disebutkan di atas harus masuk ke direktori HOME Anda. Direktori HOME ditentukan dengan mengikuti langkah-langkah di bawah ini:
- Jika variabel lingkungan HOME disetel, gunakan direktori yang diindikasikannya.
- Jika entri registri HKCU \ SOFTWARE \ GNU \ Emacs \ HOME diatur, gunakan direktori yang ditunjukkan.
- Jika entri registri HKLM \ SOFTWARE \ GNU \ Emacs \ HOME diatur, gunakan direktori yang ditunjukkan. Tidak disarankan, karena mengakibatkan pengguna berbagi direktori HOME yang sama.
- Jika
C:\.emacs
ada, maka gunakan C:/
. Ini untuk kompatibilitas mundur, karena versi sebelumnya C:/
ditetapkan secara default jika HOME tidak disetel.
- Gunakan direktori AppData pengguna, biasanya direktori yang disebut Data Aplikasi di bawah direktori profil pengguna, lokasinya bervariasi sesuai dengan versi Windows dan apakah komputer merupakan bagian dari domain.
Dalam Emacs, ~
di awal sebuah nama file diperluas ke direktori HOME Anda, sehingga Anda selalu dapat menemukan file .emacs Anda dengan C-x C-f ~/.emacs
.
Ada informasi lebih lanjut di HOME dan Direktori Startup di MS-Windows .
Ini harus disimpan dalam variabel user-init-file. Gunakan
C-H v user-init-file RET
untuk memeriksa. Anda juga dapat membukanya secara langsung dengan menggunakanM-x eval-expression RET (find-file user-init-file) RET
sumber
trailing garbage following expression
?Buka file seperti ini di Emacs untuk Windows:
Informasi lebih lanjut ada di Emacs Wiki
sumber
Di kotak Vista saya ada dalam
C:\Users\<USER>\AppData\Roaming\
sumber
Perhatikan bahwa mungkin TIDAK cukup hanya dengan mengetik
Ctrl-x Ctrl-f ~/.emacs
dan membuat file.Mungkin aplikasi Emacs Anda menggunakan tempat berbeda untuk menyimpan file init Anda, dan jika demikian, membuat file ~ / .emacs hanya membuat file tidak berguna yang diabaikan oleh aplikasi Emacs Anda .
Selain itu, Anda mungkin ingin melakukan lebih dari sekadar mengakses file .emacs init, tetapi Anda mungkin ingin tahu di mana tempatnya, yaitu nama jalurnya.
Untuk mendapatkan ini ada dua metode:
Cara mudah: ketik Ctrl+ H Vuser-init-fileReturn
Cara yang sedikit lebih rumit: Anda dapat mengetahui di mana sistem Anda menyimpan file .emacs sendiri dengan:
sumber
c:/Users/user1/AppData/Roaming/.emacs.el
. Situs emacswiki.org/emacs/DotEmacsDotD ini membantu saya menyadari bahwa saya perlu memberi nama file~/.emacs.d/init.el
yang berarti file dalam sistem file berada dic:\Users\user1\AppData\Roaming\.emacs.d\init.el
(sama sekali tidak seperti yang saya harapkan). Saya lebih suka mengatur variabel lingkungan HOME dan menempatkan file di%USERPROFILE%
direktori saya yang merupakan direktori HOME yang logis di windows (setidaknya sejauh yang saya ketahui).Di Windows 7, masukkan
init.el
file AndaC:\Users\user-name\AppData\Roaming\.emacs.d\
, di mana nama pengguna adalah folder pengguna / login Anda.Berhati-hatilah agar
init.el
file Anda tidak diberi namainit.el.txt
. Ini adalah sesuatu yang dilakukan Windows jika Anda membuat file Anda dengan beberapa editor seperti Notepad.sumber
Pada versi Emacs pada Windows di atas 22, tampaknya telah dipindahkan ke
,
~
menjadi nilai variabel lingkungan Anda HOME (lihat Panel Kontrol → Sistem → Lanjutan → Variabel lingkungan ).File itu sendiri mungkin tidak ada. Dalam hal ini, buat saja.
sumber
Anda harus membuat file inisialisasi emacs. Satu tidak dibuat secara otomatis. Saya memiliki masalah serupa dan jawaban ini melacak apa yang saya lakukan.
Masalah saya
~/.emacs.el
adalah file saya tidak dimuat. Aneh karena ini selalu berhasil untuk saya.Pertanyaan / jawaban ini membantu saya tetapi saya harus memasukkan file init saya
%USERPROFILE%\AppData\Roaming\.emacs.d\init.el
karena ini tampaknya merupakan perilaku default pada Windows.Untuk memecahkan masalah ini, saya menjalankan perintah berikut di buffer emacs * scratch * .
Ketika saya melihat
user-emacs-directory
was~/.emacs.d
, saya hanya memindahkan file .emacs.el saya ke%USERPROFILE%\.emacs.d\init.el
. Tapi ini tetap tidak berhasil. Saya melanjutkanexpand-file-name
seperti yang ditunjukkan di bawah ini:Harus menyukai cara kerja Windows. (tidak) Jadi saya memindahkan
emacs.el
file saya ke%USERPROFILE%\AppData\Roaming\.emacs.d\init.el
dan ini berhasil. File tersebut sekarang sedang dibaca. Tetapi saya mendapat kesalahan lain karena file inisialisasi saya memuat file (emacs pribadi) lain (dalam format~/myenv/emacs/*.el
.Hum ... Sepertinya semua file saya
~/myenv/emacs/*.el
perlu dipindahkan agar ini berfungsi tetapi saya tidak ingin melakukan itu. Kemudian saya menyadari bahwa karena variabel lingkungan HOME tidak disetel, emacs melakukan perilaku defaultnya .LARUTAN
Setelah saya menetapkan
HOME
variabel lingkungan windows saya untuk%USERPROFILE%
semuanya mulai berfungsi seperti itu selama 25 tahun terakhir. :-)Untuk menyetel variabel lingkungan HOME, saya mengetik WindowsKey + "edit variabel lingkungan untuk akun Anda" untuk membuka Variabel Lingkungan kotak dialog , dan memasukkan
HOME=%USERPROFILE%
.Sekarang file inisialisasi emacs saya .emacs.el telah kembali ke tempat yang semestinya
$HOME/.emacs.el
dan tidak dalam%USERPROFILE%\AppData\Roaming\.emacs.d\init.el
Agar adil, jika Windows hanya memiliki satu tempat untuk meletakkan file untuk paket yang diinstal pengguna, solusi pembuatan HOME =
%USERPROFILE\AppData\Roaming
mungkin dapat diterima, tetapi karena beberapa aplikasi menggunakan%USERPROFILE%
, beberapa menggunakan%USERPROFILE\AppData\Roaming
dan yang lain menggunakannya%USERPROFILE\AppData\Local
hanya membuat sulit untuk mengetahui di mana menemukan konfigurasi Anda file.Saya lebih suka memiliki semuanya di direktori% USERPROFILE% atau $ HOME saya.
Pertanyaan serupa lainnya ada di sini:
sumber
Seperti yang dijawab kanja, jalur ke file ini disimpan di file
user-init-file
variabel (atau jika tidak ada file init, variabel tersebut berisi nilai default untuk membuatnya).Jadi, terlepas dari kemungkinan nama file init yang Anda gunakan, dan di direktori mana, Anda harus dapat mengunjungi file init Anda dengan:
M-:
(find-file user-init-file)
RETAtau tampilkan jalur lengkapnya di area gema dengan:
M-:
(expand-file-name user-init-file)
RETsumber
Di Emacs 23 dan Windows 7, ini hanya berfungsi jika Anda menyetel:
sumber
Saya menemukan bahwa Emacs 22 kadang-kadang akan membuka "C: \ Documents and Settings \ username \ Application Data \ .emacs", atau hanya "C: \ Documents and Settings \ username \ .emacs" di mesin XP saya. Saya belum menemukan penjelasan mengapa kadang-kadang berubah pikiran.
~ akan selalu menunjuk ke instance saat ini dari emacs yang dianggap HOME, tetapi tip kanja (Ch v user-init-file) akan selalu memberi tahu Anda apa yang sebenarnya dipetakan oleh ~ / .emacs.
sumber
HOME
variabel lingkungan secara berbeda, tergantung pada bagaimana saya memulairunemacs.exe
. Jika saya memulainya dari dalam Explorer,HOME
diatur keC:\Documents and Settings\username
, tetapi jika saya memulainya dari Start Menu,HOME
adalahC:\Documents and Settings\username\Application Data
. Aneh.Di Windows XP ini:
sumber
Ada daftar direktori berdasarkan versi Windows Anda dan informasi tambahan: http://www.gnu.org/software/emacs/manual/html_node/emacs/Windows-HOME.html
sumber
Pada Windows 8.1, jika Emacs dimulai dari Windows Explorer , pintasan atau dari konsol cmd menggunakan file init C: \ Users \ <USER> \ AppData \ Roaming.emacs . Saat saya memulai Emacs dari PowerShell, Emacs mencari file initnya di folder C: \ Users \ <USER> . Perbaikan untuk masalah ini adalah mengatur variabel lingkungan pengguna HOME (Panel Kontrol \ Sistem dan Keamanan \ Sistem-> Pengaturan sistem lanjutan-> Tingkat Lanjut-> Variabel lingkungan) ke C: \ Users \ <USER> . Setelah perubahan ini, tidak peduli bagaimana saya memulai Emacs, itu menggunakan file init yang sama (lihat jawaban yang diterima dari pertanyaan ini )
sumber
Untuk WIndows7 & Emacs26.3 :
jika
HOME
lingkungan disetel, maka.emacs
file tersebut harus ada di folder itu.jika tidak, harus masuk
c:\
.Dalam kedua kasus, jika
.emacs
tidak ada,_emacs
harus digunakan.Ini karena kami tidak dapat membuat
.emacs
file sesuai dengan aturan penamaan file windows. (Tetapi kami dapat mengunduh atau menyalinnya dari tempat lain).sumber