[Vim問題] 文字数や単語数を数える簡単なキーバインドは?

文字数や単語数を数える簡単なキーバインドは?

この記事では、Vim / neovim でプラグインを使わずに「文字数や単語数を調べる」ための最も簡単なキーバインドについて、ご紹介します。

[解答] g Ctrl-g

Vimキーバインド:単語を数える

(ノーマルモード)
g Ctrl-g

ファイル(バッファ)全体にいくつ単語があるか、文字数がいくつかあるかわかります。表示される内容は vim / gvim / neovim / iVim など、利用する Vim 環境によってそれぞれ異なります。

count words vim on ubuntu
vim on ubuntu
neovim on ubuntu
neovim on ubuntu
neovim on centos
neovim on centos(日本語)
gvim kaoriya版 on windows
gvim on windows (Kaoriya版)
nvim-qt on windows
neovim-qt on windows

非常に手軽に使えるキーバインドですから、知っているだけで重宝しますね。

(おまけ)Vimコマンド:置換コマンドで数える

置換コマンドを利用して数えることもできます。

:%s/./&/gn              (文字数の場合)
:%s/\i\+/&/gn           (単語数の場合)
:%s/^//n                (行数の場合)

最後に n を付与することで、実際に置換せずに実行できます。

こちらは条件に柔軟性が出てくる一方、覚えにくくて手軽さに欠けるのが難点ですね。

うまく使い分けられると便利です。

このVimコマンドの補足情報

  • 利用頻度[star rate=2]
  • 便利さ[star rate=3]
  • 覚え易さ[star rate=3]

関連するVimヘルプ

Vim のヘルプでは下記のように解説されています。

12.5  単語を数える

ときには、単語数に制限のある文章を書かなければならない場合もあるでしょう。Vim には単語を数えるための機能があります。
ファイル全体の単語数を数えるには、次のコマンドを使います:

        g CTRL-G

“g” の後の空白は入力しないでください。この空白はコマンドを読み易く表記するためのものです。
次のような結果が出力されます:

        列 1 / 0; 行 141 / 157; 単語 748 / 774; バイト 4489 / 4976

これを見れば、何番目の単語 (748) にカーソルがあり、ファイル全体でいくつの単語(774) があるのかがわかります。

ファイルの一部の文章についてのみ単語を数えたい場合は、テキストの先頭に移動して “g CTRL-G” を入力し、テキストの末尾に移動して “g CTRL-G” をもう一度入力し、そ
して、表示された単語の位置を引き算して単語数を求めます…これは頭の体操にはなりますが簡単な方法とは言えませんね。ビジュアルモードを使えば、テキストを選択してから “g CTRL-G” を入力するだけです。次のような結果が表示されます:

        選択 5 / 293 行; 70 / 1884 単語; 359 / 10928 バイト

単語や行などを数える他の方法については count-items を参照してください。

usr_12 – Vim日本語ドキュメント

こちらは、Vim上では下記のコマンドでヘルプを確認できます。

:help usr_12.txt
:help g_CTRL-G
:help word-count
:help byte-count
:help count-items

ヘルプで検索するときは、通常は大文字小文字は識別されませんので、どちらでも構いません。

参考書籍

こちらの書籍が参考になります。

[temp id=3]

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Vim力アップして、そろそろ上級 Vimmer の仲間入りしたいIT系エンジニアの端くれです。読んでくる訪問者の皆様と一緒に、Vim力を上げていくことができる記事が書ければと考えています。