Age | Commit message (Collapse) | Author |
|
git-svn-id: svn://tug.org/texlive/trunk@72099 c570f23f-e606-0410-a88d-b1316a301751
|
|
Curiously, WEAVE adds spaces before a/o after certain PASCAL keywords,
when they are used in |vertical bars| in TeX text or comments. The
construct '\ignorespaces|...|\unskip' is used in several WEB sources,
obviously for a long time.
git-svn-id: svn://tug.org/texlive/trunk@72087 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@72077 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@72065 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@72062 c570f23f-e606-0410-a88d-b1316a301751
|
|
This prevents the following statement to be placed right next to the
'@<Named section@>', which makes the rendering rather unintelligible.
git-svn-id: svn://tug.org/texlive/trunk@72043 c570f23f-e606-0410-a88d-b1316a301751
|
|
The 'recent' (Jan 2022) changes in 'showstream.ch' escaped my attention
for two and a half years!
This commit moves the new section '@<Adjust |selector|...@>' to the end
of the '[54] System-dependent changes' in order to restore the section
numbering up to and including 'pdftex§1866' and 'xetex§1677' (and also
'euptex§NNNN') in the variants changed for TeX Live.
git-svn-id: svn://tug.org/texlive/trunk@72042 c570f23f-e606-0410-a88d-b1316a301751
|
|
These will be applied upstream.
git-svn-id: svn://tug.org/texlive/trunk@72023 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@72022 c570f23f-e606-0410-a88d-b1316a301751
|
|
This commit rounds up the line of changes for CWEB 4.12.
Major changes since CWEB 4.11:
* Macro '\startpdf' is amended to support multi-page tables-of-contents
and to synch page numbers in PDF outlines with ToC.
* New option 'cweave -F' for alternate format of compound statements.
* 'do...while' loops are separated from surrounding code, even when
'cweave -f' is used.
* Amend change files with section and line references with script
'fix-changefile-lines.py' by Tyge Tiessen.
* New macro '\scan' from Martin Ruckert to improve the runtime when
processing index entries for 'TeX and friends' (most notably MP.W).
git-svn-id: svn://tug.org/texlive/trunk@72014 c570f23f-e606-0410-a88d-b1316a301751
|
|
Remove redundant copies of these macros.
Note that '\scan' has moved almost next to '\pdfnote'. However, I don't
see how to replace the latter with the former at this time. '\pdfnote'
receives much more than just numbers outside of the '\inx' macro.
git-svn-id: svn://tug.org/texlive/trunk@72004 c570f23f-e606-0410-a88d-b1316a301751
|
|
Martin Ruckert (@ruckertm) has provided new macros for scanning the
index entries and amending them with '\pdflink' macros for PDF and HINT.
This revision applies the '\scan' macro only in the '\inx' macro. (Also
in the upcoming 'pwebmac.tex'.) Of course, the heavy copy- and pasting
leads to the idea of further integrating the new stuff at a more central
and common spot in 'cweb*mac.tex'. We'll see...
However, in this present state, the major application of the C/WEB
macros for the 'knuth-pdf' and 'knuth-hint' packages delivers great
results. The main run of the 'makeall' script, producing 58 PDF files,
reduces the overall runtime from 1m7s to 0m45s.
Thanks to Martin for the exycellent contribution!
git-svn-id: svn://tug.org/texlive/trunk@72003 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71993 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71985 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71980 c570f23f-e606-0410-a88d-b1316a301751
|
|
Martin Ruckert's talk at TUG'24 about 'Profiling TeX' (watch on YouTube:
https://www.youtube.com/live/d7vTW7PR0B4?t=7795s) and the ensuing private
discussion with him lead me to inspect the relevant parts of
'cwebacromac.tex' (and 'pwebmac.tex') more closely in order to address
the performance issues with certain large C/WEB programs.
The most glaring example is MP.W, where every advanced TeX engine (for
PDF and HINT) virtually stops for 1--2 seconds (on my machine) at two of
the index pages because of the huge lists of section references for the
variable 'mp' and the type 'MP' that are used 'everywhere'. (See below.)
At this point, we haven't solved the quadratic performance behavior yet.
However, the main changes applied in this commit at least slightly
improve the macros and their application. In the overall context of the
'knuth-pdf'/'knuth-hint' packages, the 'index issue' reported by Martin
becomes more or less irrelvant. The script 'makeall' produces 58 PDF
documents in the main run. With all optimizations applied, the runtime
is reduced by mere seconds from '1m7s' to '0m59s' (with 'pdftex').
(a) '\pdflink' and '\HINTlink' have lost their second parameter, which
was only used with 'plain TeX plus dvipdf' and 'XeTeX' anyway. This cut
down the replacement strings significantly. In one example I observed a
runtime improvement of about twenty percent (2--3 seconds) by this
change alone.
(b) Macros '\makeoutlinetoks' and 'outilnedone' swallowed the
surrounding macro calls, thus simplifying their application.
(c) '\newcount\countC' was replaced with '\newif\ifhavenum' to avoid
arithmetic with '0' and '1' for a simple Boolean operation.
(d) '\newcount\countD' was renamed to '\countNOS'. (Unrelated.)
In order to address the 'worst' CWEB code MP.W mentioned above, I
changed both the macros and the 'makeall' script. My local MP.CH changes
the '\inx' macro to address two 'Overfull \hboxes', so it is easy to
remove the use of '\pdfnote' when setting up the index. Instead,
'makeall' invokes SED to amemd the MP.IDX file created by CWEAVE with
the necessary '\pdflink' macro invocations for all section numbers in
one fell swoop. This cuts the processing time for MP.TEX in half (!!).
However, I do not intend to incorporate this approach into
'cwebmac.tex'/'pwebmac.tex' because this would most likely require
'--shell-escape' and become too system-dependent. For small to midsize
C/WEB programs, this would show minor improvements anyway.
Watch this space for possible further improvements. (I'll hold back the
releases of 'CWEB 4.12' and 'pwebmac 5.0' for the time being.)
git-svn-id: svn://tug.org/texlive/trunk@71979 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71973 c570f23f-e606-0410-a88d-b1316a301751
|
|
This might rather be documented in 'cwebman.tex' together with '\def\9'.
git-svn-id: svn://tug.org/texlive/trunk@71951 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71937 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71926 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71902 c570f23f-e606-0410-a88d-b1316a301751
|
|
There's a type mismatch (probably copy-paste-error) for
'pdf_font_has_space_char', defined as '^boolean' in section 821,
in sections 1502 and 1518.
See https://tug.org/pipermail/tex-live/2024-July/050773.html for the
initial bug report.
git-svn-id: svn://tug.org/texlive/trunk@71901 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71900 c570f23f-e606-0410-a88d-b1316a301751
|
|
Maybe someone wants to use a different set of fonts in future.
'\eightrm' is already loaded in 'cwebmac.tex'.
git-svn-id: svn://tug.org/texlive/trunk@71886 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71885 c570f23f-e606-0410-a88d-b1316a301751
|
|
'\ninett' matches better with '\sc=\eightrm' ([sm]all-CAPS).
git-svn-id: svn://tug.org/texlive/trunk@71881 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71874 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71869 c570f23f-e606-0410-a88d-b1316a301751
|
|
There might have been use for '\ninett' in the page headers.
git-svn-id: svn://tug.org/texlive/trunk@71868 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71860 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71852 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71840 c570f23f-e606-0410-a88d-b1316a301751
|
|
Avoid a "stringop truncation" warning with 'strncpy()'.
git-svn-id: svn://tug.org/texlive/trunk@71824 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71816 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71804 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71797 c570f23f-e606-0410-a88d-b1316a301751
|
|
The classic 'manfnt' font has 'METAFONT' in several sizes; 9pt (?) is
used on the titlepage of MFT.WEB as '\logo hijklmnj'. Pick the missing
'S' (in 10pt) for the 'MetaPost' logo in the main text from the separate
'logo10' font.
Änderungen ein. Zeilen,
git-svn-id: svn://tug.org/texlive/trunk@71796 c570f23f-e606-0410-a88d-b1316a301751
|
|
With 'pdfctwimac.tex' there's no table-of-contents page (yet), so the
'\datecontentspage' never appeared 'in print' (together with '\datethis'
on the first page) with any of the PDF engines.
With 'pdfctproofmac.tex' used with HiTeX, the two '\date' macros showed
up in 'ctwill.hnt'. Similar to the other three CWEB modules 'without
changes', we get rid of the '\datecontentspage'.
git-svn-id: svn://tug.org/texlive/trunk@71789 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71782 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71780 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71777 c570f23f-e606-0410-a88d-b1316a301751
|
|
Also add line numbers in cwebman-w2c.ch relative to cwebman.tex.
Note that webman.pdf will have a link to the 'Holon Programming' project
on Github.
git-svn-id: svn://tug.org/texlive/trunk@71759 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71756 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71731 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71721 c570f23f-e606-0410-a88d-b1316a301751
|
|
The TeX macro '\title' is used far too often, both in the TeX parts and
in an index entry that produces an 'Overfull \hbox'.
Curiously enough, I was able to produce a 'core dump' from 'xdvipdfmx' with
this twisted change (the @x and @y parts should, of course, be flipped):
@x
begin print(' !Sorry, DVIcopy capacity exceeded ['); print_packet(p);
@.Sorry, DVIcopy capacity exceeded@>
@y
begin print(' !Sorry, ',title,' capacity exceeded ['); print_packet(p);
@.Sorry, {\title} capacity exceeded@>
@z
xdvipdfmx: ../../../texk/dvipdfm-x/dpxutil.c:454: ht_lookup_table: Assertion `ht && key' failed.
Aborted (core dumped)
git-svn-id: svn://tug.org/texlive/trunk@71720 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71719 c570f23f-e606-0410-a88d-b1316a301751
|
|
Python counts from '0', humans from '1'.
git-svn-id: svn://tug.org/texlive/trunk@71714 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71710 c570f23f-e606-0410-a88d-b1316a301751
|
|
git-svn-id: svn://tug.org/texlive/trunk@71703 c570f23f-e606-0410-a88d-b1316a301751
|