From 8d09c2d8c328f8847b38e25f6670952070cf098a Mon Sep 17 00:00:00 2001 From: Mike Gerwitz Date: Thu, 23 Mar 2017 09:41:41 -0400 Subject: [PATCH] doc/macros.texi: Fix PDF output issues with @maintenance doc/macros.texi (@maintstart, @maintend): Add macros. (@maintenance): Use them. --- doc/design.texi | 12 +++++++++--- doc/macros.texi | 22 ++++++++++++++++++---- 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/doc/design.texi b/doc/design.texi index a6373ad..a0277ff 100644 --- a/doc/design.texi +++ b/doc/design.texi @@ -122,7 +122,8 @@ More information about each can be found in their respective section. @node Assertions @section Assertions -@maintenance{ +@maintstart +@footnote{ Assertions are compiled from the Program XML (@pxref{Program XML}). Rather than using a library, it compiles a mess of largely duplicate code inline. @@ -135,6 +136,7 @@ More information about each can be found in their respective section. system. @emph{The latter option is preferred, and would be more powerful with less maintenance.}} +@maintend @helpwanted @@ -158,7 +160,8 @@ More information about each can be found in their respective section. @node Client @section Client -@maintenance{ +@maintstart +@footnote{ The client is largely managed by a single class, @srcref{src/client/Client.js, Client}, which has grown out of control. @@ -166,6 +169,7 @@ More information about each can be found in their respective section. Code is to be extracted out of this class as it is touched. The other system mammoth is @code{Ui} (@pxref{Program UI}).} +@maintend @helpwanted @@ -246,7 +250,8 @@ Error state is managed by @node Program @section Program -@maintenance{ +@maintstart +@footnote{ The @code{Program} class was one of the first prototypes created, and has evolved poorly with the rest of the system. It is the base class for all compiled programs, @@ -255,6 +260,7 @@ Error state is managed by With that said, it is one of the least touched classes (thus its state); developers rarely have the need to touch @code{Program}.} +@maintend @mvnotice{ The core @code{Program} class that causes maintenance concerns needs diff --git a/doc/macros.texi b/doc/macros.texi index 1464cfe..7c2d597 100644 --- a/doc/macros.texi +++ b/doc/macros.texi @@ -76,13 +76,27 @@ @c maintenance note for developers -@macro maintenance{desc} +@c +@c N.B. use @maintstart and @maintend manually if using multiple +@c paragraphs otherwise PDF output (TeX) breaks; we'll figure out +@c a better solution in the future +@macro maintstart{} @dnindex Maintenance Concern -@devnotice{This system has maintenance concerns.@footnote{ - @maintfoot{\desc\} -}} +@noticestart{dev} +This system has maintenance concerns. @end macro +@macro maintend +@noticeend +@end macro + +@macro maintenance{desc} +@maintstart +@footnote{\desc\} +@maintend +@end macro + + @c encapsulated to avoid bad TeX generation (fails compilation @c when inlined at call site) @macro maintfoot{desc}