linux-doc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Akira Yokosawa <akiyks@gmail.com>
To: Jonathan Corbet <corbet@lwn.net>,
	Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: "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: Re: [PATCH v3 6/9] docs: pdfdocs: One-half spacing for CJK translations
Date: Sun, 8 Aug 2021 12:53:43 +0900	[thread overview]
Message-ID: <8e70e5ed-c0d9-a0f0-6640-a0f1ebdda6d4@gmail.com> (raw)
In-Reply-To: <a1c19fe1-2960-1c4b-b355-7e6da13b9630@gmail.com>

On Mon, 2 Aug 2021 18:56:16 +0900, Akira Yokosawa wrote:
> CJK documents are much easier to read with a wider baseline stretch.
> Applying the 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.

Sphinx versions < 2.3 ignore 'extrapackages' and generate LaTeX
sources without setspace package.
Obviously, building such LaTeX sources will end up in the error of:

    ! Undefined control sequence.
    \kerneldocCJKoff ...exeCJKinactive \singlespacing

Current requirement to build pdfdocs is Sphinx 2.4.4, but LaTeX
sources generated by 1.7.9 can at least be built prior to this change.

Jon, Mauro, do you think this is a regression?

You can skip 6/9 if you'd like. 

I'll see what can be done for compatibility with Sphinx < 2.3.

        Thanks, Akira

> 
> Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
> ---
>  Documentation/conf.py                      | 9 +++++++--
>  Documentation/translations/ja_JP/howto.rst | 8 ++++++++
>  Documentation/translations/ko_KR/howto.rst | 8 ++++++++
>  3 files changed, 23 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/conf.py b/Documentation/conf.py
> index 2ccfe4442acc..2e54488e2480 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.
> @@ -405,8 +408,8 @@ latex_elements['preamble']  += '''
>  	\\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}
> +	\\newcommand{\\kerneldocCJKon}{\\makexeCJKactive\\onehalfspacing}
> +	\\newcommand{\\kerneldocCJKoff}{\\makexeCJKinactive\\singlespacing}
>  	\\newcommand{\\kerneldocBeginSC}{%
>  	    \\begingroup%
>  	    \\scmain%
> @@ -437,6 +440,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
>  의 한글 번역입니다.
> 


  reply	other threads:[~2021-08-08  3:53 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-02  9:43 [PATCH v3 0/9] docs: pdfdocs: Improve font choice in CJK translations Akira Yokosawa
2021-08-02  9:47 ` [PATCH v3 1/9] docs: pdfdocs: Refactor config for CJK document Akira Yokosawa
2021-08-02  9:49 ` [PATCH v3 2/9] docs: pdfdocs: Add CJK-language-specific font settings Akira Yokosawa
2021-08-02  9:50 ` [PATCH v3 3/9] docs: pdfdocs: Choose Serif font as CJK mainfont if possible Akira Yokosawa
2021-08-02  9:51 ` [PATCH v3 4/9] docs: pdfdocs: Preserve inter-phrase space in Korean translations Akira Yokosawa
2021-08-02  9:53 ` [PATCH v3 5/9] docs: pdfdocs: Add conf.py local to translations for ascii-art alignment Akira Yokosawa
2021-08-02  9:56 ` [PATCH v3 6/9] docs: pdfdocs: One-half spacing for CJK translations Akira Yokosawa
2021-08-08  3:53   ` Akira Yokosawa [this message]
2021-08-12 14:42     ` Jonathan Corbet
2021-08-12 14:54       ` Akira Yokosawa
2021-08-12 15:14         ` Jonathan Corbet
2021-08-02  9:57 ` [PATCH v3 7/9] docs: pdfdocs: Permit AutoFakeSlant for CJK fonts Akira Yokosawa
2021-08-02  9:59 ` [PATCH v3 8/9] docs: pdfdocs: Teach xeCJK about character classes of quotation marks Akira Yokosawa
2021-08-02 10:00 ` [PATCH v3 9/9] docs: pdfdocs: Enable language-specific font choice of zh_TW translations Akira Yokosawa
2021-08-02 14:10   ` Hu Haowen

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=8e70e5ed-c0d9-a0f0-6640-a0f1ebdda6d4@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 \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).