在VIm / gvim中使用普通模式下的宏观内容时的操作差异(删除特定列)

时间:2012-05-09 09:54:03

标签: vim macros norm

定义了一个宏

let @a='$F|vF|<80>kr^V5jd'

示例输入文件

+--------------------+---------+---------
|           Name     |   S1    |    S2
+--------------------+---------+---------
|           A        | -4.703  | -2.378  
|           B        | -3283.2 | -3204.5 
|           C        |  8779   |  7302   
|           D        |  22078  |  18018  
+--------------------+---------+---------

当我将它用作宏时,它正在执行1个任务

:%norm @a

结果1

+--------------------+---------+---------
|           Name     |    S2
+--------------------+---------
 -2.378  
 -3204.5 
  7302   
  18018  
---------+---------

尝试通过

进行相同的操作时

:%norm $F|vF|<80>kr^V5jd在同一个文件上

它正在执行不同的任务

结果2

|           D        |  22078  |  18018  
+--------------------+---------+---------

在正常模式下处理Visual Block内容宏时,我们需要特别小心吗?

有什么不对。

实际上,我想要做的是删除S1列,任何人都可以这样帮助!

期望输出

+--------------------+---------
|           Name     |   S2    
+--------------------+---------
|           A        | -2.378    
|           B        | -3205.5  
|           C        |  7302      
|           D        |  18018    
+--------------------+---------

由于

1 个答案:

答案 0 :(得分:1)

这就是我得到的:

GG F + CTRL-V 移-G ;; ħ d