
IEEEtrantools_doc.txt 2015/08/26 version 1.5
(Version 1.5 is based on the commands of version 1.8b of IEEEtran.cls)
This document is the user guide for the IEEEtrantools.sty package.

The IEEEtrantools.sty package provides several popular and unique
commands from the IEEEtran.cls class file.

IEEEtrantools.sty should not be used with IEEEtran.cls.

For helpful tips, answers to frequently asked questions and other support,
visit the IEEEtrantools support page at my website:

http://www.michaelshell.org/tex/ieeetran/tools/

The latest version and documentation of IEEEtrantools can be obtained at:
http://www.ctan.org/pkg/ieeetran

Copyright (c) 2002-2015 by Michael Shell
                        See
                        http://www.michaelshell.org/
                        for current contact information.

*************************************************************************
Legal Notice:
This code is offered as-is without any warranty either expressed or
implied; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE! 
User assumes all risk.
In no event shall the IEEE or any contributor to this code be liable for
any damages or losses, including, but not limited to, incidental,
consequential, or any other damages, resulting from the use or misuse
of any information contained here.

All comments are the opinions of their respective authors and are not
necessarily endorsed by the IEEE.

This work is distributed under the LaTeX Project Public License (LPPL)
( http://www.latex-project.org/ ) version 1.3, and may be freely used,
distributed and modified. A copy of the LPPL, version 1.3, is included
in the base LaTeX documentation of all distributions of LaTeX released
2003/12/01 or later.
Retain all contribution notices and credits.
** Modified files should be clearly indicated as such, including  **
** renaming them and changing author support contact information. **

File list of work: IEEEtrantools.sty, IEEEtrantools_doc.txt, changelog.txt
*************************************************************************


Available package options e.g., \usepackage[redeflists]{IEEEtrantools}

 redeflists
    Causes IEEEtrantools to redefine the standard LaTeX itemize,
    enumerate and description (IED) lists to their IEEE versions.
    The default behavior is to retain the standard definitions
    of itemize, enumerate and description. The IEEEtran versions are
    always available as IEEEitemize, IEEEenumerate and IEEEdescription
    and the original LaTeX versions are always available as LaTeXitemize,
    LaTeXenumerate and LaTeXdescription.

**********************************************************************

The IEEEtrantools.sty package provides several commands from IEEEtran.cls
so that they can be used under other LaTeX classes. This guide covers only
the differences in the use (or undocumented uses) of the commands from
those provided by IEEEtran.cls. For complete documentation on these
commands, see the relevant sections in the IEEEtran_HOWTO manual which
is available at
http://www.ctan.org/pkg/ieeetran

IEEEtrantools.sty provides \IEEEPARstart; the \bstctlcite command for the
control entry types of IEEEtran.bst V1.00 and later; \IEEEnoauxwrite; 
the IEEE IED list environments; and the complete IEEEeqnarray family,
including the IEEEeqnarray support commands, the IEEEproof environment
and  \IEEEauthorrefmark.

Please note that, as a package file, IEEEtrantools.sty will not attempt
to alter document formatting (other than if the IDE lists are redefined
if the redeflists option is invoked) as controlled by the class file.
Therefore, there may be spacing/layout differences between the results
of the same IEEEtran commands under IEEEtran.cls and the user's class
file as different fonts, default values for the various length commands,
etc., are used than under IEEEtran.cls.





*** \IEEEPARstart ***

\IEEEPARstart{}{} is used to provide a large initial "drop cap" letter(s) as
well as to capitialize the remaining letters of the first word of a chapter
or section (if placed within the second argument). e.g.,
\IEEEPARstart{O}{nce}

IEEEtrantools.sty provides the user with a way to control the various
parameters of the \IEEEPARstart letters.

Below is how the user can alter them (after the IEEEtrantools.sty package
is loaded). Default values are shown. IEEEtrantools will not override
any previous definitions of these parameters if they already exist when
the package is loaded.


% The number of lines that are indented to clear the drop cap letter.
% You may need to increase this beyond 1 + \IEEEPARstartDROPDEPTH if
% you are using lowercase letters with descenders.
\renewcommand{\IEEEPARstartDROPLINES}{2}

% The minimum number of lines left on a page to allow an \IEEEPARstart.
% Does not take into consideration glue shrink, so it tends to be overly
% cautious.
\renewcommand{\IEEEPARstartMINPAGELINES}{2}

% The height of the drop cap (*above* the baseline), is adjusted to match
% the height of this text in the current font (when \IEEEPARstart is called).
% Use a strut if you want a height not based on that of the main text font.
\renewcommand{\IEEEPARstartHEIGHTTEXT}{T}

% The depth the letter is lowered below the baseline. The height (and size)
% of the letter is determined by the sum of this value and the height of
% \IEEEPARstartHEIGHTTEXT in the current font. It is a good idea to set this
% value in terms of the baselineskip so that it can respond to changes
% therein.
\renewcommand{\IEEEPARstartDROPDEPTH}{1.1\baselineskip}

% The font the drop cap will be rendered in. The argument is a command that
% can take zero or one argument.
\renewcommand{\IEEEPARstartFONTSTYLE}{\bfseries}

% Any additional, non-font related commands needed to modify the drop cap
% letter, can take zero or one argument.
\renewcommand{\IEEEPARstartCAPSTYLE}{\MakeUppercase}

% The font that will be used to render the rest of the word (second argument
% to \IEEEPARstart), can take zero or one argument.
\renewcommand{\IEEEPARstartWORDFONTSTYLE}{\relax}

% Any additional, non-font related commands needed to modify the rest of the
% word (second argument to \IEEEPARstart), can take zero or one argument.
\renewcommand{\IEEEPARstartWORDCAPSTYLE}{\MakeUppercase}

% The horizontal separation distance from the drop letter to the main text.
% Lengths that depend on the font (i.e., ex, em, etc.) will be referenced to
% the font that is active when \IEEEPARstart is called.
\renewcommand{\IEEEPARstartSEP}{0.15em}

% The Horizontal offset applied to the left of the drop cap. The drop cap
% can be shifted left (negative) or right (positive) using this parameter.
% Lengths that depend on the font (e.g., ex, em, etc.) will be referenced
% to the font that is active when \IEEEPARstart is called.
\renewcommand{\IEEEPARstartHOFFSET}{0em}

For \IEEEPARstartSEP and \IEEEPARstartHOFFSET, you can also reference the
length variable, \IEEEPARstartletwidth, which will be set to the width of
the drop drop before it is rendered. e.g.,
\renewcommand{\IEEEPARstartHOFFSET}{-0.5\IEEEPARstartletwidth}
will cause the drop cap to be shifted leftward by half its width.

% Italic correction command applied at the end of the drop cap when
% evaluating its width. Without this, italic or slanted drop cap letters will
% "crash into" the main text because their full true width is not taken into
% consideration.
\renewcommand{\IEEEPARstartITLCORRECT}{\/}





*** \bstctlcite ***

\bstctlcite{} is used to issue a citation for a special IEEEtran.bst BibTeX
style control entry which can control various operating parameters of the
IEEEtran.bst file (V1.00 and later):

\bstctlcite{IEEEexample:BSTcontrol}

V1.2 and later of IEEEtrantools.sty provides for an optional argument so
that different auxiliary file specifiers may be used in documents with
multiple bibliographies:

\bstctlcite[@auxoutsec]{IEEEexample:BSTcontrol}

\bstctlcite operates silently and will not alter the citation numbers or
place a citation entry into the main text or bibliography (when used with
IEEEtran.bst). It should not be used with .bst files that do not provide
support for these special BST control entries.

See the IEEEtran.bst BibTeX style documentation for details.
http://www.michaelshell.org/tex/ieeetran/bibtex/
http://www.ctan.org/pkg/ieeetran




*** \IEEEnoauxwrite ***

Sometimes an author wants to cite something within \thanks or other section
that comes early in the document, but does not want that to take the place
of the first reference in the main text (e.g., alter the citation counter).
Assuming the publisher's rules allow citations in footnote and/or abstract
sections of the document, the command \IEEEnoauxwrite{} can be used:

\author{... \thanks{... \IEEEnoauxwrite{\cite{myreference}}.}}

to accomplish this.

If the reference is not also cited elsewhere in the document, it will have
to be manually inserted into the reference list of the bibliography via a
\nocite. If the \nocite is done at the end of document, the citation will
be last in the reference list rather than first as would normally happen
with citations within \thanks.




*** itemize, enumerate and description (IED) lists ***

IEEEtrantools provides the IEEEitemize, IEEEenumerate and IEEEdescription
list environments that offer enhanced controls and make it much easier to
create such lists when the main text is "block indented" from the 
labels (IEEE style).

By default, the LaTeX IED list environments are not overridden with the
IEEE IED versions. To force this, load IEEEtrantools.sty with the
"redeflists" option:

\usepackage[redeflists]{IEEEtrantools}

In any event, the IEEE IED list environments are available as IEEEitemize,
IEEEenumerate, and IEEEdescription. The IEEE IED lists depend on the LaTeX
low-level list environment, so class files that redefine it may also alter
the IEEE IED list formatting. The original LaTeX IED environments (as
provided by the LaTeX kernel and class file) are always retained as
LaTeXitemize, LaTeXenumerate and LaTeXdescription.

Beware that the default enumerate label width will not be correct if
the class file is not using normalfont "9)" style labeled enumerated lists.

The support commands for the IEEE IED list environments (\IEEEsetlabelwidth,
\IEEEusemathlabelsep, \IEEEiedlabeljustifyl, etc.) are also provided.

See the section on lists in the IEEEtran_HOWTO manual for full details
on the IEEE style lists.
http://www.ctan.org/pkg/ieeetrantools



*** The IEEEeqnarray family ***

Please note that IEEEtrantools provides and sets the length variable
\IEEEnormaljot. At the \begin{document}, \IEEEnormaljot will be set to
the current value of \jot. If the user later alters the document's
nominal \jot, the value of \IEEEnormaljot should be revised as well.

The support commands for the IEEEeqnarray commands (\IEEEstrut, 
\IEEEeqnarrayvrule, \IEEEvisiblestrutstrue, etc.) are also provided.

For more information on the use of the IEEEeqnarray family of commands,
the following sources of information are recommended:

 1. The IEEEtran HOWTO manual (IEEEeqnarray is covered in the Appendices):
    http://www.ctan.org/pkg/ieeetrantools

 2. Stefan M. Moser's "How to Typeset Equations in LaTeX"
    http://moser.cm.nctu.edu.tw/manuals.html#eqlatex

 3. Tobias Oetiker's "The Not So Short Introduction to LaTeX2e"
    http://www.ctan.org/pkg/lshort




*** The IEEEproof environment ***

IEEEtrantools provides the IEEEtran IEEEproof environment as well as
several undocumented IEEEtran IEEEproof commands that are useful for
non-IEEE related work:

  1. \IEEEQEDoff, when issued within an IEEEproof, turns off the 
     automatic generation of the \IEEEQED symbol at the end of
     the proof.

  2. \IEEEQEDhere emits an \IEEEQED symbol at the place it is executed
     and turns off the \IEEEQED symbol at the end of the proof. This
     can be useful when using IEEEeqnarray within IEEEproof
     \begin{IEEEproof}
       \begin{IEEEeqnarray*}{c+x*}
        x=1. & \IEEEQEDhere
       \end{IEEEeqnarray*}
     \end{IEEEproof}
     % Thanks to Stefan M. Moser for this example.

  3. \IEEEQEDhereeqn is somewhat similar to the AMS \qedhere and
     is for use with the standard equation environment within
     IEEEproof:
     \begin{IEEEproof}
       \begin{equation*}
        x=1. \IEEEQEDhereeqn
       \end{equation*}
     \end{IEEEproof}
     Note that \IEEEQEDhereeqn will put the QED symbol in front
     of an equation number if it exists.

  4. \IEEEproofindentspace allows users to change the indention
     of the proof environment from its IEEEtran default of 2\parindent:
     
     \renewcommand{\IEEEproofindentspace}{1\parindent}
     
     Place the above redefinition before any IEEEproof environments it is
     to affect.




*** \IEEEauthorrefmark{} ***

The \IEEEauthorrefmark{} simply takes a number as an argument and generates
a corresponding superscript symbol. Used in IEEEtran.cls to link author
names to their affiliations:

   Michael Shell\IEEEauthorrefmark{2}



%%%%%%%%%%%%%%%%%%%%%%%%%% End of IEEEtrantools_doc.txt  %%%%%%%%%%%%%%%%%%
% That's all folks!

