ReStructuredTextと日本語

問題となりそうなのは、まずは、バッククオートなどの引用符の前後に半角スペースがいることかな。普通は、

今日は `暑い` ね。

と書けばいいだけだし、ソースで読んだときの視認性から、前後に半角スペースがいる方が良いだろう。問題は、句読点と絡む場合で、

今日は、 `暑い` ね。

「、」とバッククオートの間に、半角スペースがいる。この半角スペースは無い方が良い。半角スペースが入っているかどうかなんて、ぱっと見ではよくわからないから。
解決法は単純で、句読点も半角スペースと同様に単語区切りの文字として扱ってやればよいのだと思う。

もっと問題なのは、テーブルかな。

+------------+------------+------------+--------------+
Header 1 Header 2 Header 3 Header 4
+============+============+============+==============+
Column 1 Column 2 Column 3 & 4 span (Row 1)
+------------+------------+------------+--------------+
Column 1 & 2 span Column 3 - Column 4
+------------+------------+------------+ - Row 2 & 3 |
1 2 3 - span
+------------+------------+------------+--------------+

というようになるのだが、日本語などのマルチバイト系の言語では、文字幅が全角半角とか異なるのが問題ですね。ASCIIは全部半角だから、ソースでも上の様にきれいに組めて、パーサ側での処理も簡単だけど。日本語だとパーサ側で、文字の幅を認識しないと、複数スパンの場合が上手くいかないだろう。
しかし、文字の幅の認識って完璧にはでき無いのではと思う。日本語の漢字だけで言いというのなら簡単だけれども。できれば、ReStructuredText仕様側で吸収できれば良い。

+------------+------------+------------+--------------+
Header 1 Header 2 Header 3 Header 4
+============+============+============+==============+
Column 1 Column 2 Column 3 & 4 span (Row 1)
+------------+------------+---------------------------+
Column 1 & 2 span Column 3 - Column 4
+-------------------------+------------+ - Row 2 & 3 |
1 2 3 - span
+------------+------------+------------+--------------+

の様に複数スパンにするときはスパン中間の+を-に変えるというのはどうだろう?つまり、セル下部の罫線の+で区切り位置を明示するということ。-や+は半角だし、バイト数数えることで、複数スパンや複数ローに対応できないか。