【问题标题】:vim comment/uncomment with one mapping [duplicate]vim评论/取消评论与一个映射[重复]
【发布时间】:2015-08-17 22:54:36
【问题描述】:

我是 vim 的新手。我有以下映射来评论我的 python 代码:

nmap cc 0i#<ESC>

我希望使用相同的映射来取消注释一行。我想我需要一个函数来检查该行的第一个字符。你知道我是怎么做的吗?

谢谢。

edit : 和question 不一样,不知道不用插件怎么办。

【问题讨论】:

标签: function vim mapping comments


【解决方案1】:

您不应该尝试自己(糟糕地)实现这一点;这是一个已解决的问题,您可以从几个好的插件中进行选择。插件列表见Comment Lines according to a given filetype


不过,作为一种学习体验,尝试映射是可以的。这是一种使用:help map-expr 首先检查该行是否存在评论的方法:

nnoremap <expr> cc getline('.') =~# '^#' ? '0x' : '0i#<ESC>'

PS:You should use :noremap;它使映射不受重映射和递归的影响。

【讨论】:

    【解决方案2】:

    有这个plugin。这非常好,而且他适用于多种语言。

    【讨论】:

      猜你喜欢
      • 2012-03-30
      • 2020-01-09
      • 2011-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多