web-dev-qa-db-ja.com

VIで新しい行を開かずに行の先頭に移動する

今の年齢のために私が使ったことがある SHIFTO そして SHIFT$ viの行頭と行末に移動します。

しかしながら SHIFTO カーソルの上に新しい行を開くためのものです。

行の先頭に移動するだけのコマンドはありますか?

197
rix

あなたが使用することができます ^ または  通常モードでは(ゼロ)、行の先頭に移動します。

^ 行の最初の非ブランク文字にカーソルを移動します
 カーソルを常に「最初の列」に移動します

また使用することができます Shifti 移動して挿入モードに切り替えます。

367
Xavier T.

単純な0では、行の先頭に移動します。

詳細については:help 0

24
Fredrik Pihl

これを試してください Vi/Vimチートシート 多くの問題に対する解決策。

通常モードの場合
- 行の先頭、最初の列まで[0]。
$ - 行末まで

19
curiousMonkey

あなたが使用することができます  または ^ 行の先頭に移動します。
そして使うことができます Shift+I 先頭に移動して編集モードに切り替えます(Insert)。

12
a8m

別の方法があります。

|

それが "パイプ"です - バックスペースの下にあるシンボル ANSIレイアウト

Vim quickref(:help quickref)はそれを次のように説明しています。

N      |      to column N (default: 1)

折り返された行はどうですか?

折り返し行を有効にしている場合、0および|を使用しても画面の行の先頭に移動することはできません。その場合は以下を使用してください。

g0

繰り返しますが、vim quickref doc:

 g0   to first character in screen line (differs from "0"
      when lines wrap)
10
Andriy Drozdyuk

"^"を入力してください。そして、良い "Vi"チュートリアルを入手してください:)

7
Skippy Fastol

0(zero)が見つかり、shift + 0がvimで動作します。

5
brian_wang

カーソルを先頭に移動するか、挿入モードで終了します

  • I - カーソルを現在の行の最初の空白以外の文字に移動し、挿入モードを有効にします。
  • A - カーソルを現在の行の最後の文字に移動し、挿入モードを有効にします。

ここでI^ + iと同じです。同様にA$ + iと同等です。

カーソルを最初または最後に移動するだけです

  • ^ - カーソルを現在の行の最初の非空白文字に移動する
  • 0 - カーソルを現在の行の最初の文字に移動する
  • $ - カーソルを現在の行の最後の文字に移動する
2
rashok

 行の先頭に移動します

Shift 行末に移動します

1
Sagar Jain