[英]Is There event of autocmd in vim triggered by inputing character exceeding the specified column number?
輸入超出指定列會觸發vim
的autocmd
事件嗎? 我找不到我需要的活動。 如果事件不存在,我可以自定義autocmd
事件嗎? 我要在輸入字符超過指定的列號時執行命令。
此命令:match Underlined /.\\%>81v/
可以指定超過81
的字符樣式,現在我想運行命令而不是更改樣式。
每當光標移動(由於鍵入,移動等)時,在插入模式下都會觸發CursorMovedI
事件。可以通過virtcol('.')
查詢當前屏幕列; col('.')
函數返回字節索引 ,當存在制表符,全角字符或任何非ASCII字符時, 字節索引將有所不同。 因此,您可以通過以下方式觸發自定義功能
:autocmd CursorMovedI * if virtcol('.') > 80 | ... | endif
但是,如果只是在某一列之后自動插入換行符之后,則內置該功能。請參見:help 'textwidth'
'wrapmargin'
(或者'wrapmargin'
)和:help fo-table
。 以下內容將在80列后中斷文本:
:set textwidth=80 formatoptions+=t
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.