3

次を使用して、単一のファイルを別の行で開くことができることを知っています。

vim foo.c +123
vim +123 foo.c # same result

以下を使用して、複数のファイルを開くことができます。

vim foo.c bar.c

しかし、どうすればこれら 2 つのアクションを組み合わせることができるでしょうか? vim +123 foo.c +456 bar.c456 ではなくbar.c1 行目で開かれます。

Vim : Open multiples files on different linesを見ましたが:prev:nナビゲートに慣れている間は別のタブが開きます。

4

3 に答える 3

1

もっと簡単な方法があるかどうかはわかりませんが、タブ ユーザーではないため、ワークフローに影響を与えない非常に簡単な回避策を次に示します。

  1. まず、 vim に入った直後に.vimrc発行する(他のすべてのタブを閉じる)自動コマンドを設定します。tabo[nly]

    autocmd VimEnter * tabo
    
  2. 次に、リンクされた質問のソリューションを使用して、複数のタブでファイルを開きます

    vim +123 foo.c +"tabnew +456 bar.c"
    

そのため、舞台裏で、vim はファイルをタブで開きますが、最後以外のすべてをすぐに閉じます。開いているすべてのファイルは、開いているバッファで利用できるはずです。

これは、複数のファイルなしで vim を通常どおり開いた場合でも問題なく動作します (「タブ ページは 1 つだけです」という無害なメッセージが表示されますが、これは次のキー ストロークで消えます)。また、このコマンドは でのみ発行されるVimEnterため、(必要に応じて) 以降のセッションでタブを使用できなくなるわけではありません。

于 2013-03-12T16:36:03.997 に答える
1

file:line - file:line を開くことができ、適切なプラグインを実行できます。

$ vim foo.c:123 bar.c:456

分割では機能しません-oが、引数リストでファイルの行番号を事前に設定するユースケースでは機能します。

于 2013-03-13T07:59:54.280 に答える