Bagaimana cara memulai Emacs dengan opsi init debug?


6

Peringatan yang saya dapatkan, segera setelah saya membuka Emacs adalah ini:

Peringatan (inisialisasi): Terjadi kesalahan saat memuat `/ Pengguna / Kaileeena/.emacs ':

Akhir file saat parsing: / Pengguna / Kaieeena/.emacs

Untuk memastikan operasi normal, Anda harus menyelidiki dan menghapus penyebab kesalahan dalam file inisialisasi Anda. Mulai Emacs dengan opsi `--debug-init 'untuk melihat backtrace kesalahan lengkap.

Tetapi bagaimana saya melakukannya?

Saya belum pernah menggunakan perangkat lunak ini sebelumnya, dan saya tidak tahu harus mengetik di mana.


Itu berarti usus - Anda melewatkan braket di .emacs- atau beberapa paket yang Anda requirelewatkan itu. Coba ingat-ingat apa yang baru-baru ini Anda geluti.
Adobe

Jawaban:


11

Anda menjalankan Mac OS, bukan? Dengan asumsi Anda menginstal Emacs ke folder Applications, buka jendela Terminal (ada di subfolder Utilities di dalam Applications) dan ketik:

/Applications/Emacs.app/Contents/MacOS/Emacs --debug-init

Terima kasih atas bantuan Anda, tetapi saya mendapatkan hasil yang sama seperti ketika saya mencobanya melalui Emacs. Yang saya lihat hanyalah jendela kosong. Saya bertanya-tanya apakah harus ada semacam log yang akan memberi tahu saya mengapa saya mendapatkan peringatan itu?
Kaileeena

Hm, --debug-initharus menunjukkan di mana masalahnya ... Anda bisa mencoba menambahkan -nw("tidak ada jendela") ke baris perintah itu. Ini akan membuat Emacs berjalan di dalam jendela terminal, yang mungkin membuatnya kurang bingung.
legoscia

2

Selain saran untuk digunakan emacs --debug-init, lakukan ini: Bagi dua file init Anda ( ~/.emacs) secara rekursif sampai Anda menemukan kode yang bermasalah. (Misalnya, gunakan M-x comment-regionuntuk mengomentari setengah kode, lalu 1/4, lalu 1/8, lalu 1/16, ... (Dengan awalan arg C-u, perintah yang sama menghapus tanda komentar pada wilayah tersebut.)

Ini adalah pencarian biner, jadi ini sangat cepat dilakukan.

Tetapi seperti yang disarankan @Adobe, kemungkinan Anda kehilangan satu atau beberapa paren penutup. Pendekatan lain adalah menggunakan C-M-fberulang kali (cukup tahan akor itu), sampai Anda mendapatkan kesalahan. Itu akan menjadi tempat Anda melewatkan paren. (Mulai di tingkat atas file dan paren paling kiri dari sexp pertama Anda.)


0

Ketika Anda memulai emacs dari terminal cukup tambahkan setelah perintah sehingga perintah lengkap Anda terlihat seperti emacs --debug-init.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.