タグ付けされた質問 「cursor-movement」

カーソルをバッファ内の別の場所に移動します。





6
改行以外の行全体を削除できますか?
私は強迫観念で、ファイルに空白を入れないようにするので、vimで私にとってかなり一般的な操作は、行自体ではなく行全体の内容を削除することです(つまり、改行ではありません)。 これを行うための組み込みのvim方法はありますか?おそらくd<movement command>手術? これまでのところ、私が持っている最高のものは(問題の行で)0d$です。もっと速い方法はありますか?

3
なぜci "が引用された領域の外にあり、ci(が括弧内でのみ機能するのでしょうか?
ci"カーソルを使用する場合、二重引用符で囲まれた領域に存在する必要はありません。 |String somestring = "some text"; パイプがカーソル位置であるci"と仮定すると、引用された領域にジャンプします。 一方、を使用するci(場合、カーソルは括弧内にある必要があり、括弧内でカーソルを移動しません。 この動作の違いの理由は何ですか?この動作が存在するようにキーをマップする方法があると思います。これを行うことに欠点はありますか?

8
空白以外の文字に到達するまで垂直に移動するにはどうすればよいですか?
(正確に)インデントされたコードを持つ非常に長いファイルでは、インデントを区切るカーソルの上下のテキスト行に直接移動すると役立つ場合があります。 (これを行う1つの方法は、インデントfoldメソッドを使用することです。現在のインデントレベルを折り畳むことにより、インデントレベルを区切る行をカーソルからjまたはそれ以外にk折り畳みます。興味のあるインデントで作業することができました。) 下の例では、カーソルがアンダースコア_(との定義の間の2番目の文字列)でマークされていますが、s 内の段落または行の数が不明または可変であるclass Bazzとclass Qux想像してくださいmodule。 module Foo # lots of code... end module Bar class Baz # ... end class Bazz # lots of code... end _ class Qux # ... end class Quux # lots of code... end end ... カーソルoのmodule Bar上の行、または最後の行のカーソルnのend下の行にすばやく移動するにはどうすればよいですか?垂直列には空白が含まれていますが、class定義間の2番目の列には文字が含まれていないことに注意してください。


3
vimで矢印キーを無効にする方法は?
ホーム行にとどまるために、矢印キーを使用するよりもhjklを使用して自分自身を教えたいです。はい、メインナビゲーションキーとしてhjklを使用しないでください。しかし、私の習慣は非常に強く、それが矢印キーへの手の動きを引き起こしたことに気づいてさえいないので、それを学ぼうと思います。 その習慣を打破するには:どうすればhjklまたは他のナビゲーション方法を使用せざるを得ないように矢印キーを無効にできますか? ボーナスとして、それがDont't use this!必須ではないというメッセージがまだ表示されている場合に役立ちます。それらが機能しない場合、それは私が私の習慣を再考するのに十分混乱させるでしょう。

5
現在の内部ブロックの右端まで削除します
次のようなコードがあるとしましょう(|カーソル位置を表します): func1(x|, func2(), y); 取得したい: func1(x|); カーソルの位置から現在の内部ブロックの右端の前の位置までのコードを削除する方法はありますか? 私は私が一緒に行くことができることを知っていますdt).が、私はそれを何と混ぜる方法があるのだろうかと思いdi)ます。

2
行番号を使用して、カーソルがある場所に行をコピーするにはどうすればよいですか?
多くの場合、私はこれに似た状況にいます: 1. <Line 1> 2. <Line 2> 3. <Line 3> 4. <Cursor is here> 5. <I want to copy line 1 here> 簡単な解決策はmm:1<CR>yy`mp、4行目でマークを作成し、1行目に移動し、それをコピーし、マークに戻って貼り付けます。 これにより短い/より流動的な解決策はありますか?これを頻繁に行うので、マッピングを作成できてうれしいです。



4
テキスト内の非常に長い行(500文字以上)を処理するにはどうすればよいですか?
一部のテキスト形式では、改行が重要です。 たとえば、私はしばしばVimを使用してMediaWikiドキュメントを記述しますが、そこではどこにも改行を入れることができません(Markdownとは異なります)。だから私はたくさんの文字で行を書くことを余儀なくされています。 これは、長い行(200文字以上)または非常に長い行(1000文字以上)につながる可能性があります。Vimでこれを使用するのは非常に厄介です。一例として、1000文字行の途中で何かを編集する場合、カーソルを500回移動する必要があります。 これはwまたは/で少し速くすることができますが、それでも厄介です。 これに対処するより良い方法はありますか?より良い移動キー?ある種の「偽のラッピング」(テキストはあたかもファイルのように振る舞うtw=80が\n、ファイル内ではない)、または何か他のもの?

1
次の「段落」にジャンプするにはどうすればよいですか?
現在、私は1000行以上の長さのテキストのいくつかのブロックで作業しています。次の段落の最初に移動する簡単な方法はありますか? 今のところ私の回避策は、2つの連続した改行文字を検索することです。 /\n\n 別の回避策は vip Esc j vip v常にパラグラフi n pを選択します(パラグラフの最後まで移動します) Esc 視覚的な選択からの脱出 j 下に移動

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.