量子力学の演算子の話
量子力学の講義や演習で、演算子が波動函数に直接作用しているように書かれていることがよくあった。
という具合。
こういうのが出るたびによくわからない気持ちになっていた。
波動函数というのは
で定義される「数」であり、物理量(一次演算子)の作用する先の「状態」ではないからだ。
今日ようやく謎が解けた。どうもあの表記法は
で定義される量を指しているらしい。
言われてしまえば非常に簡単な話なのだが、量子力学の非可換性に囚われて
などと訳のわからないことを考えていた。
要するに、状態を座標による基底で表示したものが波動函数であるから、「一次演算子を状態に作用させたあとに座標による基底で表示する」ということを暗黙に行っていたらしい。
それにより記号の順序が逆になるというただそれだけのことであった。
講義ではふだんあまりブラケット形式を使わずに波動函数での表記を用いているが、調和振動子の問題を扱う場合などにたまにブラケット形式で表記される。
そういう問題で途中までブラケット形式で、途中で波動函数での表記に変わるようなことがあり、そのたびによくわからないという思いを抱いていた。
そういうとき、ブラケットを機械的に波動函数に置き換えてしまえば何故かうまくいくのだけれど、何故そうして良いのかが全く分かっていなかった。
それで、ブラケット形式で表記される一般の量子力学と波動力学との間に壁を感じ、「量子力学がよくわからない」という気持ちを増大させていた。
気付いてしまえば非常に簡単な記号の濫用の問題であったのだけれど、気付くまでに随分と時間がかかった。
「よくわからない」という漠然な気持ちを抱いた時に、きちんとその理由を突き止めようとするべきであったのだろう。
もしかすると同じことで悩んでいる方がいらっしゃるかもしれないので、ブログに書いた次第。
<11/6追記>
各所からご教示を頂いたので追記しておきます。
- 「記号の濫用」などと上では書いたが、と見ればよいだけ。左辺のような表記は単に括弧の省略が行われているだけであるといえる。
- これがとても納得できる説明だった。パースがうまくできていなかっただけ……
- 演算子も座標表示して と見れば、順序は自然。
ありがとうございます。
『クロックワーク・プラネットI』を読んだ
『クロックワーク・プラネット』原作小説をこの前ようやく見つけ*1、その第一巻を読み終えた。
素晴らしかった。私はアニメから入った口なので(恐らく)三巻までのストーリーは知っている訳だけれど、それでも泣けた。圧倒された。
あらすじは公式サイトを参照。
要するに、二人の「天才」――異常に良い耳をもつ高校生の少年と才気に満ちた時計技師の少女――を主人公とした物語である。
歯車仕掛けの設定が格好いいというのもあるのだけれど*2、この天才たちの戦いを描き方が良い。天才たちが自分の理想を貫くために、一筋縄にはいかない世界と正面から戦うのだ。
※以下ネタバレ成分が強めです。
この物語は徐々に「凡人と天才の戦い」というテーマが表に出てくる……というのはアニメ版からの知識なのだが、第一巻の時点でもそういう伏線は張られていた。マリーさんが軍に対して「邪魔だからド素人は引っ込んでろ」と言うくだりである。能力がない者は何もできない。だからマリーさんの言うことは正論ではある。だが、何もできないから恐ろしいのだ、とハルターが心の中で語っている。
羨望、嫉妬、憎悪……「ルサンチマン」という語の俗化した意味のものの力は恐ろしい。これによってマリーは苦しめられる。
平凡な人間の多い社会というものは、そういったものとうまく折り合いをつけながら回っている。たとえ天才だからと言って正論だけではいけない。相手を適宜思いやって、相手の顔を立てて、理想そのものが実現できないとしても適当に妥協することで満足する。これが大人の解決策である。
この小説は、これを否定する。
天才は妥協せず自らの力の全部を以て信念を貫き夢を実現せよ。苦悩の末マリーが至るのは、そういった、ある種子供じみた結論である。
マリーは子供じみたと自覚しつつも、子供だからいいじゃないかというのである。
私がアニメを全話見て抱いた感想は、「面白かったけれど、ものすごいテロリズム礼賛アニメだ……」というものだったのだけれど、原作小説は一巻の時点でそれをずばり語っていて笑ってしまった。
首をかしげたナオトに、マリーはにやりとして、
「理想を追求するのに最も都合のいい立場って何だかわかる?」
ナオトは首を振る。
「いいや」
「それはね――テロリストよ」
にっこりと危険な笑顔で、マリーは言った。
現状維持的で薄汚い社会に抗って理想を具現化しようとするならば、着く果てがテロリストなのは妥当なのだけれど、ここまで断言してくれると清々しいものである。
これを是としてしまうのは、私が子供っぽいからなのだろうか。
何はともあれ、天才たちが困難を打破する姿は格好いいし、熱くなるのである。それで十分かもしれない。
あとリューズさんマジリューズ。うん。
頷くシーン最高。作者たちが「萌え」というものを生み出す魔術師に思える。
リューズの口上もいちいちとても良い。
媒体の問題でアニメにはなかった登場人物の背景とか心理の描写が小説にはあるので、キャラの見方を結構変えてくれた。そういう意味で、アニメを見た方にもおすすめ。若干手に入りづらい嫌いがあるが……*3
――感動をうまく伝えられなくてもどかしいけれど、久々に熱中して読める面白いラノベに巡り合えたな、という話でした。
情報と物体
先日(土曜日)、メロンブックスで好きな同人サークルのCDを手に入れてきました。
そしてPCに取り込んで聴こうとしたのがつい先ほどなのですが、そこで「あれ???」と。
曲名入力をコピペで楽しようと公式サイトを見に行ったのですが、過去の作品一覧ページに記載がない。
3度くらい上から下まで見直しても、反転したりしてもでてこないのです。
――完全によくわからなくなって、名前でググってみると少しだけ情報がでてきて、「なるほど」となりました。
……この高度情報化社会では、物よりも先に情報があることが普通です。たいていは物を買う前にインターネットでその詳細を調べますし、新刊本が出るときは数か月前に予告がなされるでしょう。
今回はそれが逆転していました。お店で物を見て、そこで存在と名前を知って、それから初めて情報を得ることができる。
(もちろん注意深く2chのスレなんかを追っていれば先に情報を得られていたかもしれないわけですが、そういうことをあまりしない私のような者は公式サイトから存在の情報を隠されるとどうしようもないわけです)
こういう経験は奇妙で刺激的で、「なるほど」となったときのカタルシスは素晴らしく、あぁ、良いなぁ、と。
――以上です。
メモツールについて
私は結構長い間 FitzNote というメモツールを使っています。素晴らしいソフトなのですが、乗り換えたい気もずっとしていて、どうしようかという思いがあるのでそれをちょっとここに書いておきます。
FitzNoteの良い所
なにより手軽に書けるのが素晴らしいんですよね。
PCでメモを取ろうとすると、主に面倒くさいのはファイル名をつけてどこか適当な場所に保存しないといけないことなんです。
「これは保存すべき情報なのかな」「これはこういうカテゴリの情報だからこういうフォルダに入れておくべきかな」といった思考を、ちょっとしたメモのたびに考えるのはとても面倒です。
その点FitzNoteはすごく楽です。
デスクトップに「雑記.ftz」のようなファイルをおいておけば、ダブルクリックで一瞬でFitzNoteのソフトが立ち上がり、画面に出るのは前回開いた場所で。
新しいノードはワンクリックでつくれて、ノードを作るとノード名入力待ちになるので適当に名前を入れるかそのままエンターキーを押すとメモ入力が始められる。
あとは思いつくままにテキストを羅列していくだけ。
ここまでになにも頭を使う必要がないのです。
更に、FitzNoteはアウトラインエディタと呼ばれるタイプのエディタですから、階層的なデータ構造をつくるのが得意です。書きなぐったアイデアを階層的に整理していってまとめるという作業がストレスなく直感的にできるわけです。
また、一覧性があるのも大事なことで、FitzNoteにはツリービューがあり、これを常時表示しておくことでいつでもワンクリックでメモを探しに行くことができます。
重要な情報もそうでもない情報も、階層構造で整理して一元管理。 情報はここにあります。
という謳い文句が公式サイトにありますが、まさにその通りで、だいたいここにメモをつっこんであるので情報を探す手間がとても少ないのです。
PC内のどこか埋もれたファイルを検索するのとは違い、全文検索ができて結果もすぐに出るのも素晴らしいです。
なお、FitzNoteには進捗管理ソフトの面もありますが、私は基本的にメモツールとしてしか使っていないのでそっちの面についてはよくわかりません*1。
乗り換えたい理由
こんなにべた褒めすると、じゃあなんで乗り換えたいんだ、一生使っておけばいいじゃないかという話になりそうなのですが、やっぱりFitzNoteにも少し問題があります。
問題の第一は(というよりほぼすべてなのですが)、古いことです。最終更新は実に1999年、今から18年前です。これが未だに動いていることについてはWindowsの後方互換性を讃えるべきですし、そもそも私がこのソフトを使い始めたのは確か古くなって無償化されたと聞いて興味を持ちダウンロードしてみたからだったはずなので、古いということに文句を言える立場ではないのですが、やはり現実問題として古くて今後アップデートされる見込みがないのは厳しい所です。
OSのアップデートでいつ動かなくなるかわからないので、綱渡りを続けるような状況になってきます。OSSではないので自分で修正することもできません。
第二はUnicodeに対応していないことですね。これも古いからで片付きそうですが。
第三には、情報が集中しすぎていてすこし怖いということです。1つのバイナリファイルに全部のデータが入っているので、これが壊れたら終わりだなぁと。たまに思い出したときにバックアップを取っていますが。
あとはクラウド共有あたりの問題でしょうか。今はftzファイルをOnedriveにおいていて別のPCからも編集できるようにしているのですが、これも1つのバイナリだという事情から衝突したときは手作業でマージするしかなくなります。
……このあたりでしょうか。
乗り換え先の候補
そもそもアウトラインエディタというジャンルのソフトウェア自体が下火なようで……
いくつか試してみたのですが、あんまりしっくりくるものがなかった記憶があります(それこそメモしてなかったので記憶が薄い)。
emacsのorg-modeとかいうのもよさそうだなと思った記憶があるのですが、気づいたらvimしか使えなくなっていました。
プレーンテキストですから、サーバーにテキストを置いておいて一日に一回くらいcronでgitを叩くみたいな運用ができそうなのはよさそうなのですが*2。
「♪エンジニアーはみんなー 不思議な力をもってるのー ソースコード、書くだけで、どんなアプリでも、うみだせるー」と歌いながら*3、シンタックスハイライト機能をつけてその場で実行できるようにするとか、TRONの実身・仮身を参考にファイルを分けて参照するような構造とかを考えて、便利なものを自分で書こうとしたこともあったのですが、結局投げ出してしまいました。
とりあえずツリーで選んだやつのデータを右に出すところまでできた。 pic.twitter.com/LDczm7y51R
— すずしめ (@suzusime) 2015年3月23日
これが最初のころで、大学入学する前なので2年くらい経っているわけです。あの頃はデリゲートなにそれわからんといいながらC++しか知らないまま雑にC#をかいてWPFに殺されていたのですが、いつになってもWPFの気持ちがわかることはなく(というか資料が少ない)、途中でこの実装はやばいと気づいてコードを破棄し、そのままといったところです。
だいたいはGUIのつくりかたが分からなすぎるというところに帰着します。
あとは無駄にUnicodeに完全対応したい、いい感じに文字をレンダリングしたいからFreetypeを直に叩くか、などなどと余計なことを考えていって要求が肥大化していったのも問題だったのでしょう。
あまりIT系のひとの言葉を引用するのは好きじゃないのですが、ネットでよく見る「完璧を目指すよりまず終わらせろ」というFacebook創業者の発言は正しいと思いますね。
うーん。締まりのないお気持ち表明でした。(やっぱりつくりたい)
*1:最近までスケジュール管理というものをほとんどしておらず(基本的に覚えられる範囲にしか予定を入れていなかった)、さすがにまずいかという気持ちになって最近スマホを手に入れたのを契機にgoogleカレンダーを使い始めましたが、これは予定を入れるのが楽しくなっていいですね。なにが楽しいかって、場所を入れるとそこの画像が取得されて予定表の 背景にその画像がでてくることです。完全におまけ的な機能なのですが、これがとても魅力的に思えます。
*2:gitの使い方として最悪っぽい気もする。
名前
「だって名前を断ち切る蜻蛉切でしょう? 私、ジョセフィーヌとかスザンヌとか、いろいろと通り名作ってるから。そっちのほうが軽いし。刃って、切りやすい方に滑るわよね」
「――ま、待て!」
二代が叫んだ。
「蜻蛉切は、通り名だろうと、機体称呼だろうと、威力が減衰するが断ち切れるはず!」
「あら、そういうものなの? じゃあ、残念ね。今までその槍が切ってきた通り名とかその他いろいろは、――それを使ってるやつらが、自分自身だと信じてたものなのね、きっと」
「お主は、己の通り名を、一体何だと……」
「ファッションよ。衣服と同じ。だから、――服と一緒に切れたのはそちら」
――ここに引いた賢姉様の台詞、初見では「そんなのありかよ」と思っていましたね。さすがにご都合主義に過ぎるのではないかと。まあ私はひとえにご都合主義が嫌いという訳でもないので、それはそれでいいのですが、それはそれとして、名前について考えるとこの一節はなかなか当を得ているなと思えてきたので引いたという次第です。
私もインターネットの上でいくつかの「名前」を持っています*1。(世間をみれば今時の中高生や逆に上の方の世代の方々、及び海外の人々は得てして実名インターネットをする傾向にあるらしく*2、インターネットに実名を晒すことに極めて強い抵抗を感じるのは2chなどを見て育ってきた我々の世代特有のものなのかもしれないな、などと思うこともあるわけですが、ともかく、)実名でない名前、ハンドルネームを考えてはそういう人格を作り、そういった人間として活動していくわけです。名前が人格を生むのであり、名前の数だけ人格をつくれてしまうのです。
別にこれはインターネットの中だけに限られた話ではなく、また個人の名義に限られたの話でもありません。
「同人」の世界を知り初めた昔(中学生の頃)、どうもサークルというものを単位としてやっているらしいということを理解したのですが、東方Projectの上海アリス幻樂団が一人のサークルだと知ってびっくりした記憶があります。
「サークル」という言葉は広く使われていますが、学校の「部活動」以外を知らない身にはいったいどういうものを指しているのかよくわからなかったのです。
……一人でサークル、これ如何に。
いざ大学生になってみると、「なんだ、そういうものか」となりました。サークルは、いわば概念でした。サークルは、サークルを立てると宣言した瞬間に誕生するのです。
私が一回生の頃、よくTwitter上で「#京都大学ポテトサラダ同好会」なるハッシュタグをつけて学食のポテトサラダの写真をアップロードする遊びが行われていたのですが、それも一種の同好会なわけで、なるほどなとなりました。「我々はサークルをつくるサークルです。私は〇〇個のサークルを作りました。うち△△個は私一人だけのサークルです」といった張り紙をみたこともあります。どこまで本気かわからない政治的な主張のビラは、たいていの場合そのとき初めて見るような同好会の名前で出されます。
要するに、サークルというのは名義だったのです。
ハンドルネームと違うのは、暗黙裡に一人であるかどうかはわからない人間の集合であることを示しているということだけです*3。
同じサークルの名義でなにかが行われるとき、それは関連性、連続性をもつものと解されることを意図しているのでしょう。
メンバーが同じでも別の目的があれば別の名前のサークルを名乗り、人が違っても連続性をもたせたいならば同じサークルの名義を名乗る、そういったものなのです。
人は、縁――或いは絆――に縛られるものです。連続性をもたらす「名前」というものは、絆そのものでしょう。
「名誉」は同じ名前を使い続けることでしか得ることはできません。
しかし一方で、その名前には望まないしがらみや、捨てたい過去も載っていくのです。
ハンドルネームやサークルの名義を用いることの素晴らしさは、こういったことを自由にコントロールできることです。
本名を用いて、変えられない顔を用いる現実世界では、望む望まないに拘わらず人間は一人の連続した人間として名誉と責任とを背負うことを余儀なくされます。
一方で、自分が新たにつけた名義で活動する場合は、特に「顔の見えない」インターネットの中では、しんどくなったら名前を捨てる、また使いたくなったらまた使う、なんてことが自由にできるのです。
ある種無責任なわけですが、そういった気楽さはとても大事なことだと思います。
(だから、やっぱり“かけがえのない”本名や顔を明かすのが怖いと思うのは正しいはずです(自己正当化)。)
しかし、どこかに一人の青年がいるだろう。彼の心には、何か彼自身を戦慄さすようなものが生れかかっている。そのような青年にとって、おまえが無名であることはきっと大切なことに違いない。おまえには、おまえなどを虫けらのように思っている人間が、行く手に立ちふさがっているかもしれない。おまえの周囲の人々がみんなおまえを見限っているかもしれない。あるいは、おまえのいだいている思想が気にくわぬとして、頭からおまえをやっつける人々もあるだろう。しかし、それら目にみえぬ敵はかえってただおまえの決意をしっかり心の中でささえてくれるだけなのだ。そのあとからやってくる「名声」という陰険な仇敵に比べれば、まるでなんのたわいもないものだ。名声はお前をまきちらし、おまえという詩人を毒にも薬にもならぬものに変えてしまうのだ。
僕は誰一人おまえのことを口にしてもらいたくない。むろん、悪口は絶対言ってもらいたくない。星が移り月が変って、おまえの名前は世間の口にのぼるようになるかもしれぬが、おまえはそれを、移り気な世間の人々の口の端にのぼるすべてのこと以上に真剣に考えてはならぬ。むしろ、名まえはそれで汚されたと思い、なるべく早く捨ててしまう方がよいのだ。さっそく何か別の名まえと取りかえて、深夜、神さまにだけその新しい名前を呼んでもらうことを考えねばならぬ。そして、それは誰にも知らせず、そっと隠しておくのだ。
社会とか、そんなもののなかで、人は「優秀な人間」とかそうでないとか、そういった評価を得てしまうわけですが、そういうものはとても不幸なように思えます。
仕事ができてもそうでなくても、絵がうまくてもそうでなくても、数学ができてもできなくても、それは私だ!――そんなことを叫びたくもなります。
(自我同一性を何に求めるかという問題は、あるいは青年期特有のものなのかもしれませんが。)
神様にだけ本当の名前を告げる、それはこういった社会からの防禦策なのだと思います。
自分という全存在が懸かってしまう本名(あるいはそれに準ずる名)は、能力など関係なしにありのままに受け入れてくれる存在*4にだけ託す。仕事はその時々の名前で行い、名前に評価を肩代わりさせ、自分という人間存在を評価から守る。
あまりに弱いありかたかもしれませんが、私はできればこういった風に生きていきたいです。
残念ながら現実の社会はそういったことを許してはくれないこともあるでしょうが、だからこそインターネットの世界に、創作の世界に、承認と救いを求めに行くのだろうと思います。
「この岡に菜摘ます児 家告らな名告らさね」(万葉集)――言霊の感覚は今もありありと生きています。
鴨川
夜の鴨川は怖かった。
河原を自転車で走っていくと、滝の近くを通るたび、ごうごうと響く水音にびっくりする。
こんなにこの川は激しかっただろうか、大きかっただろうか。
そんなことを思ってしまう。
夜の川は漆黒である。向こう岸や橋の上に明かりがあったとしても、その光は川面で反射するだけで、中まで照らすことはない。
闇は、見ているだけで吸い込まれそうで、ただ恐ろしい。
飛び石を探して河川敷を行くと、視線をたまに川の方へと遣るわけで、すると自然と進む道は川寄りになる。暗闇の中、自転車の燈火だけを頼りに進むと、突然目の前に人の座っているベンチが見えてきたり、茂みが現れたりするのであった。そして、いつの間にやら川に近づきすぎていて、落ちる恐怖に晒されるのだ。
* * *
……私は飛び石を探していた。何ヶ月か前にも飛んだ鴨川の飛び石を。
色々あって虚無としか言えない気分になっていたから、むかし慰めを与えてくれたその飛び石を探して、自転車を走らせていたのだった。
* * *
荒神橋のあたりと記憶していて、たしかに荒神橋のあたりに飛び石はあったのだが、少し渡ってみるとそれは違うものだと分かった。
飛び石を渡っていくと、真ん中あたりで近くに舟型の石がある、そんな飛び石を探していた。
いつだったか、その舟のうえでざわめく心を安らげた。
それを繰り返したくなったのだった。
……果たして、それは丸太町橋より更に少し下ったところにあった。単なる記憶違いであった。
私はそれを真ん中、舟のあたりまで渡る。
水量は、先ほどの飛び石のところほどにはみえなかった。流れが少し反対の岸のほうに寄ってていたからだろうと思う。
ちょうど舟の前の石へと飛んだとき、横でぼちゃんという水音がした。驚いたが、落ちずには済んだ。残された波紋を見て何かの魚がいたのだとわかったが、流れの中は、やはり何も見えなかった。
石の上に座ると、流れは近くなった。
いつだったかのように、舟まで飛び移る勇気を、今日の私は持っていなかった。
ふと思い立って、左手で流れに触れようとした。……怖かった。水に触れてしまうと、文明に守られた私という存在の不可侵性が破れてしまうような気がした。私がこの大きな川の上にあってなお乾いているそのことが、安全ということの表象であるかに思えた。
しかし、触れてみた。
触れてみれば、なんということはなかった。
神社のお手水のような気分になり、次は右手を入れてみた。
右手を上げると、なにか砂のようなものがついたことが分かった。
もう一度川に浸して洗い落としてしまえばいいか。そんなことを考えたとき、何故であろう、私は急に恐ろしくなった。私は石を急いで飛んで岸へと戻った。
――祓ひ給ひ、清め給へ。守り給ひ、幸へ給へ。
そんな祈りの言葉を唱えたあと、私はその場から逃げるように帰った。
濡れたままの手で触ってしまったリュックサックからは、学校のプールの後のなつかしいにおいがした。
家について扉を開けると、外出前に撒いておいたファブリーズの人工的な“芳香”が私を包んだ。
私は窓を全開にして、その匂いを追い出した。
XeLaTeXだとかな混植が簡単にできて最高だという話
結論だけ知りたいひとのために
\documentclass[a5paper,xelatex,ja=standard, enablejfam=true]{bxjsbook} \XeTeXgenerateactualtext=1 \usepackage{zxjatype} %仮名のブロックを定義しておく。 %定義した後は一度キャンセルしておく。 %(そうしないとかなを別フォントに指定しないフォントの定義が面倒になる) %仮名混植をするフォントを定義する場合はRestoreしてCancelするとよい。 \xeCJKDeclareSubCJKBlock{kana}{ "3040 -> "309F , "30A0 -> "30FF} \xeCJKCancelSubCJKBlock{kana} \xeCJKRestoreSubCJKBlock{kana} \setjamainfont[kana=SeiwadoMincho-L]{游明朝 Regular} \xeCJKCancelSubCJKBlock{kana} \setjasansfont{Yu Gothic Regular} \setjamonofont{Yu Gothic Regular} \xeCJKRestoreSubCJKBlock{kana} \setCJKfamilyfont{midashi1}[kana=07ラノベPOP]{Noto Sans CJK JP Black} \xeCJKCancelSubCJKBlock{kana}
こんなふうに、\xeCJKDeclareSubCJKBlockで別フォントを指定したい文字のUnicode符号位置の範囲を指定して、そういう文字グループを作ってやればいいだけ。
簡単!!!
今までのあらすじ
というわけで、XeLaTeXを使えばとても簡単にかな混植を実現できるのですが、ここまでには長い苦闘があったのです……(から始まるポエムがここから続きます)
かな混植とは
そもそも「かな混植」が何かを知らない方のために説明しますと、かな混植とは「文章中の漢字とかなで別の書体を用いる」ことです。
普通、日本語書体は漢字、かな、欧文、約物等々日本語の文章で使う文字がひととおり含まれたセットになっているのですが、あえて一部の文字種だけ別の書体を代わりに使う、つまり書体を混ぜて使うことによって文章の雰囲気を変えることができるのです。
そのうちここで「かな混植」と呼ぶのは、かなだけを別の書体にするものです。
……ファミレスにいってドリンクバーがあると、つい混ぜて謎飲料をつくりたくなってしまいますよね。そういうものです(ちがいます)。
わかりやすい例でいうと『ゆゆ式』の次のコマがあります。
この「夜たまらなくなったらいつでも呼んでね?」は漢字が「ゴナ」、かなが「ゴカール」という書体で組まれています。
左の「教室で変なことを言うなアホッ」は漢字もかなもゴナなのですが、これと比べると随分雰囲気が変わっていますよね(太さが違うので比べづらいかもしれませんが)。
このように大きな効果があげられるので、かな混植はひろく行われています。
かな混植で使うための、かなのみで作られた書体が存在しているくらいです*1。
……さきほどのたとえを引きずるならば、お酒を割るための炭酸水が売られているみたいなものですね。炭酸水をそのまま飲んでもおいしいですが。
先ほど例に挙げたゴカールも、ゴナと組み合わせて使うことを想定されてつくられたかな書体です。
個人的に好きなものとして、石井明朝体+タイポスの混植があります。タイポスは今でこそ「漢字タイポス」として漢字も含んだ書体になっていますが、当初はかなのみの書体でした。
例えば文字組版(DTPと写研電算写植)の仕事場から | タイプアンドたいぽに組見本がありますが、明朝体と組み合わせると一目では漢字が明朝体であると気づかないほどに違った雰囲気になっていて、目から鱗が落ちた記憶があります。
(なぜ「anan」なのか?雑誌名の由来を徹底解説! | コトビー[KOTB]に雑誌『non-no』創刊号の写真がありますが、昭和の香りを感じられて良いですね)
かな混植を実現するために
このようなかな混植ですが、私たちがPCで作る文書で実現するためにはどうすればいいでしょうか?
ひとつは、「初めからかな混植されたフォント」を使うことです。というのも、フォントメーカーによっては、かな書体をそれと合うような漢字書体と組み合わせたフォントを売っています。例を挙げればフォントワークスの「墨東セザンヌ」、タイプラボの「ハッピールイカ」など。書体のかな違いのバリエーションといった書体です。
これを利用する場合は、単にそのフォントを指定して文書を書けばよいので簡単です。ワードでもメモ帳でも、たいていのソフトで実現することができます。
欠点は、当然ですが、初めから用意された組み合わせでしかできないということです。フォントファイルの改変が許されているフォントの場合はFontForgeなどでフォントファイルを弄って新たにつくることもできますが、いちいちつくるのはあまりに面倒ですし、普通の人には敷居が高いでしょう。
ふたつめは、手作業でかなだけを別のフォントに変えること。正規表現で選択して一括で書体を変更する機能のあるソフトウェアならできないわけではありませんし、とても単純な、手っ取り早い方法ですが、あまりスマートとは言えない方法です(文書を修正するたびに書体変更が必要になる)。
そして、みっつめがソフトウェアの混植機能を利用すること。InDesignやIllustratorなどのソフトウェアには高機能な合成フォント機能があり、それを使えば実現できます。かなを変えるだけでなく、約物だけを変えるなどの自由もききます。
一太郎も最近のバージョンではかな混植に対応しているので、(値段などの面から)一般的な文書作成では最も手軽な選択肢かなと思います。
これが最も応用のきいて、かつ綺麗な方法ですが、これはそういった機能をもっているソフトウェアが使えるという前提条件があります。
では、高機能な組版機能をもっているソフトウェアでありながら無償で誰でも使えるTeXではどうでしょうか?
TeXでのかな混植
TeXでかな混植をするための資料としてよくまとまっているのが、たちゃなさんのMacPorts の pTeX における和文多書体環境の整えかたです。この資料で解説されている通りにすれば、pLaTeX環境でかな混植を行えるようになります。
……のですが、問題があって、ここにある方法ではJIS外の文字は使えません。pTeXでJIS外の文字を扱うには齋藤修三郎さんのOTFパッケージを利用すればいいのですが、これに関して先ほどのページには
otf.sty で扱えるフォントをユーザが追加したい場合、 つまり、追加したフォントのグリフを \UTF{...} や \CID{...} で直接呼び出せるようにするには、 otf.sty の様式に沿った多数のフォントメトリックファイル、および仮想フォントファイルを用意しなければならず、 少々面倒な作業となります。
これについては、本稿では説明を省きます。詳細についてお知りになりたい場合は otf.sty の配布物をご覧ください。
とあります。
そもそも私がTeXを使い始めた理由は、青空文庫にあるテキストをいい感じに組版したいというものだったので、JIS外の文字が扱えないのでは困ります。CIDを直接指定して文字を呼び出すことまでできるOTFパッケージは、なくてはならないものでした。
というわけで、upLaTeX+OTFパッケージの環境でかな混植を実現しようと私は何度か挑戦しました。
……が、道のりはあまりに険しく、思い出したときに初めては数時間を溶かし、そのまま疲れて諦めて投げ出すということを繰り返すことになりました。
以下は愚痴です。見る人によっては「なんでそんな程度のことでつまずいているんだ」と思われるかもしれませんが、ご容赦ください。
そもそもTeXのフォントの扱い方は普通のソフトウェアのものとは大きく異なっています。組版(文字の位置を決める作業)する人が皆高価なフォントファイルを持っていなくてもいいようにと、組版時は文字幅などの情報だけをもったファイル(メトリックファイル)を参照し、あとで印刷所でそのフォントを用いて印刷する、というアプローチをとっています。つまり、TeXで新たなフォントを使えるようにするためにはフォントメトリックファイルなどを作成する必要があるのです。
(この点について、和文フォントではほとんどが同じ幅の文字であることを利用して、同じフォントメトリックを流用することが可能なので、欧文フォントよりは少し事情が簡単になってはいます。もちろん、そうした場合は所謂プロポーショナルなフォントは使えません。)
そして、使うのが素のTeXではなく様々に拡張されたものだということも理解の難しさに拍車をかけていました。
pTeXはアスキーがTeXを拡張し、日本語に対応させたもので、和文と欧文を区別する機構などが組み込まれています*2。ここで、pTeXは普通のtfmでなくjfmなる別のメトリックファイル形式を使っているために欧文用に作られたソフトでは扱えないといった問題が出てきます。それでmakejvf等のソフトを使うのですが、いったいこれはどういうものなのかがわからない、と……(たとえばかな以外の文字を別書体におきかえたいときにどうすればいいのか、など)
一番の問題はOTFパッケージの原理がわからないことでした。perlとTeX言語で書かれたコードは、私には難解すぎました(読めないことはないにしても諦めてしまいました)。一体どうやったらCIDまで指定してフォントを呼び出せるのかは想像もつきませんでしたし、しかもそれのupLaTeX版です。upLaTeX自体もどういう仕組みでUnicodeを扱っているのかわからないのに、いったいどうすれば……というところでした。
upLaTeX+OTFパッケージの環境はまるで九龍城のようにみえ、今普通に実用できているのが奇跡のように思えました。
……いま思い返せば、問題を切り分けずに慾を張りすぎて自滅したというところなのですが、まあ、そんなこんなで今までTeXでかな混植をすることは諦めていたのです。
XeLaTeXとの出逢い
そして、今に至ります。私は新しいPCを導入してうきうきしていたのもあり、今まで存在を知りつつも試していなかったXeLaTeXを試します。
……すると、呆気ないくらいに簡単にかな混植が実現できてしまったのです!
XeTeXは、新しいTeXの一つで、フォントを直接扱うことに特徴があります。旧来のTeXのもっていた、「組版環境からフォントが参照できる必要がない」という特長は失いますが、それと引き換えに「OTFフォントのもつ高度な機能を利用できる」という特長を得たのです。
そのため、XeTeXでフォントを指定するためには、ただフォント名を指定するだけととても簡単です。これによって、普通のソフトウェアと同様にOSにインストールされているフォントを使うことができます。
ところで、XeTeXはpTeXと違い日本語に特化した処理系ではないので、和文と欧文を区別したりはしません(日本語が扱えるのは、単にUnicodeの全てを扱えるからです)。したがって、和文フォントを指定すると、欧文も和文フォントの従属欧文で組まれることになります。
そこで使えるのがZRさんのzxjatype.styで、これを読み込むとXeLaTeXの組版が日本語向けに調整調整されるのですが、そのなかに和文と欧文を別書体にするという機能があります。
「これを改造すればかな混植ができるのでは?」――私はそう思いました。
というわけでzxjatypeを覗いてみたのですが、どうもフォントの置き換え処理は内部でxeCJKのものを呼び出しているようです*3。そしてxeCJKを覗く……には大きかったので先にマニュアルをみてみました。
……マニュアルが中国語でした。はい。
普段、日本語ばかりで書いている英語嫌いの私ですが、この時になって国際語のありがたみを知りました。英語は嫌いだけれどなんだかんだ読めるんですよね……*4
ただ、幸い日本人には漢字が読めるので、意外と雰囲気がわかります。ざっと読んでいたら、\xeCJKDeclareSubCJKBlockをみつけました。
「え?」という感じでしたが、例をみるとそれはとても目的に適ったものに見えました。改造などしなくても、はじめから機能が用意されていたのです…!
何故こんな機能が用意されているのかといえば、TTF、OTFフォントの文字数制限が理由でしょう。
これらのフォント(つまり一般に使われているフォントです)には、2^16=65536文字しか文字(グリフ)を含むことができないという制限があります。そのため、それ以上の文字を扱おうとすると、フォントファイルを別に分ける必要がでてきます。
マニュアルで例に挙げられていたのはMingLiUとMingLiU-ExtBでしたが(ExtBはUnicodeのCJK統合漢字拡張Bの意)、日本のフォントである花園明朝A、花園明朝Bもこのようになっています。
xeCJKのこの機能は、そういった複数のフォントを文字の範囲によって使い分けるために作られたものだと思われます。
と、なればあとの話は簡単です。ひらがな、カタカナの範囲を指定したブロックをつくっておき、新しいフォントを定義するときに適宜呼び出せばいいのです。
ちなみに、この機能を使えば約物の書体だけを変えるといったこともできます。最高です。
今後の展望
これでかな混植をすることができたわけですが、ひとつ問題があって、XeLaTeXは縦書きにうまく対応していないという問題があります。
ということで、青空文庫をいい感じに組むという目的は達成できないという問題があります。
……どうしたものでしょうね?
追記 (4/16)
LuaLaTeXでもかな混植ができて、更に縦組みもできるということを教えてもらいました。ありがとうございます。
(LuaLaTeX、重いという噂と日本語がまともに扱えるという印象がなくて触れていなかったのですが、知らないうちに便利になっていたのですね……)
TeXを便利にしてくださる開発者の方々にはいつも感謝しています。
(追記以上)
(追伸)ブログらしく、適宜太字をあしらってみたのですが、如何でしょうか。なんとなく俗っぽい雰囲気がでるとともに、緩急がついて多少読みやすくなった気がしています。