コピーして貼り付けるときにもこの現象が発生します。 Goコードを編集し、「package main」と入力またはコピーして貼り付けようとすると、「pkage main」と表示されます。なぜcを入力できないのかわかりません。削除バックスペースキーを押すと、^?が印刷されます。削除キーを押すと、実際に文字が削除されます。再起動してみましたが、この問題を解決する方法がわからず、オンラインで情報が見つかりませんでした。
答え1
考えられる理由1:
どこでもうまく動作し、c問題がVimにのみ影響する場合は、cファイル.vimrc
から。
c一時的にVimでNormal、Command、Normal、およびInsertモードをバックスペースに切り替えました。
:map c ^?
:nmap c ^?
:imap c ^?
(ここでは、を^?
入力した結果を示しますCtrl-VBackspace。)
考えられる理由2:
TTYにc
削除文字があります。つまり、次のコマンドが実行されたのと同じです。
stty erase c
しかし、これは他のプログラムやシェルにも影響します。努力する
stty sane
シェルのTTYパラメータを適切なデフォルト設定にリセットします。これは覚えておくと便利なコマンドです。特定のビジュアライゼーションプログラムが予期せず終了し、TTY設定が不適切なままになる場合に便利です。
答え2
貼り付ける過程で何かが壊れていたようです。
他のエディタに貼り付けるときに動作するか、まったく同じですか?同じであれば、ソースコードが最初からすでに歪んでいる可能性があります。
他の編集者がよく貼り付けた場合は、クリップボードの貼り付けショートカットを試してください。
"+ ++p
他のアプリケーションからコピーするためにマウス選択のみを使用する場合は、次のものを使用する必要があります。
"+ *+p
それでも奇妙なことが見つかったら、次のことを試してください。
:set paste
vimの貼り付けモードに入ります。- 次に、上記の貼り付けショートカットを試してください。
- 何らかの理由で貼り付けモードをオフにしたいとき
:set nopaste
。
答え3
コンソールからコピーして貼り付ける方法は、テキストを1文字ずつ挿入することで、Vimは各文字を何か意味があると解釈します。
Vimを使用するときは、次の場所にいることを確認してください。-埋め込む-コマンドモードではないモードです。コマンドモードでは、「c」は変更を意味します。たとえば、ceを入力すると、Vimは単語の最後まで削除して挿入モードに入ります。
「^」はコマンドを表します。 ^CはCtrl+を意味しますC。これはVimエディタ自体ではなくコンソールです。 Ctrl-(何か)またはEscキーを押すと、次の文字が表示されます。
すべての標準ナビゲーションキー(Home、Delete、PgUp / PgDn、矢印キーなど)は、最新のViにバックアップとして含まれています。 x、d、またはhjklスクロールキーを使用するのが好きではない人や使用しにくい人のためです。