UP | HOME

使用命令行统计项目中词汇的频率

Table of Contents

1 统计代码词频

最近在设置 emacs 的 prettify-symbols-alist 时需要统计一下出现频率比较高的关 键字。折腾了一下发现下面的命令比较好用,特此记个笔记。

find . -type f -name "*.ts" -exec cat {} + \
  | tr -c '[:alnum:]' '[\n*]' | sed '/^$/d' | \
  sort | uniq -c | sort -nr | head -10

该命令行的典型使用场景是统计 Angular 代码中词汇的频率,见下图:

count-words.gif

另外附上我最终设置的 prettify-symbols-alist

(setq prettify-symbols-alist
  (append prettify-symbols-alist
    '(
       ;; -----------------------------------------------------------------
       ("function" . 402)             ; ƒ
       ("this" . 945)                 ; α
       ("return" . 949)               ; ε
       ;; -----------------------------------------------------------------
       ("!" . 172)                    ; ¬
       ("&&" . 8743)                  ; 
       ("||" . 8744)                  ; 
       ("=>" . 8658)                  ; 
       ("<=" . 8804)                  ; 
       (">=" . 8805)                  ; 
       ("!=" . 8800)                  ; 
       ("===" . 8801)                 ; 
       ("!==" . 8802)                 ; 
       ;; -----------------------------------------------------------------
       )))

2 参考链接

Last Updated 2020-02-22 Sat 20:05. Created by Jinghui Hu at 2018-10-27 Sat 11:04.