使用命令行统计项目中词汇的频率
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 代码中词汇的频率,见下图:
另外附上我最终设置的 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) ; ≢ ;; ----------------------------------------------------------------- )))