2016年8月7日

JLREQを目指すクラスファイル?のJFMをいじっている.とりあえずversion 2にした.そして全ての文字クラス間のグルーを設定した.これにより,kanjiskipやxkanjiskipは全て無視されてしまうはず.というか,kanjiskipやxkanjiskipの意義がよくわかっていない.文字送りに使える,というのを無視すると,基本的にはJFMの簡易化のためなんだと思っているのだが…….ちなみにjcharbddを欧文文字と見なして使っている……ちと違うからまずいかも.もう少し考える.

段落行頭の開き括弧前の空白を制御できるようにしてみた.といっても'parbdd'クラス(段落行頭を表す文字クラス)と開き括弧とのグルーを入れ替えるだけだけど.JFMが単なるLuaスクリプトであることをいいことに,Lua変数jlreq.open_bracket_posをみて変更するようにした.JFMをたくさん作っておく必要がなくなる.段落開始の開き括弧が全角二分下がりの時は,折り返し行頭も二分下げる必要がある.その場合は開き括弧の幅を半角から全角にするようにした.もちろんその分JFMグルーを減らすことにしている.JLREQによると,この組み方は「行頭の括弧類の字幅について空き量を含めて全角とする処理方法」なので,まぁ道理に適っているはず.

ぶら下げ組もできるようにした.単にend_adjustに-0.5とか入れればいいだけだろう……と思っていたのだけど,実際には漢字間グルーが伸びて改行位置が補正されてしまってぶら下がらないようだ.というわけで,句読点の幅を0とし,代わりにグルーを二分増やすとしていた.\inhibitglueとかするとやばい…….end_adjustが改行位置決定前に考慮されればよくなるはず.

(LuaTeX-jaが強力なおかげで)結構実装できる感じ.以下は実装できていない.(とりあえず思いつくものだけ.)

  • 3.1.3.とりあえず手で\inhibitglueすればいいだけど,ぶら下げ組みを有効にしていると大変なことに…….
  • 3.1.9.行末の中点については,前後を「同時に」ベタにすることが許されるのだが,後ろだけがベタになってしまう.

0 件のコメント:

コメントを投稿

コメントの追加にはサードパーティーCookieの許可が必要です