我正在编写一个Vim插件,我想检测当前行是否有注释。如果这行没有被评论,我希望它做点什么。伪代码:
if !commented
do something
endif
您可以尝试以下内容。
" Check if current line is commented. " Comment starts with -- let commented = ! match(getline('.'), ' *--.*')
getline('.')
将获取当前行的内容match
会将线条与图案进行比较
当前行以--
开头时,匹配结果为0。
如果在行的中间找到模式,则匹配结果为正数
如果找不到模式,则匹配结果为-1。
逻辑不匹配后,将得到注释标志。