Changeset 599dc6a for doc/user


Ignore:
Timestamp:
Jun 30, 2023, 1:48:33 PM (2 years ago)
Author:
caparsons <caparson@…>
Branches:
master
Children:
4bae7b4
Parents:
c9019ce (diff), 48ee593 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

Location:
doc/user
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • doc/user/Makefile

    rc9019ce r599dc6a  
    6868        -${BibTeX} ${Build}/${basename $@}
    6969        # Some citations reference others so run again to resolve these citations
    70 #       ${LaTeX} ${basename $@}.tex
    71         -${BibTeX} ${Build}/${basename $@}
     70        ${LaTeX} ${basename $@}.tex
     71#       -${BibTeX} ${Build}/${basename $@}
    7272        # Make index from *.aux entries and input index at end of document
    7373        makeindex -s ${Macros}/indexstyle ${Build}/${basename $@}.idx
  • doc/user/user.tex

    rc9019ce r599dc6a  
    1111%% Created On       : Wed Apr  6 14:53:29 2016
    1212%% Last Modified By : Peter A. Buhr
    13 %% Last Modified On : Mon Jun  5 21:18:29 2023
    14 %% Update Count     : 5521
     13%% Last Modified On : Thu Jun 29 21:52:51 2023
     14%% Update Count     : 5533
    1515%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1616
     
    39813981
    39823982The following \Index{manipulator}s control \Index{implicit output separation}.
    3983 The effect of these manipulators is global for an output stream (except ©sepOn© and ©sepOff©).
     3983The effect of these manipulators is global for an output stream (except ©sep© and ©nosep©).
    39843984\begin{enumerate}
    39853985\item
    3986 \Indexc{sepSet}\index{manipulator!sepSet@©sepSet©} and \Indexc{sep}\index{manipulator!sep@©sep©}/\Indexc{sepGet}\index{manipulator!sepGet@©sepGet©} set and get the separator string.
     3986\Indexc{sepSet}\index{manipulator!sepSet@©sepSet©} and \Indexc{sepVal}\index{manipulator!sepVal@©sepVal©}/\Indexc{sepGet}\index{manipulator!sepGet@©sepGet©} set and get the separator string.
    39873987The separator string can be at most 16 characters including the ©'\0'© string terminator (15 printable characters).
    39883988\begin{cfa}[belowskip=0pt]
    39893989sepSet( sout, ", $\LstStringStyle{\textdollar}$" ); $\C{// set separator from " " to ", \$"}$
    3990 sout | 1 | 2 | 3 | " \"" | ®sep® | "\"";
     3990sout | 1 | 2 | 3 | " \"" | ®sepVal® | "\"";
    39913991\end{cfa}
    39923992\begin{cfa}[showspaces=true,aboveskip=0pt]
    3993 1®, $\LstStringStyle{\textdollar}$®2®, $\LstStringStyle{\textdollar}$®3 ®", $\LstStringStyle{\textdollar}$"®
     39931®, $\color{red}\LstStringStyle{\textdollar}$®2®, $\color{red}\LstStringStyle{\textdollar}$®3 ®", $\color{red}\LstStringStyle{\textdollar}$"®
    39943994\end{cfa}
    39953995\begin{cfa}[belowskip=0pt]
     
    40194019
    40204020\item
    4021 \Indexc{sepSetTuple}\index{manipulator!sepSetTuple@©sepSetTuple©} and \Indexc{sepTuple}\index{manipulator!sepTuple@©sepTuple©}/\Indexc{sepGetTuple}\index{manipulator!sepGetTuple@©sepGetTuple©} get and set the tuple separator-string.
     4021\Indexc{sepSetTuple}\index{manipulator!sepSetTuple@©sepSetTuple©} and \Indexc{sepTupleVal}\index{manipulator!sepTupleVal@©sepTupleVal©}/\Indexc{sepGetTuple}\index{manipulator!sepGetTuple@©sepGetTuple©} get and set the tuple separator-string.
    40224022The tuple separator-string can be at most 16 characters including the ©'\0'© string terminator (15 printable characters).
    40234023\begin{cfa}[belowskip=0pt]
    40244024sepSetTuple( sout, " " ); $\C{// set tuple separator from ", " to " "}$
    4025 sout | t1 | t2 | " \"" | ®sepTuple® | "\"";
     4025sout | t1 | t2 | " \"" | ®sepTupleVal® | "\"";
    40264026\end{cfa}
    40274027\begin{cfa}[showspaces=true,aboveskip=0pt]
     
    40384038
    40394039\item
    4040 \Indexc{sepDisable}\index{manipulator!sepDisable@©sepDisable©} and \Indexc{sepEnable}\index{manipulator!sepEnable@©sepEnable©} globally toggle printing the separator.
     4040\Indexc{sepOff}\index{manipulator!sepOff@©sepOff©} and \Indexc{sepOn}\index{manipulator!sepOn@©sepOn©} globally toggle printing the separator.
    40414041\begin{cfa}[belowskip=0pt]
    4042 sout | sepDisable | 1 | 2 | 3; $\C{// turn off implicit separator}$
     4042sout | ®sepOff® | 1 | 2 | 3; $\C{// turn off implicit separator}$
    40434043\end{cfa}
    40444044\begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt]
     
    40464046\end{cfa}
    40474047\begin{cfa}[belowskip=0pt]
    4048 sout | sepEnable | 1 | 2 | 3; $\C{// turn on implicit separator}$
     4048sout | ®sepOn® | 1 | 2 | 3; $\C{// turn on implicit separator}$
    40494049\end{cfa}
    40504050\begin{cfa}[mathescape=off,showspaces=true,aboveskip=0pt,belowskip=0pt]
     
    40534053
    40544054\item
    4055 \Indexc{sepOn}\index{manipulator!sepOn@©sepOn©} and \Indexc{sepOff}\index{manipulator!sepOff@©sepOff©} locally toggle printing the separator with respect to the next printed item, and then return to the global separator setting.
     4055\Indexc{sep}\index{manipulator!sep@©sep©} and \Indexc{nosep}\index{manipulator!nosep@©nosep©} locally toggle printing the separator with respect to the next printed item, and then return to the global separator setting.
    40564056\begin{cfa}[belowskip=0pt]
    4057 sout | 1 | sepOff | 2 | 3; $\C{// turn off implicit separator for the next item}$
     4057sout | 1 | ®nosep® | 2 | 3; $\C{// turn off implicit separator for the next item}$
    40584058\end{cfa}
    40594059\begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt]
     
    40614061\end{cfa}
    40624062\begin{cfa}[belowskip=0pt]
    4063 sout | sepDisable | 1 | sepOn | 2 | 3; $\C{// turn on implicit separator for the next item}$
     4063sout | sepOff | 1 | ®sep® | 2 | 3; $\C{// turn on implicit separator for the next item}$
    40644064\end{cfa}
    40654065\begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt]
     
    40684068The tuple separator also responses to being turned on and off.
    40694069\begin{cfa}[belowskip=0pt]
    4070 sout | t1 | sepOff | t2; $\C{// turn off implicit separator for the next item}$
     4070sout | t1 | ®nosep® | t2; $\C{// turn off implicit separator for the next item}$
    40714071\end{cfa}
    40724072\begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt]
    407340731, 2, 34, 5, 6
    40744074\end{cfa}
    4075 ©sepOn© \emph{cannot} be used to start/end a line with a separator because separators do not appear at the start/end of a line;
     4075©sep© \emph{cannot} be used to start/end a line with a separator because separators do not appear at the start/end of a line;
    40764076use ©sep© to accomplish this functionality.
    40774077\begin{cfa}[belowskip=0pt]
    4078 sout | sepOn | 1 | 2 | 3 | sepOn; $\C{// sepOn does nothing at start/end of line}$
     4078sout | ®sep® | 1 | 2 | 3 | ®sep®; $\C{// sep does nothing at start/end of line}$
    40794079\end{cfa}
    40804080\begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt]
     
    40824082\end{cfa}
    40834083\begin{cfa}[belowskip=0pt]
    4084 sout | sep | 1 | 2 | 3 | sep ; $\C{// use sep to print separator at start/end of line}$
     4084sout | ®sepVal® | 1 | 2 | 3 | ®sepVal® ; $\C{// use sepVal to print separator at start/end of line}$
    40854085\end{cfa}
    40864086\begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt]
     
    41164116\Indexc{nl}\index{manipulator!nl@©nl©} inserts a newline.
    41174117\begin{cfa}
    4118 sout | nl; $\C{// only print newline}$
     4118sout | ®nl®; $\C{// only print newline}$
    41194119sout | 2; $\C{// implicit newline}$
    4120 sout | 3 | nl | 4 | nl; $\C{// terminating nl merged with implicit newline}$
    4121 sout | 5 | nl | nl; $\C{// again terminating nl merged with implicit newline}$
     4120sout | 3 | ®nl® | 4 | ®nl®; $\C{// terminating nl merged with implicit newline}$
     4121sout | 5 | ®nl® | ®nl®; $\C{// again terminating nl merged with implicit newline}$
    41224122sout | 6; $\C{// implicit newline}$
    41234123
     
    42864286For the C-string type, precision is the maximum number of printed characters, so the string is truncated if it exceeds the maximum.
    42874287\begin{cfa}[belowskip=0pt]
    4288 sout | wd( 6,8, "abcd" ) | wd( 6,8, "abcdefghijk" ) | wd( 6,3, "abcd" );
     4288sout | wd( 6,8, "abcd" ) | wd( 6,8, "abcdefghijk" ) | wd( 6,3, "abcd" ) | ®wd( 10, "" )® | 'X';
    42894289\end{cfa}
    42904290\begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt]
    4291   abcd abcdefgh    abc
    4292 \end{cfa}
     4291  abcd abcdefgh    abc®          ®X
     4292\end{cfa}
     4293Note, printing the null string with minimum width L pads with L spaces.
    42934294
    42944295\item
     
    43734374        sout | t1 | t2 | " \"" | sepGetTuple( sout ) | "\"";
    43744375
    4375         sout | sepDisable | 1 | 2 | 3;          // globally turn off implicit separator
    4376         sout | sepEnable | 1 | 2 | 3;           // globally turn on implicit separator
    4377 
    4378         sout | 1 | sepOff | 2 | 3;                      // locally turn on implicit separator
    4379         sout | sepDisable | 1 | sepOn | 2 | 3; // globally turn off implicit separator
    4380         sout | sepEnable;
    4381         sout | t1 | sepOff | t2;                                // locally turn on/off implicit separator
    4382 
    4383         sout | sepOn | 1 | 2 | 3 | sepOn ;      // sepOn does nothing at start/end of line
     4376        sout | sepOff | 1 | 2 | 3;              // globally turn off implicit separator
     4377        sout | sepOn | 1 | 2 | 3;               // globally turn on implicit separator
     4378
     4379        sout | 1 | nosep | 2 | 3;                       // locally turn on implicit separator
     4380        sout | sepOff | 1 | sep | 2 | 3; // globally turn off implicit separator
     4381        sout | sepOn;
     4382        sout | t1 | nosep | t2;                         // locally turn on/off implicit separator
     4383
     4384        sout | sep | 1 | 2 | 3 | sep ;  // sep does nothing at start/end of line
    43844385        sout | sep | 1 | 2 | 3 | sep ;          // use sep to print separator at start/end of line
    43854386}
     
    46924693        sout  | i | j | k | x | y | s;
    46934694}
    4694 
     4695\end{cfa}
     4696\begin{cfa}[showspaces=true]
    469546973 0x5          7 1.234568e+07 987.654n abc
    469646983 0x5          7 1.234568e+07 987.654n abc
Note: See TracChangeset for help on using the changeset viewer.