Beberapa editor kode seperti eclipse secara otomatis membentuk blok yang rapi ketika Anda mulai mengetik komentar multi-baris:
Apakah ada beberapa paket atau cara lain untuk melakukan ini di emacs juga?
Sunting: Untuk memperjelas: Saya tidak ingin kombinasi tombol yang menyisipkan blok komentar. Saya ingin blok komentar dibuat secara otomatis ketika saya menekan RET
setelah /*
.
comment
editing
c
development
Geier
sumber
sumber
*/
*
Tanda-tanda tidak sepenuhnya diperlukan, tetapi menyenangkan untuk dimiliki.Jawaban:
Kode di bawah ini berfungsi dengan baik dari pengujian singkat saya di
c-mode
buffer:/*
, tekanM-j
, binding default untukindent-new-comment-line
(dan binding default untukc-indent-new-comment-line
inc-mode
). Jika ini adalah baris komentar pertama, karakter penutup*/
akan dimasukkan secara otomatis.M-j
lebih banyak kali dengan memasukkan lebih banyak baris komentar dengan*
awalan. Ini adalah perilakuc-indent-new-comment-line
/indent-new-comment-line
fungsi bawaan. Lihat beberapa baris dokumentasi komentar .*
di setiap baris komentar dan komentar.Sebagai contoh, setelah mengevaluasi kode di atas, saya mendapatkan di bawah ini pada mengetik:
/*
M-j
First comment line
M-j
Second comment line
. ▮ menunjukkan lokasi kursor di akhir pengetikan.Menguji blok komentar offset ..
Dengan kursor setelah titik koma, ketikkan:
/*
M-j
Test offset comment
beri di bawah ini. ▮ menunjukkan lokasi kursor di akhir pengetikan.sumber
(setq c-default-style "bsd" c-basic-offset 4)
di sayainit.el
, ini terjadi: i.imgur.com/KMLx6Ll.gif Ada ide?(move-to-column star-col-num) (insert "*")
dari solusi di atas akan memperbaikinya untuk Anda. Saya tidak kode dalam C, jadi saya belum menyelidiki variabel apa yang ditetapkan oleh"bsd"
gaya.