13.1 count-words-example 函数

单词统计命令可以按行、按段落、按区域或按缓冲区统计。命令的适用范围该如何设计?你可以设计成对整个缓冲区统计单词数。但 Emacs 的传统更强调灵活性——你可能只想统计某一部分而非整个缓冲区。因此更合理的设计是统计指定区域内的单词数。拥有区域统计命令后,如需统计整个缓冲区,只需用 C-x hmark-whole-buffer)全选即可。

显然,单词统计是重复操作:从区域起始位置开始,依次统计第一个、第二个、第三个单词,直到区域末尾。这意味着单词统计非常适合用递归或 while 循环实现。