Arihiro TAKASE avatar Arihiro TAKASE committed e2de2fb

s/directive/markup/

Comments (0)

Files changed (1)

20120113_japanesesupport.py

 # 自分でもこれがどういう仕組みで動いているかよく分からないので
 # 有志の方による改良希望
 
+# 句読点を強調しようとすると
+
 from docutils.nodes import Text, paragraph
 import re
 
-# この2つはソース読み込み時に処理しないと間に合わない
-_PAT0 = re.compile(ur"([`_])([、。?!])") # 句読点の前のディレクティブ
-_PAT1 = re.compile(ur"([、。?!])([`:])") # 句読点の後のディレクティブ
+# マークアップと句読点が連続するとき、空白を開けなくても、
+# システム側で自動的に空白を挿入しておいてくれる。
+# なお、この作業は rst のソース読み込み (source-read) 時に処理しないと間に合わない。
+_PAT0 = re.compile(ur"([`_])([、。?!])")
+_PAT1 = re.compile(ur"([、。?!])([`:])")
 
-# 改行前後が非latin-1な文字なら連結
+# 改行前後が非latin-1な文字なら連結。
+# これは、標準ドキュメント翻訳プロジェクトで使用しているものを
+# 転用させていただいた。
 _PAT2 = re.compile(ur"([^\u0000-\u00ff])\n([^\u0000-\u00ff])")
-# 句読点の前後に空白があれば連結
+# 句読点の前後に空白があれば連結
 _PAT3 = re.compile(ur"[\n ]*([、。?!])")
 _PAT4 = re.compile(ur"([、。?!])[\n ]*")
 
-def separate_directive(app, docname, source):
-    if not app.config.japanesesupport_separate_directive:
+def separate_markup(app, docname, source):
+    if not app.config.japanesesupport_separate_markup:
         return
     #source は単要素のリスト、その要素は Unicode 型
     source[0] = _PAT0.sub(ur"\1\\ \2", source[0])
 
 def setup(app):
     app.add_config_value('japanesesupport_trunc_whitespace', True, True)
-    app.add_config_value('japanesesupport_separate_directive', True, True)
-    app.connect("source-read", separate_directive)
+    app.add_config_value('japanesesupport_separate_markup', True, True)
+    app.connect("source-read", separate_markup)
     app.connect("doctree-resolved", trunc_whitespace)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.