vi
エディターの挿入モードで矢印キーを使用しようとすると、次の文字がエディターに挿入されます。
- ため↓、私はBを取得します
- 以下のための↑私を得ます、
- ため←、私はDを取得します
- ため→、私はCを取得
この問題の解決にご協力ください。
vi
エディターの挿入モードで矢印キーを使用しようとすると、次の文字がエディターに挿入されます。
この問題の解決にご協力ください。
回答:
.vimrc
ホームディレクトリにファイルがまだない場合は、これを使用してファイルを作成します。
vim ~/.vimrc
この行をファイルの先頭に追加します。
set nocompatible
ファイルを保存すると、問題が解決するはずです。:)
vi
代わりにを使用する場合vim
は、~/.exrc
ファイル内で同じ設定を行う必要があります。
vimをインストールします ->これで問題が修正されます。
sudo apt-get install vim
YouTubeやWeb全般には、多くの優れたvim / viチュートリアルがあります。あなたの問題については、こちらをご覧ください
その後、通常どおりファイルを開き続けます。
vi desired-file
をvi
クリックするiと、テキストを挿入するコマンドがアクティブになります。
このコマンドを使用すると、ファイルにテキストを挿入できます。
そして、右をクリックすると:
このコマンドを無効にするまで。
でコマンドを無効にするにはvi
:をクリックするだけEsc
で、矢印キーの通常の使用に戻ります:
FYI、ここにいくつかあるvi
コマンドは:
このことからソース。
:x
Return VIを終了し、元の呼び出しで指定されたファイルに変更されたファイルを書き出す、
:wq
Return VIを終了し、元の呼び出しで指定されたファイルに変更されたファイルを書き出す、
:q
Return VI終了(または終了)
:q!
Return のviを終了し、最新の変更はこのVIの呼び出しのために保存されていないにもかかわらず、
↓ 移動カーソルを下に1行
↓ 移動カーソルを1行
← 移動カーソルが1つの文字左に
→ 移動右にカーソルを1つの文字
u
行ったばかりの操作をすべて元に戻します。シンプルなトグルは、あなたがやったことは何でも
.
やり直します
i
挿入されるまで、カーソルの前にテキストをEscヒット
I
挿入されるまで、現在の行の先頭にテキストをEsc打つ
a
追加されるまで、カーソルの後にテキストをEscヒットが
A
追加、現在の行の最後にテキストをするまで、Escヒット
o
オープンし、現在の行の下に新しい行にテキストを配置するまで、Escヒット
O
オープンとEscヒットするまで、現在の行の上の新しい行にテキストを入れます
r
置き換えカーソルの下の単一の文字を(なしEsc必要)
cw
に変更されるまで、カーソル下の文字で始まる、新しいテキストと現在の単語をEscヒットが
x
削除カーソルの下に単一の文字を
Nx
削除し、N個の文字を、カーソルの下の文字で始まる
dw
削除カーソル下の文字で始まる単一の単語を
C
変更(置換)現在のカーソル位置から始めて、Escヒット
D
するまで残りの行を削除するまで、現在の行の文字を
dd
現在の行全体を削除します。現在の行から始まるN 行を
Ndd
削除します。たとえば、5ddは5行を削除し
yy
ます(ヤンク、カット)現在の行をバッファーに
Nyy
コピー(ヤンク、カット)現在の行を含む次のN行をバッファーにコピーしますバッファー内の行を後のテキストに
p
貼り付けます現在の行
0
(ゼロ)移動カーソルは現在の行(カーソルを有するもの)から開始する
$
移動現在の行の末尾にカーソルを
w
移動次の単語の先頭にカーソル
b
移動単語の前の最初に戻ってカーソル
:0
Returnまたは1G
移動ファイルの最初の行にカーソルを
:n
Return、またはnG
移動カーソルを行nに移動する
:$
Returnか、ファイル内の最後の行にカーソルをG
移動します
/string
検索テキストの文字列の出現のために前方
?string
検索テキスト内の文字列の出現のために逆方向
n
動き検索文字列の次の出現に
N
移動逆方向に検索文字列の次の発生に
:help compatible
:「デフォルトでは、このオプションはオンで、Viのデフォルトはオプション。このデフォルトは、Viと同じようにVimを使用したいが、「互換」オプションについても知りたくない(したい)人のために選択されました。」
編集モードで矢印を押したときに文字の印刷を無効にするには、次のようにします
vi $HOME/.exrc
(ファイルが存在しない場合は作成します)、ファイルに行set nocompatible
を追加して保存します。
:version
ロード順の出力(:h .exrc
またはまたは:h init
)を参照してください。誰かがviとvimの両方に設定を適用したいかもしれないし、あるいは習慣の本当の力になるかもしれないと思う。
viエディターには次の3つのモードがあります。
youuがファイルを開くと、デフォルトモードになります。今、あなたは、あなたのテキストの特定の位置に行くだけで、矢印キーまたは使用を使用したい場合はh、j、k、lキー。これはあなたが押されていないときにのみ動作することに注意してくださいi(またはその他の入力モードは次のようにコマンドを入力しa、A、I)。
「B」の理由は、入力モードの矢印キーが矢印キーとして機能しないためである可能性があるため、Escいつでも押すだけでデフォルトモードに移行できます。入力モードのプレスに移行するときiやa、ナビゲートするだけ押しiキーと矢印キーを使用したりh、j、k、をl。
私はまったく同じ問題を抱えていましたが、ローカルマシンだけでなく、citrixレシーバーを介したWin7 VMのslesマシン上のパテを介した接続でも同様でした。Ubuntuの再インストール後にまったく同じ問題が発生した後、ローカルホストとリモートホストの両方が表示されます。
それを見つけた後
$ localectl list-keymaps
Couldn't find any console keymaps.
この奇妙なVIの動作を引き起こします問題を解決するパッケージconsole-dataをインストールしました!
sudo apt-get install console-data
注意:
他の投稿には良い情報がありますが、この動作が発生した理由を説明しようとした投稿はありませんでした。多くの人々は、将来これにつまずくでしょう。また、以前の投稿のいずれかがあなたを助けた可能性が高いため、この質問を解決済みとしてマークできますか?
ここに説明があります:
Viは長い間使用されてきたエディターで、ルーツはUnixシステムに遡ります。これは優れたツールですが、繰り返し使用されており、現在では改善されています。Vimは後で書かれたもので、その繰り返しです。人々は一般にviを「vim-minimal」と呼び、vimはviの「改善された」バージョンです。次のように考えることができます:viがコアであり、vimはそれを拡張します。
おそらくどのように動作を発見したか:
この問題を発見するには、「i」を押して挿入モードに入り、矢印キーを使用して正しい行と編集ポイントをナビゲートしました。これが予期しない文字の問題の原因です。
解決策1または2
1)viのvi someFile
使用中に、まず編集ポイントに移動してから、挿入モードに入ります。
2)最初からvimをvim someFile
使用します。
マニュアル(manページ)を読んだり、ヘルプに-hを使用したりするほどストレスを感じることはできません。シェルのパターンに調整すると、マニュアルページが親友になります。例:man vi
またはman vim
Vimがインストールされていることを確認します。
コンソールウィンドウを開き、次を実行します。
dpkg --list | grep vim
これに似たものが得られたら、vimを使い始めることができます。
~ $ dpkg --list | grep vim
ii vim 2:7.4.052-1ubuntu3 amd64 Vi IMproved - enhanced vi editor
ii vim-common 2:7.4.052-1ubuntu3 amd64 Vi IMproved - Common files
ii vim-runtime 2:7.4.052-1ubuntu3 all Vi IMproved - Runtime files
ii vim-tiny 2:7.4.052-1ubuntu3 amd64 Vi IMproved - enhanced vi editor - compact version
コマンドプロンプトに何も返されない場合、vimはインストールされていません。以下の例を使用してリポジトリを更新し、vimをインストールします。
sudo apt-get update
sudo apt-get install vim
インターネット上で何かを修正する方法を検索するときにのみviまたはvimを使用し、タイプするのを忘れてしまうという偶然vim
に、将来のために修正できる1つの方法があります。注意してください。エイリアスを使用してvimをvimへの参照で上書きすると、まれに将来何を入力しても、その「おっと!」なしでvimを取得できます。瞬間。エイリアスはいつでも削除できます。
を入力しvim .bashrc
ます。aだけで空行に移動し~
(またはalias
グループ化される)、iキーを押して-挿入モードに入ります。別の行に次のように入力します。
alias vi='vim'
を押しEsc
て入力し:wq
ます。次に、ファイルをリロードする必要があります。入力source .bashrc
あなたはこれらの編集は自動的に.bashrcファイルをロードします作られた後に開くその他のシェルを。
与えられた説明はすべて少し奇妙です。viがありますが、vimはインストールされていません。
代替案の確認:/etc/alternatives/vi
→/usr/bin/vim.tiny
そうvi
ですvim.tiny
、そしてそれは使用し/etc/vim/vimrc.tiny
ます。
そして、vimrc.tiny
あなたは次の行を見つけます:
set compatible
これは、このファイルでほとんど唯一のものです。その中/etc/vim/vimrc
で使用していることに注意してくださいnocompatible
。
したがって、vimをインストールするか、vimrc.tiny
ファイルを変更するか~/.vimrc
、次の行を含む独自のファイルを作成します。
set nocompatible
~/.vimrc
と設定nocompatible
:askubuntu.com/a/353944/158442、または3.システムファイルの編集を提案します。編集する提案のみ/etc/vim/vimrc.tiny
が新しく、それでもあなたはそれらと同じことを提案しながら奇妙な答えを呼びます。
従来のviエディターは、矢印キー(... afair)を認識しません。2つの解決策があります。
これもTERM
変数が原因である可能性があります。たとえば次のように設定します。
export TERM=xterm
一部のシステムでは、このnocompatible
オプションは使用できません。または、プラグインが矢印キーの機能を損なうと、問題が解決しない場合があります。これは回避策です...
.exrc
ファイルを編集して、次の行を含めます。
map! ^[OA ^[ka
map! ^[OB ^[ja
map! ^[OC ^[la
map! ^[OD ^[ha
または、問題が通常モードでのみ存在する場合はnmap
、次のように変更してスキップできa
ます。
nmap! ^[OA ^[k
等々。
これらを作成するために必要なキーの組み合わせは次のとおりです(最初の組み合わせのみを示します)。
map! <CTRL-V><Up-Arrow> <CTRL-V><ESC>ka
これにより、編集モードが解除され、目的の方向に移動して、編集モードに戻ります。これは、Viがエスケープシーケンスをリテラル<ESC> <O> <A>などのシーケンスとして読み取るのを克服するために必要です。
VIの場合、ファイル「〜/ .exrc」を作成または編集するか、VIMでファイル「〜/ .vimrc」を作成または編集して、行に設定または追加します。
set nocompatible
この記事の執筆時点で、2番目に多く投票された項目に、なぜエントリが受け入れられなかったのか疑問に思う賞賛があります。その理由は、他のエディターのインストールを許可しないホストが存在するためです。それでもvimには同じ効果がある場合があるため、上位2つのエントリから使用可能な情報がたくさんあります。しかし、これが、どちらも100%正しい場合が100%正しい理由を明らかにすることを願っています。