python - Los comentarios(#) van al inicio de la línea en el modo de inserción en Vim
comments indentation (3)
Cada vez que deseo agregar un comentario a una línea sangrada en vim, presiono Mayús - o (abra una nueva fila arriba del actual, cambio al modo insertar) y empiezo a escribir un comentario de Python (usando #
). Ese hash se mueve mágicamente al principio de la línea (sin sangría) y tengo que hacer clic en la pestaña varias veces.
¿Alguien sabe cómo evitarlo?
Es posible que desee probar Nerd Commenter , que es un complemento que le permite agregar comentarios a líneas en la mayoría de los idiomas automáticamente. Simplemente coloque el cursor en la línea que le interese y escriba , c Espacio y la línea se comentará. Las mismas teclas borrarán el comentario para revelar la línea.
Entonces si tienes:
def func():
print("indented") <- cursor position in command mode
Escribe , c Espacio y obtienes:
def func():
#print("indented")
Supongo que has set smartindent
en tu .vimrc
Ver :h smartindent
When typing ''#'' as the first character in a new line, the indent for
that line is removed, the ''#'' is put in the first column. The indent
is restored for the next line. If you don''t want this, use this
mapping: ":inoremap # X^H#", where ^H is entered with CTRL-V CTRL-H.
When using the ">>" command, lines starting with ''#'' are not shifted
right.
Creo que no necesitas smartindenting mientras codifica Python. Así que simplemente elimínelo de su configuración o agregue lo siguiente a su .vimrc:
au! FileType python setl nosmartindent
intenta poner eso en tu .vimrc:
autocmd BufRead *.py inoremap # X<c-h>#
Esto hará que la inserción del signo hash (libra) siempre se sangra en los archivos fuente de Python.