vim:標準コマンドを記録する方法は?

vim:標準コマンドを記録する方法は?

同じファイルを複数編集して修正しました。

次のコマンドを使用してください

:%norm f^ID
:%s/\s\+$//
:%norm A,
:%norm GG$x

マクロモードも使用しました。

qa

マクロを記録するために使用されます。

そして

@a

実装する

しかし、奇妙な理由や私の間違いのためにいくつかのコマンドだけが適用されました。

私の質問は:このコマンドをスクリプトに保存して使用できますか?

 vim -N -u NONE -n -c "set nomore" -S script.vi file.txt

コース文法

:%norm f^ID
:%s/\s\+$//
:%norm A,
:%norm GG$x

スクリプトで使用するとエラーが発生します。

Slackware 14.2のVimは7.4です。

答え1

これは正確にあなたが要求したものではありませんが、コンテンツでvimスクリプトを作成できます。簡単なケースから始めましょう。

$ cat noendspaces
#!/usr/bin/vim -s
:%s/ *$//
:r ! echo "\#last changed by $USER in :" `date`
:x

それから...

$ chmod 755 noendspaces
$ for a in file*.txt 
  do
    ./noendspaces $a
  done

関連情報