Alguns editores de código, como o eclipse, formam automaticamente blocos simples quando você começa a digitar um comentário com várias linhas:
Existe algum pacote ou outra maneira de fazer isso no emacs também?
Editar: para esclarecer: não quero uma combinação de teclas que insira um bloco de comentários. Quero que um bloco de comentários seja criado automaticamente quando pressionar RET
depois /*
.
comment
editing
c
development
Geier
fonte
fonte
*/
*
sinais não são estritamente necessários, mas agradáveis.Respostas:
O código abaixo funciona bem no meu breve teste em um
c-mode
buffer:/*
, pressioneM-j
a ligação padrão paraindent-new-comment-line
(e a ligação padrão parac-indent-new-comment-line
inc-mode
). Se for a primeira linha de comentário, os caracteres de fechamento*/
serão inseridos automaticamente.M-j
mais vezes com a inserção de mais linhas de comentário com o*
prefixo. Esse é o comportamento interno dec-indent-new-comment-line
/indent-new-comment-line
funções. Confira a documentação de várias linhas de comentários .*
em cada linha de comentário e o comentário.Por exemplo, depois de avaliar o código acima, eu recebo a seguir na digitação:
/*
M-j
First comment line
M-j
Second comment line
. O ▮ indica a localização do cursor no final da digitação.Testando o bloco de comentários de deslocamento ..
Com o cursor após o ponto e vírgula, digitando:
/*
M-j
Test offset comment
fornece o abaixo. O ▮ indica a localização do cursor no final da digitação.fonte
(setq c-default-style "bsd" c-basic-offset 4)
no meuinit.el
, isso acontece: i.imgur.com/KMLx6Ll.gif Alguma idéia?(move-to-column star-col-num) (insert "*")
da solução acima corrigirá isso para você. Como não codifico em C, não investiguei quais variáveis são definidas por"bsd"
estilo.