web-dev-qa-db-ja.com

挿入モードで壊れたLinux vi矢印キー

自宅の挿入モードでは、矢印キーはviでは機能せず、それぞれ改行と大文字(「A」など)を挿入するだけです。それを修正する方法はありますか?

91
josh

これはLinuxとしてタグ付けされているため、vimを使用していると思われます。試してください:

:set nocompatible

(このコマンドを追加して、これで.vimrcを設定することもできます。ホームディレクトリにまだない場合は、新しい.vimrcファイルを作成し、echo $HOMEホームディレクトリパスを確認します。)

102
Brian Agnew

Ubuntuはデフォルトでvim-tiny、vimが持っているすべての機能を備えているわけではありません。

すばやくSudo apt-get install vim誰もが話しているすべてのジューシーな機能を取得します。

69
Han

:set term=builtin_ansi

私のためにそれを修正しました。エスケープモード(ブリープモード)でvimに貼り付けるか、先頭の ":"なしで〜/ .vimrcの最後に追加できます。

34
Alexx Roche

viは挿入モードで矢印キーをサポートしていません。 vimを使用します。 viはvimへのリンクにすぎない場合もありますが、「オリジナル」のviのように動作するように構成されているため、矢印キーが無効になっています。 vimを直接呼び出します。

16
lothar

さらに別のバリエーション:この問題は、.vimrcをいくつか変更した後に現れました。最終的には、協調検索により、通常モードでのESCの巧妙な再マッピングは良いアイデアではないことが明らかになりました。それを削除することで問題が解決しました:

" this is NOT something you want in .vimrc:
" In normal mode, hitting Esc turns off search highlights:
nmap <ESC> :nohl<CR>  " Do NOT add this to .vimrc
8
Stabledog

私のために働いた唯一のものは「:set term = ansi」でした

4
Raz

.vimでgitを使用するように切り替えた後、矢印キーで問題が発生しました。

このレポをインストールしました- https://github.com/sunaku/.vim

1時間掘り下げた後、AutoCloseプラグイン(とにかく気に入らなかった)が矢印キーを壊したことがわかりました。

プラグインのドキュメントでは、set ttimeoutlen = 100を設定する必要がありますが、それは私にとってはうまくいきませんでした! (urxvt + screenまたはurxvt、さらにxtermを使用)

そのため、最後にプラグインを削除しました。

1
errordeveloper

矢印キーでも同じ問題がありましたが、nocpまたはnocompatibleを設定して使用すると、バックスペースが正しく機能しませんでした

何らかの理由でSudo apt-get install vimでvimをインストールしたとき、viには矢印やバックスペースに関する問題はもうありませんでした

1
Night5talker

CygwinでWindows 8.1内でvimを使用しているときに同じ問題が発生しました。

私のために働いた解決策は、Cygwinターミナルで次のコマンドを実行するだけです:

cp vimrc_example.vim ~/.vimrc
0
noufal

「noesckeys」も試してみてください。

0
goner