首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用modify NERDCommenter的行为来注释所选的*所有*行

如何使用modify NERDCommenter的行为来注释所选的*所有*行
EN

Stack Overflow用户
提问于 2012-06-14 23:44:10
回答 1查看 695关注 0票数 1

在Vim中,当我使用NERDCommenter注释多行可视选择时,选择中的空行不会被注释。在下面的示例中,我选择了所有5行并键入"\cl“(表示NERDCommenterAlignLeft),但是第三行没有注释,它是空白的。

之前:

代码语言:javascript
复制
" Normalize Markdown : Remove Trailing # From Headers
nnoremap <Leader>qq :%s/ \+#\+ *$//gc<CR>

" Normalize Markdown : Remove Trailing Whitespace
nnoremap <Leader>qw :%s/\s\+$//gc<CR>

之后:

代码语言:javascript
复制
" " Normalize Markdown : Remove Trailing # From Headers
" nnoremap <Leader>qq :%s/ \+#\+ *$//gc<CR>

" " Normalize Markdown : Remove Trailing Whitespace
" nnoremap <Leader>qw :%s/\s\+$//gc<CR>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-15 22:11:36

这就是它在NERDCommenter插件中的实现方式。如果您打开插件文件(NERD_commenter.vim)并查找名为s:CanCommentLine的函数,您将看到它具有以下检查:

代码语言:javascript
复制
" make sure we don't comment lines that are just spaces or tabs or empty.
if theLine =~ "^[ \t]*$"
    return 0
endif

因此,在插件继续注释一行之前,它会检查该行是否为空行。如果是这样,插件不会对其进行注释,并跳到下一行。

快速修复方法是简单地从您的插件文件中删除这部分代码。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11036685

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档