Saya telah mencoba mengkonfigurasi Emacs untuk menggunakan mode Python yang tepat. Untuk tujuan ini saya telah membaca beberapa tutorial. Yang terpenting yang ini . Tutorial menggunakan python-mode
paket. Namun, ketika saya menginstalnya melalui manajer paket ( M-x package-install RET python-mode RET
) saya tidak bisa menggunakan pintasan yang tersedia untuk paket itu.
Saya membuka file Python untuk menguji beberapa cara pintas seperti C-c |
, yang seharusnya mengevaluasi ekspresi yang dipilih. Namun, yang mengejutkan saya ini tidak berhasil jadi saya memutuskan untuk mencari tahu tutorial lainnya tentang topik ini. Namun, dalam mode-line saya, saya memang melihat Python
, jadi ada beberapa yang python-mode
diaktifkan.
Di wiki emacs saya menemukan potongan berikut untuk ditambahkan ke init.el
file saya :
(autoload 'python-mode "python-mode" "Python Mode." t)
(add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode))
(add-to-list 'interpreter-mode-alist '("python" . python-mode))
Ketika saya menambahkan ini, python-mode
sebenarnya berfungsi dan cara pintas yang disebutkan di atas juga berfungsi.
Saya tidak mengerti benar apa yang dilakukan lebih dari mengeksekusi secara manual M-x python-mode
dalam buffer file python.
Ketika saya menghapus setiap jejak python-mode
di folder .emacs saya dan membuka file python saya perhatikan bahwa saya masih punya python-mode
. Jadi tebakan saya ada dua python-mode
s?
Saya rasa saya ingin python-mode
dari https://launchpad.net/python-mode . Tampaknya ada dalam repositori paket, tetapi saya tidak yakin bagaimana menghapus mode Python lainnya.
Bisakah seseorang menjelaskannya?
Jawaban:
Yah ya ada dua mode python: yang dikirimkan dengan emacs adalah
python.el
dan yang lainnyapython-mode.el
memang yang ini: https://launchpad.net/python-modeTutorial Anda telah merujuk yang berikutnya.
python-mode
Cuplikan pengaturan Anda melakukan hal berikut:sumber
init.el
perangkat portabel saya jadi menghapuspython.el
mungkin bukan pilihan.Sebagai pengelola python-mode.el dan selain menjawab oleh @Adobe: python-mode.el tidak membongkar perintah dari python.el - keduanya tersedia. Karena nama python-mode-map --yang digunakan oleh keduanya dan tidak dapat diubah tanpa merusak banyak hal-- pengikat kunci dan menu dikirim dari yang terakhir dimuat.
C-c |panggilan
py-execute-region
dan bekerja dengan baik di sini. Mungkin python.el dimuat setelah itu dan pengikatannya hilang. Memanggil perintah melalui MX mungkin menjadi pilihan daripada. Jika ada masalah, silakan pertimbangkan laporan bug di https://bugs.launchpad.net/python-modesumber