情報科学屋さんを目指す人のメモ

方法・手順・解説を書き残すブログ。私と同じことを繰り返さずに済むように。

【PuTTY+vim】設定やソースコードをコピペ入力する方法(コメント自動認識対策)

Linux (28) Vim (3)

複数行にわたるコード(.zshrc)をPuTTYの画面経由でコピーしようと、vim上で右クリックして「ペースト」しました。しかし、最初のコメントアウト以降が、すべてコメントアウトになってしまいます。これは、右クリックペーストが、あくまでキー入力を再現(1文字ずつ送信?)しているだけ(たぶん・だいたい)であって、本当の意味でのペーストではないことと、vimがデフォルトでは#で始まる行をコメントアウトと認識していると、そこで改行したときに、次の行に#を自動挿入してしまうのが原因です。というわけで、~/.vimrcを書いて、この設定を無効化しました。普段から複数行コメントを書くことなんて少ないので。

~/.vimrcの変更

~/.vimrcに次の行を追加して、コメント改行での#自動挿入を無効化しました。

autocmd FileType * setlocal formatoptions-=ro

参考:vimの改行時に自動でコメントが挿入されるのをやめたい - 仙台 Ruby Vim JavaScript 社長

これだけで、vimのinsert mode時に右クリックでペーストしても、自動的にコメントに変換されてしまうことがなくなりました。

:set pasteをする方法

この問題について、もっとスマートな解決策を教えていただけたので、追記します。

「:set paste<Enter>」を実行してからINSERT(挿入)モードに入ります。すると、右クリックで上手く貼り付けることができました。

元に戻したいときは「:set nopaste<Enter>」です。

コメント(1)

  1. tarako
    2019年3月31日(日) 12:03

    gcpのブラウザでのssh接続画面で、同じことが起きていたのでとても参考になりました。ありがとうございます。

新しいコメントを投稿




  • カテゴリ ナビ
  • 著者紹介

    ブログが趣味で、スマホアプリの利用中に発生するトラブルや不具合の対策手順や障害情報、 設定の変更方法などについて、解説記事をよく書いています。

    自分が困ったことをブログに書けば、次に困る人の参考になって、みんながみんな同じ苦労をせずに済む、というのが原点です。

    最近の関心は、スマホやパソコンが苦手な人の行動や思考、そしてそんな人を手助けする方法です。

    RSS | Facebook | Twitter | About