summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/yax
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-07-11 01:02:19 +0000
committerKarl Berry <karl@freefriends.org>2010-07-11 01:02:19 +0000
commit0baee1132ce277d359c0b7466f457099243984e1 (patch)
tree72e5102e25f19d01df23ca624591a85c91cadc52 /Master/texmf-dist/doc/generic/yax
parent03170d5abeac0fc65b591f3177205c770f3220bc (diff)
yax update (10jul10)
git-svn-id: svn://tug.org/texlive/trunk@19360 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/generic/yax')
-rw-r--r--Master/texmf-dist/doc/generic/yax/README2
-rw-r--r--Master/texmf-dist/doc/generic/yax/yax-doc.pdfbin118088 -> 122921 bytes
-rw-r--r--Master/texmf-dist/doc/generic/yax/yax-doc.tex70
3 files changed, 48 insertions, 24 deletions
diff --git a/Master/texmf-dist/doc/generic/yax/README b/Master/texmf-dist/doc/generic/yax/README
index 21040a05a00..8a87c10a42a 100644
--- a/Master/texmf-dist/doc/generic/yax/README
+++ b/Master/texmf-dist/doc/generic/yax/README
@@ -2,7 +2,7 @@ This is the README file for the YaX package.
Author: Paul Isambert.
E-mail: zappathustra AT free DOT fr
Comments and suggestions are welcome.
-Date: June 2010.
+Date: July 2010.
The package is a format-independent key system,
with some peculiarities.
diff --git a/Master/texmf-dist/doc/generic/yax/yax-doc.pdf b/Master/texmf-dist/doc/generic/yax/yax-doc.pdf
index 23eef84a30c..c0de8b0ddb4 100644
--- a/Master/texmf-dist/doc/generic/yax/yax-doc.pdf
+++ b/Master/texmf-dist/doc/generic/yax/yax-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/yax/yax-doc.tex b/Master/texmf-dist/doc/generic/yax/yax-doc.tex
index 45ce047d1ee..8ac6af50695 100644
--- a/Master/texmf-dist/doc/generic/yax/yax-doc.tex
+++ b/Master/texmf-dist/doc/generic/yax/yax-doc.tex
@@ -4,7 +4,7 @@
author = "Paul Isambert"
title = \yax
pdftitle = YaX
- version = 1.0
+ version = \yaxversion
date = "\the\month/\the\day/\the\year"
display = outlines
subject = "The YaX documentation."
@@ -57,7 +57,8 @@
\def#1{\arg{#2}\kern1pt\antigobblespace}%
}
\defarg\param{parameter} \defarg\paralist{list of parameters}
-\defarg\attr{attribute} \def\paramatt{\param\kern-1pt\tcode:\attr\antigobblespace}
+\defarg\attr{attribute} \defarg\attrlist{list of attributes}
+\def\paramatt{\param\kern-1pt\tcode:\attr\antigobblespace}
\defarg\attrlist{list of attributes} \defarg\vallist{list of values}
\defarg\value{value} \defarg\ospace{optional space}
\defarg\andvalue{value exists} \defarg\orvalue{no value}
@@ -146,6 +147,11 @@ or \verb/\usemodule[yax]/ respectively; anywhere else just use \verb/\input yax/
+\describe!\yaxversion.
+Starting with version 1.01, this macro holds \yax's version. Current is \yaxversion.
+
+
+
\section{Setting parameters}
@@ -169,8 +175,8 @@ Its simplified syntax is as follows:
\syntax
\noindent\com\setparameter \paralist\ :
- \attr\ = \value
- \attr\ = \value
+ \attrlist\ = \value
+ \attrlist\ = \value
...
\noindent\com\par
\syntax/
@@ -211,24 +217,25 @@ by default it does the same thing as using one big \com\setparameter. I say
parameter might be active and have deleted its own attributes after the first
call, which anyway is something we'll see later.
-Each \attr is made of the same thing as \param: i.e. anything expandable.
-However, an \attr cannot have a name beginning with the strings \verb/e:/,
-\verb/g:/ and \verb/x:/. Indeed, these prefixes are used to specify
-how an attribute is to be defined, and they are similar to \com\edef,
+Like \paralist, \attrlist is a list of space-delimited attributes.
+Each \attr is made of the same thing as a \param: i.e. anything expandable.
+However, at the beginning of a \attrlist, the strings \verb/e:/, \verb/g:/ and \verb/x:/
+have a special meaning: these prefixes are used to specify
+how an attribute or list of attributes is to be defined, and they are similar to \com\edef,
\com\gdef and \com\xdef (with no prefix meaning \com\def), i.e.:
\example
\setparameter foo :
- one = \whatever
- e: two = \whatever
- g: three = \whatever
- x: four = \whatever
+ one = \whatever
+ e: two = \whatever
+ g: three = \whatever
+ x: four five = \whatever
\example/
\noindent defines, for the parameter \verb/foo/, the attributes \verb/one/
-and \verb/three/ as \com\whatever and the attributes \verb/two/ and \verb/four/
+and \verb/three/ as \com\whatever and the attributes \verb/two/, \verb/four/ and \verb/five/
as the full expansion of \com\whatever; moreover, \verb/one/ and \verb/two/
-are locally defined, whereas \verb/three/ and \verb/four/ are globally
+are locally defined, whereas \verb/three/, \verb/four/ and \verb/five/ are globally
defined. The space between the prefix and the name of the parameter is
optional.
@@ -237,7 +244,7 @@ a space, e.g.:
\example
\setparameter Zappa :
- first name = Frank
+ firstname = Frank
motto = {Music is the best}
...
\example/
@@ -253,7 +260,7 @@ Otherwise, \arg{value} can be given between double quotes:
\example
\setparameter Zappa :
- first name = "Frank"
+ firstname = "Frank"
motto = "Music is the best"
hairstyle = "\mustache"
\example/
@@ -262,7 +269,7 @@ Otherwise, \arg{value} can be given between double quotes:
end of the line is optional and the following can be done:
\example
-\setparameter Zappa:first name="Frank"motto="Music is the best"...\par
+\setparameter Zappa:firstname="Frank"motto="Music is the best"...\par
\example/
\noindent Finally, there's a special rule. Control sequences gobble the
@@ -318,8 +325,9 @@ in an orderly fasion, e.g.:
\example
\setparameter page :
- pagewidth = 32cm
- pageheight = 30cm
+ pagewidth = 30cm
+ pageheight = 32cm
+ top bottom = 2cm
lines = 45
whatever = \foo
...
@@ -333,9 +341,21 @@ in an orderly fasion, e.g.:
\noindent Thus, I find commas to delimit values equally superfluous and find
the odd quote better. Anyway setting parameters is far from the whole story.
+But before turning to how to use them, here's on fast way of setting a single attribute:
-
-
+\describe\setattribute\paramatt=\value\arg{space}.
+\describe\esetattribute\paramatt=\value\arg{space}.
+\describe\gsetattribute\paramatt=\value\arg{space}.
+\describe\xsetattribute\paramatt=\value\arg{space}.
+This sets \attr (no list) for \param (no list) to \value; see
+below for the \paramatt syntax. Note that the \arg{space} is for real,
+so don't forget it. The `=' sign may be surrounded by optional space.
+This command can be used instead of \com\setparameter for two reasons:
+first, it is much faster (because it doesn't take lists into account);
+second, if \param is active it is \ital{not} executed (see the section
+\pdfstartlink attr{/B [0 0 0]} goto name{defpar} \ital{Defining parameters}\pdfendlink).
+The \verb"e-", \verb"g-" and \verb"x-"versions sets the attribute
+with the \verb"e:", \verb"g:" and \verb"x:" prefixes respectively.
@@ -692,6 +712,7 @@ you redefine the default commands, which is dangerous.
To be precise, the commands copied are (omitting the \verb/-or/
and \verb/-and/ variants, which are created too, if any):
+\com\setattribute, \com\esetattribute, \com\gsetattribute, \com\xsetattribute,
\com\ifattribute, \com\usevalue, \com\passvalue, \com\passvaluenobraces,
\com\settovalue, \com\storevalue, \com\ifvalue, \com\ifcasevalue,
\com\deleteattribute and \com\restrictattribute (which you'll learn
@@ -779,8 +800,8 @@ only the former restriction holds. E.g.:
-
\section{Defining parameters}
+\pdfdest name {defpar} xyz
\describe\defparameter\paralist\barg{definition}.
Parameters aren't just a way of organizing attributes. They
@@ -848,7 +869,10 @@ Fascinating. Once again?
Cool.
\Example/
-\vskip-2\baselineskip
+
+{\it\noindent See next page for the last example.}
+
+
\Example
\setparameter metasection :
skip = 2