戯曲のテキストをEPUB3形式の電子書籍にするコンバーター『Θέσπης』(テスピス)で、前回はルビ対応の準備をしたのだが、その流れで圏点にも対応させようと思った。
圏点というのは、文字の脇に打たれる点などのこと。傍点とも言う。表示されるかな? こういうやつ。
ゆく河の流れは絶えずして、しかももとの水にあらず。
「流れ」にドット、「もとの水」にゴマ点をふってあるんだけれど、見えていたらお使いのブラウザは、CSS3の圏点表示に対応しています。
CSS3では左図のように”text-emphasis”プロパティなどを通して圏点を指定する。dot、sesame、circle、double-circle、triangleの五種類の圏点があらかじめ設定されてあり、さらにそれぞれfilledとopenの2種類が定められている。filledは塗りつぶしてあって、openは白抜き、ということ。また、これらの他、任意の一文字も圏点として扱える。
戯曲に圏点をどれだけ使うかというと、ぼくは使ったことない。正直いらない気がするけれど、ルビに対応するなら圏点や傍線にも対応したっていい気がした。
戯曲本文ではなく、前書きやあとがきで圏点を使いたい場合もあり得るかもしれないし。
それとこういう理由もある。戯曲は読み物ではなく、舞台上演のための設計図という特殊な文書ではあるのだけれど、読み物としての方向性も探っていきたいと個人的には思っている。電車のなかでスマホとかから暇つぶしに戯曲を読む、そんな世界、いいよねぇ。
圏点を使うことで読みやすくなるケースというものが思いつかないけれど、誰かが思いつくかもしれないし、まぁルビに対応した流れで対応しちまうか、と思った。
というわけで、『Θέσπης』(テスピス)用のテキストでの表記方法を考えてみる。
青空文庫の「作業マニュアル 2.入力-1」にある圏点・傍点は、入力者の注記として記入しておくことになっている。
行ってはなりませぬ、殿下[#「殿下」に傍点]
みたいに書く。
理に適っているし、慣れると案外読みやすい。が、前回のルビみたいな表記方法もアリなんではないかと思った。
例えばこういうこと。
ええい、放せ。とめだてする奴は、亡霊《・》にしてやる。
この場合、亡霊にドットが打たれる、とか。
つまりルビの時と同じルールで、|とか《》を使い、圏点を指定する、とか。
- 漢字以外の文字+漢字+《圏点指定用の文字》 → 「漢字」に指定の圏点をふる
- |または|(※全角)+文字+《圏点指定用の文字》 → 「文字」に指定の圏点をふる
「圏点指定用の文字」には、ふりたい点に似た風味のものを使う。「・」(中黒)だったらドット、「、」(読点)だったらゴマ点とか。filledとopenの使い分けだが、「圏点指定用の文字」の後に「o」(半角のオー)とか「。」(句点)とか、白抜きの文字を書き足すとopenになる、とかしようかな。
表にするとこんな感じになる。
《・》 | filled dot | ドット |
《。》または《・o》または《・。》 | open dot | 白ドット |
《、》 | filled dot | ゴマ |
《、o》または《、。》 | open dot | 白ゴマ |
《●》 | filled dot | ドット |
《○》 | open dot | 白ドット |
《◎》 | filled dot | ゴマ |
《◎o》または《◎。》 | open dot | 白ゴマ |
《▲》 | filled dot | ドット |
《△》または《▲o》または《▲。》 | open dot | 白ドット |
検索のための正規表現は、ルビの時とほぼ同様だが、もう少しシンプルな感じになる。
作ってみた。
まずは変換前。
ごちゃごちゃしていて読みづらいが、実験用なので。
実際は一つの文中にこんなに圏点を多用することはないはず。強調の意味がなくなってしまうし。
でもまだわかりづらい気もするんだよなぁ。
やっぱり青空文庫方式の方が良いのだろうか。
なやむ。
さて、変換後はこんなふうに。
うまく動いた。
変換後のHTMLはこんな感じになった。
圏点用のクラスを定義し、<span></span>で囲って圏点箇所を指定している。
だいたい大丈夫そう。
あとは任意の一文字を指定したい場合。
《x。》のように、「任意の一文字」の後に、圏点指定用の文字として決めてある文字を続けたら圏点にする、みたいにしようかな。
なんにせよもう少し寝かせて、ぼんやりと仕様を練ってみようと思っている。
ご意見あればお待ちしています。
コメント