範囲内のラインを数えたいと思いますが、ビジュアルブロックとしましょう。 これを行う最短の方法は何ですか。私の心に来るのは次のようなものです:'<,'>s/.//n
しかし、私はそれが最短の方法だとは思わない。選択した範囲のビンカウントライン
だから、誰かが私にヒントを与えることができますか?前もって感謝します。ビジュアルモードで
範囲内のラインを数えたいと思いますが、ビジュアルブロックとしましょう。 これを行う最短の方法は何ですか。私の心に来るのは次のようなものです:'<,'>s/.//n
しかし、私はそれが最短の方法だとは思わない。選択した範囲のビンカウントライン
だから、誰かが私にヒントを与えることができますか?前もって感謝します。ビジュアルモードで
、プレスグラムC-G
典型的出力:
Selected 7 of 22 Lines; 8 of 32 Words; 201 of 491 Chars; 201 of 497 Bytes-- VISUAL LINE --
ソース::he count-items
(として発見::he
タブタブ ...)
'<,'>s///n
は1つの文字短くなります。 :-)
私は視覚的な選択のライン数を知りたいのであれば、通常はそれをヤンクします(ヒットy
)。選択肢のタイプに応じて、「5行がヤンクされた」または「5行がブロックされた」と表示されます。
私はまたその目的のために通常ヤンクしています。そして今日、私は何か新しいことを学ぶべき時だと突然気づいた))) – shabunc
オプションをshowcmd
(:h 'sc'
)に設定すると、選択するライン数を入力する必要はありません。最初は、このオプションを設定したことを忘れてしまいました。あなたの質問のポイント。 ^^あなたがプログラムでその番号を取得したい場合は
そうでない場合、それは単にです:範囲 - 関数内から
:echo line("'>") - line("'<") + 1
、それはまた、a:lastline-a:firstline+1
によって得ることができます。 (:h function-range-example
)
素晴らしい!このヒントをありがとう、10分が経過するとすぐに、私はこれを答えとしてマークします)しかし、興味深いことに、vimには機能があります。私はかなりの機能があるはずだと確信しています。 – shabunc
@shabunc:「vimに関数がありますか?」とはどういう意味ですか?あなたは何かできることを意味しますか?あなたの質問には言及していませんでした。 –
他の組み込み関数のように機能します( ':h関数';) – shabunc