なろう・カクヨム・青空文庫でルビの書き方が違う — 縦棒を省ける条件は場所ごとに別
一本の原稿を複数の投稿先へ出している書き手は、ルビの書き方を毎回そろえ直しています。厄介なのは記号の形が違うことではありません。記号は全置換で片が付きます。困るのは、縦棒を省いてよい条件が投稿先ごとに違うことです。同じ 〆切《しめきり》 が、青空文庫では規約どおりで、小説家になろうでは壊れます。
記号の形が違うだけなら、置換で足ります
同じ「漢字にかんじと振る」が、置く場所によってこう書かれます。
| 投稿先 | 書き方 |
|---|---|
| 小説家になろう・カクヨム | |漢字《かんじ》 |
| 青空文庫 | |漢字《かんじ》 |
| pixiv小説 | [[rb:漢字 > かんじ]] |
| HTML・EPUB | <ruby>漢字<rt>かんじ</rt></ruby> |
| 紙の公募原稿 | 漢字(かんじ) |
ここまでは見た目の問題です。なろうと青空文庫の違いも、縦棒が半角か全角かの差に見えます。実際なろうの公式ヘルプは、縦線は全角でも半角でもかまわないと書いています。つまりこの二つは、書き方をそろえるだけならほぼ同じ形です。
省いてよい条件が、二か所で別々に決まっている
縦棒は省けます。省けるからこそ、多くの原稿では縦棒が書かれていません。そして省いてよい条件が、二つの投稿先で別の言葉で定義されています。どちらも公式に書かれているものです。
なろうの公式ヘルプは、ルビを振る文字が漢字で、読みをひらがなかカタカナで書く場合に縦線を省略できる、としています。条件が親文字とルビの両方にかかっているのが特徴です。
青空文庫の注記一覧は、ルビの付く文字が異なった文字種で構成されている場合に先頭へ全角の縦線を入れる、としています。ここでいう文字種の違いとは、漢字と仮名、仮名とアルファベット、平仮名と片仮名のことです。一つの文字種だけでできていれば縦線は要りません。挙げられている例が 〆切《しめきり》 です。条件は親文字の側だけにかかっていて、ルビが何であるかは問われません。
この二つは重なりません。実際に四つの対で確かめます。
| 対 | なろうで省けるか | 青空文庫で省けるか |
|---|---|---|
本気《マジ》 | 省ける | 省ける |
〆切《しめきり》 | 省けない | 省ける |
魔法《magic》 | 省けない | 省ける |
打ち込む《うちこむ》 | 省けない | 省けない |
一行ずつ理由を見ます。「本気」は漢字だけで、ルビの「マジ」はカタカナなので、両方の条件を満たします。
「〆切」が分かれるのは、〆が漢字ではないからです。文字コードの上でも、〆は記号として U+3006 に置かれていて、漢字がまとまって並ぶ U+4E00 以降の区画には入っていません。だからなろうの「漢字で」という条件を満たしません。一方、青空文庫の規約は漢字や仮名という言い方をせず、「一つの文字種」とだけ言って、その例に〆切を挙げています。
「魔法《magic》」は逆向きに分かれます。親文字は漢字だけなので青空文庫の条件は満たします。ところが読みをアルファベットで書いているので、なろうの条件からは外れます。なろうは読みの側にもひらがなかカタカナという縛りをかけているからです。当て字のルビを英字で振る書き方は珍しくないので、この行に当たる原稿は実際に多いはずです。
「打ち込む」はどちらでも省けません。漢字と仮名が混ざっているからで、これは両方の条件が同じ結論を出す例です。
一つ断っておくと、この表はどちらも公式に書かれた条件の文言から読める範囲です。なろうのヘルプは「漢字」がどこからどこまでを指すのかまでは書いていないので、〆のような境目の文字がどう扱われるかは文言からは決まりません。境目に当たる字を使うときは、縦棒を書いておくほうが安全です。省いて外したときだけ壊れて、書いておいて損をすることはありません。
省いた縦棒は、直前の文字を巻き込む
条件を外して縦棒を省くと、どうなるか。ルビ化が起きず 《》 がそのまま本文へ出るだけなら、投稿画面を見た瞬間に気づけます。厄介なのは、別の親文字にルビが振られてしまう形です。
縦棒が無い場合、親文字は 《 の直前から続く一続きになります。彼は本気《マジ》 は「は」で切れるので親文字は「本気」ですが、明日本気《マジ》 と書くと親文字は「明日本気」です。画面には四文字にマジと振られた形が出ます。原稿の上では二か所とも同じ形をしているので、書いている側から区別できません。
同じことが青空文庫側では文字種の単位で起きます。〆切 の直前がさらに漢字なら、そこまで巻き込みます。省略とは、区切りの判断を投稿先へ預けることなので、預けた先の規則を知らないまま省くと、どこで切られるか分からなくなります。
なろうでは丸括弧までルビになる
置換では絶対に見つからない誤爆がもう一つあります。なろうの公式ヘルプは、親文字が漢字でルビが仮名という同じ条件のもとで、丸括弧の中に読みを書くだけでルビとして表示されると定めています。挙げられている例は 山田太郎(やまだたろう) です。
投稿する側から見ると、これは本文に書いた括弧が勝手にルビへ変わるということです。紙の公募に出した原稿をそのままなろうへ回すと、東京(とうきょう) のような箇所が片端からルビになり、括弧の中身が本文から消えます。ルビは小さな添え字なので、消えたようにしか見えません。
化けるかどうかは、括弧の中身で決まります。言った(と思う) は括弧の中に漢字があるので、ルビの条件から外れて化けません。逆に言えば、読み仮名として書いた括弧だけが正確に狙い撃ちされるということです。回避策も公式に書かれていて、ルビにしたくない括弧の直前に縦棒を入れるだけです。
上限もあります。ヘルプの書き方をそのまま写すと、ルビは一文字から十文字までの一続きに対して最大十文字まで、です。つまり親文字と読みのどちらにも十文字という頭打ちがあります。超えた対はルビにならず、《》 が本文にそのまま出ます。長い当て字を振る書き方をしていると、ここに当たります。記号を混ぜたときは上限以下でも設定できないことがある、とも書かれています。
「変換は成功したまま、投稿先でだけ壊れる」
ここまでの三つは、どれも手元では起こりません。原稿の上では記号がそろっていて、置換は成功していて、欠けている文字もありません。壊れるのは投稿画面で表示が組み立てられるときで、そのときにはもう公開されています。だから確かめる作業は、投稿する前に、原稿の側で済ませておくしかありません。
道具棚のルビ記法の相互変換は、置換ではなく、いったん親文字と読みの対に分解してから出したい記法で組み直します。縦棒を省く条件は出力先ごとに切り替え、本文に残った 《 と、なろうでルビへ化ける丸括弧と、上限を超えた対を数えて先に出します。原稿はブラウザの中だけで処理するので、どこにも送信しません。
まとめ
- 投稿先ごとに違うのは記号の形よりも、縦棒を省いてよい条件です。なろうは親文字とルビの両方に条件がかかり、青空文庫は親文字の文字種だけを見ます
〆切《しめきり》は青空文庫では規約どおりで、なろうでは壊れます。〆が漢字ではないからです- なろうでは丸括弧の中の仮名もルビになります。紙の原稿をそのまま貼ると、括弧の中身が本文から消えます。避けるには括弧の直前に縦棒を入れます
- どれも手元では再現しません。投稿画面で初めて現れるので、原稿の側で数えて確かめておくのが唯一の防ぎ方です