問題タブ [vim-macros]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
377 参照

regex - レジスタを n 回インクリメントすると値がスキップされる

VIM を使用して 500 個の個別のファイルを操作し、値の 1 つを一意にしました。それは完全なクラッジなので、貼り付けません:)

1 つの要素を一意にすると、500 レコードが空白行で区切られた 1 つのファイルができます。

行 1 をマークし、空白を見つけて前の行をマークし、@b を 1 ずつ増やしてそのブロックをファイルに書き込むマクロを記録しました。

ファイルの書き込み中に @a をインクリメントする方法がわからなかったため、貼り付けてインクリメントし、 @a にヤンクします。

これはすべて正常に機能しましたが、7 つの数字ごとにインクリメント コマンドが 3 つスキップするため、XML0001.xml から XML0500.XML への代わりに、XML001.xml から XML0763.xml などを取得します。

8 回目の呼び出しごとに 3 つの数字がスキップされるのはなぜですか?

ファイル名が一意である限り、番号が付けられているかどうかは関係ありませんが、最終的には出力名を @b の値と一致させる必要があるので、私はただ興味があります。

編集 0 から 9 のレジスターがトラックを失うことに関係があると思いますか?

@a を挿入モードでインクリメントする方法はありますか

0 投票する
2 に答える
67 参照

vi - VI(M)、2 つのファイルを検索してスクロールすると、自動的に 2 つのファイルが表示されます

私はこれらの操作を行ってきましたが、頻繁に行う必要があります。

ステップ 1. 文字列を検索する (SHFT + *)
ステップ 2. 前のビューポートに切り替える (CTRL + w + h)
ステップ 3. 文字列を検索する ( n )
ステップ 4. 別のビューポートに戻る (CTRL + w + l)

Vi(m) を使用すると、上記の 4 つのステップを一度に自動化できますか?

ネットとstackoverflowを検索しましたが、:set scrollbindについては話していません。

0 投票する
1 に答える
98 参照

vim - xが行に依存する行ごとにマクロxをどのように適用しますか

次のようなものがあるとしましょう

マクロ/コマンドを1行あたりx回実行できるようなvimマクロを使用する方法はありますか?xは行に依存しますか? この場合、2wx^各行を x 回実行します。x は、結果が次のようになる行番号です。

前もって感謝します

0 投票する
1 に答える
52 参照

vim - タグを参照する範囲操作で Vim マクロを編集する

次のような範囲 ( http://vim.wikia.com/wiki/Ranges ) 操作でマクロを作成しました。

次に、通常は let ( http://vim.wikia.com/wiki/Macros#Editing_a_macro )を使用して編集します。

ただし、これらの例では、マクロ定義の ' が原因で編集が失敗します。これを解決するには?代替範囲構文または定義時に引用符をエスケープする方法。

マクロを再記録できることはわかっていますが、実際のバージョンはこれよりもはるかに長くなります!

0 投票する
1 に答える
3017 参照

vim - vimで挿入キーのマップを解除するには?

ではvimコマンド モードキーはexcommand:map <key> <macro>を介してマッピングでき、挿入モードキーは を介し​​てマッピングできます:map! <key> <macro>。マッピング後、コマンドモードキーと挿入モード キーからマッピングを削除するコマンドはunmap <key>unmap! <key>それぞれ と です。

これは、コマンド モードキーではうまく機能しますが、挿入モードキーでは、キー展開はexコマンド ライン プロンプトでも機能します。キーを入力しようとすると、マクロ展開が実行されてしまい、unmap!コマンドの引数が正しくない ( E474: Invalid Argument) または多分コマンドは、意図したもの ( ) とは異なるキーのマッピングを解除しようとする場合がありますE31: No such mapping

で挿入モードにマップされたキーを正しく削除するにはどうすればよいvimですか?