【问题标题】:Problems with Macros in MacVimMacVim 中的宏问题
【发布时间】:2012-05-10 18:51:08
【问题描述】:

忽略这个愚蠢的问题

万一有人想知道。是复制+粘贴阻止了它的工作。然后你必须使用像Marvin 这样的插件来永久保存它。我的错。


我需要在 MacVim 上对多个文件运行一些命令,主要是搜索和替换。

所以我在做第一个文件的时候录制了一个宏,

q 

开始录制宏,然后

c

为宏命名,

然后以下几行(从文本文件中复制和粘贴)被逐一输入

v/sequence One\|sequence two/d
%s/sequence three//g
%s/sequence four/,/g
%s/ /_/g
%s/<\/strong>//g
%s/<\/td>//g
g/</d

然后我停止录制宏,用

q

但是当我尝试在另一个文件中播放它时

@C

它什么都不做。它只是坐在那里在命令行中显示@c,但没有别的。我试着把它放在我的 .vimrc 文件中,像这样

let @c ="
    v/sequence One\|sequence two/d
    %s/sequence three//g
    %s/sequence four/,/g
    %s/ /_/g
    %s/<\/strong>//g
    %s/<\/td>//g
    g/</d
"

还是什么都没有。有什么想法吗?

【问题讨论】:

  • Vim 的宏是坚如磐石的。第二个文件怎么打开?在分裂?在标签中?在另一个 GUI 窗口中?您可以完全录制/播放任何宏还是只录制这个宏?
  • @vonHippie,与其说“忽略这个问题”,为什么不发布你的问题的答案,或者删除问题?
  • 我写了一个解释为什么它不起作用。如果您复制并粘贴命令,宏将不起作用。

标签: vim macros macvim


【解决方案1】:

一个迟到的答案,但我认为问题在于宏寄存器是 c 并且您正在/正在尝试调用宏 C:您发布的示例中的大小写不同。

【讨论】:

    猜你喜欢
    • 2020-04-30
    • 1970-01-01
    • 2011-07-18
    • 2014-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多