Una vez me dieron estos materiales para permitir que este ayudante vimmuestre una especie de línea vertical para ayudar a hacer cumplir las reglas PEP8 sobre el límite de longitud de línea en la columna 80:
" Long lines highlighting.
nnoremap <Leader>H :call<SID>LongLineHLToggle()<cr>
hi OverLength ctermbg=none cterm=none
match OverLength /\%>80v/
fun! s:LongLineHLToggle()
if !&diff
if !exists('w:longlinehl')
let w:longlinehl = matchadd('ErrorMsg', '.\%>80v', 0)
echo "Long lines highlighted"
else
call matchdelete(w:longlinehl)
unl w:longlinehl
echo "Long lines unhighlighted"
endif
endif
endfunction
En acción:
Utilizo todo esto para marcar la columna 80.
Dado suficiente tiempo y esfuerzo, podría tener una facilidad similar vimpara marcar texto mucho más allá de la columna 72 solo cuando esté en comentario. Supongo que alguien ya lo ha codificado en algún lugar en algún momento. ¿Ya sabes dónde encontrar ese fragmento?


synID()ysynIDattr(). Algo así como:if ((synIDattr(synID(line("."), 72, 0), "name") =~ 'comment\c')nnoremapoautocmdo algo? Escribir eso en la:consola arrojóE110yE15🙁.Respuestas:
Pruebe una región de sintaxis contenida:
En lugar de
50, usar80o72o cualquier columna que usted prefiere.fuente
vimversión es esa?vim --versionpresentarVIM - Vi IMproved 8.0.586 ...? No estoy seguro de lo que estoy haciendo, pero creo que no funciona para mí como suyo. El mío es reveladorVIM - Vi IMproved 7.4 (2013 Aug 10, compiled Mar 10 2017 00:54:29) ..., ese es el VIM vainilla de Debian Jessie.containedin=pythonComment. Si está utilizando algún otro tipo de archivo, deberá buscar cuál es la región de sintaxis para los comentarios y utilizarla en su lugar.vimrcno funcionará, ya que los archivos de sintaxis cargados más tarde probablemente borrarían cualquier regla actual. Use un autocmd o~/.vim/after/syntax/python.vim.