仕事と晩飯とその他

日記です。

Webでの縦書きにおける禁則処理の続き

行頭禁則文字と行末禁則文字を一応分かる範囲で実装。そのうえで、サンプルとして青空文庫のテキストを投入。とりあえずコメント(入力者注)とルビを表示しないように。このあたりの処理はそれほど迷わなかった。でも、これ、実際にルビを自動で変換となると結構面倒かも。正規表現使えば早い気がするけど、今回は一文字ずつ読み込んでループしているのでやはり他の方法で解決しないとなあ。なんとなくやり方は思いついたけど次の課題で。

泣き別れの処理は見送ったので二連の三点リーダーがキレイに泣き別れてる。次の課題ということで。

肝心の縦書き禁則処理、うーん、一箇所おかしい。どうしてそうなるのか。考えるのが面倒で適当に色々試してみる。が、うまくいかない。諦めて考えてみる。改行の処理のようだ。\r\nが二文字になるのは対応している。\rか\nのどちらかが残って空白行が出来るのは昨日解決したはず。やはりよくわからない。ので、改行を処理しない状態からやり直し。改行があるからと言って一律に処理してはいけない場合があったことにようやく気がついた。その条件を分岐、できない。きちんと整理できていない。なので、分岐する条件それぞれにコメントを入れていく。その過程で処理がダブっているところに気がついた。片方だけで十分だった。そっちを先に修正。

もう一度テスト用のテキストで試してみる。うーん、やっぱり改行の処理がうまくいっていない。もうちょっとかかりそう。

追記:改行問題解決、したけど、なんとも汚いコードで泥臭いやり方。もう少しスッキリできそうな気もするけど……。とりあえず明日だな。