- digit-groups 20160816.1926(in MELPA)
- Highlight place-value positions in numbers
概要
大きい数字を読み上げるのは大変ですよね。
あなたは「1234567890123」をすぐに読み上げられますか?
でも、数字にマーカーがしてあれば簡単に読み上げられるはずです。
1234567890123 ^ ^^^^
先程の数字は「1兆2345億6789万123」です。
digit-groups.el がこのように別フェイスで数字の区切りを示してくれます。
ただ作者は英語圏の人なので、3桁区切りになってしまいます。
本設定では日本人向けに設定を変えておきます。
なお、マイナーモード digit-groups-mode を有効にするための条件として
font-lock-mode が有効になっている必要があります。
プログラミングのモード(prog-mode 系列)なら有効ですが、
text-mode ではあえてfont-lock-modeを有効にする必要があります。
org-mode ではそのままで有効になります。
Fig1: これで大きい数字も楽に読めるね
インストール
パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。
(package-initialize) (setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") ("melpa" . "http://melpa.org/packages/") ("org" . "http://orgmode.org/elpa/")))
初めてdigit-groupsを使う方は
以下のコマンドを実行します。
M-x package-install digit-groups
アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。
M-x package-install package-utils (初めてアップグレードする場合のみ) M-x package-utils-upgrade-by-name digit-groups
なぜ数字を区切ると読みやすくなるのか
http://ipfbiz.com/archives/numeral.html より
桁の大きな数字を記載する時には、3桁ごとにカンマで区切るのがマナーとなっています。
この3桁区切りは、元々欧米の言語文化から来ています。
つまり、英語では、
1(one)、10(ten)、100(handred)、1000(thousand)の後は、1000ごと、つまり3桁ごとに単位が用
意されています。
1,000=thousand
1,000,000=million
1,000,000,000=billion
1,000,000,000,000=trillion
したがって、3桁ごとに数字が区切られていると、大きい数字を読み上げるのが非常に楽になります。
3,000は、3と1,000(thousand)だから「three thousand」
30,000,000は、30と1,000,000(million)だから、「thirty million」
300,000,000,000は、300と1,000,000,000(billion)だから、「three handred billion」
数えやすいでしょ?
掛け算でも、
1,000(thousand)×1,000(thousand)=1,000,000(million)
1,000(thousand)×1,000,000(million)=1,000,000,000(billion)
と分かりすい。
このように3桁ごとの区切りで読み上げるのは、10進法の中でもさらに1,000進法(千進法)となります。
欧米の数字言語に合わせて、読みやすいように3桁ごとにカンマを振るんですね。
同じ理由により、日本語では4桁区切りにすれば読みやすくなるわけです。
無量大数よりもでかい単位があるんですねぇ
http://note.chiebukuro.yahoo.co.jp/detail/n48931 より
一 いち
十 10の1乗 じゅう
百 10の2乗 ひゃく
千 10の3乗 せん
万 10の4乗 まん
億 10の8乗 おく
兆 10の12乗 ちょう
京 10の16乗 けい
垓 10の20乗 がい
・ 10の24乗 じょ
穣 10の28乗 じょう
溝 10の32乗 こう
澗 10の36乗 かん
正 10の40乗 せい
載 10の44乗 さい
極 10の48乗 ごく
恒河沙 10の52乗 ごうがしゃ
阿僧祇 10の56乗 あそうぎ
那由他 10の60乗 なゆた
不可思議 10の64乗 ふかしぎ
無量大数 10の68乗 むりょうたいすう
矜羯羅 10の112乗 びんばら
阿伽羅 10の224乗 こんがら
設定 160819100529.digit-groups.el(以下のコードと同一)
(require 'digit-groups) ;;; わかりやすくするためにアンダーライン表記 ;;; デフォルトはボールド体になるだけ (custom-set-faces '(digit-groups-default-face ((t (:underline t))))) ;;; 日本人向けに4桁区切り (setq digit-groups-groups (--map (cons it 'digit-groups-default-face) (apply 'append (append (--map (list (+ 7 (* 8 it))(+ 6 (* 8 it)) (+ 5 (* 8 it)) (+ 4 (* 8 it))) '(9 8 7 6 5 4 3 2 1 0)))))) ;;; テスト (switch-to-buffer "*digit-groups-test*") (insert " 1234567890123 兆 億 万 ") (font-lock-mode 1) (digit-groups-mode 1)
実行方法
$ wget http://rubikitch.com/f/160819100529.digit-groups.el $ emacs -Q -f package-initialize -l 160819100529.digit-groups.el
本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。