モードを切り替えるときにvimユーザーはどのように入力/編集しますか?

Aug 23 2020

コマンドの学習や導入についてではなく、モードを切り替えたり、通常の既知のコマンドを使用して作業する方法について説明しています。ほとんどのvimユーザーは挿入モードではなく通常モードにとどまりますか?通常モードでvimをこれ以上使用することは不可能だと思います。置換モードとは別に、挿入モードにならずに誰でも入力するにはどうすればよいですか?

シナリオ例:Webブラウザーからvimに段落をコピーすることがあります。その後、段落から箇条書きに編集します。

段落から作成したポイントを優先順位に従って並べ替えます。私は、ポイントについての私自身の発言のいくつかを追加することさえします。

さて、どうすればそのようなことに通常モードを使用できますか?私はvimに比較的慣れていないので、dまたはddコマンドを使用して行を移動するために強調表示したい場合を除いて、ほとんどの場合挿入モードで行います。

段落をポイントラインに分割する場合は、挿入モードを使用します(を押すだけです<enter>)。どうすればよいの<CR><enter>、通常モードで行うのか疑問に思っているので、を実行するためだけに挿入モードに切り替える必要はありません<enter>

また、挿入モードでコメントを入力します。

回答

4 PaperclipBob Aug 24 2020 at 04:15

私は今週末、たまたま自分自身にkdenlive(ビデオエディター)を教えています。私の最初のプロジェクトの主題を必要として、私はあなたが言及したことのいくつかを示すビデオを作成しました。

特に、私がビデオで実行するタスクは...

  1. クリップボードからvimにいくつかのIpsumLorem文を貼り付けます
  2. 最初の文の終了ピリオド( '。')を見つけて、2つの改行を追加します(最初の文は他の文から分離されています)
  3. 後続の各文の最後に進み、繰り返し-最後の編集を実行します(現在、すべての文は独自の段落です)
  4. 各文の破線を1つの長い行に結合します。
  5. ドキュメントのテキスト幅を64文字に設定します
  6. 64文字の制限内に収まるように各文を再フォーマットします
  7. 各文をインデントします(複数行のインデント)
  8. 各文の前に箇条書きを追加します

これらの操作を実行するために押したキーストロークを記録します。また、通常、視覚、コマンド、挿入の各モードで費やした時間を大まかに測定し、ビデオの最後に結果を公開しました(ここでは、2分、15秒、7秒5秒-すべての数値は概算です!)

これが私のkdenliveプロジェクトで、YouTubeに新たに投稿されました...

箇条書きを作成する簡単なvimデモ

2 AivarPaalberg Aug 23 2020 at 12:23

私はこの特定の「方法」に対処しようとしています:「段落をポイントラインに分割する」

ブレークを発生させたい空白に移動し、Enterに置き換えます。

r<Enter>

通常モードのままになります。

2 D.BenKnoble Aug 24 2020 at 00:35

ほとんどのvimユーザーは挿入モードではなく通常モードにとどまりますか?通常モードでvimをこれ以上使用することは不可能だと思います。置換モードとは別に、挿入モードにならずに誰でも入力するにはどうすればよいですか?

「ほとんどのvimユーザー」についてはわかりませんが、投稿全体をほとんど通常モードで編集しました。私はこの答えをvimで入力し、挿入モードでテキストを追加しますが、通常モードでは編集します(大文字と小文字の変更~、段落のリフロー、visual-blockまたはコマンドによるブロックgqクォートの挿入など)。>:substitute

シナリオ例:Webブラウザーからvimに段落をコピーすることがあります。その後、段落から箇条書きに編集します。

それは私がしたことに近いので、私が使用したいくつかのことについて言及します:

  • で検索するの/は最速のナビゲーションツールの1つです
  • しかし、一列に並んでいてf、友達も非常に速いことがあります
  • 私はあなたの言葉に次のようなバックティックを追加しなければなり<enter>ませんでした:私はsurround.vimと呼ばれるプラグインを使用してそれをしました、それで私は押しました:
ysa>`

しかし、私もできたはずです

:%substitute/<[^>]*>/`&`/g
  • 再配置ポイントに、私は文章ナビゲーションとテキストオブジェクト(使用(して)isとのas)だけでなく、)hrEnter他の回答のように

段落から作成したポイントを優先順位に従って並べ替えます。私は、ポイントについての私自身の発言のいくつかを追加することさえします。

挿入モードで入力する必要があります。それはほとんど与えられたものです。しかし、ポイントを再配置するddp:move、かなりいいです。(ポイントが複数行の場合は、d2jまたはが必要になる場合がありますdap。)

多くの場合、通常モードはビジュアルモードよりも高速であり、削除(バックスペースを保持する必要がない)、単語の検索(検索)、または変更(cヒットし続ける場合に役立ちます)の挿入モードよりも確かに高速ですd<...>i。基本的な通常モードのコマンドを学ぶ必要があるかもしれません。そこにそんなに以上だhjklvd

または、モーダル編集が適しているとは限りません。それはすべての人のためではありません。