作曲・浄書・指導・音響

金沢音楽制作

金沢音楽制作では、楽曲・楽譜の制作と、作曲や写譜などレッスンを行っています。

NeoVimでクリップボードを使う

NeoVimにおける、クリップボードの使い方のメモ。普通にVimとは違い、.init.vim(普通のVimでいう.vimrc)に記述は不要である(と思われる)。また、クリップボードの代替的アプリケーションのxselといったものも不要である。環境:NeoVim、LMDE 4

NVIMからクリップボードへ

ノーマルモード時に、次のコマンドを実行することで、カレント行をクリップボードに渡せる。ヴィジュアルモードで範囲選択をした場合も同じである。

カレント行をコピー

"+yy

shiftキーを押しっぱなしなので、「yy」を「Y」と大文字で入力することも可能である。しかし、カレント行以降をクリップボードに渡したい時は、「y」の間に後に「G」を入力しなければならない。

行末までコピー

"+yGy

行数が分かっている場合、数字を入力するのにshiftキーを一旦外すので、「yy」の方が事故率は低いかもしれない。

複数行をコピー

"+5yy

あるいは、以下でもよい。つまり、好きに使えばよい。

"+y5j

[目次へ]

クリップボードからNVIMへ

クリップボードの内容をNeoVimで使うには、「*」レジスタを利用する。なお、筆者がmacOSで使っているNeoVimは、NVIMからクリップボードの場合でも「*」で問題ない。バージョンの違いかも知れないが未検証である(macOSのNVIMはv0.4.3、LMDE 4はv0.3.4)。

"*p

[目次へ]

exコマンドでペーストを使う

実は、exコマンドでペーストできる。ペーストできるのは、ヤンクされたものと、検索した文字列である。exコマンドでペーストを使うには、Ctrl+rキーを入力し、その後「"」や「*」、「/」を入力する。

:%s/<C-r>"/<C-r>*/

と入力すると、以下のようになる。

:%s/printf/puts/

検索した文字列は「/」でペーストできる。これは、「/」や「?」だけではなく、カーソルがワード上にあるときに「*」を押しても「/」に格納される。ただし、その場合は、「\<printf\>」と<>がついてしまう。

:%s/<C-r>//s<C-r>//
:%s/printf/sprintf/

NeoVimとクリップボードの関係を知るには、もう少し実験が必要そうだ。

[目次へ]

[ノート一覧へ]

  • 公開日:2020-04-06