diff options
author | Karl Berry <karl@freefriends.org> | 2012-04-19 22:11:12 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-04-19 22:11:12 +0000 |
commit | 675f5610ee1595b20a9e77695a8aad5eb1ef9a2b (patch) | |
tree | 10f31614fd1ce80405b7f5624f77c446b4cba9f3 | |
parent | bc21d95b0a1c5234f88041d0840e45e072357072 (diff) |
context-filter (19apr12)
git-svn-id: svn://tug.org/texlive/trunk@26057 c570f23f-e606-0410-a88d-b1316a301751
3 files changed, 86 insertions, 26 deletions
diff --git a/Master/texmf-dist/doc/context/third/filter/filter.txt b/Master/texmf-dist/doc/context/third/filter/filter.txt index b2a28a3e534..1560d93fa3a 100644 --- a/Master/texmf-dist/doc/context/third/filter/filter.txt +++ b/Master/texmf-dist/doc/context/third/filter/filter.txt @@ -204,6 +204,49 @@ Sometimes, it is desirable to ignore the output, which is done by read=no, ...] +Space around the environment +---------------------------- + +By default, the `\start<...>` ... `\stop<...>` and the `\type<...>file{...}` +variant displays the output is _paragraph_ mode (i.e., inserts blanks before and +after the environment), while the `\inline{...}` variant reads the output in +_text_ mode (i.e., does not insert blanks before or after the environment). + +To change the amount of space inserted before and after the environment, use the +`spacebefore` and the `spaceafter` keys. For example, if you want big spaces +around the environment use: + + \defineexternalfilter + [...] + [.... + spacebefore=big, + spaceafter=big, + ...] + +The `spacebefore` and `spaceafter` keys accept all values accepted by the +`\blank[...]` macro. + +In the paragraph mode, the next line after `\stop<...>` is indented or not based +on the value of the `indentnext` key. The default value is `auto` which indents +the next line if there is an empty line after `\stop<...>`; other options are +`no`, which never indents the next line and `yes` whcih always indents the next +line. + +If you want the `\start<...>` ... `\stop<...>` and the `\type<...>file{...}` +variant to behave in _text_ mode, set: + + \defineexternalfilter + [...] + [.... + location=text, + ...] + +(The default value of `location` is `paragraph`). + +**Note** that `locatiion=text` is not equivalent to `\inline{...}`. Inline also +sets `\endlinechar=\minusone`; therefore no space is inserted when the file is +read. `location=text` does not change `\endlinechar`. Therefore a space is +inserted after the file is read. Names of temporary files ------------------------ @@ -312,21 +355,25 @@ Standard options `\defineexternalfilter` accepts the following standard options: -- `before` and `after`: to set the spacing of the environment or enclose the - output in a frame, etc. +- `spacebefore` and `spaceafter` to specify the blank space to be used + before and after the environment. +- `before` and `after`: to enclose the output in a frame, etc. - `style` and `color`: to set the color and style of the output. -- `indentnext`: specify if the next line is indented +- `indentnext`: specify if the next line is indented (only if `location` is + `paragraph`). - `setups`: specify a list of setups (defined using `\startsetups`). These setups may be used to define commands that are needed inside the environment. The order in which these options are executed are: -1. `before` -2. `style` and `color` -3. `setups` -4. `readcommand` -5. `after` -6. check `indentnext` +1. `\blank[spacebefore]` +2. `before` +3. `style` and `color` +4. `setups` +5. `readcommand` +6. `after` +7. `\blank[afterspace]` +8. check `indentnext` Options to a specific environment --------------------------------- @@ -798,3 +845,5 @@ Version History - Added `purge=yes|no` to control if the input file is deleted or not - **2012.03.18** - Process remote files +- **2012.04.18** + - Added `location`, `spacebefore` and `spaceafter` keys. diff --git a/Master/texmf-dist/tex/context/third/filter/t-filter.mkii b/Master/texmf-dist/tex/context/third/filter/t-filter.mkii index de772ec3bd3..46bdf247971 100644 --- a/Master/texmf-dist/tex/context/third/filter/t-filter.mkii +++ b/Master/texmf-dist/tex/context/third/filter/t-filter.mkii @@ -1,6 +1,6 @@ %D \module %D [ file=t-filter, -%D version=2012.01.26, +%D version=2012.04.18, %D title=\CONTEXT\ User Module, %D subtitle=Filter, %D author=Aditya Mahajan, @@ -9,7 +9,7 @@ %D email=adityam <at> ieee <dot> org, %D license=Simplified BSD License] -\writestatus{loading}{Filter (ver: 2012.01.26)} +\writestatus{loading}{Filter (ver: 2012.04.18)} \ifx\undefined\normalexpanded \let\normalexpanded\expanded \fi @@ -132,9 +132,9 @@ % #2 = options \egroup %\bgroup in \start#1 + \begingroup % to keep assignments local \edef\externalfilter@name{#1} - \begingroup % to keep assignments local \setupexternalfilter[#1][\c!name=,#2] \externalfilter@set_filenames @@ -201,10 +201,10 @@ \stoptexdefinition \starttexdefinition externalfilter@inline [#1][#2] + \begingroup % to keep assignments local \edef\externalfilter@name{#1} - \begingroup % to keep assignments local - \setupexternalfilter[#1][\c!numbering=,\c!name=,\c!before=,\c!after=,#2] + \setupexternalfilter[#1][\c!numbering=,\c!name=,\c!location=\v!text,#2] \externalfilter@set_filenames @@ -402,6 +402,8 @@ \stoptexdefinition \starttexdefinition externalfilter@read_processed_file_indeed + \doif{\externalfilterparameter\c!location}\v!paragraph + {\blank[\externalfilterparameter\c!spacebefore]}% \externalfilterparameter\c!before \begingroup @@ -412,14 +414,19 @@ \endgroup \externalfilterparameter\c!after + \doif{\externalfilterparameter\c!location}\v!paragraph + {\blank[\externalfilterparameter\c!spaceafter]}% \stoptexdefinition %D \section {Default Values} \setupexternalfilters [ + \c!location=\v!paragraph, \c!before=, \c!after=, + \c!spacebefore=, + \c!spaceafter=, \c!style=, \c!color=, \c!indentnext=\v!auto, @@ -436,10 +443,6 @@ \c!buffer\c!after=, ] -\doifmodeelse{reuse} - {\setupexternalfilters[state=stop]} - {\setupexternalfilters[state=start]} - \def\externalfilterbasefile {\externalfilter@base_file} \def\externalfilterinputfile {\externalfilter@input_file} \def\externalfilteroutputfile{\externalfilter@output_file} diff --git a/Master/texmf-dist/tex/context/third/filter/t-filter.mkiv b/Master/texmf-dist/tex/context/third/filter/t-filter.mkiv index c5b5e15bf3e..d4d4b7a66cf 100644 --- a/Master/texmf-dist/tex/context/third/filter/t-filter.mkiv +++ b/Master/texmf-dist/tex/context/third/filter/t-filter.mkiv @@ -1,6 +1,6 @@ %D \module %D [ file=t-filter, -%D version=2012.03.18, +%D version=2012.04.18, %D title=\CONTEXT\ User Module, %D subtitle=Filter, %D author=Aditya Mahajan, @@ -9,7 +9,7 @@ %D email=adityam <at> ieee <dot> org, %D license=Simplified BSD License] -\writestatus{loading}{Filter (ver: 2012.03.18)} +\writestatus{loading}{Filter (ver: 2012.04.18)} % For backward compatibility \ifx\grabbufferdata\undefined \let\grabbufferdata \dostartbuffer \fi @@ -117,9 +117,9 @@ % #2 = options \egroup %\bgroup in \externalfilter@start + \begingroup % to keep assignments local \edef\currentexternalfilter{#1} - \begingroup % to keep assignments local \setupexternalfilter[#1][\c!name=,#2] \externalfilter@set_filenames @@ -192,10 +192,10 @@ {\dodoubleargument\externalfilter@inline_indeed} \starttexdefinition externalfilter@inline_indeed [#1][#2] + \begingroup % to keep assignments local \edef\currentexternalfilter{#1} - \begingroup % to keep assignments local - \setupexternalfilter[#1][\c!numbering=,\c!name=,\c!before=,\c!after=,#2] + \setupexternalfilter[#1][\c!numbering=,\c!name=,\c!location=\v!text,#2] \externalfilter@set_filenames @@ -375,10 +375,11 @@ % Finalization \doifinset{\externalfilterparameter\c!cache}{\v!yes,\v!force} {\doglobal\expandafter\increment\csname\externalfilter@count\endcsname} - \endgroup - \expanded{\checknextindentation[\externalfilterparameter\c!indentnext]} - \dorechecknextindentation + \doif{\externalfilterparameter\c!location}\v!paragraph + {\expanded{\checknextindentation[\externalfilterparameter\c!indentnext]} + \dorechecknextindentation} + \endgroup \stoptexdefinition %D \subsubject {Execute Filter} @@ -415,6 +416,8 @@ \stoptexdefinition \starttexdefinition externalfilter@read_processed_file_indeed + \doif{\externalfilterparameter\c!location}\v!paragraph + {\blank[\externalfilterparameter\c!spacebefore]}% \externalfilterparameter\c!before \begingroup @@ -427,14 +430,19 @@ \endgroup \externalfilterparameter\c!after + \doif{\externalfilterparameter\c!location}\v!paragraph + {\blank[\externalfilterparameter\c!spaceafter]}% \stoptexdefinition %D \section {Default Values} \setupexternalfilters [ + \c!location=\v!paragraph, \c!before=, \c!after=, + \c!spacebefore=, + \c!spaceafter=, \c!style=, \c!color=, \c!indentnext=\v!auto, |