[latex3-commits] [git/LaTeX3-latex3-babel] master: Adjust for a stand-alone repo (8fdda38)
Joseph Wright
joseph.wright at morningstar2.co.uk
Mon Apr 1 19:40:38 CEST 2019
Repository : https://github.com/latex3/babel
On branch : master
Link : https://github.com/latex3/babel/commit/8fdda382967522ce7e0b93828a80cc70a27b360f
>---------------------------------------------------------------
commit 8fdda382967522ce7e0b93828a80cc70a27b360f
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Sun Mar 10 08:43:19 2019 +0000
Adjust for a stand-alone repo
>---------------------------------------------------------------
8fdda382967522ce7e0b93828a80cc70a27b360f
build.lua | 11 +-
support/test2e.tex | 295 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 301 insertions(+), 5 deletions(-)
diff --git a/build.lua b/build.lua
index fa83e56..719fb40 100644
--- a/build.lua
+++ b/build.lua
@@ -6,9 +6,6 @@
bundle = ""
module = "babel"
--- Location of main directory: use Unix-style path separators
-maindir = "../.."
-
-- Minor modifications to file types
installfiles = {"*.def", "*.ldf", "*.sty", "*.tex"}
sourcefiles = {"*.dtx", "*.ins"}
@@ -28,8 +25,12 @@ asciiengines = {"pdftex"}
stdengine = "pdftex"
checkengines = {"pdftex"}
--- Load the common settings for the LaTeX2e repo
-dofile (maindir .. "/build-config.lua")
+-- Set up the check system
+checkruns = 2
+checksuppfiles = {"test2e.tex"}
+
+-- Build TDS-style zips
+packtdszip = true
-- Find and run the build system
kpse.set_program_name ("kpsewhich")
diff --git a/support/test2e.tex b/support/test2e.tex
new file mode 100644
index 0000000..8539baf
--- /dev/null
+++ b/support/test2e.tex
@@ -0,0 +1,295 @@
+% \iffalse meta-comment
+%
+% Copyright (C) 1992-2018 by David Carlisle, Frank Mittelbach.
+% All rights reserved.
+%
+% This file is part of the validate package.
+%
+% IMPORTANT NOTICE:
+%
+% You are not allowed to change this file. In case of error
+% write to the email address mentioned in the file readme.val.
+%
+% \fi
+% test2e.tex
+ %%%%%%%%%%%
+
+% David Carlisle
+% Version 0.0, 28 May 1992
+% Version 0.1, 18 Jun 1992 FMi small updates
+% Version 1.0a, 28 Jun 1992 FMi small updates for distribution
+% Version 1.0b, 1993/12/08 DPC update for LaTeX2e
+% Version 1.0e, 1994/05/19 add config file.
+% Version 1.0f, 1994/05/19 drop \errorstopmode from \loggingoutput
+% Version 1.0g, 2015/09/11 luatex support
+% Version 1.0h, 2018/09/27 added \SHOWFILE
+
+% \def\fileversion{v1.0h}
+% \def\filedate{2018/09/27}
+
+% This file should not be used as a package or class file,
+% it should be \input.
+
+% The scope of this \makeatletter will then be the rest of the
+% document. Put TeX into scroll mode, and stop it showing the
+% implementation details of macros in error messages.
+%
+\makeatletter
+\scrollmode
+\errorcontextlines=-1
+
+% Use the same \showbox settings as 2.09, unless they are changed in
+% the test file. (2e sets these to -1)
+\showboxbreadth=\maxdimen
+\showboxdepth=\maxdimen
+
+
+% drop \errorstopmode from \logginoutput so that testing doesn't stop
+% for \showoutput
+\gdef\loggingoutput{\tracingoutput\@ne
+ \showboxbreadth\maxdimen\showboxdepth\maxdimen}
+
+
+% Start the test, after the optional \documentclass (or \documentstyle)
+% \begin{document} commands with \START. All lines in the .log file
+% before this will be ignored. It also prints a docstrip-style
+% character table in the .tlg file so the .tlg file can easily be
+% checked for email translations.
+%
+\def\START{\typeout{START-TEST-LOG^^J^^J%
+ This is a generated file for the LaTeX2e validation system.%
+^^J^^JDon't change this file in any respect.%
+^^J}}
+
+% If you still need a Character table, use \typeout\{^^J\CTable^^J}
+
+\begingroup
+\catcode`\^^\=0
+\catcode`\^^A=\catcode`\%
+^^\catcode`^^\ =11
+^^\catcode`^^\%=11
+^^\catcode`^^\#=11
+^^\catcode`^^\~=11
+^^\endlinechar=`^^\^^J
+^^\catcode`^^\\=11^^A
+^^\gdef^^\CTable{
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+%%
+}^^A
+^^\endgroup{}%
+
+% The test should end with
+% \END or \end{document}
+%
+\let\@@@end\@@end
+%\let\@ED=\enddocument
+\def\END{\typeout{END-TEST-LOG}\@@@end}
+\let\@@end\END
+
+
+% After the \START should come declarations of the format and style
+% options being used.
+%
+\def\FORMAT#1{\typeout{Format: #1}%
+ \def\@tempa{#1}\ifx\@tempa\@EJ\else
+ \OMIT\@warning{Declared format #1,^^JActual format \@EJ}\TIMO\fi}
+
+% The old version got this information from everyjob,
+% but that does not work with LaTeX2e as \everyjob is cleared.
+\edef\@EJ{\fmtname <\fmtversion>}
+
+% Some author info:
+\def\AUTHOR#1{\typeout{Author: #1}}
+\def\ADDRESS#1{\typeout{Address: #1}}
+
+% Not all packages declare themselves to the log file, and we can not
+% rely on TeX`s output as it includes full path names, and does not
+% include version numbers etc. So for each package included give a
+% declaration like: \PACKAGES{array v2.0d}
+%
+\def\STYLE#1{\typeout{Main Style: #1}}%
+\def\STYLEOPTIONS#1{\typeout{Style Options: #1}}
+
+
+% If The class or package is loaded with options, you may
+% specify the options in the \CLASS (\PACKAGE) declaration. eg:
+%
+% \CLASS[german,a4page]{article v2.0 1994/01/02}
+% \PACKAGE{ifthen v2.2 1993/11/12}
+% \PACKAGE[dvips]{graphics v 3.8 1994/02/02}
+%
+\def\CLASS{\@ifnextchar[\OPTCLASS\XCLASS}
+\def\OPTCLASS[#1]#2{%
+ \typeout{Main Class: #2^^J\@spaces Options: #1}}
+\def\XCLASS#1{%
+ \typeout{Main Class: #1}}
+
+\def\PACKAGE{\@ifnextchar[\OPTPACKAGE\XPACKAGE}
+\def\OPTPACKAGE[#1]#2{%
+ \typeout{Package: #2^^J\@spaces Options: #1}}
+\def\XPACKAGE#1{%
+ \typeout{Package: #1}}
+
+
+
+% LaTeX2e always uses NFSS2 so new test files need not use
+% \FONTSELECTION but it is retained for compatibility for test files
+% written for 209/NFSS1.
+%
+\def\FONTSELECTION#1{%
+ \OMIT\@@warning{\noexpand\FONTSELECTION obsolete.^^J%
+ LaTeX2e always uses NFSS2}\TIMO
+ \typeout{Font Selection: #1}}
+
+
+
+% Surround commands which produce irrelevant lines in the .log file by
+% \OMIT
+% \TIMO
+%
+\def\OMIT{\typeout{OMIT}}
+\def\TIMO{\typeout{TIMO}}
+
+
+% Load a file (e.g. \jobname.toc) into the .log file with the usual special
+% characters rendered harmless
+%
+% \SHOWFILE{\jobname.aux}
+%
+
+\begingroup % within the scope of this groups each line needs to end in % !
+\catcode`\^^M\active %
+\gdef\SHOWFILE#1{%
+ \typeout{-------- #1 (start) ---------}%
+\IfFileExists{#1}%
+ {\begingroup %
+ \catcode`\^^M\active %
+ \edef^^M{^\string^M^^J}%
+ \everyeof{\noexpand}%
+ \obeyspaces %
+ \@sanitize %
+ \message{\@@input #1 }%
+ \endgroup }%
+ {\message{Not found}}%
+ \typeout{-------- #1 (end) -----------}%
+}%
+\endgroup
+
+
+
+
+% After the above declarations, and before the main tests, you may
+% optionally `declare' all the commands in the `module' that you are
+% about to test. These commands will be registered as defined,
+% undefined or relaxed (ie \let to \relax). You may wish to declare
+% commands not currently implemented, so that if they are added at a
+% later stage, the test will fail, reminding someone to document the
+% fact that the user interface has changed. So if you are testing
+% array and tabular environments, you may wish do declare
+% \extrarowheight. This is undefined in the curent latex, but would
+% become defined if Mittelbach's array.sty was incorporated into
+% latex.tex.
+%
+\def\declare at command#1{%
+ \ifx#1\@undefined\typeout{Undefined \string#1}\else
+ \ifx#1\relax\typeout{Relaxed \space\space\string#1}\else
+ \typeout{Defined \space\space\string#1}\fi\fi}
+
+
+% To allow testing of possible changes, we allow extra code to be read
+% in before the test starts. The necessary code should be placed in a
+% file test2e.cfg.
+%
+\OMIT
+\InputIfFileExists{test2e.cfg}
+ {\typeout{^^J***^^Jtest2e.cfg in operation^^J***^^J}}{}
+\TIMO
+
+% Arrange that duplicate fonts share internal font id
+% so they are shown with the same csname in luatex
+% to match (pdf)tex and xetex.
+
+% disable this for now on development builds of luatex
+\ifx\directlua\undefined\else
+%\ifnum\luatexversion<108
+\directlua{
+local function fonteach_next(max, f)
+ repeat
+ f = f + 1
+ if f > max then return end
+ until font.frozen(f) \string~= nil
+ return f, font.getfont(f) or font.fonts[f]
+ end
+ font.latexeach = function() return fonteach_next, font.max(), 0 end
+
+local original_fontloader=font.read_tfm
+if (luatexbase==nil) then
+ callback.register('define_font',latexDefineFont)
+else
+ if(luatexbase.in_callback==nil) then
+ error('update luatexbase')
+ else
+ local cbl=luatexbase.callback_descriptions('define_font')
+ if(cbl[1]\string~=nil) then
+ original_fontloader=luatexbase.remove_from_callback('define_font',cbl[1])
+ end
+ end
+end
+
+function latexDefineFont(n,s,i)
+ local f = nil
+ for ii,vv in font.latexeach() do
+ if (n == vv.name) then
+ if(vv.size ==
+ (s > 0 and s
+ or
+ (- s * vv.designsize) / 1000)) then
+ f=ii
+% debugging (not to log, so not affect tlg)
+ else
+ print('Font callback: ' .. n .. ' ' .. s ..
+' ' .. vv.size ..
+' ' .. vv.designsize ..
+' ' .. (s > 0 and s or (- s * vv.designsize) / 1000))
+ end
+ end
+ end
+ return f or original_fontloader(n,s,i)
+end
+if (luatexbase==nil) then
+ callback.register('define_font',latexDefineFont)
+else
+ luatexbase.add_to_callback('define_font',latexDefineFont,"latexDefineFont")
+end
+}
+%\fi
+\fi
+
+% Load the map file early so it does not appear in the log.
+\ifdefined\pdfoutput
+ \ifnum\pdfoutput>0 %
+ \pdfmapfile{pdftex.map}%
+ \fi
+\else
+ \ifdefined\outputmode
+ \ifnum\outputmode>0 %
+ \pdfextension mapfile{pdftex.map}%
+ \fi
+ \fi
+\fi
+
+\endinput
More information about the latex3-commits
mailing list