初歩のシェルスクリプトで遊ぶ[ぬかみそフォントの制作サポート(15)]

文字種類管理シェルスクリプトで、文字コードのリストを「1」「0」のリストに変換する

簡易な文字種類を数えるシェルスクリプト『暖簾』について。
昨日は普通のテキストファイルを文字コードのリストに変換するスクリプトについて書いた。今日は文字コードのリストから、「1」「0」のリストに書き換えるスクリプトを組みます。

続きを読む

初歩のシェルスクリプトで遊ぶ[ぬかみそフォントの制作サポート(14)]

簡易な文字種類を数えるシェルスクリプト『暖簾』

何をするスクリプト

  • テキストファイルを突っ込むと、使われている文字の種類をリストにする。
  • 文字の種類ごとに、テキストファイルを比較する。
    • 片方にだけ使われている文字は?
    • 両方に使われている文字は?
    • 異体字を同じ文字だと考えて、片方に使われている漢字と、もう片方に使われている漢字に、共通する漢字は?

たとえば、テキストファイルが2個あって、片方には「味噌」、もう片方には「み噌󠄀」とだけ書かれてたとします。この共通の文字は、「噌󠄀噌」です、と出る。

続きを読む

初歩のシェルスクリプトで遊ぶ[ぬかみそフォントの制作サポート(13)]

IPA mj明朝の漢字を書き出す

MJ文字情報一覧 | 一般社団法人 文字情報技術促進協議会
Creative Commons — 表示 - 継承 2.1 日本 — CC BY-SA 2.1 JP

LibreOfficeで開いて、こんな感じで選択、コピーします。テキストファイルに貼り付け。

U+3005	
U+3006	
U+303B	
U+3400	
U+3401	
U+3402	
	3404_E0101
	3404_E0100
U+3405	
U+3406	
U+340C	
U+2CF1C	
U+3416	

基本的に1行は1文字として、これを文字に書き換えるスクリプトを、簡単に組んでみます。bashで手抜きして。

続きを読む

初歩のシェルスクリプトで遊ぶ[ぬかみそフォントの制作サポート(12)]

シフトJIS文字コードから文字一覧をつくる(作り直し)

beta-reverse.hatenadiary.jp
これの作り直し。

意外と無いっすね。文字が、だーっと並んだだけ、の文字リストって。

続きを読む

初歩のシェルスクリプトで遊ぶ[ぬかみそフォントの制作サポート(11)]

HTMLの数値文字参照を文字に変えたり整えたり

cat character.html | nkf --numchar-input --no-best-fit-chars -x

数値参照を文字に変えるなら、nkfがいいのは分かるのだけれど。

続きを読む

初歩のシェルスクリプトで遊ぶ[ぬかみそフォントの制作サポート(10)]

sortもuniqも効かない文字はけっこうあるような

$ cat 丸数字やローマ数字.txt 
ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ¬¦'"ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ¬¦'"
①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚
①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚
①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚
$ cat 丸数字やローマ数字.txt |grep -o . |uniq
ⅰ

grepして一文字を一行の列にする、まではいけます。でもsortとuniqが、なんかうまくいかないっぽい。
日本語文章でよく使う、可読文字だけ、と限定しても、文字をそのまんま処理するのは難しいっすな。いったん数字に変えるのは必須、か。


フォントの集まり、JIS第一水準とか人名漢字とか。こういうのと自作フォントの作成済み文字とを比較管理したくて、ちょこちょこやってます。
こう、あれだ。テキストデータをスクリプトに突っ込むと、使われてる文字を集計して、資料にまとめて、比較できるようにしたいわけっすよ。
ちょっと作ってみてはいるものの、ネタにしても微妙な気はしてる。表計算ソフトにでも入れるべきで、シェルスクリプトはその、前段階だけで止めといたほうがいいのかなぁ、っつう気はしてるんだけど。
文字を書き込んだテキストファイルを突っ込めば、そのままLibreOfficeのCalcにコピペで貼り付けられるデータにできる、っつうくらいなら出来てるけど、これならまぁ、実用?

初歩のシェルスクリプトで遊ぶ[ぬかみそフォントの制作サポート(9)]

VSつきの文字を抜き出す

$ cat ivstest.txt 
ななかまど
辻󠄀
辻󠄀辻味噌󠄀味噌

$ cat ivstest.txt |./ttedit_20210327_02.sh --html
ななかまど
辻󠄀
辻󠄀辻味噌󠄀味噌

という感じに、異体字セレクタつきのテキストデータを入れると、異体字セレクタだけをHTMLの数値参照に変換したり、異体字セレクタつきの文字だけ抜き出したり、異体字セレクタつきの文字だけ反転表示したり、とできます。
不満の残るスクリプトだけれど、とりあえず無いよりはマシです。

TTEdit/OTEditがデフォルトで作るフォントは、今まで異体字セレクタは使えなかったはず、なんだけれども。OTEditの新しい、文字数の多いやつだと、IVSが使えるみたい。そのへんを扱うための、道具作りです。

続きを読む