All of lore.kernel.org
 help / color / mirror / Atom feed
From: Akira Yokosawa <akiyks@gmail.com>
To: "Paul E. McKenney" <paulmck@kernel.org>
Cc: perfbook@vger.kernel.org, Akira Yokosawa <akiyks@gmail.com>
Subject: Re: [PATCH -perfbook 0/5] Misc fixes and updates
Date: Mon, 29 Mar 2021 20:54:05 +0900	[thread overview]
Message-ID: <dcc0e180-4df3-2f9e-cff3-30afbde74275@gmail.com> (raw)
In-Reply-To: <20210329000656.GU2696@paulmck-ThinkPad-P72>

On Sun, 28 Mar 2021 17:06:56 -0700, Paul E. McKenney wrote:
> On Mon, Mar 29, 2021 at 07:15:17AM +0900, Akira Yokosawa wrote:
>> On , Paul E. McKenney wrote:
>>> On Sun, Mar 28, 2021 at 05:48:14PM +0900, Akira Yokosawa wrote:
>>>> Hi Paul,
>>>>
>>>> This patch set consists of fixes/updates, some of which take care
>>>> of ebook-size build.
>>>>
>>>> Patch 1/5 fixes truncated index pages in ebook-size build.
>>>> Patch 2/5 adds check of warning messages from makeindex, which are
>>>> sometimes hard to track down after the fact.
>>>> Patch 3/5 improves look of final pages of index.
>>>> I'd like final pages of chapters in two-column layout to be
>>>> balanced similarly, but have not succeeded.
>>>> Patch 4/5 fixes the wrong use of \Clnref{} macro, which I failed to
>>>> catch before the release of Second Edition.
>>>> Patch 5/5 fixes an orphaned heading of Section B.2 in ebook-size
>>>> build.
>>>>
>>>> To build ebook-size PDF with index pages enabled, use the sequence
>>>> of command below:
>>>>
>>>>     rm perfbook-ix.tex; env PERFBOOK_PAPER=EB make ix
>>>>
>>>> Resulting perfbook-ix.pdf will be of ebook size.
>>>> As was mentioned earlier, make error due to messages of
>>>> "LaTeX Warning: Float too large for page by ..." is expected
>>>> and can be ignored.
>>>
>>> Applied, thank you!
>>>
>>> Just out of curiosity, what must be typed to get an ebook layout with
>>> index?  My guess of "PERFBOOK_PAPER=EB make ix" did not do the trick.
>>> Of course, "make ix" continues to create a two-column full-size PDF
>>> with index.
>>
>> At the moment, you need to manually remove perfbook-ix.tex
>> before the rebuild, which is why I wrote:
>>
>>>>     rm perfbook-ix.tex; env PERFBOOK_PAPER=EB make ix
>>
>> above.
>>
>> I think this can be automated by adding some dependency in the Makefile.
>> Will look into it later.
> 
> That works, thank you, and apologies for my blindness!
> 
> If we aren't careful, we will end up with a combinatorial explosion
> of Makefile targets.  Worse things could happen, I guess.  ;-)

My plan was to enable indexing by default when my WIP branch is
ready to be merged.

> 
> Would it help reduce Makefile complexity by having the default target
> do fancy Quick Quizzes like it does for releases and editions?

Yes, it is high time to do some refactoring of make targets.

Before changing Makefile, how does the provisional "make help-full" text
at the bottom look to you?  Still too complex?

Its commit log would be something like:

EXP Makefile: (help text only) Refactor build targets
    
Main points:
    
    o Promote qq+ix (- highlighting) -> default "perfbook.pdf"
    o "df" (draft) as the same as current default (no QQZ framing, no indexing)
      for quicker build
    o "ix" for draft check of indexing (with indexed terms/names highlighted),
      no QQZ framing
    o Promote "nq", "sf" "sfnq" as semi-official targets. (some might prefer
      sans serif font for ebook)
    o Prepare ebook specific targets "eb", "ebnq", "ebsf", "ebsfnq", "ebix",
      and "ebdf" (independent of PERFBOOK_PAPER).
    o Prepare 1c* variants for all the 2c targets. (there is no "1ceb*" nor
      "eb1c*", as "eb" implies "1c".)

Not-Signed-off-by: Akira Yokosawa <akiyks@gmail.com>

        Thanks, Akira

> 
> 							Thanx, Paul
> 
>>>>         Thanks, Akira
>>>>
>>>> --
>>>> Akira Yokosawa (5):
>>>>   index: Adjust settings respecting ebook-size build
>>>>   runlatex.sh: Catch warning from makeindex early
>>>>   index: Enable balanced layout of last page of multi-column index
>>>>   together: Fix usage of \clnref{} for 'lines M and N'
>>>>   toyrcu: Move float away from section heading
>>>>
>>>>  appendix/toyrcu/toyrcu.tex | 10 +++++-----
>>>>  perfbook-lt.tex            |  8 +++++---
>>>>  together/applyrcu.tex      |  2 +-
>>>>  utilities/runlatex.sh      |  5 +++++
>>>>  4 files changed, 16 insertions(+), 9 deletions(-)
>>>>
>>>> -- 
>>>> 2.17.1
>>>>

------
$ make help-full
Official targets (Latin Modern Typewriter for monospace font):
  Full,              Abbr.
  perfbook.pdf,      2c:   (default) 2-column layout
  perfbook-1c.pdf,   1c:   1-column layout
Note:
  Official targets now enable indexing and Quick-Quiz framing.

Set env variable PERFBOOK_PAPER to change paper size:
   PERFBOOK_PAPER=A4: a4paper
   PERFBOOK_PAPER=HB: hard cover book
   PERFBOOK_PAPER=EB: ebook reader, always 1c layout (WIP)
   other (default):   letterpaper
Note:
  Modified PERFBOOK_PAPER takes effect after "make paper-clean".

Paper-size specific targets (independent of PERFBOOK_PAPER):
  perfbook-lt.pdf,   lt:   2c layout on letterpaper
  perfbook-hb.pdf,   hb:   2c layout for hard cover book
  perfbook-a4.pdf,   a4:   2c layout on a4paper
  perfbook-eb.pdf,   eb:   1c layout for ebook reader (WIP)

Semi-official targets:
  Full,              Abbr.
  perfbook-nq.pdf,   nq:   2c without inline Quick Quizzes (chapterwise Q&As)
  perfbook-sf.pdf,   sf:   2c with sans serif font
  perfbook-sfnq.pdf, sfnq: sf + nq

Targets for draft check, non-framed Quick Quizzes (quicker build)
  perfbook-ix.pdf,   ix:   for draft check, with indexed terms highlighted
  perfbook-df.pdf,   df:   for draft check, without indexing

Prefixed targets:
  "1c*" such as "1cnq", "1csf", and "1cix" are for 1c-layout.
  "ebnq", "ebsf", "ebsfnq", "ebix", and "ebdf" are for ebook-size 1c-layout,
     independent of PERFBOOK_PAPER. (WIP)

Experimental targets:
  perfbook-msnt.pdf, msnt: newtxtt as monospace (non-slashed 0)
  perfbook-mstx.pdf, mstx: txtt as monospace
  perfbook-msr.pdf,  msr:  regular thickness courier clone as monospace
  perfbook-msn.pdf,  msn:  narrow courier clone as monospace

Historical targets:
  perfbook-tcb.pdf,  tcb:  table caption at bottom (First Edition)
  perfbook-msns.pdf, msns: non-scaled courier (First Edition)
  perfbook-mss.pdf,  mss:  scaled courier (default in early 2017)

Notes:
  - "msnt" requires "newtxtt". "mstx" is a fallback target for older TeX env.
  - "msr" and "msn" require "nimbus15".
  - "msn" doesn't cover bold face monospace.
  - "sf" requires "newtxsf".
  - All the targets except for "msn" use "Latin Modern Typewriter" font
    for code snippets.
------


  reply	other threads:[~2021-03-29 11:54 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-28  8:48 [PATCH -perfbook 0/5] Misc fixes and updates Akira Yokosawa
2021-03-28  8:51 ` [PATCH -perfbook 1/5] index: Adjust settings respecting ebook-size build Akira Yokosawa
2021-03-28  8:53 ` [PATCH -perfbook 2/5] runlatex.sh: Catch warning from makeindex early Akira Yokosawa
2021-03-28  8:55 ` [PATCH -perfbook 3/5] index: Enable balanced layout of last page of multi-column index Akira Yokosawa
2021-03-28  8:57 ` [PATCH -perfbook 4/5] together: Fix usage of \clnref{} for 'lines M and N' Akira Yokosawa
2021-03-28  8:58 ` [PATCH -perfbook 5/5] toyrcu: Move float away from section heading Akira Yokosawa
2021-03-28 16:08 ` [PATCH -perfbook 0/5] Misc fixes and updates Paul E. McKenney
2021-03-28 22:15   ` Akira Yokosawa
2021-03-29  0:06     ` Paul E. McKenney
2021-03-29 11:54       ` Akira Yokosawa [this message]
2021-03-29 15:32         ` Paul E. McKenney
2021-03-29 23:24           ` Akira Yokosawa
2021-03-30  0:07             ` Balbir Singh
2021-03-30  0:34               ` 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=dcc0e180-4df3-2f9e-cff3-30afbde74275@gmail.com \
    --to=akiyks@gmail.com \
    --cc=paulmck@kernel.org \
    --cc=perfbook@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.