Vim 脚本与实用功能全解析
1. Vim 自动命令组与脚本
在 Vim 中,自动命令组和脚本的使用能极大提升编辑效率。自动命令组的删除需要注意顺序,若要删除自动命令组,需先删除组内的自动命令。使用 augroup! groupname
命令可删除自动命令组,但此操作不会删除关联的自动命令,后续引用这些自动命令时会产生错误。
以下是一个实用的 Vim 脚本示例,用于在 HTML 文件的 <meta>
行中更新时间戳:
autocmd BufWritePre,FileWritePre *.html mark s|call
LastMod()|'s
fun LastMod()
" if there are more than 20 lines, set our max to 20, otherwise,
scan
" entire file.
if line("$") > 20
let lastModifiedline = 20
else
let lastModifiedline = line("$")
endif
exe "1," . lastModifiedline . "g/Last modified: .*/s//Last
modified: " .
\ strftime("%Y %b %d")
endfun
此脚本的 autocmd
命令详解如下:
- BufWritePre, FileWritePr