スポンサーリンク
複数行にわたるコード(.zshrc)をPuTTYの画面経由でコピーしようと、vim上で右クリックして「ペースト」しました。しかし、最初のコメントアウト以降が、すべてコメントアウトになってしまいます。これは、右クリックペーストが、あくまでキー入力を再現(1文字ずつ送信?)しているだけ(たぶん・だいたい)であって、本当の意味でのペーストではないことと、vimがデフォルトでは#で始まる行をコメントアウトと認識していると、そこで改行したときに、次の行に#を自動挿入してしまうのが原因です。というわけで、~/.vimrcを書いて、この設定を無効化しました。普段から複数行コメントを書くことなんて少ないので。
スポンサーリンク
~/.vimrcの変更
~/.vimrcに次の行を追加して、コメント改行での#自動挿入を無効化しました。
autocmd FileType * setlocal formatoptions-=ro
参考:vimの改行時に自動でコメントが挿入されるのをやめたい - 仙台 Ruby Vim JavaScript 社長
これだけで、vimのinsert mode時に右クリックでペーストしても、自動的にコメントに変換されてしまうことがなくなりました。
:set pasteをする方法
この問題について、もっとスマートな解決策を教えていただけたので、追記します。
@did2memo http://t.co/doSeAlNA7E 今更かもですが、貼り付け前に :set paste しておけば良いだけではないのでしょうか、インデントその他も含めて
— Akihiro Nomura (@sacred_fox) 2014, 7月 25
「:set paste<Enter>」を実行してからINSERT(挿入)モードに入ります。すると、右クリックで上手く貼り付けることができました。
元に戻したいときは「:set nopaste<Enter>」です。
スポンサーリンク
コメント(1)
新しいコメントを投稿
スポンサーリンク
|HOME|
『tmuxを実行しても何も起こらず固まるようになってしまったときの対策メモ』 OLD >>
2019年3月31日(日) 12:03
gcpのブラウザでのssh接続画面で、同じことが起きていたのでとても参考になりました。ありがとうございます。