1. ホーム
  2. vim

[解決済み] Vimによる行の範囲指定

2023-03-31 10:11:13

質問

私は C# 開発者ですが、最近、利用可能なツールの知識を広げることにしました。 私が最初に学ぶことにしたツールは Vi/Vim です。 これまでのところすべてがうまくいっていますが、答えが見つかりそうにない質問が 2 つあります。

  1. 例えば、ある範囲の線を引っ張り出したいとします。 多くの方法があることは知っていますが、行番号で実行したいと思います。 substituteコマンドと同じように、次のような方法で実行できると思います。 81,91y . このような方法はあるのでしょうか?

  2. について少し混乱しています。 g コマンドについて少し混乱しています。 それは無数のことをするようで、g コマンドがその中核で何をするのか、本当に判断できません。 モーションコマンドなのか、ノーマルモードで実行される他のコマンドのためのキャッチオールなのか、混乱しています。 どなたか、このことについて説明してくださるか、または g コマンドの良い説明をする文献を教えてください。

どのように解決するのですか?

81-91行目を読む

:81,91y<enter>

を探すのが指が苦手な人は、このように :, キーを使用すると、次のようになります (81行目に移動し、11行目を削除)

81gg11yy 

私の唯一の使用法は g5gg . 5行目に行くには 22gg : 22行目です。jimboさんがおっしゃるように、本当に他のいくつかのコマンドのモディファイアに過ぎないのです。

念のため、( http://vim.wikia.com/wiki/Power_of_g ) は、どのように g がコマンドモードでどのように動作するかを説明しています。