Jawaban:
js-indent-level
dapat digunakan dalam mode-javascript default, yang disertakan secara default mulai dari emacs 23.2.
(setq js-indent-level 2)
harus melakukan apa yang Anda cari. Jika Anda menggunakan emacs versi lama, Anda mungkin berada dalam mode java. Saya pikir mode ini merespons c-basic-offset
, namun saya mungkin salah.
(defun my-javascript-mode-hook () (setq indent-tabs-mode t tab-width 4 js-indent-level 4)) (add-hook 'javascript-mode-hook 'my-javascript-mode-hook)
.
js-mode-hook
, seperti ini:(defun my-js-mode-hook () (setq indent-tabs-mode t tab-width 4 js-indent-level 4)) (add-hook 'js-mode-hook 'my-js-mode-hook)
M-x h
dari js-mode, tetapi tidak dapat menemukan apa pun di sana.
Saya berharap seseorang memberi tahu saya tentang Custom lebih cepat! Mungkin ini akan membantu manusia biasa lainnya seperti saya;)
Panggil Kustom:
M-x customize
Kemudian, pilih "Pemrograman", lalu "Bahasa", lalu pilih bahasa / mode untuk menyesuaikan. Edit opsi sesuai keinginan Anda. Setelah selesai, pilih "Simpan untuk sesi saat ini" atau "Simpan untuk sesi mendatang."
Jika Anda menggunakan js2-mode (IMHO lebih kuat), maka perintahnya adalah:
(setq-default js2-basic-offset 2)
Menggunakan EditorConfig juga bisa menjadi ide yang bagus. Dan tentu saja, Emacs memiliki mode untuk editorconfig-emacs .
Ini juga tersedia di pengelola paket ( M-x package-list-packages
) melalui Melpa atau Marmalade.
Tak satu pun dari solusi ini berhasil untuk saya setelah memutakhirkan ke Emacs 26 (saya sudah js-indent-level
menyetel ke 2 tetapi lebar tab saya kembali ke 8), tetapi yang berhasil adalah menyetel tab-width
variabel ke 2
, yang tampaknya menggantikan yang lama.default-tab-width
variabel .
Saya menemukan ini M-x customize
dengan mencari tab width
.