Niektóre edytory kodu, takie jak zaćmienie, automatycznie tworzą zgrabne bloki, gdy zaczynasz pisać komentarz wielowierszowy:
Czy jest jakiś pakiet lub inny sposób, aby to zrobić również w emacsie?
Edycja: W celu wyjaśnienia: ja nie chce kluczy kombinację, która wstawia komentarz blokowy. Chcę, aby blok komentarzy był tworzony automatycznie po naciśnięciu przycisku RET
po /*
.
comment
editing
c
development
Geier
źródło
źródło
*/
*
Znaki nie są ściśle wymagane, ale miło mieć.Odpowiedzi:
Poniższy kod działa poprawnie z moich krótkich testów w
c-mode
buforze:/*
naciśnijM-j
, domyślne powiązanie dlaindent-new-comment-line
(i domyślne powiązanie dlac-indent-new-comment-line
inc-mode
). Jeśli jest to pierwszy wiersz komentarza, zamykające znaki zamykające*/
zostaną wstawione automatycznie.M-j
więcej razy z wstawieniem większej liczby wierszy komentarza z*
prefiksem. Jest to wbudowane zachowaniec-indent-new-comment-line
/indent-new-comment-line
funkcji. Sprawdź dokumentację dotyczącą wielu wierszy komentarzy .*
wierszem komentarza a komentarzem jest co najmniej jedna spacja .Na przykład, po dokonaniu oceny powyższy kod, otrzymuję poniżej na wpisywanie:
/*
M-j
First comment line
M-j
Second comment line
. ▮ wskazuje położenie kursora na końcu pisania.Testowanie bloku komentarza odsunięcia ..
Kursor po średniku, wpisując:
/*
M-j
Test offset comment
daje poniżej. ▮ wskazuje położenie kursora na końcu pisania.źródło
(setq c-default-style "bsd" c-basic-offset 4)
w moiminit.el
, tak się dzieje: i.imgur.com/KMLx6Ll.gif Każdy pomysł?(move-to-column star-col-num) (insert "*")
z powyższego rozwiązania naprawi to za Ciebie. Nie koduję w C, więc nie sprawdziłem, jakie zmienne są ustawione według"bsd"
stylu.