LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Akira Yokosawa <akiyks@gmail.com>
To: Jonathan Corbet <corbet@lwn.net>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>,
	"Wu X.C." <bobwxc@email.cn>, SeongJae Park <sj38.park@gmail.com>,
	Hu Haowen <src.res@email.cn>,
	linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
	Akira Yokosawa <akiyks@gmail.com>
Subject: [PATCH v4 6/9] docs: pdfdocs: One-half spacing for CJK translations
Date: Mon, 9 Aug 2021 10:23:57 +0900	[thread overview]
Message-ID: <547a1f1c-0bb5-20a7-ea0e-951bfc3c3925@gmail.com> (raw)
In-Reply-To: <39d0fb0f-b248-bca4-2dac-df69e8d697b1@gmail.com>

CJK documents are much easier to read with a wider baseline stretch.
Applying onehalfspacing option of "setspace" package looks reasonable.

Note: \usepackage{setspace} needs to be before that of hyperref in the
preamble.
The 'extrapackages' key (available since Sphinx 2.3) is for this purpose.
For systems with Sphinx < 2.3, dummy commands of \onehalfspacing and
\singlespacing are provided instead.
One-half spacing is not effective in LaTeX sources generated by such
revisions of Sphinx.

Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
---
 Documentation/conf.py                      | 12 ++++++++++--
 Documentation/translations/ja_JP/howto.rst |  8 ++++++++
 Documentation/translations/ko_KR/howto.rst |  8 ++++++++
 3 files changed, 26 insertions(+), 2 deletions(-)

diff --git a/Documentation/conf.py b/Documentation/conf.py
index 2ccfe4442acc..f219a7a41f48 100644
--- a/Documentation/conf.py
+++ b/Documentation/conf.py
@@ -341,6 +341,9 @@ latex_elements = {
         verbatimhintsturnover=false,
     ''',
 
+    # For CJK One-half spacing, need to be in front of hyperref
+    'extrapackages': r'\usepackage{setspace}',
+
     # Additional stuff for the LaTeX preamble.
     'preamble': '''
 	% Prevent column squeezing of tabulary.
@@ -404,9 +407,12 @@ latex_elements['preamble']  += '''
 	}
 	\\newCJKfontfamily[JPsans]\\jpsans{Noto Sans CJK JP}
 	\\newCJKfontfamily[JPmono]\\jpmono{Noto Sans Mono CJK JP}
+	% Dummy commands for Sphinx < 2.3 (no 'extrapackages' support)
+	\\providecommand{\\onehalfspacing}{}
+	\\providecommand{\\singlespacing}{}
 	% Define custom macros to on/off CJK
-	\\newcommand{\\kerneldocCJKon}{\\makexeCJKactive}
-	\\newcommand{\\kerneldocCJKoff}{\\makexeCJKinactive}
+	\\newcommand{\\kerneldocCJKon}{\\makexeCJKactive\\onehalfspacing}
+	\\newcommand{\\kerneldocCJKoff}{\\makexeCJKinactive\\singlespacing}
 	\\newcommand{\\kerneldocBeginSC}{%
 	    \\begingroup%
 	    \\scmain%
@@ -437,6 +443,8 @@ latex_elements['preamble']  += '''
 	    \\renewcommand{\\CJKttdefault}{JPmono}%
 	}
 	\\newcommand{\\kerneldocEndJP}{\\endgroup}
+	% Single spacing in literal blocks
+	\\fvset{baselinestretch=1}
 	% To customize \\sphinxtableofcontents
 	\\usepackage{etoolbox}
 	% Inactivate CJK after tableofcontents
diff --git a/Documentation/translations/ja_JP/howto.rst b/Documentation/translations/ja_JP/howto.rst
index 73ebdab4ced7..d667f9d8a02a 100644
--- a/Documentation/translations/ja_JP/howto.rst
+++ b/Documentation/translations/ja_JP/howto.rst
@@ -1,3 +1,7 @@
+.. raw:: latex
+
+	\kerneldocCJKoff
+
 NOTE:
 This is a version of Documentation/process/howto.rst translated into Japanese.
 This document is maintained by Tsugikazu Shibata <tshibata@ab.jp.nec.com>
@@ -11,6 +15,10 @@ try to update the original English file first.
 
 ----------------------------------
 
+.. raw:: latex
+
+	\kerneldocCJKon
+
 この文書は、
 Documentation/process/howto.rst
 の和訳です。
diff --git a/Documentation/translations/ko_KR/howto.rst b/Documentation/translations/ko_KR/howto.rst
index a2bdd564c907..e3cdf0c84892 100644
--- a/Documentation/translations/ko_KR/howto.rst
+++ b/Documentation/translations/ko_KR/howto.rst
@@ -1,3 +1,7 @@
+.. raw:: latex
+
+	\kerneldocCJKoff
+
 NOTE:
 This is a version of Documentation/process/howto.rst translated into korean
 This document is maintained by Minchan Kim <minchan@kernel.org>
@@ -11,6 +15,10 @@ try to update the original English file first.
 
 ----------------------------------
 
+.. raw:: latex
+
+	\kerneldocCJKon
+
 이 문서는
 Documentation/process/howto.rst
 의 한글 번역입니다.
-- 
2.17.1




  parent reply	other threads:[~2021-08-09  1:24 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-09  1:09 [PATCH v4 0/9] docs: pdfdocs: Improve font choice in " Akira Yokosawa
2021-08-09  1:12 ` [PATCH v4 1/9] docs: pdfdocs: Refactor config for CJK document Akira Yokosawa
2021-08-09  1:14 ` [PATCH v4 2/9] docs: pdfdocs: Add CJK-language-specific font settings Akira Yokosawa
2021-08-09  1:17 ` [PATCH v4 3/9] docs: pdfdocs: Choose Serif font as CJK mainfont if possible Akira Yokosawa
2021-08-09  1:19 ` [PATCH v4 4/9] docs: pdfdocs: Preserve inter-phrase space in Korean translations Akira Yokosawa
2021-08-09  1:21 ` [PATCH v4 5/9] docs: pdfdocs: Add conf.py local to translations for ascii-art alignment Akira Yokosawa
2021-08-09  1:23 ` Akira Yokosawa [this message]
2021-08-09  1:25 ` [PATCH v4 7/9] docs: pdfdocs: Permit AutoFakeSlant for CJK fonts Akira Yokosawa
2021-08-09  1:27 ` [PATCH v4 8/9] docs: pdfdocs: Teach xeCJK about character classes of quotation marks Akira Yokosawa
2021-08-09  1:29 ` [PATCH v4 9/9] docs: pdfdocs: Enable language-specific font choice of zh_TW translations Akira Yokosawa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=547a1f1c-0bb5-20a7-ea0e-951bfc3c3925@gmail.com \
    --to=akiyks@gmail.com \
    --cc=bobwxc@email.cn \
    --cc=corbet@lwn.net \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=sj38.park@gmail.com \
    --cc=src.res@email.cn \
    --subject='Re: [PATCH v4 6/9] docs: pdfdocs: One-half spacing for CJK translations' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).