Ω/CHISE with book class

Izumi MIYAZAKI imiyazaki @ bun.kyoto-u.ac.jp
2004年 1月 16日 (金) 13:53:46 JST


宮崎です。

> utf8jis にするとアクサン付きのラテン文字やキリル文字などが呪われてしま
> うので。(^_^;(呪いが自分に帰って来るというか(^_^;;。この手の『全角』

ではなく、

宮崎さん> > % -*-coding: utf-8-jis -*-

となっていたので、utf-8-jis をお使いだと思ったのですが、utf-8-mcs をお
使いだったのですね。

確かに私もこの呪いには困っていて、早く呪いを解く呪文を教えてもらいたい
と思ってます。でないと、別な呪いのかかった、utf-8-mcs のファイルがどん
どん増えていくことに…

> また、Multifont 環境内で使用するフォントの優先順位の指定において、
> Unicode フォントも指定できると良いような気がします。

これは Cyberbit.ttf のようなフォントも指定できるようにするということで
しょうか?

そのフォントの中にどういう文字が入っているかという情報が CHISE DB の中
にあれば、すぐに使えるように出来ますが、現時点では無理だと思います。
# 何か意味を取り違えているような気もしますが…

> ところで、これは、つまり、UTF-8 の各バイトが1文字と見倣されて、「大文
> 字」に変換されていたということでしょうか。

そのようです。

> そうだとすると、抜本的にはΩの世界で1文字と見倣されるようにしないとい
> けないということでしょうか。

TeX の世界では、\lccode, \uccode を使って、uppercase, lowercase をコン
トロールしています。

ちゃんと試したわけではないので、嘘かもしれませんが、今回の場合、漢字に
は \lccode, \uccode がふられていないので、1バイト毎に分解されてから
uppercase にされてしまったのではないでしょうか。

だとすれば、同様なことを、漢字に対してやればうまくいくような気がします。
Ω付属のパッケージでは、16bit の character に対して、\lccode, \uccode 
をふっているものがありますので。

ただ、pTeX 付属の jbook.cls などでは、今回問題になった \chaptermark の
中で \MakeUppercase を使ってませんし、章名などが日本語であるならば、
jbook.cls 風の \chaptermark, \sectionmark の定義を作るのが、現実的な解
決策だと思います。

あるいは、

\def\MakeUppercase#1{#1}

とすれば、\MakeUppercase 自体を殺してしまうことも出来ます。
Babel のパッケージの中には、\MakeUppercase を再定義して、状況に応じて
\MakeUppercase を殺すようにしているものもあるようです。
--
宮崎 泉 imiyazaki @ bun.kyoto-u.ac.jp




More information about the CHISE-ja mailing list