diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-09 00:49:07 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-09 00:49:07 +0000 |
commit | 007f67a693e4d031fd3d792df8e4d5f43e2cb2e7 (patch) | |
tree | 90d17e00e572ecb1e24764b6f29c80e098b08d29 /Master/texmf-dist/doc/latex/ncclatex | |
parent | 950209b26f70aa87ed07c54f82a95b6f03b7c3a0 (diff) |
doc/latex
git-svn-id: svn://tug.org/texlive/trunk@84 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/ncclatex')
-rw-r--r-- | Master/texmf-dist/doc/latex/ncclatex/README | 64 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/ncclatex/changes.txt | 246 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/ncclatex/manifest.txt | 45 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/ncclatex/ncclatex.pdf | bin | 0 -> 187694 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/ncclatex/ncclatex.tex | 1336 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/ncclatex/nccnews.pdf | bin | 0 -> 431196 bytes |
6 files changed, 1691 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/ncclatex/README b/Master/texmf-dist/doc/latex/ncclatex/README new file mode 100644 index 00000000000..c38f44cd3f9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/ncclatex/README @@ -0,0 +1,64 @@ + +README for the `ncclatex' bundle +================================ + +This `bundle' consists of LaTeX2e classes and packages written +and supported by Alexander I. Rozhenko. + +To install the bungle, the files with extensions `.cls', `.clo', +and `.sty' should be moved to a directory on LaTeX's standard input path. + +***NOTE**** +Copyright is maintained by A. Rozhenko. + +All the classes and packages in this bundle are released under +the restrictions detailed below. + +The file manifest.txt contains a list of files in the +distribution together with short summary of each file. + +License Agreement +================= + +This material is subject to the LaTeX Project Public License. +See http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html +for the details of that license. + +Reporting Bugs +============== + +To report a problem or bug in any of these classes or packages, +describe it in free form and send it me to e-mail address + + rozhenko@oapmg.sscc.ru + +When reporting bugs, please produce a small test file that shows the +problem, and ensure that you are using the current version of the +package, and of the base LaTeX software. + + +Distribution of unchanged versions +================================== + + Redistribution of unchanged files is allowed provided that this + readme file is included and all the files for a package are + distributed together. + + +Generation and distribution of changed versions +=============================================== + + The generation of changed versions of the files included in these + packages is allowed under the restrictions listed in the file + legal.txt in the base LaTeX distribution. In particular you should: + + - rename the file before you make any changes to it. + + - change the error report address so that I do not get sent error + reports for files *not* maintained by me. + + The distribution of changed versions of the files included in these + packages is allowed under the restrictions listed in the file + legal.txt in the base LaTeX distribution. In particular you should: + + - also distribute the unmodified version of the file. diff --git a/Master/texmf-dist/doc/latex/ncclatex/changes.txt b/Master/texmf-dist/doc/latex/ncclatex/changes.txt new file mode 100644 index 00000000000..90481b9260b --- /dev/null +++ b/Master/texmf-dist/doc/latex/ncclatex/changes.txt @@ -0,0 +1,246 @@ + +This file lists changes to the LaTeX2e files of `ncclatex' bundle in +reverse chronological order. + +======================================================================= + +Jul 25, 2005 (Release 1.3) + +ncctitle.clo: Fix the abstract environment (adjust end of abstract + with \vfill) + +Jul 02, 2005 + +ncc.cls: Improve \ExpandTextArea command (take into account reverse-margin + mode when expand the text area on margins). + +nccltrus: Change \kern in \glqq shorthand with nonbreakable \hskip to allow + hyphenation a word going after. + +Jun 19, 2005 + + nccbook.clo: A page break after part-entry in toc is forbidden. + Add an optional afterskip parameter to \DeclareTOCPart command. + +Jun 18, 2005 + + ncc.cls: Introduce titlepage* environment, \ExpandTextArea and + \RestoreTextArea. + ncctitle.clo: Modify title area selection method on the base of + \ExpandTextArea command. Introduce \titleareadefault macro. + +======================================================================= + +Jun 08, 2005 (Release 1.2) + + nccbook.clo: Fix bug with misusing chapter name instead of part name + in the \part command. Introduce the \DeclarePart and + \DeclareTOCPart commands. + +May 20, 2005 + + ncc: The \StartFromTextArea and \StratFromHeaderArea commands are + moved to the `nccsect' package of the `ncctools' bundle. + + ncclatex: Change the required date in using the `nccsect' package. + + +Apr 25, 2005 + + ncclatex: Declare equation counter in dynamic style using the new + emulation feature of the `dcounter' package. + +Apr 13, 2005 + + nccltrus: Add a small kern to German left double quote shorthand. + +Mar 30, 2005 + + ncc: Fix a bug in the \preprint command. + +Mar 24, 2005 + + A new package, `nccindex', is introduced. + +Mar 23, 2005 + + ncc.cls: Add an optional [num] parameter to \alloweqbreak command. + ncclatex.sty: Add the \NCC logo. + nccbook.clo, nccart.clo: Remove \skipwritingtoaux in index head. + +Feb 21, 2005 + + ncc: Set tbtags as the default positioning in split environment + +Feb 15, 2005 + + ncclatex: Redefinition of equation tag in \mathrm mode is moved from + the `nccmath' to this package. + +Feb 07, 2005 + + ncclatex: Remove \tr, \tl, and \tc commands. The \tc command + is moved to the nccboxes package from ncctools bundle. + +Jan 14, 2005 + + nccproc: Remove `small', `fleqn', and `leqno' options. + +Jan 12, 2005 + + ncc: Remove `small', `fleqn', `leqno', and `russian' options because + they are passed to loaded packages as global options and we need + not define them in the class. + + ncchdr: Bug fix: \PassOptionToPackage replace with \PassOptionsToPackage. + +Jan 11, 2005 + + sibjnm: Remove `small', `fleqn', and `leqno' options bacause their + definition as nonused options doesn't work. + +Jan 09, 2005 + + Minor change in cp1251-light.def: replace \textrm{\normalfont...} + with \textnormal{...}. Test the \encodingdefault instead of + \cyrillicencoding if the last one is undefined. + + ncclatex: add `T2A', `T2B', and `T2C' options. Load the `fontenc' + package if `russian' option is selected. + + nccltrus: Improve the definition of \No command. + +======================================================================= + +Dec 17, 2004 (Release 1.1) + + Fix ncclatex.tex guide to comply ncctools 3.0. + +Dec 16, 2004 + + ncc.cls: Remove \NCC@gempty command. + + nccart.clo, ncctitle.clo: Replace \NCC@gempty to \@empty. + +Dec 12, 2004 + + ncclatex.sty: The latest version [2004/12/11] of nccsect.sty + from the ncctools bungle is required. + + nccbook.clo: Modify the \part making command in correspondence + with the latest nccsect.sty. + +Dec 07, 2004 + + ncctitle.clo: Add \NCC@abstractstyle hook. Introduce commands + \abstractstyle, \bibindex, \copyrighttable, \fulltitle, + \makelastpage, \lastpagestretch, \lastpagestyle, \lastpagehead, + \lastpageinfo. + +Dec 06, 2004 + + nccart.clo, nccbook.clo, sibjnm.cls: Replace \NCC@null with + \StartFromTextArea. + +Nov 30, 2004 + + ncc.cls: Introduce \StartFromTextArea and \StartFromHeaderArea + commands. Inner changes in the titlepage environment, \preprint and + \bookeditor commands. + + ncctitle.clo: Add \NCC@titlestyle hook. Introduce commands + \titlestretch, \titlehead, \titlesign, \titlefoot, \titlecomment. + +Sep 30, 2004 + + sibjnm.cls: Bug with omitted \@thanks fixed. + +======================================================================= + +Sep 23, 2004 (Release 1.05) + + Introduce the `cp1251-light.def' file specifying the light version + of the CP1251 encoding. The light encoding allows using common + cyrillic letters in names of labels and in math mode. + + ncc.cls: Making index commands are now loaded via the makeidx package. + In the previous version they were defined in the ncc class and an + error appeared if somebody tried to use the makeidx package together + with ncc class. + + nccltrus.sty: Activate the CP1251-light encoding if cyrillic support + is loaded and no input encoding was specified. Remove a warning + appearing in Babel if the russian option specified but an input + encoding is undefined yet. This warning is not necessary now, + because the input encoding is specified later. Protect cyrillic + alpha-numbering with the \text command to avoid disappearing + a number in math mode. + + sibjnm.cls: In English papers, load the nccltrus package instead + of Babel. Remove unnecessary \frenchspacing. + +======================================================================= + +Sep 18, 2004 (Release 1.04) + + nccproc.cls: Inner documentation was corrected. + +Jul 13, 2004 + + nccart.clo: Replace \vskip in \@maketitle with \addvspace. Move + \@thanks from \maketitle to \@maketitle just before \addvspace. + These changes decrease a vertical space skipped after title in + article style if \section command goes next. + +Apr 24, 2004 + + nccltrus.sty: Protect the package from use out of NCC; + Partial activation of useful CP1251 symbols + (\CYRYO, \cyryo, and \textnumero). + +======================================================================= + +Apr 08, 2004 (Release 1.03) + + The `russian' option processing is improved in `ncc.cls', + `ncclatex.sty', `nccltrus.sty', and `sibjnm.cls'. + + The `nccproc.cls' class is introduced. + +Jan 12, 2003 + + nccbook.clo: Bug with \ChapterPrefixStyle{toc} fixed + +======================================================================= + +May 19, 2002 (Release 1.02) + + A vertical skip after table's caption was reduced a bit. + +May 17, 2002 + + Bug fix in `nccart.clo': an extra space after abstract name removed. + + The `ncclatex' package loads `extdash' package with `cyremdash' option now. + + The `equation' counter is declared dynamically in `ncclatex' package now. + + File `nccnews.dvi' introduced. It contains an overview for NCC-LaTeX + in Russian. + +Apr 25, 2002 + + Bug fix in `ncchdr' package: the right mark was shown in the left header. + +======================================================================= + +Apr 04, 2002 (Release 1.01) + + Bug in loading `book' and `report' style of `ncc' class fixed. + +======================================================================= + +Mar 24, 2002 (Release 1.00) + + The `ncclatex' bundle is submitted to CTAN. It requires `ncctools' + bungle, release 2.03 or greater. diff --git a/Master/texmf-dist/doc/latex/ncclatex/manifest.txt b/Master/texmf-dist/doc/latex/ncclatex/manifest.txt new file mode 100644 index 00000000000..872bc3a2d26 --- /dev/null +++ b/Master/texmf-dist/doc/latex/ncclatex/manifest.txt @@ -0,0 +1,45 @@ +% +% NCCLATEX, Release 1.3 +%====================== + +The `ncclatex' bundle contains LaTeX2e version of the `ncc' class +and auxiliary packages of NCC-LaTeX developed by A. Rozhenko in +1992-1996 for LaTeX-2.09. + +This version of NCC-LaTeX requires NCCTOOLS bungle, release 3.0 or greater. + +% +% CONTENTS OF THE NCCLATEX BUNDLE +% =============================== + +ncc.cls NCC class +ncc10.clo The `10pt' option for the NCC class +ncc11.clo The `11pt' option for the NCC class +ncc12.clo The `12pt' option for the NCC class +ncc14.clo The `14pt' option for the NCC class +nccart.clo Support for `article' and `preprint' subclasses of the NCC +nccbook.clo Support for `book' and `report' subclasses of the NCC +nccfit.clo The `fittopage' option for the NCC class +ncchdr.sty Fancy headers for the NCC class +nccindex.sty Multicolumn index for the NCC class +ncclatex.sty The kernel of NCC class +nccltrus.sty Support for the `russian' option in the NCC-LaTeX +nccold.sty Obsolete commands from the NCC-LaTeX +nccproc.cls Generic class for NCC Proceedings +ncctitle.clo Title page support for the NCC class +sibjnm.cls A class for submission articles to + `Siberian Journal on Numerical Mathematics' +nccproc.cls A basic class for NCC Proceedings +cp1251-light.def Light version of the CP1251 input encoding + +% +% OTHER FILES +%============= + +changes.txt The list of changes +manifest.txt This file +ncclatex.pdf User's manual for NCC-LaTeX +ncclatex.tex User's manual for NCC-LaTeX (TeX sources) +nccnews.pdf Short manual in Russian +README Describes installation and bug reporting procedures. + Contains copyright notes and distribution rules. diff --git a/Master/texmf-dist/doc/latex/ncclatex/ncclatex.pdf b/Master/texmf-dist/doc/latex/ncclatex/ncclatex.pdf Binary files differnew file mode 100644 index 00000000000..465b06908ba --- /dev/null +++ b/Master/texmf-dist/doc/latex/ncclatex/ncclatex.pdf diff --git a/Master/texmf-dist/doc/latex/ncclatex/ncclatex.tex b/Master/texmf-dist/doc/latex/ncclatex/ncclatex.tex new file mode 100644 index 00000000000..f157e444fe7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/ncclatex/ncclatex.tex @@ -0,0 +1,1336 @@ +\documentclass[11pt]{ncc} +\ToCenter[h]{160mm}{240mm} + +\title{\Huge NCC-\LaTeX} +\author{by Alexander I. Rozhenko} +\usepackage[headings]{ncchdr} + +\TitleBeforeAuthor +\sectionstyle{center} +\indentaftersection + +\newcommand*\package[1]{\textbf{#1}} +\newcommand*\bungle[1]{\textit{#1}} +\newcommand*\Opt[1]{\texttt{\textbf{#1}}} + +\newcommand*\Meta[1]{\texttt{\upshape#1}} +\newcommand*\com[1]{\Meta{\symbol{"5C}#1}} +\newcommand*\meta[1]{\Meta{\symbol{"7B}{\itshape #1}\symbol{"7D}}} +\newcommand*\opt[1]{\Meta{[{\itshape #1}]}} + +\begin{document} +\maketitle + +\thispageheading{\footnotesize This document was prepared in +\com{sectionstyle}\meta{\upshape center} with \com{indentaftersection}.\\ +This heading was printed with \com{thispageheading} command from +the \package{watermark} package} + +\begin{abstract} +This document describes classes and packages from NCC-\LaTeX. We +compare the \package{ncc} class with standard \LaTeX's classes +and point out a difference between the \package{ncc} class and +\package{ncclatex} package. Packages from the \bungle{ncclatex} +and \bungle{ncctools} bungles are partially described here. +\end{abstract} + +\tableofcontents +\newpage + +\section{The ncc class} + +To mark out features of the \package{ncc} class, we compare it +with standard \LaTeX\ classes \package{article}, \package{book}, +and \package{report}. The first and the main distinction is that +preparing of articles, books, and reports in NCC-\LaTeX\ is +provided with special options (called \textbf{styles}) of the +\package{ncc} class instead of using different classes. The +following style options are allowed for this: + +\begin{description}[\Opt{preprint}] +\item[\Opt{article}] prepares an article. + +\item[\Opt{preprint}] prepares an article with a title going on a separate page. The +\com{preprint}\meta{No} command allows inserting a preprint +number under the preprint title. + +\item[\Opt{book}] prepares a book. The \com{bookeditor}\meta{text} +command allows inserting a text under the book title. + +\item[\Opt{report}] is equivalent to the \Opt{book} option used +together with the \Opt{oneside} option. +\end{description} + +The \Opt{titlepage} and \Opt{notitlepage} options are not used in +the \package{ncc} class. The appearance of a title on a separate +page is controlled in a style used. An \Opt{article} style +specifies running title and others specify a title on a separate +page. The \Meta{abstract} environment is defined in all styles. +It is prepared on a separate page if a title is prepared on a +separate page. + +The page style \Meta{headings} is set by default in all styles except +articles for which the \Meta{myheadings} style is used. + +The default options for the \package{ncc} class are \Opt{10pt}, +\Opt{a4paper}, \Opt{article}, \Opt{twoside}, \Opt{onecolumn}, +\Opt{final}, \Opt{openany}. + +The class sets \com{unitlength} to 1~mm (i.e. all coordinates in +the \Meta{picture} environment are calculated in millimeters). + +\subsection{Page layout} + +All standard paper size options are supported, namely +\Opt{a4paper}, \Opt{a5paper}, \Opt{b5paper},\linebreak +\Opt{letterpaper}, \Opt{legalpaper}, \Opt{executivepaper}, and +\Opt{landscape}. One more paper size option is introduced: +\Opt{a5a4paper}. It is useful for printing a5 papers on a4 +printer having centered tray. + +In contrast to standard classes, the width and height of the text +field isn't automatically expanded on the entire page. Text field +dimensions are defined depending on the base point size: + +\begin{center}\renewcommand{\cboxstyle}{\small\bf} +\setlength\tabcolsep{20pt} +\begin{tabular}{|c|c|c|}\hline +\cbox{Point size} & \cbox{Text width} & \cbox{Text height} +\\\hline +\Strut/1/ + 10 pt & 110 mm & 157 mm \\ + 11 pt & \jhbox{111}[r]{126.5} mm & 199 mm \\ + 12 pt & 145 mm & 233 mm \\ +\bstrut + 14 pt & 160 mm & 240 mm \\\hline +\end{tabular} +\end{center} + +If you want to fit the text field to the entire page in the same +manner as in standard classes, use the \Opt{fittopage} option. + +The text field is centered on the page taking into account the +header field also, but the margin from the top is corrected +to be at most 1.5~inch. If you want to center the text field +taking into account the marginal notes, header, and footer, use +the command +\begin{verbatim} + \ToCenter[hfm]{\textwidth}{\textheight} +\end{verbatim} +in the preamble of a document. The optional parameter of this +command enumerates fields counted while centering. Using this +command, you can change the width and height of the text field +and center the result on the page. Other way for changing the +width and height is using the \com{FromMargins} command. For +example, the following command +\begin{verbatim} + \FromMargins[hf]{20mm}{10mm}{25mm}{15mm} +\end{verbatim} +calculates the text field dimensions and margins in such a way to +provide 20~mm distance from the left border of the page, 10~mm +distance from the right border, 25~mm distance from the top, and +15~mm distance from the bottom in assumption that header and +footer are in use. In two-side printing the left and right +distances are swapped for even pages. + +\subsection{Base point size options} + +Along with standard base point size options \Opt{10pt}, +\Opt{11pt}, and \Opt{12pt}, the \Opt{14pt} size option is +introduced. In 14~pt, font sizes \com{huge} and \com{Huge} are +equal to \com{LARGE}. + +Sometimes, the standard sizes of fonts used in section markup +commands are a bit larger than necessary. This case appears when +a page size is small enough or a base font size is too large. The +\Opt{small} option can be used in this cases to reduce font sizes +used in section markup commands. The \Opt{14pt} option applies it. + +\subsection{Other options} + +The following standard options can be used with the \package{ncc} +class: \Opt{oneside}, \Opt{twoside}, \Opt{draft}, \Opt{final}, +\Opt{openright}, \Opt{openany}, \Opt{onecolumn}, \Opt{twocolumn}, +\Opt{openbib}, \Opt{fleqn}, and \Opt{leqno}. + +The \Opt{russian} option loads the \package{babel} package with +the \Meta{[russian]} optional parameter. + +\subsection{Packages loaded by the ncc class}\label{s:load} + +The \package{ncc} class loads many packages from +\bungle{ncclatex} and \bungle{ncctools} bungles. They are: +\begin{description}[\package{watermark}] +\item[\package{ncclatex}] is the kernel of NCC-\LaTeX; + +\item[\package{nccltrus}] is loaded when the \Opt{russian} option +is used. It redefines titles of captions to russian ones; + +\item[\package{nccold}] provides some obsolete commands from old +NCC-\LaTeX, namely \com{no}, \com{eref},\linebreak \com{Eq}, +\com{Eqs}, \com{Eqalign}, \com{tbox}, \com{bbox}, \com{tbbox}, +\com{emline}, and \com{emlinewidth}; + +\item[\package{dcounter}] provides dynamic counters; + +\item[\package{desclist}] improves the \Meta{description} +environment, and provides the \Meta{desclist} environment with +better control of marker in descriptions; + +\item[\package{extdash}] provides shortcut commands \com{-/}, \com{--}, +\com{---}, \com{=/}, \com{==}, and \com{===} for better control +of hyphenation of compound words; + +\item[\package{nccboxes}] provides more boxes; + +\item[\package{nccfloats}] provides commands \com{minifig}, \com{fig}, +\com{figs}, \com{minitabl}, \com{tabl}, and \com{tabls} covering +standard \LaTeX\ floats and preparing the floating material in +NCC-\LaTeX\ style (a text in NCC-\LaTeX\ floats is centered and +prepared in the \com{footnotesize}). New features, \com{sidefig} +and \com{sidetabl}, simplify creation of minifloats posed +on the outer side of page; + +\item[\package{nccfoots}] provides commands \com{Footnote}, +\com{Footnotemark}, and \com{Footnotetext} for manual management +of footnote markers. + +\item[\package{nccmath}] extends the \package{amsmath} package +with NCC-\LaTeX\ commands for preparing display equations +(\com{eq}, \com{eqs}, \com{eqalign}), redefines the +\Meta{eqnarray} environment to work properly together with \AmS\ +display equations, introduces the \Meta{darray}, \Meta{fleqn}, +and \Meta{ceqn} environments; + +\item[\package{nccpic}] is an envelop for the \package{graphicx} +package (provides extension lists for useful dvi-drivers, +introduces the \com{putimage} command for compatibility with old +NCC-\LaTeX, and defines the \com{ipic} command); + +\item[\package{nccsect}] provides an improved section, caption, +and TOC-entries management; + +\item[\package{nccthm}] theorems in NCC-\LaTeX\ style +(customizable layout, many new features); + +\item[\package{tocenter}] provides the \com{ToCenter} and +\com{FromMargins} commands; + +\item[\package{watermark}] provides watermarks. + +\end{description} + +The \package{ncc} class loads some standard \LaTeX\ packages. +They are \package{amsmath}, \package{graphicx}, and \package{makeidx}. The +\package{babel} package is also loaded if the \Opt{russian} +option is used. + +\subsection{New commands of the ncc class} + +We describe here new commands introduced in the \package{ncc} +class only. Other new commands are introduced in packages of +\bungle{ncclatex} and \bungle{ncctools} bungles (most of them are +common for the \package{ncc} class and \package{ncclatex} +package). + +\begin{desclist}{}{} +\item[\com{partmark}\meta{text}] is used for control the header and +footer marks after a new part. + +\item[\com{openrightorany}] produces the \com{clearpage} or +\com{cleardoublepage} command depending on open mode selected in +the class options. If an empty even page is created, its header +mark is set empty. + +\item[\com{AuthorBeforeTitle} and \com{TitleBeforeAuthor}] determine +what item must go first in the title: author text or title text. +In article style the title text goes first and in other styles +the author goes first. These commands should be used in the +preamble. + +\item[\com{noeqbreak} and \com{alloweqbreak}] manage the +possibility of page break between a text and display equation +following after. The first command forbids such page breaks and +the last command allows them. The default is \com{alloweqbreak}. + +\item[\com{SetTOCStyle}\meta{style}] sets a style for table of +contents, list of tables, and list of figures. The default style +is empty. For example, the use of \verb+\SetTOCStyle{\small}+ in +the preamble of the document sets a small font for output in TOC. + +\item[\com{setyear}\meta{year}, \com{theyear}:] the first command +sets a year and the second one prints an year set before. The +\verb+\setyear+ command doesn't change the \verb+\year+ counter. +The default value for the \verb+\theyear+ command is the current +value of the \verb+\year+ counter. + +\item[\Meta{biblist}] is a new environment: + +\com{begin}\meta{\upshape biblist}\opt{starting +No}\meta{prototype} \ldots \com{end}\meta{\upshape biblist}. + +It prints a pure bibliography list without heading. The first +optional parameter sets an initial value for the bibliography +counter. The style of preparing the bibliography is controlled +with the \com{bibliststyle} command (its default value is +\verb+\small+). The \texttt{thebibliography} environment is +prepared on the base of the \texttt{biblist}. + +\item[\Meta{theglossary}] environment is introduced. The +\com{printindex}, \com{see}, and \com{seealso} commands are +loaded by the \package{makeidx} package. The \com{printglossary} +command is introduced. + +\end{desclist} + +The \Meta{figure} and \Meta{table} counters are declared +dynamically. So, they are controlled with the \com{countstyle} +command. The default count style for article and preprint is +empty, and for book and report the \verb+\countstyle{chapter}+ is +used. The \Meta{equation} counter is also controlled with the +\com{countstyle} command. + +\paragraph{Specific commands for the article style.} +Three new commands +\begin{center} +\com{setseries}\meta{text}, \com{setvolume}\meta{Volume No}, and +\com{setissue}\meta{Issue No} +\end{center} +are allowed in the article style. They produce the commands +\com{theseries}, \com{thevolume}, and \com{theissue} which can be +used in publishing. In the article style the \package{ncc} class +tries to load an \package{nccadd.sty} file. This style file is +useful in publishing to set common information for all articles +in a journal issue. The number of the last page is marked with the +\Meta{NCC@lastpage} label. Its \verb+\pageref+ value can be used +in publishing to automate the substitution of article last page +number. If the \Opt{openright} option is used, +\verb+\cleardoublepage+ action is applied at the end of article. + +\paragraph{Specific commands for the preprint style.} +The \com{preprint}\meta{Preprint No} command is introduced. If a +preprint number is defined, the following text +\begin{center}\bf Preprint\\number\end{center} +is inserted below the title of preprint. + +\paragraph{Specific commands for the book and report styles.} +The \com{frontmatter}, \com{mainmatter}, and \com{backmatter} +commands can be used. The \com{bookeditor}\meta{text} command +inserts the specified text below the title of book. A style of +chapter prefixing in running head and in the table of contents is +controlled with the \com{ChapterPrefixStyle}\meta{list} command. +The list can contain comma separated words \Meta{header} and +\Meta{toc}. Using them you set prefix style for header and/or toc +respectively. In prefix style the chapter number is preceded with +the \textbf{Chapter} or \textbf{Appendix} text. + +\subsection{Using fancy headers with the ncc class} + +The headers in \package{ncc} class are maintained a bit different +from standard classes. So, if you want to use fancy headers +together with the \package{ncc} class, type +\begin{quote} +\com{usepackage}\opt{list-of-page-styles}\verb+{ncchdr}+ +\end{quote} +in the preamble of document. The +\Meta{\textit{list-of-page-styles}} parameter must contain a list +of page styles to be redefined, i.e., something from \Opt{empty}, +\Opt{plain}, \Opt{headings}, and \Opt{myheadings}. The last style +in the list is set after using of this package. + +Note: the \Opt{headings} and \Opt{myheadings} styles have a +common part in the \package{ncc} class which is redefined in this +package. So, redefining one of these page styles you automatically +redefine another style also. Additional fancy page style +\Opt{title} is provided with the \package{ncchdr} package. It +uses three title marks, namely \com{lefttitlemark}, +\com{titlemark} (in center), and \com{righttitlemark}. To load +this style use the \Opt{title} option with the package. + +The package is based on the \package{nccfancyhdr} package from the +\bungle{ncctools} bungle. + +\section{The ncclatex package} + +The most part of the \package{ncc} class is loaded in the +\package{ncclatex} package. To provide almost all functionality +of NCC-\LaTeX\ with standard \LaTeX\ classes, you can use this +package. The package loads many packages also. It is easy to say +what packages it does not load from the list specified in the +Section~\ref{s:load}. Only three of them are not loaded, namely +\package{nccold}, \package{tocenter}, and \package{watermark}. + +If you want to pass additional options to a package loaded with +\package{ncclatex}, load it in the \com{usepackage} command before +loading the \package{ncclatex}. + +The \package{ncclatex} package has two options: \Opt{small} and +\Opt{russian}. Using of the \Opt{small} option provides smaller +fonts in section markup commands. The \Opt{russian} option tries +to load the \package{babel} package with \Opt{[russian]} optional +parameter, redefines captions of mathematical statements in +Russian by loading the \package{nccltrus} package, and redefines +\com{alph} and \com{Alph} commands to produce russian alphanumeric +numbers. Original latin variants of alphanumeric numbering are +saved in \com{alphlatin} and \com{Alphlatin}. + +The package sets \com{unitlength} to 1~mm (millimeters are +default units in NCC-\LaTeX). + +\subsection{Sections, captions, and toc-entries in NCC-\LaTeX{}} + +\subsubsection{Sections} + +Section markup commands of level 0 and greater are redefined +using the \package{nccsect} package from \bungle{ncctoools} (the +level 0 command is \com{chapter} or \com{part} depending on class +used; the commands of greater levels are \com{section}, +\com{subsection}, \ldots, \com{subparagraph}). All section markup +commands are divided into two categories: display sections (until +\com{subsubsection}) and run-in sections (\com{paragraph} and +\com{subparagraph}). + +The package uses floating horizontal alignment for display sections +which is controlled with the +\begin{quote} + \com{sectionstyle}\meta{style} +\end{quote} +command. The following styles are allowed: +\begin{description}[\Meta{hangindent*}] +\item[\Meta{hangindent}] is the standard \LaTeX\ style. +\item[\Meta{hangindent*}] is the same as \Meta{hangindent}, but ragged right. +\item[\Meta{parindent}] sections are indented on \com{parindent} without hanged number. +\item[\Meta{parindent*}] is the same as \Meta{parindent}, but ragged right. +\item[\Meta{center}] section headers are centered. +\end{description} +The \com{indentaftersection} and \com{noindentaftersection} +commands control indentation after sections. +The \package{nccsect} package sets style and indentation to standard \LaTeX\ defaults, +\verb+\sectionstyle{hangindent}+ and \com{noindentaftersection}. But the \package{ncclatex} +package uses \verb+\sectionstyle{hangindent*}+. + +The \package{nccsect} package essentially improves the management +of section number tags, running heads, and writing to aux-file: +\begin{itemize} +\item If you want to suppress generation of running head in a +section markup command, type \com{norunninghead} before it. + +\item If you want to replace the text of running head to another +one, type \com{runninghead}\meta{text} before a section. + +\item If you want to suppress a number in a section or in a caption +of float, type \com{noheadingtag} before the section or caption +markup command. Note that the text of used markup command goes to +the running head and to the aux-file. This is the easier way to +produce a section without number which must appear in the table +of contents and in the header. + +\item If you want to replace a number in a section or caption to +something else, type the \linebreak \com{headingtag}\meta{other +number} before the section or caption markup command. Note that +the replaced number goes to the running head and to the aux-file. +It must contain robust commands only. Fragile commands in it must +be protected with the \com{protect} command. The associated +counter is not incremented in this case. + +\item If you want entirely replace a number in a section or +caption (including prefix and suffix automatically inserted by +section and caption markup commands) to something else, type +\com{headingtag*}\meta{other number} before the section or caption +markup command. In this case, the writing to running head and to +aux-file is suppressed. + +\item If you want to suppress writing text of a section or +caption to aux-file, type the\linebreak \com{skipwritingtoaux} +command before the section or caption markup command. +\end{itemize} + +\subsubsection{Captions} + +The \com{caption} command useful in floats is also redefined in +the \package{nccsect} package. The caption creation method +internally differs from the standard method. You can use line +breaking commands in it, but be sure that line break in caption +does not go to the aux-file (use an optional parameter with +caption to define an argument going to the aux-file). The +\com{centering} command can be used in captions without worrying +(it is automatically suppressed while writing to aux-file). The +\com{caption*} command is allowed to produce a caption without +number tag (the words `Figure' or `Table' belong to the tag!). A +text of such a caption does not go to the aux-file. + +The package defines \textit{different} caption commands for +tables and figures. A table caption usually goes above a table. +So, a vertical skip after table caption is necessary, but a skip +before table caption is unnecessary. A figure caption usually +goes below a figure. In this case vertical skips are different: +skip before is needed, but skip after is unnecessary. This is the +reason why table and figure captions are prepared differently. + +\subsubsection{TOC-entries} + +The management of toc-, lot- and lof-entries is also redefined in +the \package{nccsect} package. Every toc-entry is specified with +2 parameters: a left margin and a value of hang indentation. The +\package{nccsect} package calculates the left margin for a +toc-entry by summation of margin skips defined in toc-entries of +lower levels. For example, if a toc-entry of 2nd level is typed +out, its left margin will be a sum of margin skips defined in +toc-entries of 0th and 1st levels. This is much more flexible way +than the standard one in which the left margin was coded just in +the toc-command. + +The margin skip and hang indent skip are determined using +prototyping technique. This method provides very easy way for +redeclaring toc-entries. For example, if your book contains not +more than 9 sections, and more than 9 subsections in some +sections, you can redeclare the subsection toc-entry as follows: +\begin{verbatim} + \DeclareTOCEntry{2}{}{}{9.99}{}[9.99] +\end{verbatim} +This command contains the following parameters: the toc-entry +level, an action applied before toc-entry (you can insert a +vertical skip for example), a prefix before a toc-entry number (a +section sign for example), a number prototype for calculation of +hang indentation, and a style applied to the toc-entry. The 6th +optional parameter in square brackets is used for calculation of +margin skip for the next toc-level. If it is omitted, +the skip is equal to the hang indentation value of this toc-entry. + +\subsubsection{Customization commands} + +In conclusion, we show customization commands with their default +values for the \package{ncclatex} package: +\begin{description} +\item[\com{SectionTagSuffix}\meta{\upshape.\com{hskip} .6em}] is a suffix +inserted after a section number tag (excluding sections of 0th +level). Numbers in sections in NCC-\LaTeX\ are ended with the +decimal point. + +\item[\com{CaptionTagSuffix}\meta{\upshape.\com{hskip} .6em plus .2em minus .1em}] +is a suffix inserted after a caption number tag. + +\item[\com{NumberlineSuffix}\meta{\upshape.\com{hskip} .6em}\meta{\upshape.\com{hskip} .4em}] +describes 2 suffices: the first one is used in calculation of +hang indentation of toc-entries and the last one is inserted +after a number in toc-entries. The last suffix is usually +narrower that the first one. This allows to decrease a distance +between number and text if the width of number exceed the +prototype width just a little. Note: the \com{numberline} command +from standard \LaTeX\ is modified in the \package{nccsect} +package to prevent an overlapping of a text on a number if a +number is wider than hung indentation value. + +\item[\com{PnumPrototype}\meta{\upshape99}] is a prototype of page number +used for calculation of right margin in toc. It is supposed that a +book contains not more than 99 pages by default. To change the +page number width to 3-digit pattern, use the +\com{PnumPrototype}\meta{\upshape999} command. + +\end{description} + +\subsection{Theorems in NCC-\LaTeX{}} + +The \package{ncclatex} package defines a number of math +statements using the \package{nccthm} package from the +\bungle{ncctools} bungle. A brief introduction is needed to +explain the possibilities of the \package{nccthm} package. In +this section we call all math statements as \textit{theorems} for +simplicity. + +\subsubsection{Overview} + +In mathematical manuscripts, two modes of theorems numbering are +useful. In ordinary mode, a number goes after the theorem title +(e.g., \textbf{Theorem~1}, \textbf{Example~1}, +\textbf{Theorem~2}, etc.). In this mode, theorems with different +titles are usually numbered independently. Another mode requires +a number going before a theorem title. We call this mode the +\textit{apar} mode. In apar mode, theorems with different titles +are numbered sequentially (e.g., \textbf{1~Theorem}, +\textbf{2~Example}, \textbf{3~Theorem}, etc.). Both modes can be +mixed together in one manuscript. + +Theorems with different titles can be shown differently. For +example, a Theorem statement is shown with bold header and italic +body (a comment after header is prepared with normal font). But +an Example statement can be shown with italic header and normal +body. We call a presentation of a theorem by the \textit{theorem +type}. The \package{nccthm} package provides two default theorem +types named \texttt{theorem} and \texttt{remark}. New theorem +types can be created and existing theorem types can be redefined. + +The next parameter of theorems is the indentation style. A +theorem can open a new paragraph without indentation (default +behaviour) and with paragraph indentation. A theorem number in the +apar mode can be shown on margins. The indentation style is +controlled via options \Opt{indent}, \Opt{noindent}, +\Opt{margin}, and \Opt{nomargin} of the \package{nccthm} package. + +The last parameter of theorems is the break style. A line break +after theorem header (comment included) can be used. The break and +no break style can be coded in theorems while the definition of +them using switches \com{TheoremBreakStyle} and +\com{TheoremNoBreakStyle} before the definition or redefinition +of theorems (in contrast to standard \LaTeX, the +\com{renewtheorem} command is provided for redefinition of +theorems). The break style of an individual theorem can be changed +on the fly with the commands \com{breakafterheader} and +\com{nobreakafterheader} inserted before a theorem. + +All described properties of theorems are provided with the +\package{nccthm} package. Moreover, the counters used in theorems +are declared as dynamic counters (see the \package{dcounter} +package from \bungle{ncctools}). A dynamic counter is created at +the first use. So, a space of \TeX\ count registers is not +occupied with useless counters (this is too important because a +number of counters is limited). Using dynamic counters a package +writer can prepare some predefined theorems without worry. Since +a dynamic counter is created at the first use, a user can control +the numbering style for it. This is provided with the +\com{countstyle}\meta{base-counter} command. The \Meta{\itshape +base-counter} is the name of counter a newly created dynamic +counter must be subordinated to. An empty parameter means no +subordination. So, the change of numbering style for all theorems +in a manuscript is executed with one command only! If some +counters must have a specific count style, you can create them +manually or using the \com{countstyle} command with an optional +parameter, +\begin{quote} +\com{countstyle}\opt{list-of-counters}\meta{base-counter} +\end{quote} +This command creates new counters from the comma separated list +and subordinates all counters in the list to the \Meta{\itshape +base-counter}. It can be used for existing counters also if you +want to \textit{change the subordination} of them to another +counter. For example, using +\begin{verbatim} + \countstyle[section]{} +\end{verbatim} +in a book we reject the subordination of the \Meta{section} +counter to the \Meta{chapter} counter! + +\subsubsection{Predefined theorems} + +The \package{ncclatex} package defines 8 theorems in 3 forms each: +theorems with automatic numbering, theorems with manual +numbering, and theorems in the \textit{apar} mode. All the +theorems can be used in two ways: as environments and as +commands. In command style they must be concluded with another +theorem, or \com{qef}, or \com{qed} command. The \com{qef} +command finishes a paragraph, inserts a proper vertical space, +and returns the font shape to the normal font. The \com{qed} +command usually finishes the proof of theorem. It prints a qed +symbol (white square) adjusted to the right margin and calls the +\com{qef}. The \com{qed*} command prints the qed symbol only. + +\subsubsection{Theorems with automatic numbering} + +We show the using of these theorems in the environment style. +\begin{tabbing} + \tt xxxxx\=\verb+\begin{proposition}+\opt{Comment}\quad \=\Meta{\itshape body}\quad\=\+\kill + \verb+\begin{theorem}+\opt{Comment} \>\Meta{\itshape body} \>\verb+\end{theorem}+\\ + \verb+\begin{lemma}+\opt{Comment} \>\Meta{\itshape body} \>\verb+\end{lemma}+\\ + \verb+\begin{proposition}+\opt{Comment} \>\Meta{\itshape body} \>\verb+\end{proposition}+\\ + \verb+\begin{corollary}+\opt{Comment} \>\Meta{\itshape body} \>\verb+\end{corollary}+\\ + \verb+\begin{definition}+\opt{Comment} \>\Meta{\itshape body} \>\verb+\end{definition}+\\ + \verb+\begin{statement}+\opt{Comment} \>\Meta{\itshape body} \>\verb+\end{statement}+\\ + \verb+\begin{example}+\opt{Comment} \>\Meta{\itshape body} \>\verb+\end{example}+\\ + \verb+\begin{remark}+\opt{Comment} \>\Meta{\itshape body} \>\verb+\end{remark}+ +\end{tabbing} +In environment style, the end of theorem is equivalent to the +\com{qef} command. Counter names coincide with the names of +environments. First 4 environments are prepared using the +\Meta{theorem} type and last 4 environments are prepared using +the \Meta{remark} type. + +\subsubsection{Theorems with manual numbering} + +We show the using of these theorems in the environment style also. +\begin{tabbing} + \tt xxxxx\=\verb+\begin{Proposition}+\meta{Number}\opt{Comment}\quad \=\Meta{\itshape body}\quad\=\+\kill + \verb+\begin{Theorem}+\meta{Number}\opt{Comment}\quad \>\Meta{\itshape body} \>\verb+\end{Theorem}+\\ + \verb+\begin{Lemma}+\meta{Number}\opt{Comment}\quad \>\Meta{\itshape body} \>\verb+\end{Lemma}+\\ + \verb+\begin{Proposition}+\meta{Number}\opt{Comment}\quad \>\Meta{\itshape body} \>\verb+\end{Proposition}+\\ + \verb+\begin{Corollary}+\meta{Number}\opt{Comment}\quad \>\Meta{\itshape body} \>\verb+\end{Corollary}+\\ + \verb+\begin{Definition}+\meta{Number}\opt{Comment}\quad \>\Meta{\itshape body} \>\verb+\end{Definition}+\\ + \verb+\begin{Statement}+\meta{Number}\opt{Comment}\quad \>\Meta{\itshape body} \>\verb+\end{Statement}+\\ + \verb+\begin{Example}+\meta{Number}\opt{Comment}\quad \>\Meta{\itshape body} \>\verb+\end{Example}+\\ + \verb+\begin{Remark}+\meta{Number}\opt{Comment}\quad \>\Meta{\itshape body} \>\verb+\end{Remark}+ +\end{tabbing} +If the \Meta{\itshape Number} parameter is empty, a theorem +without number is prepared. These commands do not use counters at +all. The presentation types for these theorems are the same as +for corresponding theorems with automatic numbering. + +Every theorem type has the corresponding \com{like}\Meta{\itshape +type} command used for preparing theorems of this type. For +example, to prepare a math statement in the \Meta{theorem} type, +write down the following: +\begin{quote} +\com{liketheorem}\meta{Title}\meta{Number}\opt{Comment}\quad +\Meta{\itshape body}\quad \com{qef} +\end{quote} +To prepare a math statement in the \Meta{remark} type, typeset +\begin{quote} +\com{likeremark}\meta{Title}\meta{Number}\opt{Comment}\quad +\Meta{\itshape body}\quad \com{qef} +\end{quote} + +\subsubsection{Theorems in apar mode} + +We show the using of these theorems in the command style. +\begin{tabbing} + \tt xxxxx\=\com{aproposition}\opt{Comment}\quad\=\Meta{\itshape body}\quad\=\+\kill + \com{atheorem}\opt{Comment}\quad \>\Meta{\itshape body} \>\com{qef}\\ + \com{alemma}\opt{Comment}\quad \>\Meta{\itshape body} \>\com{qef}\\ + \com{aproposition}\opt{Comment}\quad \>\Meta{\itshape body} \>\com{qef}\\ + \com{acorollary}\opt{Comment}\quad \>\Meta{\itshape body} \>\com{qef}\\ + \com{adefinition}\opt{Comment}\quad \>\Meta{\itshape body} \>\com{qef}\\ + \com{astatement}\opt{Comment}\quad \>\Meta{\itshape body} \>\com{qef}\\ + \com{anexample}\opt{Comment}\quad \>\Meta{\itshape body} \>\com{qef}\\ + \com{aremark}\opt{Comment}\quad \>\Meta{\itshape body} \>\com{qef} +\end{tabbing} +These theorems are number with the \Meta{apar} counter. The +presentation types for these theorems are the same as for +corresponding theorems with automatic numbering. The star-forms +of \com{liketheorem} and \com{likeremark} commands are used for +preparing apar variants of math statements. They have no number +parameter: +\begin{tabbing} + \tt xxxxx\=\com{liketheorem*}\meta{Title}\opt{Comment}\quad\=\Meta{\itshape body}\quad\=\+\kill + \com{liketheorem*}\meta{Title}\opt{Comment} \>\Meta{\itshape body} \>\com{qef}\\ + \com{likeremark*}\meta{Title}\opt{Comment} \>\Meta{\itshape body} \>\com{qef} +\end{tabbing} + +One additional command, the \com{apar}, can be used in the apar +mode. Its syntax is the following: +\begin{quote} +\com{apar}\opt{Header} +\end{quote} +It starts a new paragraph numbered with subsequent value of the +\Meta{apar} counter. The header is prepared in bold font. + +\subsubsection{Proof command and support of different qed +symbols} + +The \com{proof}\opt{Comment} opens the proof of a math statement. +For example, +\begin{verbatim} + \proof[of Theorem 1] Some text \qed +\end{verbatim} +looks as follows: + +\proof[of Theorem 1] Some text \qed + +Along with the \com{qed}, the \com{qedsymbol} command can be used +in the case when a proof finishes with the display formula. It is +typed with the \AmS\ \verb+\tag*{\qedsymbol}+ command within a +display formula. + +The \package{nccthm} package provides now two variants of the qed +symbol, white and black. They are requested through package options +\Opt{whiteqed} and \Opt{blackqed} respectively. When an option is +used, two more commands are created for it: \com{\itshape option} +and \com{{\itshape option}symbol}. For example, the +\Opt{whiteqed} option generates the \com{whiteqed} and +\com{whiteqedsymbol} commands, and the \Opt{blackqed} option +generates the \com{blackqed} and \com{blackqedsymbol} commands. +The later option in the list of options describes the default qed +symbol. If no options used, only \com{qed} and \com{qedsymbol} +commands are generated. + +Other qed symbols are welcome! + +\subsubsection{Customization commands} + +In conclusion, we show customization commands with their default +values for the \package{ncclatex} package: +\begin{description} +\item[\com{TheoremCommentDelimiters}\meta{}\meta{}] describes +delimiters inserted before and after a theorem\linebreak comment. +In the \package{nccthm} package the parenthesis are used, but in +the \package{ncclatex} package the delimiters are empty. + +\item[\com{AfterTheoremHeaderChar}\meta{.}] describes the +character inserted at the end of header of theorem and proof. + +\item[\com{AfterTheoremHeaderSkip}\meta{\upshape\com{hskip} .7em plus .2em minus +.1em}] describes a horizontal skip inserted after a header of +theorem and proof. + +\item[\com{AparStyleParameters}\meta{\com{bfseries}}\meta{\com{bfseries}}\meta{.\com{enskip}}] +describes style parameters for\linebreak preparing apar theorems: +the first parameter is a style used in the \com{apar} command, the +second and third parameters describe the prefix and suffix +inserted before and after \com{theapar} command in typeout. + +\item[\com{ProofStyleParameters}\meta{\com{bfseries}}\meta{\com{proofname}}] +describes style parameters used in the\linebreak \com{proof} +command: the first is a font style and the last is a proof title +(it is coded here in the \com{proofname} command with the default +definition \verb+\newcommand\proofname{Proof}+). + +\end{description} + +\subsection{Math extension} + +In old NCC-\LaTeX, the standard \LaTeX\ environments were used +for preparing display formulas and some extension commands were +developed to support manual numbering. In the new release of +NCC-\LaTeX, it was decided to use an excellent math extension +provided with the \package{amsmath} package and enlarge it a bit. +The enlargement of \AmS\ package is provided with the +\package{nccmath} package. The \package{nccmath} package passes +all options to the \package{amsmath}. + +Two major enlargements were done: +\begin{itemize} +\item In \package{amsmath}, the \Meta{eqnarray} environment leaves +unchanged because alternative \AmS\ environments exist. We +redefine the \Meta{eqnarray} to work in the \AmS\ style. The +following improvements were done in it: an equation tag is +prepared by the same manner as in \AmS\ display formulas +(\com{tag} and \com{tag*} are allowed); the \com{displaybreak} +command is allowed; the intercolumn distance is reduced to the +distance between ordinary and relational math symbols; and the +center field is prepared in the \com{displaystyle}. + +\item In old NCC-\LaTeX, a display equivalent for the \Meta{array} +environment, namely \Meta{darray}, was implemented. In the new +release, it is implemented also but in a bit different way to +avoid conflicts with packages that redefine the \Meta{array} +environment. The use of column specifications in the +\Meta{darray} environment is restricted to \Meta{l}, \Meta{c}, +\Meta{r}, \Meta{@}, and \Meta{*} commands. The intercolumn +distance is just the same as for \Meta{eqnarray} environment and +no space is inserted before the first and after the last column. + +\end{itemize} + +\subsubsection{NCC-\LaTeX\ equivalents to display formulas} + +The following NCC-\LaTeX\ equivalents are provided with +\package{nccmath}: +\begin{desclist}{}{\hfill\enskip=}[\com{eqalign*}\meta{formulas}] +\raggedright +\item[\com{eq}\meta{formula}] +\verb+\begin{equation}+ \Meta{\itshape formula} +\verb+\end{equation}+. + +\item[\com{eq*}\meta{formula}] +\verb+\begin{equation*}+ \Meta{\itshape formula} +\verb+\end{equation*}+. + +\item[\com{eqs}\meta{formulas}] +\verb+\begin{eqnarray}+ \Meta{\itshape formulas} +\verb+\end{eqnarray}+. + +\item[\com{eqs*}\meta{formulas}] +\verb+\begin{eqnarray*}+ \Meta{\itshape formulas} +\verb+\end{eqnarray*}+. + +\item[\com{eqalign}\meta{formulas}] +\verb+\begin{equation} \begin{darray}{rcl}+ \Meta{\itshape +formulas} \verb+\end{darray} \end{equation}+. + +\item[\com{eqalign*}\meta{formulas}] +\verb+\begin{equation*} \begin{darray}{rcl}+ \Meta{\itshape +formulas} \verb+\end{darray} \end{equation*}+. + +\end{desclist} + +The \com{eqs} and \com{eqs*} commands have an optional parameter +describing a distance between columns. For example, +\begin{verbatim} + \eqs[0mm]{&& -\Delta u = f, \\ && u|_\Gamma = 0,} +\end{verbatim} +removes the intercolumn distance because the 3rd column is only +used here. The \Meta{eqnarray} environment has no optional +parameter. + +The \com{eqalign} and \com{eqalign*} commands have an optional +parameter also. Its meaning is the column specification +parameter: \com{eqalign}\meta{formulas} = +\verb+\eqalign[rcl]+\meta{formulas}. + +\subsubsection{Remarks on display equations} + +The alignment style in display equations (except \TeX's +low level \verb|$$|) can be changed using the following +environments: +\begin{quote} +\com{begin}\meta{fleqn}\opt{margin} \Meta{\itshape body} \com{end}\meta{fleqn}\\ +\com{begin}\meta{ceqn} \Meta{\itshape body} \com{end}\meta{ceqn} +\end{quote} +The \Meta{fleqn} environment sets the flush left alignment +with the left margin specified by the optional parameter +(default margin is \Meta{0pt}). The \Meta{ceqn} environment +sets the centered alignment. + +The \com{intertext} command from \package{amsmath} now has an +optional parameter, +\begin{quote} +\com{intertext}\opt{skip}\meta{text between formulas} +\end{quote} +The \Meta{\itshape skip} is a vertical skip value inserted before +and after the text. If it is omitted, the standard spaces are +inserted. + +In \LaTeX, it is not recommended to start a display formula from a +new paragraph (in vertical mode in other words). This is because +the \TeX's algorithm inserts an empty paragraph before such a +formula. To avoid insertion of an empty paragraph, Donald Knuth +recommended to use \com{noindent} command before a display +formula starting in the vertical mode. This trick is used in the +\package{nccmath} package. All display environments are slightly +corrected with insertion of \com{NCC@ignorepar} command at their +beginning. This command does a little more than simply applies +this trick. It provides suppressing of the vertical space before +a display formula if it opens a minipage. It also supports the +use of short skip above a display environment by user's request. + +In \TeX, two types of skips above display formulas are used: the +normal skip defined in the \com{abovedisplayskip} register and the +short skip defined in the \com{abovedisplayshortskip} register. +When a display formula is typed out, \TeX\ decides what skip to +insert depending on width of the formula, its style (centered or +flushed left, numbered left or right), and the width of the rest +of text in the last line of the previous paragraph. But this +algorithm works for ordinary formulas only. It does not work in +multiline formulas prepared with \com{halign} command. So, a +manual replacement of normal skip to short skip is required in +some cases. To provides this, the \com{useshortskip} command is +introduced in the \package{nccmath} package. It forces the use of +short skip in a display formula going after it. + +\subsubsection{Other math commands} + +The following commands were ported from the old NCC-\LaTeX: +\begin{description}[\com{nr}] +\item[\com{nr}] has just the same syntax as the \verb+\\+ +but inserts an extra vertical space of \Meta{0.5ex}. It is quite +useful in display formulas to separate some rows a bit more. + +\item[\com{mrel}\meta{rows}] prepares a new math relation +symbol from one-column table of math formulas. For example, the +command +\verb+$\mrel{<\\[-.7ex]>}$+ produces +$\mrel{<\\[-.7ex]>}$. + +\item[\com{underrel}\meta{base}\meta{bottom}] is a twin to +\com{overrel}. For example,\\ + \verb+$A\underrel{\longrightarrow}{x\to 0}B$+ +produces $A\underrel{\longrightarrow}{x\to 0}B$. + +\end{description} + +\subsection{Figures and tables in NCC-\LaTeX{}} + +The standard \LaTeX\ floating environments, namely \Meta{figure} +and \Meta{table}, allow user to place floating material in a +document. But they do not introduce a style in which this +material must be prepared. In NCC-\LaTeX, envelop commands are +developed which join a style with a float and introduce more +features. These commands are implemented in the +\package{nccfloats} package from the \bungle{ncctools} bungle. + +\subsubsection{Basic commands} + +The \com{FloatingStyle}\meta{style} command sets a style of +floats in the document. It affects on the material prepared with +commands described below. The default style is +\begin{verbatim} + \FloatingStyle{\footnotesize\centering} +\end{verbatim} + +We start with the basic commands, namely \com{minifig} and +\com{minitabl}. They prepare a material in a minipage and allow +using the \com{caption} command in the body. Their syntax is +similar to the \com{parbox} command: +\begin{quote} +\com{minifig}\opt{pos}\opt{height}\opt{inner-pos}\meta{width}\meta{body}\\ +\com{minitabl}\opt{pos}\opt{height}\opt{inner-pos}\meta{width}\meta{body} +\end{quote} +The \Meta{\itshape pos} is a vertical alignment parameter for +minipage (\Meta{t}, \Meta{b}, or \Meta{c}) with respect to +surrounding text; the \Meta{\itshape height} is a minipage height +required; the \Meta{\itshape inner-pos} is a vertical alignment +of text inside the minipage (\Meta{t}, \Meta{b}, \Meta{c}, or +\Meta{s}); and the \Meta{\itshape width} is the minipage width. +The \Meta{\itshape body} is prepared in the specified style and +can contain a \com{caption} command. + +All other NCC-\LaTeX\ floating extension commands are based on +\com{minifig} and \com{minitabl}. + +\subsubsection{Side figure or table} + +For small figures and tables, it is preferable to insert them +inside a text instead of using floating mechanism. The +typographic rules usually require an illustrative material to +occupy an outer side of paper. In two side printing, this means +figure and tables should be on the right side if a page number is +odd and on the left side if page number is even. In one side +printing, figures and tables must occupy the right side of paper. + +The following commands support such a placement: +\begin{quote} +\com{sidefig}\opt{pos}\Meta{($w_1$)}\Meta{($w_2$)}\meta{figure body}\meta{text body}\\ +\com{sidefig*}\opt{pos}\Meta{($w_1$)}\Meta{($w_2$)}\meta{figure body}\meta{text body}\\ +\com{sidetabl}\opt{pos}\Meta{($w_1$)}\Meta{($w_2$)}\meta{table body}\meta{text body}\\ +\com{sidetabl*}\opt{pos}\Meta{($w_1$)}\Meta{($w_2$)}\meta{table body}\meta{text body} +\end{quote} +For simplicity, we further use the term \textit{minifloat} for the +small illustrating material (figure or table), however +understanding that it is not a float at all. It is inserted in +the main flow next to a paragraph box specified in the last +parameter of above described commands. + +The no-star forms of above described commands place a minifloat +next to the specified text on the outer side of page (to the +right for odd page and to the left for even page). In two column +or one side mode, minifloat is always posed to the right. The +star forms provide the reverse placement. By default, minifloat +is vertically centered with respect to the text and the +\com{strut} command is inserted at the beginning and at the end +of the \Meta{\itshape text body} to provide normal baseline +distances of the first and last lines of the text from +surrounding text lines. + +All parameters in square and round brackets are optional and mean +the following: +\begin{desclist}{}{}[\Meta{\itshape pos}] +\item[\Meta{\itshape pos}] specifies minifloat alignment (\Meta{t}, +\Meta{b}, or \Meta{c}; default is \Meta{c}) with respect to text +box and can contain additional chars controlling the text body +preparation: \Meta{j} means the last line of the text to be +justified to the right and \Meta{n} means suppressing of struts +insertion (they should be inserted manually if necessary); + +\item[$w_1$] is the width of minifloat (if units are omitted, the +\com{unitlength} is supposed); and + +\item[$w_2$] is the width of the text box (if units are omitted, the +\com{unitlength} is supposed). +\end{desclist} +If both width parameters are absent, the widths are calculated as +\verb+(\linewidth-1.5em)/2+. If $w_2$ is absent, the text body +width is calculated as \verb+\linewidth-+$w_1$\verb+-1.5em+. + +While preparing a side minifloat, it is sometimes necessary to +provide conditional placement depending on the side a minifloat +is posed. The command +\begin{quote} +\com{ifleftsidefloat}\meta{left-clause}\meta{right-clause} +\end{quote} +provides this. It is useful in parameters of \com{sidefig} or +\com{sidetabl} and processes \Meta{\itshape left-clause} if the +minifloat is posed to the left or \Meta{\itshape right-clause} +otherwise. + +\subsubsection{Floating figure or table} + +\begin{quote} +\com{fig}\opt{placement}\Meta{($w$)}\meta{body}\\ +\com{fig*}\opt{placement}\Meta{($w$)}\meta{body}\\ +\com{tabl}\opt{placement}\Meta{($w$)}\meta{body}\\ +\com{tabl*}\opt{placement}\Meta{($w$)}\meta{body} +\end{quote} +The \Meta{\itshape placement} is a float placement parameter +describing places where a float can appear. The default value is +\Meta{htp} (here, or at the top of the next page, or on the page +with floats only). The optional \Meta{($w$)} parameter defines a +width of box occupied by the float (the width of nested +\com{minifig} or \com{minitabl}). If it +is omitted, the float has the maximum width equal to +\com{linewidth}. + +The \com{fig} and \com{tabl} commands envelop the \Meta{figure} +and \Meta{table} environments respectively. Their star-forms +envelop corresponding starred environments. + +\subsubsection{Two floating figures or tables side by side} + +\begin{quote} +\com{figs}\opt{placement}\Meta{($w_1$)}\Meta{($w_2$)}\meta{body1}\meta{body2}\\ +\com{figs*}\opt{placement}\Meta{($w_1$)}\Meta{($w_2$)}\meta{body1}\meta{body2}\\ +\com{tabls}\opt{placement}\Meta{($w_1$)}\Meta{($w_2$)}\meta{body1}\meta{body2}\\ +\com{tabls*}\opt{placement}\Meta{($w_1$)}\Meta{($w_2$)}\meta{body1}\meta{body2} +\end{quote} +These commands place two figures or tables side by side. The +\Meta{\itshape body1} is a body of the left figure or table and +the \Meta{\itshape body2} is a body of the right figure or table. +Other parameters are optional. The meaning and default value of +the \Meta{\itshape placement} parameter is the same as described +above. The \Meta{($w_1$)} and \Meta{($w_2$)} parameters are +widths of left and right boxes. If +they both are omitted, the left and right boxes will have the +width equal to \Meta{(\com{linewidth}-1em)/2}. If \Meta{($w_2$)} +is omitted, the right box will occupy the rest of horizontal space +minus \Meta{1em}. If both parameters are specified, the rest +space is inserted between boxes. If the total width of left and +right floats exceeds the \com{linewidth}, the floats will overlap +at the middle of line (a negative horizontal space is inserted +between them). + +In \com{tabls} command, boxes of the left and right bodies are +top-aligned, but in \com{figs} command, the bottom alignment is +used. + +\subsection{Graphics in NCC-\LaTeX{}} + +The \package{nccpic} package from the \bungle{ncctools} bungle +envelops the standard \package{graphicx} package. The package +passes all options to the underground package. + +The main aim of the \package{nccpic} package is the preparing of +graphics extensions list depending on a dvi-driver used with the +\package{graphicx} package. This allows omit an extension of a +graphics file in the \com{includegraphics} command. When a file +without extension is searched, this command sequentially tries +extensions from the list until an appropriate file will be found. + +Using this feature you can support multiple output from \LaTeX\ +with minimum changes in \Meta{.tex} sources. The only required +thing is to prepare a number of versions for all graphics files +called in a document. For example, the dvips program likes +\Meta{.eps} files, the Yap previewer likes \Meta{.bmp} or +\Meta{.eps} files, the pdflatex likes \Meta{.png} files. To +satisfy their needs, you can prepare \Meta{.eps}, \Meta{.bmp}, +and \Meta{.png} versions for all pictures and pass a required +option to the \package{nccpic} package. + +The graphics extensions list is customized now for most popular +drivers, namely \Opt{dvips}, \Opt{dvipdf}, and \Opt{dvipdfm}, and +for use with \Opt{pdftex} also. More customization is welcome! + +The next aim of the \package{nccpic} package is the regulation of +placement of graphics files in the file system. It is too +inconvenient when pictures are stored together with \Meta{.tex} +source files. We propose to store graphics files in the +\Meta{graphics} subdirectory of the source directory. To support +the search in this storage, the graphics path is customized in the +\package{nccpic} package. + +The following commands are introduced in the \package{nccpic} +package: +\begin{desclist}{}{} +\item[\com{ipic}\meta{filename}] command loads a file having the +name \Meta{{\itshape filename}.pic} searching it in the graphics +path. It allow to take actual graphics inclusion commands out of +source files for automation purposes. + +\item[\com{putimage}\Meta{($x,y$)[$x_r,y_r$]($x_s,y_s$)}\meta{filename}] +command emulates a graphics inclusion technique used in the old +NCC-\LaTeX. Look in the \package{nccpic} package file for more +detail description. + +\item[\com{draftgraphics} and \com{finalgraphics}] are toggles +between final and draft modes for preparation of graphics. In +draft mode, a graphics object is shown as a framebox of the +required dimensions with an object name in it. Using these +commands, you can toggle graphics preparation mode on the fly. In +draft mode, the \com{putimage} command does not test an existence +of required graphics file. +\end{desclist} + +\subsection{Additional boxes} + +The \package{nccboxes} package from the \bungle{ncctools} bungle +provides additional boxes: +\begin{description} +\item[\com{jhbox}\meta{prototype}\opt{align}\meta{body}] +horizontally aligns the body in the text box which width is +defined by the \Meta{\itshape prototype} parameter. The optional +\Meta{\itshape align} parameter defines a position of alignment +(\Meta{l}, \Meta{c}, \Meta{r}, or \Meta{s}; default is \Meta{c}). + +\item[\com{jvbox}\meta{prototype}\opt{align}\meta{body}] +vertically aligns the body with respect to the strut defined by +the \Meta{\itshape prototype} parameter. The optional +\Meta{\itshape align} parameter defines a position of alignment +(\Meta{t}, \Meta{c}, or \Meta{b}; default is \Meta{c}). If +\Meta{t} is used, the body is raised in such a way that its +height will be equal to the height of the prototype's strut. For +\Meta{b} case, the depths will be equal and, for \Meta{c} case, +the body is vertically centered with respect to prototype's strut. + +\item[\com{jparbox}\meta{prototype}\opt{align}\meta{width}\meta{body}] +prepares a paragraph box of required \Meta{\itshape width} and +vertically aligns it with respect to the \Meta{\itshape +prototype} by the same manner as \com{jvbox}. + +\item[\com{pbox}\opt{align}\meta{body}] is a simple one-column +table. The \Meta{\itshape align} parameter may consist of two +letters defining a relative alignment in the column (\Meta{l}, +\Meta{c}, or \Meta{r}) and the vertical alignment of the table +with respect to surrounding text (\Meta{t}, \Meta{c}, or +\Meta{b}). Centering is the default alignment. The distance +between the table rows is independent on the \com{arraystretch} +value. + +\item[\com{addbox}\meta{above}\meta{below}\meta{body}] prepares +an hbox containing the \Meta{\itshape body} which height is +adjusted to the value of the \Meta{\itshape above} length +parameter and depth is adjusted to the value of the +\Meta{\itshape below} length parameter. For example, +\verb+\addbox{.5ex}{.5ex}{text}+ increases the height and depth of +produced hbox on \Meta{0.5ex}. + +\item[\com{picbox}\meta{body}] = \verb+\begin{picture}(0,0)(0,0)+ +\Meta{\itshape body} \verb+\end{picture}+. + +\end{description} + +To prepare a fancy table, the following commands can be used: +\begin{desclist}{}{} +\item[\com{Strut}\Meta{/{\itshape value}/}] is a strut which +height and depth are calculated from the strut prototype (letter +\Meta{A} by default) as follows: if \Meta{{\itshape value}>0}, +the full height of the current \com{strutbox} multiplied by the +\Meta{\itshape value} is added to the height of prototype strut, +otherwise the depth of prototype strut is increased with the +modulus of \Meta{\itshape value} multiplied by the full height of +\com{strutbox}. For example, \verb+\Strut/1/+ inserts a strut +which height exceeds the height of the letter \Meta{A} from the +current font on the interline distance. The \com{Strut} without +parameter is equal to \verb+\Strut/0/+. + +\item[\com{tstrut}, \com{bstrut}, and \com{tbstrut}] insert +struts exceeding the height, depth, and height and depth of the +strut prototype by a special small amount. This amount is +calculated in such a way that the full height of \com{tbstrut} +will be equal to 1.5 of full height of the current \com{strutbox}. + +\item[\com{cbox}\Meta{/{\itshape value}/}\opt{align}\meta{body}] +prepares a box whose body is a one-column table. Its height and +depth are enlarged using \com{tstrut} at the beginning and +\com{bstrut} at the end of body. The horizontal alignment +(\Meta{l}, \Meta{c}, or \Meta{r}) in the column and the vertical +alignment (\Meta{t}, \Meta{c}, or \Meta{b}) are defined in the +\Meta{\itshape align} parameter. Centered alignment is used by +default. The resulting box is vertically aligned with respect to +the \com{Strut}\Meta{/{\itshape value}/} using the \com{jvbox} +command. The \com{cbox*} command does the same but vanishes the +height and depth of the resulting box. + +\end{desclist} + +The \com{cbox} command is used in the headers of tables. Its star +form is useful in cells having vertical spans. The style for +typing its body is managed with the \com{cboxstyle} command. Its +default value is empty but in NCC-\LaTeX\ this command is +redefined as follows: +\begin{verbatim} + \renewcommand\cboxstyle{\scriptsize} +\end{verbatim} + +We demonstrate the use of struts and \com{cbox} on the example +\begin{center} +\renewcommand\cboxstyle{\small\bf} +\setlength{\tabcolsep}{10pt} +\begin{tabular}{|l|c|c|c|}\hline + \cbox*/-1.5/{Vertically\\spanned head} & \cbox{Simple head} + &\multicolumn2{c|}{\cbox{Very long head\\of two lines}}\\\cline{2-4} + &\cbox{subhead} &\cbox{subhead} &\cbox{subhead}\\\hline + \Strut/1/ Text & field & field & field \\ + Text & field & field & field \\ + \bstrut Text & field & field & field \\\hline +\end{tabular} +\end{center} +produced by the following code: +\begin{verbatim} + \begin{center} + \renewcommand\cboxstyle{\small\bf} + \setlength{\tabcolsep}{10pt} + \begin{tabular}{|l|c|c|c|}\hline + \cbox*/-1.5/{Vertically\\spanned head} & \cbox{Simple head} + &\multicolumn2{c|}{\cbox{Very long head\\of two lines}}\\\cline{2-4} + &\cbox{subhead} &\cbox{subhead} &\cbox{subhead}\\\hline + \Strut/1/ Text & field & field & field \\ + Text & field & field & field \\ + \bstrut Text & field & field & field \\\hline + \end{tabular} + \end{center} +\end{verbatim} + +\subsection{Miscellaneous commands} + +We describe here commands provided by the \package{ncclatex} +package itself. +\begin{desclist}{}{} +\item[\com{acknow}] starts a new paragraph with the +\textit{Acknowledgements} title. + +\item[\com{cref}\meta{citelabel}] produces a citation without brackets to the +specified \Meta{\itshape citelabel}. It is used in the case of +citations containing ranges, e.g.\ [2--4, 7]. + +\item[\com{mop}\meta{name}] is used for coding new math operations +like $\sin$. For example, \verb+$k=\mop{sgn}x$+ produces +$k=\mop{sgn}x$ with proper font and spaces. This command is +equivalent to \AmS\ \com{operatorname} command. + +\item[\com{tg}, \com{ctg}, \com{arctg}, and \com{arcctg}] produce +math operations for tangent, cotangent, and for their inverse +functions in Russian typesetting tradition. + +\item[\com{No}] produces the numero symbol. If the \Opt{russian} +option is not used, this command emulates the numero symbol with +the text ``\No''. + +\item[\com{tc}\meta{body}] adjust the body to the center +using \verb+\hspace*{\fill}+ glues. This +command is useful in tables when centered alignment of a +particular cell is required but another alignment is +specified for the column the cell belongs to. + +\end{desclist} + +The titles of proof, predefined theorems, and acknowledgements +are declared with commands having the \Meta{name} suffix. For +example, the proof title is coded in the \com{proofname}, the +title of lemmas is defined in the \com{lemmaname}, and the +acknowledgements title is coded in the \com{acknowname} command. +They all can be redefined to provide internationalization (the +\Opt{russian} option redefines these titles in Russian). + +\section{The sibjnm class} + +This class describes a style used in the \textit{Siberian Journal +of Numerical Mathematics} (SibJNM), +\texttt{http://www.sscc.ru/SibJNM/}, email: +\texttt{sibjnm@oapmg.sscc.ru}. We recommend to use this class for +submitting an article to this journal. + +The \package{sibjnm} class is based on the \package{ncc} class. +It sets the following options of \package{ncc} class: +\Opt{a4paper}, \Opt{11pt}, \Opt{article}, \Opt{twoside}, and +\Opt{onecolumn}. A user can manage the following options: +\Opt{draft}, \Opt{final}, \Opt{openany}, \Opt{openright}, and +\Opt{russian}. Other options are forbidden. + +The SibJNM is a bilingual journal. An article can be prepared in +English or in Russian. An abstract is prepared in both languages. +Before abstracts, one of subject classification commands must be +used: \com{UDC}\meta{indices} or +\com{AmSclassification}\meta{indices}. The first command sets UDC +classification indices and the last command sets \AmS\ +classification indices of the article subject. + +The russian abstract must go right after the \com{maketitle} +command. Its syntax: +\begin{quote} +\verb+\begin{Rabstract}+\meta{Authors}\meta{Title} \Meta{\itshape +body} \verb+\end{Rabstract}+ +\end{quote} +The english abstract must go after the russian one. Its syntax is +similar: +\begin{quote} +\verb+\begin{Eabstract}+\meta{Authors}\meta{Title} \Meta{\itshape +body} \verb+\end{Eabstract}+ +\end{quote} +The text field of SibJNM article is 155$\times$225 mm. + +\end{document} diff --git a/Master/texmf-dist/doc/latex/ncclatex/nccnews.pdf b/Master/texmf-dist/doc/latex/ncclatex/nccnews.pdf Binary files differnew file mode 100644 index 00000000000..1e9a6459ce4 --- /dev/null +++ b/Master/texmf-dist/doc/latex/ncclatex/nccnews.pdf |