vimでファイルの最後の文字に移動する方法は?


26

ファイル:

i am someone1.
i am someone2.
i am someone3
~
~

ドキュメントにはG、ファイルの最後が表示されますが、最後の行の先頭にのみ表示されます。ファイルの最後の文字(この場合は3)に来てa、ピリオドを押して入力 できるようにしたい

それ、どうやったら出来るの?


回答:


32

あなたは、入力した場合Aの後にGあなたが最後の行の末尾に挿入モードに入ります。

最後のキャラクターに行きたいだけならG-End十分です


AそれからG私にとっては大丈夫です。しかし、編集したくない場合G-End、唯一のオプションはありますか?これを行うために2つではなく1つのキーがありますか?
Animesh

3
私が知っているわけではありませんが、それは保証ではありません。必要に応じて、いつでも独自のマップを作成できます。
ベルンハルト


5

Ctrl + Endは、通常モードと挿入モードの両方で機能します。 :help <C-End>


これは、カーソルを現在の行の最後の文字に移動するだけです。
sebix

@sebix:いいえ、ヘルプを確認してください。
カートハッチンソン

vim 7.4では動作しません
sebix

@sebix:私にとってはうまく機能し、ヘルプテキストはかなり明確です。組み込みの動作をオーバーライドするマッピングまたはプラグインがあるかもしれません。
カートハッチンソン

0
  • ファイルの最後の行に移動します。 G
  • ファイルの最初の行に移動します。 1G
  • 行末に移動する: $
  • 行の先頭に移動: ^

1
U&Lへようこそ、これは既存の受け入れられた回答にほとんど何も追加しません。
アルケマール

0

ここでの回答のほとんどは、ファイルの最後の行が空白ではないことを前提としています。これが最も一般的なケースです。また、キーボードのENDキーを使用できるかどうかについての仮定もあります。ただし、ENDキーは普遍的に使用できるわけではなく、ファイルの最後に空白行を挿入できます。したがって、ファイルの最後の(行末ではない)文字を見つけるには、すべての場合に以下を活用できます。

G?.

これは、意図した結果を達成できるいくつかの(またはおそらく複数の)コマンドの組み合わせの1つにすぎません。パターンは次のとおりです。

"Set Cursor Position" + "Search Method" + "Pattern"

上記のコマンドシーケンスの場合、ファイルの末尾に移動し、任意の文字(「行末」文字ではない)の逆検索を実行します。


-1

99や999などの大きな数字と$を使用できます。999 $など


これはキーストロークよりも多くG$、確実ではありません。多くのファイルは1000行を超えています。
ワイルドカード

同意しますが、このソリューションにより、任意の行の末尾に配置できる可能性が開かれます。たとえば、行13の末尾に配置できます。13$を実行できます。
フレッドヤン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.