diff options
author | Karl Berry <karl@freefriends.org> | 2009-06-09 23:31:15 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-06-09 23:31:15 +0000 |
commit | 215b9a864d5829070bdc66ba736986eb72e5143e (patch) | |
tree | fe0882c81fc4ec945cee4b512f72eaa21ea5f791 /Master/texmf-dist/doc/latex/expl3 | |
parent | df90ec06321940c2f066b05e12f1b5ab099105da (diff) |
expl3 1407 (9jun09)
git-svn-id: svn://tug.org/texlive/trunk@13686 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/expl3')
-rw-r--r-- | Master/texmf-dist/doc/latex/expl3/README (renamed from Master/texmf-dist/doc/latex/expl3/readme.txt) | 88 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/expl3/expl3.pdf | bin | 155938 -> 510353 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/expl3/l32eproc.pdf | bin | 108445 -> 0 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/expl3/l3obsolete.txt | 9 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/expl3/l3obsolete2008.txt | 296 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/expl3/readme-dev.txt | 120 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/expl3/source3.pdf | bin | 953706 -> 4120684 bytes |
7 files changed, 456 insertions, 57 deletions
diff --git a/Master/texmf-dist/doc/latex/expl3/readme.txt b/Master/texmf-dist/doc/latex/expl3/README index 81202555eaa..67059036d41 100644 --- a/Master/texmf-dist/doc/latex/expl3/readme.txt +++ b/Master/texmf-dist/doc/latex/expl3/README @@ -1,9 +1,8 @@ - Experimental Packages Demonstrating - A Possible LaTeX3 Programming Convention - ======================================== + An Experimental LaTeX3 Programming Convention + ============================================= - 2008/08/05 + 2009/06/02 WHERE TO GET IT @@ -29,13 +28,10 @@ This API provides the foundation on which the LaTeX3 kernel and other advanced extensions are built. Special care has been taken so that they can be used within a LaTeX2e context as regular packages. -While the existing code is approaching a stable state, we cannot -guarantee that names of packages or commands they define will not -change. This is also related to the history of the code: It has been -developed over time and has been used in previous versions for -prototypes implementations, experiments, etc. It may therefore -occasionally contain references to parts that are at present not -distributed. +While expl3 is still experimental, the bundle is now regarded as +broadly stable. The syntax conventions and functions provided are now +ready for wider use. There may still be changes to some functions, but +these will be minor when compared to the scope of expl3. THE GUILTY PERSONS @@ -43,7 +39,8 @@ THE GUILTY PERSONS Frank Mittelbach, Denys Duchier, Johannes Braams, Michael Downes, David Carlisle, Alan Jeffrey, Chris Rowley, Rainer Schoepf - Javier Bezos, Morten Hoegholm, Thomas Lotze + Javier Bezos, Morten Hoegholm, Thomas Lotze, Will Robertson, + Joseph Wright DISCUSSION @@ -117,11 +114,11 @@ l3toks TeX's token registers. (Can be compiled with checking enabled) -l3tlp +l3tl ===== -Token List Pointers. A basic LaTeX3 datatype for storing token lists. -(These are essentially macros with no arguments.) The module also +Token Lists and Token List variables, a basic LaTeX3 datatype for storing +token lists. (These are essentially macros with no arguments.) The module also provides functions for arbitrary token lists. (Package can be compiled with checking enabled.) @@ -208,11 +205,10 @@ Module providing the low-level interface for cross references. This module also contains a test file which is generated along with the package. -l3messages +l3msg ===== -Module providing a new mechanism to provide longer warning and error -messages based on storing the messages in external files. +Module providing a new mechanism to provide user messages. l3calc ===== @@ -253,11 +249,21 @@ l3final.dtx This file is reserved for the last minute coding for producing a format (such as the dump instruction). +l3format.ins +============ + +Process with plain TeX or LaTeX2e to generate the experimental +format file lbase.ltx and its companion lbase.ini. +The run pdfetex --ini "*lbase.ini" to produce the experimental +format. + +===================================================================== + source3.tex =========== -Run this file with pdfLaTeX in extended mode: -pdflatex "*source3.tex" to produce the documentation. +Run this file with pdfLaTeX: +pdflatex source3 to produce the documentation. Doing this will produce three extra files (source3.ist, l3doc.cfg and l3full.cfg). The first of these is a style file for makeindex; the others or configuration files for the documentation class. @@ -269,47 +275,15 @@ After that run makeindex to produce the index, like so: makeindex -s source3.ist source3 and rerun LaTeX. -l3format.ins -============ - -Process with plain TeX or LaTeX2e to generate the experimental -format file lbase.ltx and its companion lbase.ini. -The run pdfetex --ini "*lbase.ini" to produce the experimental -format. - -===================================================================== - -Test Files -========== - -Two test files show the expansion module at work. - -test1.tex +expl3.dtx ========= -Test document showing the expansion module at work. - -test2.tex -========= - -The same test as the file test1, but this time the l3names package is -loaded with [removeoldnames]. This is useful for testing, but as it -breaks all LaTeX2 code, it is not so useful for documents. (For -example {document} would generate an error.) In this mode -\RequirePackage may be used to load further packages, as demonstrated -in this file, but any other LaTeX2 command is likely to fail. - -The option removeoldnames has been disabled temporarily and so this -test file is of limited use. - -test3.tex -========= - -This tests the io and precomp modules. - +This provides a single "load point" for the entire expl3 bundle. +Running pdflatex expl3.dtx will produce a general overview document +explaining the basics of expl3 programming. ===================================================================== ---- Copyright 1998 -- 2008 +--- Copyright 1998 -- 2009 The LaTeX3 Project. All rights reserved --- diff --git a/Master/texmf-dist/doc/latex/expl3/expl3.pdf b/Master/texmf-dist/doc/latex/expl3/expl3.pdf Binary files differindex 189b52ee082..0343e931674 100644 --- a/Master/texmf-dist/doc/latex/expl3/expl3.pdf +++ b/Master/texmf-dist/doc/latex/expl3/expl3.pdf diff --git a/Master/texmf-dist/doc/latex/expl3/l32eproc.pdf b/Master/texmf-dist/doc/latex/expl3/l32eproc.pdf Binary files differdeleted file mode 100644 index 2ccd85c6f1b..00000000000 --- a/Master/texmf-dist/doc/latex/expl3/l32eproc.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/expl3/l3obsolete.txt b/Master/texmf-dist/doc/latex/expl3/l3obsolete.txt new file mode 100644 index 00000000000..5c1073fe333 --- /dev/null +++ b/Master/texmf-dist/doc/latex/expl3/l3obsolete.txt @@ -0,0 +1,9 @@ +l3obsolete +========== + +This file lists expl3 commands that have been removed or +replaced with respect to the version on the TeX Live 2009 disk. + +========== + +Nothing yet!
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/expl3/l3obsolete2008.txt b/Master/texmf-dist/doc/latex/expl3/l3obsolete2008.txt new file mode 100644 index 00000000000..20b83ff0bcb --- /dev/null +++ b/Master/texmf-dist/doc/latex/expl3/l3obsolete2008.txt @@ -0,0 +1,296 @@ +l3obsolete2008 +============== + +This file lists expl3 commands that have been removed or +replaced with respect to the version on the TeX Live 2008 disk. + +========== + +\CodeStart -> \ExplSyntaxOn +\CodeStop -> \ExplSyntaxOff +\NamesStart -> \ExplSyntaxNamesOn +\NamesStop -> \ExplSyntaxNamesOff + +\cs_use:c -> \use:c +\use:cc -> \exp_args:cc + +\use_arg_i:n -> \use:n +\use_arg_i:nn -> \use_i:nn +\use_arg_i:nnn -> \use_i:nnn +\use_arg_i:nnnn -> \use_i:nnnn +\use_arg_i_ii:nn -> \use:nn + +\use_arg_i_after_else:nw -> \use_i_after_else:nw +\use_arg_i_after_fi:nw -> \use_i_after_fi:nw +\use_arg_i_after_or:nw -> \use_i_after_or:nw +\use_arg_i_after_orelse:nw -> \use_i_after_orelse:nw +\use_arg_i_delimit_by_q_nil:nw -> \use_i_delimit_by_q_nil:nw +\use_arg_i_delimit_by_q_stop:nw -> \use_i_delimit_by_q_stop:nw +\use_arg_i_delimit_by_q_recursion_stop:nw -> + \use_i_delimit_by_q_recursion_stop:nw + +\use_arg_ii:nn -> \use_ii:nn +\use_arg_ii:nnn -> \use_ii:nnn +\use_arg_ii:nnnn -> \use_ii:nnnn +\use_arg_iii:nnn -> \use_iii:nnn +\use_arg_iii:nnnn -> \use_iii:nnnn +\use_arg_iv:nnnn -> \use_iv:nnnn + +\cs_free:NTF -> \cs_if_free:NTF +\cs_free:NT -> \cs_if_free:NT +\cs_free:NF -> \cs_if_free:NF +\cs_free:cTF -> \cs_if_free:cTF +\cs_free:cT -> \cs_if_free:cT +\cs_free:cF -> \cs_if_free:cF + +\cs_really_free:cTF -> \cs_if_really_free:cTF +\cs_really_free:cT -> \cs_if_really_free:cT +\cs_really_free:cF -> \cs_if_really_free:cF + +\cs_if_eq_p:NN -> \cs_if_eq_name_p:NN +\chk_new_cs:N -> \chk_if_new_cs:N +\chk_exist_cs:N -> \chk_if_exist_cs:N +\chk_exist_cs:c -> \chk_if_exist_cs:c + +\cmd_declare:Nnn -> Undefined. Use \def:NNn instead. +\cmd_arg_list_build -> Undefined (auxiliary function used for the above). + +\tl_put_left:cx -> Undefined. Define your own, if you need it. +\tl_gput_left:cx -> Undefined. Ditto. +\tl_put_right:cc -> Undefined. Ditto. +\seq_gput_right:cc -> Undefined. Ditto. +\clist_gput_right:cc -> Undefined. Ditto. + +\token_to_string:N -> \token_to_str:N + + + + + + + +\let:NwN -> \cs_set_eq:NwN + +\def:No -> -> \cs_set_nopar:No +\gdef:No -> \cs_gset_nopar:No + + +\def:Npn -> \cs_set_nopar:Npn +\def:Npx -> \cs_set_nopar:Npx +\def:cpn -> \cs_set_nopar:cpn +\def:cpx -> \cs_set_nopar:cpx + +\def:NNn -> \cs_set_nopar:NNn +\def:NNx -> \cs_set_nopar:NNx +\def:cNn -> \cs_set_nopar:cNn +\def:cNx -> \cs_set_nopar:cNx + +\def_protected:Npn -> \cs_set_protected_nopar:Npn +\def_protected:Npx -> \cs_set_protected_nopar:Npx +\def_protected:cpn -> \cs_set_protected_nopar:cpn +\def_protected:cpx -> \cs_set_protected_nopar:cpx + +\def_protected:NNn -> \cs_set_protected_nopar:NNn +\def_protected:NNx -> \cs_set_protected_nopar:NNx +\def_protected:cNn -> \cs_set_protected_nopar:cNn +\def_protected:cNx -> \cs_set_protected_nopar:cNx + +\def_protected_long:Npn -> \cs_set_protected:Npn +\def_protected_long:Npx -> \cs_set_protected:Npx +\def_protected_long:cpn -> \cs_set_protected:cpn +\def_protected_long:cpx -> \cs_set_protected:cpx + +\def_protected_long:NNn -> \cs_set_protected:NNn +\def_protected_long:NNx -> \cs_set_protected:NNx +\def_protected_long:cNn -> \cs_set_protected:cNn +\def_protected_long:cNx -> \cs_set_protected:cNx + +\def_new:Npn -> \cs_new_nopar:Npn +\def_new:Npx -> \cs_new_nopar:Npx +\def_new:cpn -> \cs_new_nopar:cpn +\def_new:cpx -> \cs_new_nopar:cpx + +\def_new:NNn -> \cs_new_nopar:NNn +\def_new:NNx -> \cs_new_nopar:NNx +\def_new:cNn -> \cs_new_nopar:cNn +\def_new:cNx -> \cs_new_nopar:cNx + +\def_protected_new:Npn -> \cs_new_protected_nopar:Npn +\def_protected_new:Npx -> \cs_new_protected_nopar:Npx +\def_protected_new:cpn -> \cs_new_protected_nopar:cpn +\def_protected_new:cpx -> \cs_new_protected_nopar:cpx + +\def_protected_new:NNn -> \cs_new_protected_nopar:NNn +\def_protected_new:NNx -> \cs_new_protected_nopar:NNx +\def_protected_new:cNn -> \cs_new_protected_nopar:cNn +\def_protected_new:cNx -> \cs_new_protected_nopar:cNx + +\def_protected_long_new:Npn -> \cs_new_protected:Npn +\def_protected_long_new:Npx -> \cs_new_protected:Npx +\def_protected_long_new:cpn -> \cs_new_protected:cpn +\def_protected_long_new:cpx -> \cs_new_protected:cpx + +\def_protected_long_new:NNn -> \cs_new_protected:NNn +\def_protected_long_new:NNx -> \cs_new_protected:NNx +\def_protected_long_new:cNn -> \cs_new_protected:cNn +\def_protected_long_new:cNx -> \cs_new_protected:cNx + +\def_long:Npn -> \cs_set:Npn +\def_long:Npx -> \cs_set:Npx +\def_long:cpn -> \cs_set:cpn +\def_long:cpx -> \cs_set:cpx + +\def_long:NNn -> \cs_set:NNn +\def_long:NNx -> \cs_set:NNx +\def_long:cNn -> \cs_set:cNn +\def_long:cNx -> \cs_set:cNx + +\def_long_new:Npn -> \cs_new:Npn +\def_long_new:Npx -> \cs_new:Npx +\def_long_new:cpn -> \cs_new:cpn +\def_long_new:cpx -> \cs_new:cpx + +\def_long_new:NNn -> \cs_new:NNn +\def_long_new:NNx -> \cs_new:NNx +\def_long_new:cNn -> \cs_new:cNn +\def_long_new:cNx -> \cs_new:cNx + + +\gdef:Npn -> \cs_gset_nopar:Npn +\gdef:Npx -> \cs_gset_nopar:Npx +\gdef:cpn -> \cs_gset_nopar:cpn +\gdef:cpx -> \cs_gset_nopar:cpx + +\gdef:NNn -> \cs_gset_nopar:NNn +\gdef:NNx -> \cs_gset_nopar:NNx +\gdef:cNn -> \cs_gset_nopar:cNn +\gdef:cNx -> \cs_gset_nopar:cNx + +\gdef_protected:Npn -> \cs_gset_protected_nopar:Npn +\gdef_protected:Npx -> \cs_gset_protected_nopar:Npx +\gdef_protected:cpn -> \cs_gset_protected_nopar:cpn +\gdef_protected:cpx -> \cs_gset_protected_nopar:cpx + +\gdef_protected:NNn -> \cs_gset_protected_nopar:NNn +\gdef_protected:NNx -> \cs_gset_protected_nopar:NNx +\gdef_protected:cNn -> \cs_gset_protected_nopar:cNn +\gdef_protected:cNx -> \cs_gset_protected_nopar:cNx + +\gdef_protected_long:Npn -> \cs_gset_protected:Npn +\gdef_protected_long:Npx -> \cs_gset_protected:Npx +\gdef_protected_long:cpn -> \cs_gset_protected:cpn +\gdef_protected_long:cpx -> \cs_gset_protected:cpx + +\gdef_protected_long:NNn -> \cs_gset_protected:NNn +\gdef_protected_long:NNx -> \cs_gset_protected:NNx +\gdef_protected_long:cNn -> \cs_gset_protected:cNn +\gdef_protected_long:cNx -> \cs_gset_protected:cNx + +\gdef_protected_long_new:Npn -> \cs_gnew_protected:Npn +\gdef_protected_long_new:Npx -> \cs_gnew_protected:Npx +\gdef_protected_long_new:cpn -> \cs_gnew_protected:cpn +\gdef_protected_long_new:cpx -> \cs_gnew_protected:cpx + +\gdef_protected_long_new:NNn -> \cs_gnew_protected:NNn +\gdef_protected_long_new:NNx -> \cs_gnew_protected:NNx +\gdef_protected_long_new:cNn -> \cs_gnew_protected:cNn +\gdef_protected_long_new:cNx -> \cs_gnew_protected:cNx + +\gdef_long:Npn -> \cs_gset:Npn +\gdef_long:Npx -> \cs_gset:Npx +\gdef_long:cpn -> \cs_gset:cpn +\gdef_long:cpx -> \cs_gset:cpx + +\gdef_long:NNn -> \cs_gset:NNn +\gdef_long:NNx -> \cs_gset:NNx +\gdef_long:cNn -> \cs_gset:cNn +\gdef_long:cNx -> \cs_gset:cNx + +\gdef_new:Npn -> \cs_gnew_nopar:Npn +\gdef_new:Npx -> \cs_gnew_nopar:Npx +\gdef_new:cpn -> \cs_gnew_nopar:cpn +\gdef_new:cpx -> \cs_gnew_nopar:cpx + +\gdef_new:NNn -> \cs_gnew_nopar:NNn +\gdef_new:NNx -> \cs_gnew_nopar:NNx +\gdef_new:cNn -> \cs_gnew_nopar:cNn +\gdef_new:cNx -> \cs_gnew_nopar:cNx + +\gdef_protected_new:Npn -> \cs_gnew_protected_nopar:Npn +\gdef_protected_new:Npx -> \cs_gnew_protected_nopar:Npx +\gdef_protected_new:cpn -> \cs_gnew_protected_nopar:cpn +\gdef_protected_new:cpx -> \cs_gnew_protected_nopar:cpx + +\gdef_protected_new:NNn -> \cs_gnew_protected_nopar:NNn +\gdef_protected_new:NNx -> \cs_gnew_protected_nopar:NNx +\gdef_protected_new:cNn -> \cs_gnew_protected_nopar:cNn +\gdef_protected_new:cNx -> \cs_gnew_protected_nopar:cNx + +\gdef_long_new:Npn -> \cs_gnew:Npn +\gdef_long_new:Npx -> \cs_gnew:Npx +\gdef_long_new:cpn -> \cs_gnew:cpn +\gdef_long_new:cpx -> \cs_gnew:cpx + +\gdef_long_new:NNn -> \cs_gnew:NNn +\gdef_long_new:NNx -> \cs_gnew:NNx +\gdef_long_new:cNn -> \cs_gnew:cNn +\gdef_long_new:cNx -> \cs_gnew:cNx + +\let:NN -> \cs_set_eq:NN +\let:Nc -> \cs_set_eq:Nc +\let:cN -> \cs_set_eq:cN +\let:cc -> \cs_set_eq:cc + +\glet:NN -> \cs_gset_eq:NN +\glet:Nc -> \cs_gset_eq:Nc +\glet:cN -> \cs_gset_eq:cN +\glet:cc -> \cs_gset_eq:cc + +\let_new:NN -> \cs_new_eq:NN +\let_new:Nc -> \cs_new_eq:Nc +\let_new:cN -> \cs_new_eq:cN +\let_new:cc -> \cs_new_eq:cc + +\glet_new:NN -> \cs_gnew_eq:NN +\glet_new:Nc -> \cs_gnew_eq:Nc +\glet_new:cN -> \cs_gnew_eq:cN +\glet_new:cc -> \cs_gnew_eq:cc + + + + + + + +%% Copyright (C) 1990-2009 LaTeX3 project +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License (LPPL), either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in the file +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This file is part of the ``expl3 bundle'' (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% The released version of this bundle is available from CTAN. +%% +%% ----------------------------------------------------------------------- +%% +%% The development version of the bundle can be found at +%% +%% http://www.latex-project.org/svnroot/experimental/trunk/ +%% +%% for those people who are interested. +%% +%%%%%%%%%%% +%% NOTE: %% +%%%%%%%%%%% +%% +%% Snapshots taken from the repository represent work in progress and may +%% not work or may contain conflicting material! We therefore ask +%% people _not_ to put them into distributions, archives, etc. without +%% prior consultation with the LaTeX Project Team. +%% +%% -----------------------------------------------------------------------
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/expl3/readme-dev.txt b/Master/texmf-dist/doc/latex/expl3/readme-dev.txt new file mode 100644 index 00000000000..bae4259fe22 --- /dev/null +++ b/Master/texmf-dist/doc/latex/expl3/readme-dev.txt @@ -0,0 +1,120 @@ + + The EXPL3 bundle for LaTeX3 Programming + ======================================= + +GETTING STARTED for developers +------------------------------ + +Welcome! +This is a short guide to how the expl3 bundle is set up, +and how you can get started programming with and +contributing to it. + +First, some signposts: +Email discussion list <http://news.gmane.org/gmane.comp.tex.latex.latex3> +SVN repository <http://www.latex-project.org/svnroot/experimental/trunk/> +SVN repository RRS feed <http://www.latex-project.org/latex3svn.rss> + +Those interested in receiving emails containing the diff +of every commit to the repository should ask on the discussion list. + +For more information, please look in the official README +and in the documentation expl3.pdf. + + +INSTALLATION +------------ + +When you pull down the SVN repository, you'll generally +want two things: the actual packages files so you can +use the `expl3` bundle, and the documentation. + +## Obtaining the code in the SVN repository + +Execute something like this: + + mkdir l3svn + svn checkout http://www.latex-project.org/svnroot/experimental/trunk/ l3svn + +This will give you both the xpackages and the expl3 bundle +contained within the `l3in2e/` directory, plus a few extras. +This readme only concerns the expl3 bundle. + + +## Package files + +Install `expl3` in your local texmf directory with + + make localinstall + +The installation directory is detected automatically, +and in a normal TeXLive distribution will be used +in preference to any existing `expl3` code directory. +(I.e., after the above command your regular documents +will use the new versions of the modules.) + + +## Documentation + +For an individual module, generate the documentation with + + make doc F=<module> + +For example, `make doc F=l3quark`. This will produce +`l3quark.pdf`, which includes the documentation for that +module and its implementation source code. + +To generate the complete reference documentation for +the `expl3` bundle, source3.pdf: + + make sourcedoc + +Note that source3.pdf does not include the modules' +implementation source code; therefore, source3.pdf is a +rough subset (plus index) of the complete set of typeset +module PDFs. + +To generate `source3.pdf` and the documentation for +each module, run + + make alldoc + + +HACKING +------- + +There are two main things you need to know when making +changes to the expl3 bundle. + +1. We have a regression test suite +2. Don't break it + +To make sure things are working, run + + make check + +If you change something, run that again. All working? Great! +Please send your diffs to the discussion list and we can talk +about adding your code. + +You can find more information about the test suite in + + l3in2e/testfiles/README.txt + +On a less critical level, we also have a method to check +that our documentation is somewhat self-consistent. Run + + make checkdoc + +and each module will be compiled and verified that what +is defined in the module is also documented. + +Note that it only checks what we *claim* we are defining +in the documentation; it does not literally check the code. +It will also check that each module's documentation +still compiles without errors. + + +--- Copyright 1998 -- 2009 + The LaTeX3 Project. All rights reserved --- + diff --git a/Master/texmf-dist/doc/latex/expl3/source3.pdf b/Master/texmf-dist/doc/latex/expl3/source3.pdf Binary files differindex 29d7985fe97..6cfe59cae8f 100644 --- a/Master/texmf-dist/doc/latex/expl3/source3.pdf +++ b/Master/texmf-dist/doc/latex/expl3/source3.pdf |