docs: pdfdocs: Add CJK-language-specific font settings
zh_TW, ko_KR, and ja_JP translations have their preferred glyph sets different from that of zh_CN. To switch CJK font in the middle of the translations, introduce custom LaTeX macros listed below: \kerneldocBeginSC \kerneldocEndSC \kerneldocBeginTC \kerneldocEndTC \kerneldocBeginKR \kerneldocEndKR \kerneldocBeginJP \kerneldocEndJP , and embed a pair of macros in each language's index.rst. NOTE 1: Update of zh_TW/index.rst is deferred to a follow-up change. NOTE 2: Custom macros added here do not imply \kerneldocCJK(on|off). This is intentional. For example, \kerneldocCJKoff needs to be at the top of Italian translations' index.rst for the footer of final zh_TW page to be properly typeset. Signed-off-by: Akira Yokosawa <akiyks@gmail.com> Link: https://lore.kernel.org/r/31906baf-7490-68cd-7153-4e4d320fb9b0@gmail.com Signed-off-by: Jonathan Corbet <corbet@lwn.net>
This commit is contained in:
Родитель
659653c9e5
Коммит
e291ff6f5a
|
@ -361,10 +361,51 @@ latex_elements['preamble'] += '''
|
|||
% This is needed for translations
|
||||
\\usepackage{xeCJK}
|
||||
\\setCJKmainfont{Noto Sans CJK SC}
|
||||
\\setCJKsansfont{Noto Sans CJK SC}
|
||||
\\setCJKmonofont{Noto Sans Mono CJK SC}
|
||||
% CJK Language-specific font choices
|
||||
\\newCJKfontfamily[SCmain]\\scmain{Noto Sans CJK SC}
|
||||
\\newCJKfontfamily[SCsans]\\scsans{Noto Sans CJK SC}
|
||||
\\newCJKfontfamily[SCmono]\\scmono{Noto Sans Mono CJK SC}
|
||||
\\newCJKfontfamily[TCmain]\\tcmain{Noto Sans CJK TC}
|
||||
\\newCJKfontfamily[TCsans]\\tcsans{Noto Sans CJK TC}
|
||||
\\newCJKfontfamily[TCmono]\\tcmono{Noto Sans Mono CJK TC}
|
||||
\\newCJKfontfamily[KRmain]\\krmain{Noto Sans CJK KR}
|
||||
\\newCJKfontfamily[KRsans]\\krsans{Noto Sans CJK KR}
|
||||
\\newCJKfontfamily[KRmono]\\krmono{Noto Sans Mono CJK KR}
|
||||
\\newCJKfontfamily[JPmain]\\jpmain{Noto Sans CJK JP}
|
||||
\\newCJKfontfamily[JPsans]\\jpsans{Noto Sans CJK JP}
|
||||
\\newCJKfontfamily[JPmono]\\jpmono{Noto Sans Mono CJK JP}
|
||||
% Define custom macros to on/off CJK
|
||||
\\newcommand{\\kerneldocCJKon}{\\makexeCJKactive}
|
||||
\\newcommand{\\kerneldocCJKoff}{\\makexeCJKinactive}
|
||||
% To customize \sphinxtableofcontents
|
||||
\\newcommand{\\kerneldocBeginSC}{%
|
||||
\\begingroup%
|
||||
\\scmain%
|
||||
}
|
||||
\\newcommand{\\kerneldocEndSC}{\\endgroup}
|
||||
\\newcommand{\\kerneldocBeginTC}{%
|
||||
\\begingroup%
|
||||
\\tcmain%
|
||||
\\renewcommand{\\CJKsfdefault}{TCsans}%
|
||||
\\renewcommand{\\CJKttdefault}{TCmono}%
|
||||
}
|
||||
\\newcommand{\\kerneldocEndTC}{\\endgroup}
|
||||
\\newcommand{\\kerneldocBeginKR}{%
|
||||
\\begingroup%
|
||||
\\krmain%
|
||||
\\renewcommand{\\CJKsfdefault}{KRsans}%
|
||||
\\renewcommand{\\CJKttdefault}{KRmono}%
|
||||
}
|
||||
\\newcommand{\\kerneldocEndKR}{\\endgroup}
|
||||
\\newcommand{\\kerneldocBeginJP}{%
|
||||
\\begingroup%
|
||||
\\jpmain%
|
||||
\\renewcommand{\\CJKsfdefault}{JPsans}%
|
||||
\\renewcommand{\\CJKttdefault}{JPmono}%
|
||||
}
|
||||
\\newcommand{\\kerneldocEndJP}{\\endgroup}
|
||||
% To customize \\sphinxtableofcontents
|
||||
\\usepackage{etoolbox}
|
||||
% Inactivate CJK after tableofcontents
|
||||
\\apptocmd{\\sphinxtableofcontents}{\\kerneldocCJKoff}{}{}
|
||||
|
@ -372,6 +413,14 @@ latex_elements['preamble'] += '''
|
|||
% Custom macros to on/off CJK (Dummy)
|
||||
\\newcommand{\\kerneldocCJKon}{}
|
||||
\\newcommand{\\kerneldocCJKoff}{}
|
||||
\\newcommand{\\kerneldocBeginSC}{}
|
||||
\\newcommand{\\kerneldocEndSC}{}
|
||||
\\newcommand{\\kerneldocBeginTC}{}
|
||||
\\newcommand{\\kerneldocEndTC}{}
|
||||
\\newcommand{\\kerneldocBeginKR}{}
|
||||
\\newcommand{\\kerneldocEndKR}{}
|
||||
\\newcommand{\\kerneldocBeginSC}{}
|
||||
\\newcommand{\\kerneldocEndKR}{}
|
||||
}
|
||||
'''
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
\renewcommand\thesection*
|
||||
\renewcommand\thesubsection*
|
||||
\kerneldocCJKon
|
||||
\kerneldocBeginJP
|
||||
|
||||
Japanese translations
|
||||
=====================
|
||||
|
@ -11,3 +12,7 @@ Japanese translations
|
|||
:maxdepth: 1
|
||||
|
||||
howto
|
||||
|
||||
.. raw:: latex
|
||||
|
||||
\kerneldocEndJP
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
\renewcommand\thesection*
|
||||
\renewcommand\thesubsection*
|
||||
\kerneldocCJKon
|
||||
\kerneldocBeginKR
|
||||
|
||||
한국어 번역
|
||||
===========
|
||||
|
@ -26,3 +27,4 @@
|
|||
.. raw:: latex
|
||||
|
||||
\normalsize
|
||||
\kerneldocEndKR
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
\renewcommand\thesection*
|
||||
\renewcommand\thesubsection*
|
||||
\kerneldocCJKon
|
||||
\kerneldocBeginSC
|
||||
|
||||
.. _linux_doc_zh:
|
||||
|
||||
|
@ -189,3 +190,7 @@ TODOList:
|
|||
----------
|
||||
|
||||
* :ref:`genindex`
|
||||
|
||||
.. raw:: latex
|
||||
|
||||
\kerneldocEndSC
|
||||
|
|
Загрузка…
Ссылка в новой задаче