LoginSignup
12

More than 5 years have passed since last update.

ssh越しのvimにクリップボードからペーストする方法

Last updated at Posted at 2016-03-11

ssh越しのvimに対してクライアントOSのクリップボードから貼り付けしたい。
うっかり普通に貼り付けるとオートインデントが効いてしまっておかしな事になるのでなんとかしたい。

方法1.:set pasteする

自分が今まで行っていた方法。
:set pasteするとオートインデントやキーマッピングが無効になり、入力したテキストがそのまま入力される。

nnoremap <F10> :<C-u>exe "normal" (getline(".")==""?"I":"o")<CR>i<C-o>:set paste<CR>
au InsertLeave * set nopaste

こんなマッピングを作り、F10でインサートモードに入ると同時に:set paste、インサートモードから抜けたときに自動的に:set nopasteするようにしていた。

方法2.:r!cat

:r!cat
<貼り付け>
<Ctrl-dでcatを終了>

自分の.vimrcが入っていない環境ではこれがよさそう。

方法3.exコマンドの:aを使う

:a
<貼り付け>
.<Enterで:aを終了>

しかしこれだとオートインデントやコマンドラインモードのmapやabbrevが効いてしまう模様。残念。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12