Bashにログインし、viでファイルを開いてから、alt-f2を使用して新しいターミナルを開いたとします。ログイン後、2番目のファイルに移動し、viで開きます。これら2つのファイル間でCnPを実行するにはどうすればよいですか?
wikia.comからこれを見つけました 。私はこのコマンドshift-8-y-yに精通していません。私はvimtutorに従い、仮想モードを使用します。このシーケンスを試しましたが、失敗しました。
そして、レジスターについてこれを読みました。 レジスターを「置く」または貼り付けるためにdouble_quote-pを使用するという言及を見つけましたが、これは別のファイルでは機能しません。 2番目のファイルはレジスタが空であることを報告しました。
または、VIMのドキュメントを読んで、分割画面で複数のファイルを開くことができます。これは解決策のコースかもしれません。頻繁に遭遇するニーズにより、別のbashでナビゲートする必要があります。ファイルを見つけるためのウィンドウ、次に2つの間でコピーしたい。一方、私が想像するのは、同じディレクトリ内のファイルに役立つ分割VIMウィンドウです。
あなたが持っているvimで標準的な一般的な方法でそれを支援なしで行うことはできません。
まず、適切なバージョンがコンパイルされ、ディストリビューションにインストールされていることを確認します。
次に、別々のウィンドウでgvim
を使用するか、vim -o
を使用して複数のファイルを開き、フレーム間で^W^W
を使用して切り替えてからコピーして貼り付けることをお勧めします。
それがあなたのためにうまくいかなかったのも不思議ではありません。コマンドのスペルを間違えています。そうではありません shift-8-y-y。また、そうではありません double_quote-p。コマンドは次のとおりです。
好みに応じてモーションパーツを変更します。もちろん、vim
はXサーバーがそこにあることを知っている必要があります。したがって、Xサーバーがどこにあるか、およびDISPLAY
環境変数などを暗黙的に継承するXセッション内から実行していない場合に使用するサーバー上の表示を明示的に指定する必要があります。 。
GUIなしでマウスのコピーアンドペーストを使用できる「汎用マウス」(gpm)パッケージをインストールすることをお勧めします。
多くのGNU/Linuxディストリビューションに含まれているvi
は、X Window Systemのクリップボードへのインターフェイスなど、Vimの多くの機能なしでコンパイルされたVimの小さなバージョンです。ターミナルモードのvim
プログラムでさえ、Xをサポートせずにビルドされることがよくあります。Xをサポートしないと、vi
とvim
はクリップボードにアクセスできなくなり、次のようになります。プログラムの異なるインスタンス間でコピーして貼り付けることができません。
これに対する1つの解決策は、-v
オプションを使用して、ターミナルモードでgvim
プログラムを実行することです。
$ gvim -v your_file
それを入力したり、入力し忘れたりしないように、毎回、次のエイリアスを〜/ .bashrcファイルに追加できます。
alias vim='gvim -v'
alias vi='gvim -v'
XをサポートするようにコンパイルされたバージョンのVimを使用すると、JdeBPの回答に記載されているコマンドを使用できます。これらのコマンドについては、Vimの内部ユーザーマニュアルおよびリファレンスマニュアルで次のコマンドを実行して読むこともできます。
:help 04.7
:help 09.3
コンソールを使用しているように見えるので(Xウィンドウがないため、他の多くの回答は関係ありません)、1つのvimセッションで複数のファイルを編集するだけで済みます。 :split ...
を試して2つのファイルを一度に編集し、vimのカットバッファを使用してそれらの間でテキストを移動します。
または、gpmを使用して、コンソール間でカットアンドパスすることもできます。
Viについてはわかりませんが、emacsを使用すると、他の端末をemacsclient
でプライマリemacsセッションに接続できます。そうすれば、それらはすべて同じキルリング(およびバッファーなど)を共有するため、キルできます。そしてそれらの間でヤンクします。