New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
\textXX の定義と \everyparhook の入り方 #66
Comments
|
たしか,\everyparhook で「直後のトークンが開きカッコ類かを判定する」という処理をしている理由が,単に「\inhibitglue がどこまでもリセットされないバグ/仕様」回避だったと思います。現在の pTeX はこの問題がないので,判定を外すとどうなるんでしょう? |
|
段落冒頭が中黒の場合に |
中黒の時はグルーが残った方が良いのでしょうか? いまいち理由がよくわかりません。 |
自分の経験上,(その善し悪しは別にして)段落冒頭が中黒というのは, ・ほげ のような短い語句の簡易的な箇条書きに使われるケースが大半です。このようなケースにおいては,上下の段落の和文文字とグリッド状に並ぶことが期待されており,ここが .25zw だけ左にずれて前後の行とのグリッドが崩れることを嫌うユーザは一定数いそうです。 まあ,本来箇条書きならば itemize なりを使うべきだし, 中黒以外に,全角コロン,全角セミコロンのあたりにも影響しますね。 |
|
そういえば,「JIS メトリック系」には jis{,-v} だけでなく jisn{,-v} というのもあって,両者の違いは 中黒・コロン・セミコロンが「半角幅+前後グルー」か「全角幅」か のようです(ほとんど無名だと思いますが)。 「\textrm などでグルーが消えない」と「中黒を箇条書きに使う人の組版結果が変わる」 のどちらが大きな問題なのかという点に帰着しますが,個人的には前者派です。後者の人が困らないようにするには,「jisn を使うためのオプションを新設する」という代替案がありえます。 |
|
確かに,思い切って |
|
jsclasses の \text 系命令の件,改めて検討したく。 冒頭の @doraTeX さんの報告のとおり,段落頭に \text 系命令を使った場合に
という挙動になっています。これは jsclasses の実装が
となっているためです。ここで,(★)の判定を行っている理由は
であると考えられます。前者の問題は既に修正されていますから,後者が問題です。 さて,私が既にコメントで述べているとおり,「JIS メトリック系」には jis{,-v} だけでなく jisn{,-v} というのもあって,両者の違いは
です。そこで,この jisn{,-v} を活用し,デフォルトの挙動は維持しつつ
という実装案を実行に移してみたいです。なお,課題は
です。いかがでしょうか? |
Twitterで述べた件です。解決は難しそうですが,とりあえずご報告まで。
次のソースを (u)pLaTeX で処理すると,下記のようになります。
jsclassesは
\textmc,\textgtの定義からイタリック補正を外すよう再定義している影響で,\textmc,\textgtについては\everyparhookが「の直前に挿入され,結果的に期待通りの出力となります。ですが,普通の\textXXは実装の先頭で\hmode@bgroup(=\leavevmode\bgroup)が実行されるため,段落先頭が\bgroupだと判断され,それゆえに\everyparhookの挿入位置が「の直前にならず,JFMグルーが消されないようです。The text was updated successfully, but these errors were encountered: