如何在VIM中向多行添加注释?

时间:2016-11-06 11:37:09

标签: vim

我知道如何在VIM中注释多行,但如果我想在每行的末尾添加注释怎么办? 例如:

function dir.ls(path)
    local i,files = 0,{}
    local pfile = io.popen('ls "'..path..'"')
    for fname in pfile:lines() do
        i = i + 1
        fpath = path..fname
        files[i] = fpath
    end
    pfile:close()
    return files
end

现在添加了评论:

function dir.ls(path)
    local i,files = 0,{}
    local pfile = io.popen('ls "'..path..'"')
    for fname in pfile:lines() do
        i = i + 1
        fpath = path..fname  -- your comment goes here
        files[i] = fpath -- your comment goes here
    end
    pfile:close() -- your comment goes here
    return files
end

1 个答案:

答案 0 :(得分:5)

  1. 将评论附加到第一行:

    A -- your comment goes here<Esc>
    
  2. 将光标移动到要添加注释的下一行。

  3. 重复上一次编辑:

    .
    
  4. 依此类推......

  5. 在你的例子中:

    A -- your comment goes here<Esc>
    j.
    jj.
    

    另一种方法,但只需一步:

    :,+3v/end/norm A -- your comment goes here<CR>
    

    如果从右到左解释该命令更容易理解:

    • :normal命令允许您从命令行模式执行一系列正常模式命令。在这里,我们使用它将注释附加到给定的行,就像在多步方法的第一步中一样。

    • v/pattern/command:global命令的伴侣。这意味着“在给定范围内的每一行上运行给定命令,匹配pattern”。在这里,我们在给定范围内不包含:normal的每一行上运行end命令。

    • ,+3是我们要运行:v命令的行范围。它是.,+3的缩写版本,意思是“当前行和接下来的三行”。