17

誰かがこれを手伝ってくれますか:私は(iterm2またはmacターミナルを使用して)異なる端末上のvimの2つの異なるインスタンス間でテキストをコピーして貼り付ける方法を理解しようとしています。「:setmouse = a」を実行すれば、マウスを使用して実行できますが、キーボードを使用して実行できるようにしたいと思います。

グーグルで調べたところ、「*」または「+」レジスタを使用してシステムクリップボードとの間でコピー/貼り付けができるとのことですが、vimで*または+と入力すると、Macはあなたが何かをすることはできません。「:setclipboard = unnamed」も実行しましたが、それも機能しませんでした。

Mac OSX 10.7(Lion)とiTerm2またはMacターミナルを使用しています。

助けてくれてありがとう

4

2 に答える 2

17

の出力を追加していただけます:versionか?

Terminal.app ウィンドウ A で実行されている 1 つの Vim インスタンスと一緒に、yyまたはその中でヤンクし、Terminal.app ウィンドウ B で実行されている別の Vim インスタンスと一緒に、またはその中に配置できます。ypP~/.vimrc

set clipboard+=unnamed

特定のクリップボード レジスタを使用せずに (*または+)。

また、異なるターミナルで 2 つの Vim インスタンスを実行しているのはなぜですか? SSH/ローカル? 1 つが SSH セッションにある場合、2 つのマシン (ローカル/リモート) が同じクリップボードを共有していないため、ヤンク/プットは機能しません。

編集

Vim が適切なフラグでコンパイルされていないのではないかと疑っています。どうやらそうです。

あなたは Mac OS X のデフォルトの Vim を使用しているので、それを再コンパイルしたり、何かをコンパイルしたりする必要はないというのが私の意見です。

代わりに、最新の MacVim ビルドをダウンロードし、MacVim のバンドル内の (CLI) Vim 実行可能ファイルを使用してください。これには、MacVim と同じ機能がすべて備わっています (もちろん、CLI の制約内で)。

エイリアスとカスタム bash 関数を配置するために使用する場所に、次の行を~/.bashrcorまたはに追加します。~/.profile

alias vim='/path/to/MacVim.app/Contents/MacOS/Vim'
于 2011-11-15T10:41:54.390 に答える
0

ファイル全体をターゲットファイルにコピーする場合。

ターゲットファイルをvimで開きます。

カーソルを目的の場所に置き、次のように入力します。

:r /path_to_file/file.ext

これにより、ファイル全体がカーソルのある場所にコピーされます...

于 2013-01-15T22:15:36.987 に答える