我正在努力实现同样的问题,但在Vim。
Duplicate line and comment out old one
基本上我想拉线,注释掉旧线,粘贴新线,并将光标保持在新线的开头并以插入模式结束。
例如:
def func (param)
将更改为:
//def func (param)
def func (param)
我为它录制了一个宏,将其放入.vimrc
并通过@y
" copy-and-comment-line macro
" yank line, comment out original line, move cursor at the begining
" of copied line and end in insert mode
let @y='yypkui//kdklkl'
(我不确定它会对你有用,因为它包含不可打印的~@
字符,代码块不会显示)
宏工作,但是在vim中是否有一个内置命令可以实现同样的功能?
答案 0 :(得分:6)
此映射应该为您完成:
nnoremap YOURKEY YI//<esc>p
YOURKEY
//
样式评论。如果您希望它是通用解决方案,则必须构建一个函数,在此函数中检查文件类型,并确定应使用哪种注释样式。到目前为止还没有好的内置解决方案,但您可以查看NERDCommenter或vim-commentary插件以了解它们是如何实现的,或者您可以安装其中一个(或类似的插件)并调用它在您的映射中起作用。