Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitd5a0a72

Browse files
Fix Unicode character error building Japanese PDF documents (#149)
* fix Japanese PDF geneeration error* various change for ja/lualatex* Replace U+FFFD with '?'
1 parentc49181f commitd5a0a72

File tree

1 file changed

+44
-3
lines changed

1 file changed

+44
-3
lines changed

‎build_docs.py

Lines changed: 44 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -225,10 +225,40 @@ class Language:
225225
"-D latex_elements.fontenc=",
226226
)
227227

228-
PLATEX_DEFAULT= (
229-
"-D latex_engine=platex",
228+
LUALATEX_FOR_JP= (
229+
"-D latex_engine=lualatex",
230230
"-D latex_elements.inputenc=",
231231
"-D latex_elements.fontenc=",
232+
"-D latex_docclass.manual=ltjsbook",
233+
"-D latex_docclass.howto=ltjsarticle",
234+
235+
# supress polyglossia warnings
236+
"-D latex_elements.polyglossia=",
237+
"-D latex_elements.fontpkg=",
238+
239+
# preamble
240+
"-D latex_elements.preamble="
241+
242+
# Render non-Japanese letters with luatex
243+
# https://gist.github.com/zr-tex8r/e0931df922f38fbb67634f05dfdaf66b
244+
r"\\usepackage[noto-otf]{luatexja-preset}"
245+
r"\\usepackage{newunicodechar}"
246+
r"\\newunicodechar{^^^^212a}{K}"
247+
248+
# Workaround for the luatex-ja issue (Thanks to @jfbu)
249+
# https://github.com/sphinx-doc/sphinx/issues/11179#issuecomment-1420715092
250+
# https://osdn.net/projects/luatex-ja/ticket/47321
251+
r"\\makeatletter"
252+
r"\\titleformat{\\subsubsection}{\\normalsize\\py@HeaderFamily}"
253+
r"{\\py@TitleColor\\thesubsubsection}{0.5em}{\\py@TitleColor}"
254+
r"\\titleformat{\\paragraph}{\\normalsize\\py@HeaderFamily}"
255+
r"{\\py@TitleColor\\theparagraph}{0.5em}{\\py@TitleColor}"
256+
r"\\titleformat{\\subparagraph}{\\normalsize\\py@HeaderFamily}"
257+
r"{\\py@TitleColor\\thesubparagraph}{0.5em}{\\py@TitleColor}"
258+
r"\\makeatother"
259+
260+
# subpress warning: (fancyhdr)Make it at least 16.4pt
261+
r"\\setlength{\\footskip}{16.4pt}"
232262
)
233263

234264
XELATEX_WITH_FONTSPEC= (
@@ -257,7 +287,7 @@ class Language:
257287
Language("fr","fr","French",True,XELATEX_WITH_FONTSPEC),
258288
Language("id","id","Indonesian",False,XELATEX_DEFAULT),
259289
Language("it","it","Italian",False,XELATEX_DEFAULT),
260-
Language("ja","ja","Japanese",True,PLATEX_DEFAULT,html_only=True),# See https://github.com/python/python-docs-ja/issues/35
290+
Language("ja","ja","Japanese",True,LUALATEX_FOR_JP),
261291
Language("ko","ko","Korean",True,XELATEX_FOR_KOREAN),
262292
Language("pl","pl","Polish",False,XELATEX_DEFAULT),
263293
Language("pt-br","pt_BR","Brazilian Portuguese",True,XELATEX_DEFAULT),
@@ -726,6 +756,17 @@ def build(self):
726756
"-D gettext_compact=0",
727757
)
728758
)
759+
ifself.language.tag=="ja":
760+
# Since luatex doesn't support \ufffd, replace \ufffd with '?'.
761+
# https://gist.github.com/zr-tex8r/e0931df922f38fbb67634f05dfdaf66b
762+
# Luatex already fixed this issue, so we can remove this once Texlive is updated.
763+
# (https://github.com/TeX-Live/luatex/commit/eaa95ce0a141eaf7a02)
764+
subprocess.check_output("sed -i s/\N{REPLACEMENT CHARACTER}/?/g "
765+
f"{locale_dirs}/ja/LC_MESSAGES/**/*.po",
766+
shell=True)
767+
subprocess.check_output("sed -i s/\N{REPLACEMENT CHARACTER}/?/g "
768+
f"{self.checkout}/Doc/**/*.rst",shell=True)
769+
729770
ifself.version.status=="EOL":
730771
sphinxopts.append("-D html_context.outdated=1")
731772
maketarget= (

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp