Closed aminophen closed 7 years ago
ありがとうございます!それは大昔から僕のTODOに入っていました! 感謝しています。 mergeしていいですか?
ちなみに:別のレポを使わなくていいと思います。山下さんは直接texjpのcjk-gsレポにbranchを作った方がいいと思います。
ノルベルト
ぜひ merge してください。
たしかにもう texjp で branch を作ればよかったですね。
そして、自分もmergeしてもいいですよ。texjpの開発者は誰でもコミットできます。僕は気にしません!
mergeしました。ありがとうございます!
マージありがとうございます。
ついでに、今から jfontmaps に最近増えたフリーフォント mobo-moga の database を追加します。Pull request ではなくダイレクトに master に送ってみます。
ありがとうございます。最後にお願い:コメント・indentationをこれまでのスタイルにしてくれたら嬉しいです。indent/commentを変更して、大文字・小文字のコメントも更新しました。よろしくお願いします。
indentation のこと、了解しました。大文字と小文字は、よい方法を考えてみます。
cjk-gs-integrate の database を parse するコードを、全体的に書き直しました。
今までのコードには、以下の問題がありました。
[1] OTC と TTC が区別できない。たとえば、database が以下の内容だとします。
スクリプトを OS X Yosemite で実行すると、コンピュータから「ヒラギノ明朝 ProN W3.otf」と「ipaexm.ttf」が見つかります。この場合、Ryumin-Light の alias は「HiraMinProN-W3」になるので gs は ok です。
しかし、スクリプトを OS X El Capitan で実行すると、コンピュータから「ヒラギノ明朝 ProN W3.ttc」と「ipaexm.ttf」が見つかります。この場合、Ryumin-Light の alias は「HiraginoSerif-W3.ttc」になりますが、gs は OpenType Collection (OTC) を使えないのでよくないです。だから、OTC の場合は alias を決めるときに無視するほうがよいです。
[2] symlink が .ttc → .ttf に張られる場合がある。たとえば、database が下のようになっているとき
コンピュータに YuGothR.ttc だけが見つかると、symlink は yugothic.ttf => YuGothR.ttc になります。このような TTF → TTC の symlink ができるのはよくないです。
この 2 つの問題を解決するために、スクリプトを書き直しました。
[1] database の
Filename:
entry を廃止(backward compatibility のため、database を parse する関数はFilename:
entry を解釈できるように残す)。新しくOTFname:
OTCname:
TTCname:
TTFname:
のどれかを使う。[2] priority number で symlink を決めるとき、TTF / TTC / OTC の名前を別々に save する。複数見つかったら、その中でいちばん小さな priority number の type で決められた symlink の名前を使う。
[3] OTC フォントの場合は、gs の Resource に何も作らない(単にスキップする)。alias を決めるときもスキップする。