% \iffalse % % chemist.dtx % % Copyright (C) 1996, 1999, 2000, 2004, 2009, 2010, 2013 by Shinsaku Fujita All rights reserved. % % This file is part of the ChemSci system % ======================================== % % This style file is created for submitting a manuscript to % scientific journals. This style file is to be contained in the % ``chemist'' directory which is an input directory for TeX. % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 % of this license or (at your option) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX % version 2005/12/01 or later. % % This work has the LPPL maintenance status `maintained'. % The Current Maintainer of this work is Shinsaku Fujita. % % This work consists of the files xymtex.dtx and xymtex.ins % and the derived files: xymtex.sty, xymtexps.sty and xymtexpdf.sty. % %======================================= % % For using this file, see % Shinsaku Fujita, ``LaTeX for Chemists and Biochemists'' % Tokyo Kagaku Dojin, Tokyo (1993), Chapter 16. % % This file is a successor to: % % ********************************************************************* % * chemist.sty by Shinsaku Fujita * % * counters and related matters for compounds. * % * ffboxit: November 2 1991 by S. Fujita * % * bslskipchange: November 6 1991 by S. Fujita (deleted) * % * chapinitial: 1991 November 7 by S. Fujita * % * variable arrows: 1992 May 24 by S. Fujita * % * reaction and scheme arrows (revised): 1992 May 24 by S. Fujita * % * changespace <=== bslskipchange: Dec 31 1992 by S. Fujita * % * (g)rshfboxit and (g)lshfboxit: January 3, 1993 by S. Fujita * % ********************************************************************* % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Released on January 3, 1993 % Copyright (C) 1993 by Shinsaku Fujita, all rights reserved. % This style file is created for making manuscripts of chemical fields. % This option style file is to be contained in the ``chemist'' directory % which is an input directory for TeX. % % For using this file, see % Shinsaku Fujita, ``LaTeX for Chemists and Biochemists'' % Tokyo Kagaku Dojin, Tokyo (1993), Chapters 7, 9, 12 and 18. % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \def\j@urnalname{chemist} % \def\versi@ndate{January 03, 1993} % \def\versi@nno{ver1.00} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Version 1.01 % --- added the end commands of the \verbatim environment and the % \verb command contained in LaTeX 2.09 % --- \LaTeX, \BibTeX logos etc improved % \typeout{verbatim for LaTeX2.09 (and LaTeX2e) in chemist.sty} % \typeout{logos for LaTeX2.09 (and LaTeX2e) in chemist.sty} % \def\versi@ndate{April 20, 1996} % \def\j@urnalname{chemist} % \def\versi@ndate{April 20, 1996} % \def\versi@nno{ver1.01} % \def\copyrighth@lder{SF} % Shinsaku Fujita % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{June 15, 1996} % \def\versi@nno{ver1.01a} % \def\copyrighth@lder{SF} % Shinsaku Fujita % \typeout{Package `\j@urnalname' (\versi@nno) <\versi@ndate>\space % [\copyrighth@lder]} % \typeout{chemist.sty ver1.01a (for LaTeX2e) 1996/06/15[SF]} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{March 16, 1999} % \def\versi@nno{ver2.00} % \def\copyrighth@lder{SF} % Shinsaku Fujita % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{November 3, 2000} % \def\versi@nno{ver2.00a} % \def\copyrighth@lder{SF} % Shinsaku Fujita % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{June 20, 2001} % \def\versi@nno{ver2.01} % \def\copyrighth@lder{SF} % Shinsaku Fujita % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{May 30, 2002} % \def\versi@nno{ver3.00} % \def\copyrighth@lder{SF} % Shinsaku Fujita %%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{August 30, 2004} % \def\versi@nno{ver4.01} % \def\copyrighth@lder{SF} % Shinsaku Fujita %%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{November 17, 2004} % \def\versi@nno{ver4.01b} % \def\copyrighth@lder{SF} % Shinsaku Fujita %%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{December 02, 2004} % \def\versi@nno{ver4.01c} % \def\copyrighth@lder{SF} % Shinsaku Fujita %%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{September 02, 2005} % \def\versi@nno{ver4.03} % \def\copyrighth@lder{SF} % Shinsaku Fujita %%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{November 08, 2009} % \def\versi@nno{ver4.05} % \def\copyrighth@lder{SF} % Shinsaku Fujita %%%%%%%%%% % \def\j@urnalname{chemist} \def\journalID{chemist} % \def\versi@ndate{November 21, 2010} % \def\versi@nno{ver5.00a} % \def\copyrighth@lder{SF} % Shinsaku Fujita %%%%%%%%%% % % \fi % \CheckSum{5053} %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z %% Digits \0\1\2\3\4\5\6\7\8\9 %% Exclamation \! Double quote \" Hash (number) \# %% Dollar \$ Percent \% Ampersand \& %% Acute accent \' Left paren \( Right paren \) %% Asterisk \* Plus \+ Comma \, %% Minus \- Point \. Solidus \/ %% Colon \: Semicolon \; Less than \< %% Equals \= Greater than \> Question mark \? %% Commercial at \@ Left bracket \[ Backslash \\ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} % % \iffalse %% %% `chemist.dtx' ver1.01a (for LaTeX2e) 1996/06/15 %% `chemist.dtx' ver1.02 (for LaTeX2e) 2009/11/08 %% `chemist.dtx' ver5.00 (for LaTeX2e) 2010/10/01 %% `chemist.dtx' ver5.00a (for LaTeX2e) 2010/11/21 %% by Shinsaku Fujita %% % % \section{Initial declaration} % % \changes{v1.01a}{1996/06/15}{For LaTeX2e: dtx file} % \changes{v1.01a}{1996/07/16}{Comment out for use LaTeX2.09} % \changes{v2.00}{1999/03/16}{For XyMTeX 2.00 Enhanced Version} % \changes{v2.00a}{2000/11/03}{Bug fix} % \changes{v2.01}{2001/06/20}{Size reduction and Clip information} % \changes{v3.00}{2002/05/30}{PStricks & mathversion{boldchem}} % \changes{v4.03}{2005/9/2}{Bug fix for mathchem} % \changes{v4.05}{2009/11/08}{extension of mathversions chem and boldchem} % \changes{v5.00}{2010/10/01}{for bond coloring and the LaTeX Project Public License} % \changes{v5.00a}{2010/11/21}{bug fix} % \changes{v5.01}{2013/06/06}{bug fix} % % \begin{macrocode} % \NeedsTeXFormat{LaTeX2e} % \end{macrocode} % % \begin{macrocode} % \ProvidesFile{chemist.sty} %\ProvidesFile{chemist.drv} % [2013/06/06 v5.01 % ChemSci package ] % ChemSci package driver (English) % \end{macrocode} % %\setcounter{StandardModuleDepth}{1} % % \section{Driver file for this dtx file} % % \changes{v1.0a}{1996/06/15}{first draft} % \changes{v2.00a}{2000/11/05}{bug fix} % \changes{v4.01}{2004/08/30}{variable arrows} % \changes{v4.01c}{2004/12/02}{To be compatible with multicol.sty: dimen2 into dimen6} % \changes{v4.05}{2009/11/08}{extension of mathversions chem and boldchem; % modification of reaction arrows} % \changes{v5.00a}{2010/11/21}{bug fix} % \changes{v5.01}{2013/06/06}{bug fix} % % \begin{macrocode} %<*driver> ] \documentclass{ltxdoc} \GetFileInfo{chemist.drv} \title{Chemist Package \space\fileversion} \author{Shinsaku Fujita \\ Shonan Institute of Chemoinformatics and Mathematical Chemistry \\ Ashigara-Kami-Gun, Kanagawa, Japan %% (old address) %% Department of Chemistry and Materials Technology \\ %% Kyoto Institute of Technology \\ %Matsugasaki, Sakyoku, Kyoto, 606-8585 Japan %% (old address) %% Ashigara Research Laboratories \\ %% Fuji Photo Film Co. Ltd. } \date{\filedate} \begin{document} \maketitle \tableofcontents \DocInput{chemist.dtx} \end{document} % % \end{macrocode} % % \fi % % \StopEventually{} % % \section{{\sc docstrip} options} % % This dtx file provides the {\sffamily chemist} package % by docstrip processing. % % \DeleteShortVerb{\|} % \begin{center} % \begin{tabular}{|l|l|} % \hline % argument & package name \\ % \hline % chemist & chemist.sty \\ % driver & a documentation driver file \\ % \hline % \end{tabular} % \end{center} % \MakeShortVerb{\|} % % \section{Version information} % % The old process for typing out version information remains active. % \begin{macrocode} % %%%%%%%% \def\j@urnalname{chemist} \def\journalID{chemist} \def\versi@ndate{June 6, 2013} \def\versi@nno{ver5.01} \def\copyrighth@lder{SF} % Shinsaku Fujita %%%%%%%%%% %<*chemist> \typeout{Package `\j@urnalname' (\versi@nno) <\versi@ndate>\space [\copyrighth@lder]} \typeout{chemist.sty ver5.01 (for LaTeX2e) 2013/06/06[SF]} % % \end{macrocode} % % \section{Times Fonts} % % If the \textsf{chemtimes} package is loaded, the switch \verb/\@chemtimestrue/ % becomes effective. Thereby, the mathversions ``chem'' and ``boldchem'' % defined in the present \textsf{chemist} package are entirely replaced by those defined % in the \textsf{chemtimes} package. % \changes{v4.05}{2009/11/20}{the unskip command was deleted.} % % \begin{macro}{\if@chemtimes} % \begin{macrocode} %<*chemist> \@ifundefined{ifchemtimes}{\newif\ifchemtimes}{}%from chemtimes \@ifundefined{if@chemtimes}{\newif\if@chemtimes}{} \@ifundefined{if@@chemtimes}{\newif\if@@chemtimes}{}%from chemtimes \DeclareOption{chemtimes}{\@chemtimestrue} \@chemtimesfalse \ProcessOptions \if@chemtimes \if@@chemtimes\else \ifchemtimes\else \PackageError{chemist} {The option ``chemtimes'' is not permitted} {You should use this option after the chemtimes package is loaded} \fi\fi\fi % \end{macrocode} % \end{macro} % % % \section{Cross-references of compounds} % % The \textsf{compd} counter is introduced for numbering % chemical compounds. % % \begin{macro}{\thecompd} % \begin{macro}{\compd} % \begin{macro}{\nocompd} % % The |\thecompd| command prints compound numbering without % advancing the the \textsf{compd} counter. % The |\compd| command prints compound numbering and advances % the \textsf{compd} counter by one, while % the |\nocompd| advances the \textsf{compd} counter by one % without printing. % \changes{v1.01a}{1996/06/22}{the unskip command was deleted.} % % \begin{macrocode} % ******************* % * compound label * % * 1991 sept 29 * % ******************* % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \@ifundefined{chapter}{\newcounter{compd}}{\newcounter{compd}[chapter]} \def\thecompd{\arabic{compd}} %\def\compd{\refstepcounter{compd}\unskip{\large\bf \thecompd}} \def\compd{\leavevmode\refstepcounter{compd}{\large\bf \thecompd}} \def\nocompd{\refstepcounter{compd}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\compdlabel} % \begin{macro}{\nocompdlabel} % \begin{macro}{\cref} % % The cross-reference of compound numbers are conducted by using % |\label| and |\ref| commands. Alternative commands are also available % as follows. % \begin{macrocode} \def\compdlabel#1{\compd \label{#1}} \def\nocompdlabel#1{\nocompd \label{#1}} \@ifundefined{bf}{\def\bf{\normalfont\bfseries}}{} \def\cref#1{{\bf \ref{#1}}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\compdfbox} % \begin{macro}{\compdmbox} % \begin{macro}{\lbcompdpbox} % % For takeing a space for compound output, we can use |\compdfbox| % and like. % % \begin{macrocode} \def\compdfbox#1#2#3{\framebox[#1]{\rule[-0.3mm]{0pt}{#2} #3 }} \def\compdmbox#1#2#3{\makebox[#1]{\rule[-0.3mm]{0pt}{#2} #3 }} \def\lbcompdpbox#1#2#3{\parbox{#2}{\vskip 2em \parbox{#2}{#3 \par \centering{\compdlabel{#1}}\vskip 2em }}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % The \textsf{deriv} counter is introduced for numbering % derivatives of a compound. % \changes{v1.01a}{1996/06/22}{the unskip command was deleted.} % \changes{v2.00}{1999/03/17}{derivnum added} % % \begin{macro}{\thederiv} % \begin{macro}{\deriv} % \begin{macro}{\noderiv} % \begin{macro}{\derivnum} % % \begin{macrocode} % ******************** % * deriv label * % * 1991 oct 01 * % ******************** % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \newcounter{deriv}[compd] \def\thederiv {\thecompd\alph{deriv}} %\def\deriv{\refstepcounter{deriv}\unskip{\large\bf \thederiv}} \def\deriv{\leavevmode\refstepcounter{deriv}{\large\bf \thederiv}} \def\noderiv{\refstepcounter{deriv}} \def\derivnum{% \leavevmode\refstepcounter{deriv}{\large\bf \alph{deriv}}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\derivlabel} % \begin{macro}{\noderivlabel} % % The cross-reference of derivative numbers are conducted by using % |\label| and |\ref| commands. % Alternative commands are also available as follows. % \begin{macrocode} \def\derivlabel#1{\deriv \label{#1}} \def\noderivlabel#1{\noderiv \label{#1}} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\derivfbox} % \begin{macro}{\derivmbox} % \begin{macro}{\lbderivpbox} % % For takeing a space for placing a derivative, we can use |\compdfbox| % and like. % % \begin{macrocode} \def\derivfbox#1#2#3{\framebox[#1]{\rule[-0.3mm]{0pt}{#2} #3 }} \def\derivmbox#1#2#3{\makebox[#1]{\rule[-0.3mm]{0pt}{#2} #3 }} \def\lbderivpbox#1#2#3{\parbox{#2}{\vskip 2em \parbox{#2}{#3 \par \centering{\derivlabel{#1}}\vskip 2em }}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\deriva} % \begin{macro}{\noderiva} % \begin{macro}{\derivalabel} % \begin{macro}{\noderivalabel} % % The \textsf{deriv} counter is also advanced by |\deriva| command and like. % This command produced the net output of the \textsf{deriv} counter. % \changes{v1.01a}{1996/06/22}{the unskip command was deleted.} % \begin{macrocode} % ******************** % * deriva label * % * 1991 oct 05 * % ******************** % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita %\def\deriva{\refstepcounter{deriv}\unskip{\large\bf \alph{deriv}}} \def\deriva{\leavevmode\refstepcounter{deriv}{\large\bf \alph{deriv}}} \def\noderiva{\refstepcounter{deriv}} \def\derivalabel#1{\deriva \label{#1}} \def\noderivalabel#1{\noderiva \label{#1}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \section{Boxes for placing compounds} % % \begin{macro}{\cdonecell} % \begin{macro}{\cdtwocell} % % These boxes with a given width are used for printing chemical compounds. % A box provided by |\cdonecell| is used for accomodating a compound. % A box provided by |\cdtwocell| is devied into two vertical cells % where the one is to place a compound and the other to place % the compound number. % \begin{macrocode} % ******************** % * cdonecell label * % * 1991 oct 04 * % ******************** % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\cdonecell#1#2#3{\raisebox{#1}{\parbox{#2}{\centering{#3}}}} % #1 ue, #2 haba, #3 honbun \def\cdtwocell#1#2#3#4{\raisebox{#1}{ \parbox{#2}{\centering{#3} \par \vskip 3pt \centering{#4} }}} % #1 ue, #2 haba, #3 ue honbun, #4 shita label % \end{macrocode} % \end{macro} % \end{macro} % % \section{Arrows} % % \subsection{Arrows with variable length} % % \begin{macro}{\leftrightarrowfill} % \begin{macro}{\Leftarrowfill} % \begin{macro}{\Rightarrowfill} % \begin{macro}{\Leftrightarrowfill} % % LaTeX{} are possessed of |\leftarrowfill| and |\rightarrowfill| for % drawing arrows with variable length. The {\sffamily chemist} % package defines other arrows with variable length for drawing % chemical equations or schemes. % % \begin{macrocode} % ******************* % * variable arrows * 1992 May 24 S. Fujita % ******************* % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\leftrightarrowfill{$\m@th \mathord\leftarrow \mkern-6mu \cleaders\hbox{$\mkern-2mu \mathord- \mkern-2mu$}\hfill \mkern-6mu \mathord\rightarrow$} \def\Leftarrowfill{$\m@th \mathord\Leftarrow \mkern-6mu \cleaders\hbox{$\mkern-2mu \mathord= \mkern-2mu$}\hfill \mkern-6mu \mathord=$} \def\Rightarrowfill{$\m@th \mathord= \mkern-6mu \cleaders\hbox{$\mkern-2mu \mathord= \mkern-2mu$}\hfill \mkern-6mu \mathord\Rightarrow$} \def\Leftrightarrowfill{$\m@th \mathord\Leftarrow \mkern-6mu \cleaders\hbox{$\mkern-2mu \mathord= \mkern-2mu$}\hfill \mkern-6mu \mathord\Rightarrow$} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \subsection{Reaction arrows with variable length} % % \begin{macro}{\reactrarrow} % \begin{macro}{\reactlarrow} % \begin{macro}{\reactlrarrow} % \begin{macro}{\reacteqarrow} % % The {\sffamily chemist} package defines arrows with variable length % for drawing chemical equations, where additional information % can be written on the upper and/or downward sides of each arrow. % \changes{v2.00}{1999/02/02}{Vertical spacing changed} % \changes{v2.00}{1999/03/16}{Horizontal shift} % % The vertical space between the upper text and the arrow as well as % the vertical spece between the the arrow and the below text can be % changed by the dimension register \verb/\reactarrowsep/. % % \changes{v4.05}{2009/11/8}{added \cs{reactarrowsep} and \cs{reactarrowseprate}} % \changes{v4.05}{2009/11/15}{added \cs{ChemStrut}} % \changes{v4.05}{2009/11/19}{\cs{react...} to \cs{oldreact...}} % % \begin{verbatim} % \reactarrowsep (dimension) for adjusting the two vertical spaces % (default value 0pt) % \reactarrowseprate (string) for adjusting the lower vertical space % (default 1.0) % \end{verbatim} % % \begin{macrocode} % ******************* 1991 Oct 4 S. Fujita % * reaction arrows * Revised 1992 May 24 S.Fujita%1999/02/02 SF % ******************* % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita % % #1 yoko #2 ue, #3 haba, #4 ya no ue, #5 ya no shita % \newdimen\reactarrowsep \def\reactarrowseprate{1.0} \reactarrowsep=0pt \def\oldreactrarrow{\@ifnextchar[{\oldreact@rarrow}{\oldreact@rarrow[0pt]}} \def\oldreact@rarrow[#1]#2#3#4#5{\ensuremath{\mathbin{\hskip#1\raisebox{#2}{% \parbox{#3}{\centering \baselineskip=.8\normalbaselineskip \ChemStrut{#4}\par \vskip-0.2\normalbaselineskip\vskip\reactarrowsep \leavevmode\rightarrowfill \par \vskip\reactarrowseprate\reactarrowsep \vskip-0.1\normalbaselineskip\ChemStrut{#5}}}}}} \def\oldreactlarrow{\@ifnextchar[{\oldreact@larrow}{\oldreact@larrow[0pt]}} \def\oldreact@larrow[#1]#2#3#4#5{\ensuremath{\mathbin{\hskip#1\raisebox{#2}{% \parbox{#3}{\centering \baselineskip=.8\normalbaselineskip \ChemStrut{#4}\par \vskip-0.2\normalbaselineskip\vskip\reactarrowsep \leavevmode\leftarrowfill \par \vskip\reactarrowseprate\reactarrowsep \vskip-0.1\normalbaselineskip\ChemStrut{#5}}}}}} \def\oldreactlrarrow{\@ifnextchar[{\oldreact@lrarrow}{\oldreact@lrarrow[0pt]}} \def\oldreact@lrarrow[#1]#2#3#4#5{\ensuremath{\mathbin{\hskip#1\raisebox{#2}{% \parbox{#3}{\centering \baselineskip=.8\normalbaselineskip \ChemStrut{#4}\par \vskip-0.2\normalbaselineskip\vskip\reactarrowsep \leavevmode\centering{\leftrightarrowfill} \par \vskip\reactarrowseprate\reactarrowsep \vskip-0.1\normalbaselineskip\ChemStrut{#5}}}}}} \def\oldreacteqarrow{\@ifnextchar[{\oldreact@eqarrow}{\oldreact@eqarrow[0pt]}} \def\oldreact@eqarrow[#1]#2#3#4#5{\ensuremath{\mathbin{\hskip#1\raisebox{#2}{% \parbox{#3}{\centering \baselineskip=.8\normalbaselineskip \ChemStrut{#4}\par \vskip-0.2\normalbaselineskip\vskip\reactarrowsep \leavevmode\rightarrowfill \par \vskip-0.55\normalbaselineskip% \leavevmode\leftarrowfill \par \vskip\reactarrowseprate\reactarrowsep \vskip-0.1\normalbaselineskip\ChemStrut{#5}}}}}} %%%%%%2009/11/19 %\let\reactrarrow=\oldreactrarrow %\let\reactlarrow=\oldreactlarrow %\let\reactlrarrow=\oldreactlrarrow %\let\reacteqarrow=\oldreacteqarrow % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\reactreqarrow} % \begin{macro}{\reactleqarrow} % % These commands have been added for the XyMTeX version 4.05. % The {\sffamily chemist} package additionally defines arrows with variable length % for drawing chemical equilibrium, where additional information % can be written on the upper and/or downward sides of each arrow. % The length of either one of arrows can be reduced by \verb/\eqlbarrowstretch/. % % \changes{v4.05}{2009/11/08}{added \cs{reactreqarrow} and \cs{reactleqarrow}} % \changes{v4.05}{2009/11/19}{\cs{react...} to \cs{oldreact...}} % % \begin{macrocode} % **************************************** 2009/11/08 S. Fujita % * equilibrium arrows of uneven lengths * % **************************************** % % #1 yoko #2 ue, #3 haba, #4 ya no ue, #5 ya no shita % \def\eqlbarrowstretch{0.6}%reduction rate of arrow length \def\oldreactreqarrow{\@ifnextchar[{\oldreact@reqarrow}{\oldreact@reqarrow[0pt]}} \def\oldreact@reqarrow[#1]#2#3#4#5{\ensuremath{\mathbin{\hskip#1\raisebox{#2}{% \parbox{#3}{\centering\dimen0=#3 \baselineskip=.8\normalbaselineskip \ChemStrut{#4}\par \vskip-0.2\normalbaselineskip\vskip\reactarrowsep \leavevmode\rightarrowfill \par \vskip-0.55\normalbaselineskip% \leavevmode\hbox to\eqlbarrowstretch\dimen0{\leftarrowfill} \par \vskip\reactarrowseprate\reactarrowsep \vskip-0.1\normalbaselineskip\ChemStrut{#5}}}}}} \def\oldreactleqarrow{\@ifnextchar[{\oldreact@leqarrow}{\oldreact@leqarrow[0pt]}} \def\oldreact@leqarrow[#1]#2#3#4#5{\ensuremath{\mathbin{\hskip#1\raisebox{#2}{% \parbox{#3}{\centering\dimen0=#3 \baselineskip=.8\normalbaselineskip \ChemStrut{#4}\par \vskip-0.2\normalbaselineskip\vskip\reactarrowsep \leavevmode\hbox to\eqlbarrowstretch\dimen0{\rightarrowfill} \par \vskip-0.55\normalbaselineskip% \leavevmode\leftarrowfill \par \vskip\reactarrowseprate\reactarrowsep \vskip-0.1\normalbaselineskip\ChemStrut{#5}}}}}} %%%%%2009/11/19 %\let\reactreqarrow=\oldreactreqarrow %\let\reactleqarrow=\oldreactleqarrow % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\k@nz@n} % The |\k@nz@n| command is used for changing a dimension to a % parameter for the \LaTeX{} picture environment. % \begin{macrocode} \def\k@nz@n#1{\@tempdima=#1\relax \@tempcnta=\@tempdima \@tempcntb=\unitlength \divide\@tempcnta by \@tempcntb \edef\kanzanchi{\the\@tempcnta}% \divide\@tempcnta by2\relax \edef\kanzanhalf{\the\@tempcnta}} % \end{macrocode} % \end{macro} % % \begin{macro}{\reactdarrow} % \begin{macro}{\reactuarrow} % \begin{macro}{\reactveqarrow} % \begin{macro}{\reactduarrow} % Vertical reaction arrows has been added. % \changes{v2.00}{1999/02/02}{New commands} % \changes{v4.05}{2009/11/19}{\cs{react...} to \cs{oldreact...}} % \begin{macrocode} \def\oldreactdarrow{\@ifnextchar[{\oldreact@darrow}{\oldreact@darrow[0pt]}} \def\oldreact@darrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{tabular}{l}#4\end{tabular}% {\tabcolsep=0pt \begin{tabular}{c}\begin{sfpicture}(0,\kanzanchi)(0,0) \Put@Direct(0,\kanzanchi){\vector(0,-1){\kanzanchi}} \end{sfpicture}\end{tabular}}% \begin{tabular}{l}#5\end{tabular}}} % \def\oldreactuarrow{\@ifnextchar[{\oldreact@uarrow}{\oldreact@uarrow[0pt]}} \def\oldreact@uarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{tabular}{l}#4\end{tabular}% {\tabcolsep=0pt \begin{tabular}{c}\begin{sfpicture}(0,\kanzanchi)(0,0) \Put@Direct(0,0){\vector(0,1){\kanzanchi}} \end{sfpicture}\end{tabular}}% \begin{tabular}{l}#5\end{tabular}}} % \def\oldreactveqarrow{\@ifnextchar[%] {\oldreact@veqarrow}{\oldreact@veqarrow[0pt]}} \def\oldreact@veqarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{tabular}{l}#4\end{tabular}% {\tabcolsep=0pt \begin{tabular}{c}\begin{sfpicture}(40,\kanzanchi)(0,0) \Put@Direct(40,0){\vector(0,1){\kanzanchi}}% \Put@Direct(0,\kanzanchi){\vector(0,-1){\kanzanchi}}% \end{sfpicture}\end{tabular}}% \begin{tabular}{l}#5\end{tabular}}} % \def\oldreactduarrow{\@ifnextchar[{\oldreact@duarrow}{\oldreact@duarrow[0pt]}} \def\oldreact@duarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{tabular}{l}#4\end{tabular}% {\tabcolsep=0pt \begin{tabular}{c}\begin{sfpicture}(0,\kanzanchi)(0,0) \Put@Direct(0,\kanzanhalf){\vector(0,1){\kanzanhalf}}% \Put@Direct(0,\kanzanhalf){\vector(0,-1){\kanzanhalf}}% \end{sfpicture}\end{tabular}}% \begin{tabular}{l}#5\end{tabular}}} %%%%2009/11/19 %\let\reactdarrow=\oldreactdarrow %\let\reactuarrow=\oldreactuarrow %\let\reactveqarrow=\oldreactveqarrow %\let\reactduarrow=\oldreactduarrow % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\reactswarrow} % \begin{macro}{\reactsearrow} % \begin{macro}{\reactnwrarrow} % \begin{macro}{\reactnearrow} % Further reaction arrows have been added. % \changes{v2.00}{1999/02/02}{New commands} % \changes{v2.00}{2000/06/14}{Bug Fix: exchanged sw -- se and nw --ne} % \changes{v4.05}{2009/11/19}{\cs{react...} to \cs{oldreact...}} % \begin{macrocode} \def\oldreactsearrow{\@ifnextchar[{\oldreact@searrow}{\oldreact@searrow[0pt]}} \def\oldreact@searrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{sfpicture}(\kanzanchi,\kanzanchi)(0,0) \Put@Direct(0,\kanzanchi){\vector(1,-1){\kanzanchi}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\hbox to0pt{% \begin{tabular}[b]{l}#4\end{tabular}\hss}} \Put@Direct(\kanzanhalf,\kanzanhalf){\lower2ex\hbox to0pt{\hss \begin{tabular}[t]{r}#5\end{tabular}}}% \end{sfpicture}}} % \def\oldreactnwarrow{\@ifnextchar[{\oldreact@nwarrow}{\oldreact@nwarrow[0pt]}} \def\oldreact@nwarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{sfpicture}(\kanzanchi,\kanzanchi)(0,0)% \Put@Direct(\kanzanchi,0){\vector(-1,1){\kanzanchi}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\hbox to0pt{% \begin{tabular}[b]{l}#4\end{tabular}\hss}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\lower2ex\hbox to0pt{\hss \begin{tabular}[t]{r}#5\end{tabular}}}% \end{sfpicture}}} % \def\oldreactnearrow{\@ifnextchar[{\oldreact@nearrow}{\oldreact@nearrow[0pt]}} \def\oldreact@nearrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{sfpicture}(\kanzanchi,\kanzanchi)(0,0) \Put@Direct(0,0){\vector(1,1){\kanzanchi}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\lower2ex\hbox to0pt{% \begin{tabular}[t]{l}#5\end{tabular}\hss}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\hbox to0pt{\hss \begin{tabular}[b]{r}#4\end{tabular}}}% \end{sfpicture}}} % \def\oldreactswarrow{\@ifnextchar[{\oldreact@swarrow}{\oldreact@swarrow[0pt]}} \def\oldreact@swarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{sfpicture}(\kanzanchi,\kanzanchi)(0,0)% \Put@Direct(\kanzanchi,\kanzanchi){\vector(-1,-1){\kanzanchi}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\lower2ex\hbox to0pt{% \begin{tabular}[t]{l}#5\end{tabular}\hss}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\hbox to0pt{\hss \begin{tabular}[b]{r}#4\end{tabular}}}% \end{sfpicture}}} %%%%%2009/11/19 %\let\reactsearrow=\oldreactsearrow %\let\reactnwarrow=\oldreactnwarrow %\let\reactnearrow=\oldreactnearrow %\let\reactswarrow=\oldreactswarrow % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\reactdeqarrow} % \begin{macro}{\reactueqarrow} % \begin{macro}{\reactdlrarrow} % \begin{macro}{\reactulrarrow} % Further reaction arrows have been added. % \changes{v2.00}{1999/02/02}{New commands} % \changes{v4.05}{2009/11/19}{\cs{react...} to \cs{oldreact...}} % \begin{macrocode} \def\oldreactdeqarrow{\@ifnextchar[%] {\oldreact@deqarrow}{\oldreact@deqarrow[0pt]}} \def\oldreact@deqarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{sfpicture}(\kanzanchi,\kanzanchi)(0,0)% \Put@Direct(0,\kanzanchi){\Put@Direct(15,15){\vector(1,-1){\kanzanchi}}}% \Put@Direct(\kanzanchi,0){\Put@Direct(-15,-15){\vector(-1,1){\kanzanchi}}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\raise1ex\hbox to0pt{% \begin{tabular}[b]{l}#4\end{tabular}\hss}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\lower2ex\hbox to0pt{\hss \begin{tabular}[t]{r}#5\end{tabular}}}% \end{sfpicture}}} \def\oldreactueqarrow{\@ifnextchar[%] {\oldreact@ueqarrow}{\oldreact@ueqarrow[0pt]}} \def\oldreact@ueqarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{sfpicture}(\kanzanchi,\kanzanchi)(0,0) \Put@Direct(0,0){\Put@Direct(-15,15){\vector(1,1){\kanzanchi}}} \Put@Direct(\kanzanchi,\kanzanchi){\Put@Direct(15,-15){\vector(-1,-1){\kanzanchi}}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\lower2ex\hbox to0pt{% \begin{tabular}[t]{l}#5\end{tabular}\hss}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\raise1ex\hbox to0pt{\hss \begin{tabular}[b]{r}#4\end{tabular}}}% \end{sfpicture}}} \def\oldreactulrarrow{\@ifnextchar[%] {\oldreact@ulrarrow}{\oldreact@ulrarrow[0pt]}} \def\oldreact@ulrarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{sfpicture}(\kanzanchi,\kanzanchi)(0,0)% \Put@Direct(\kanzanhalf,\kanzanhalf){\vector(1,1){\kanzanhalf}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\vector(-1,-1){\kanzanhalf}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\lower2ex\hbox to0pt{% \begin{tabular}[t]{l}#5\end{tabular}\hss}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\raise1ex\hbox to0pt{\hss \begin{tabular}[b]{r}#4\end{tabular}}}% \end{sfpicture}}} \def\oldreactdlrarrow{\@ifnextchar[%] {\oldreact@dlrarrow}{\oldreact@dlrarrow[0pt]}} \def\oldreact@dlrarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{\k@nz@n{#3}% \def\arraystretch{0.8}% \begin{sfpicture}(\kanzanchi,\kanzanchi)(0,0)% \Put@Direct(\kanzanhalf,\kanzanhalf){\vector(-1,1){\kanzanhalf}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\vector(1,-1){\kanzanhalf}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\hbox to0pt{% \begin{tabular}[b]{l}#4\end{tabular}\hss}}% \Put@Direct(\kanzanhalf,\kanzanhalf){\lower2ex\hbox to0pt{\hss \begin{tabular}[t]{r}#5\end{tabular}}}% \end{sfpicture}}} %%%%%2009/11/19 %\let\reactdeqarrow=\oldreactdeqarrow %\let\reactueqarrow=\oldreactueqarrow %\let\reactulrarrow=\oldreactulrarrow %\let\reactdlrarrow=\oldreactdlrarrow % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\schemelarrow} % \begin{macro}{\schemerarrow} % \begin{macro}{\schemelrarrow} % % The {\sffamily chemist} package defines double-line arrows with variable % length for drawing reaction schemes, where additional information % can be written on the upper and/or downward sides of each arrow. % \changes{v2.00}{1999/02/02}{Vertical spacing changed} % \changes{v4.05}{2009/11/19}{\cs{react...} to \cs{oldreact...}} % \begin{macrocode} % ******************************** % * scheme arrows * % * 1991 OCT 4 S. Fujita * % * Revised 1992 May 24 S.Fujita * 1999/02/02 by S. Fujita % ******************************** % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\oldschemelarrow#1#2#3#4{\raisebox{#1}{% \parbox{#2}{\centering \baselineskip=.8\normalbaselineskip #3 \par \vskip-0.2\normalbaselineskip \centering{\Leftarrowfill} \par \vskip-0.1\normalbaselineskip #4}}} \def\oldschemerarrow#1#2#3#4{\raisebox{#1}{% \parbox{#2}{\centering \baselineskip=.8\normalbaselineskip #3 \par \vskip-0.2\normalbaselineskip \centering{\Rightarrowfill} \par \vskip-0.1\normalbaselineskip #4}}} \def\oldschemelrarrow#1#2#3#4{\raisebox{#1}{% \parbox{#2}{\centering \baselineskip=.8\normalbaselineskip #3 \par \vskip-0.2\normalbaselineskip \centering{\Leftrightarrowfill} \par \vskip-0.1\normalbaselineskip #4}}} %%%%2009/11/19 %\let\schemelarrow=\oldschemelarrow %\let\schemerarrow=\oldschemerarrow %\let\schemelrarrow=\oldschemelrarrow % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % % \begin{macro}{\ChemStrut} % % The commond \verb/\ChemStrut/ is defined to output a strut for chemical arrows. % For example, \verb/\reactrarrow{0pt}{1cm}{AAAA}{\ChemStrut}/ can adjust the horizontal % position of an arrow. % % \changes{v4.05}{2009/11/08}{added \cs{ChemStrut}} % % \begin{macrocode} \def\ChemStrut{\mbox{\vphantom{A}}} % \end{macrocode} % \end{macro} % % \begin{macro}{\changespace} % % The |\changespace| command is used to change a vertical space % between lines. % \begin{macrocode} % ************************* % * Changing line spacing * % ************************* % After Chapter 3 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\changespace#1{\def\baselinestretch{#1} \@normalsize} % \end{macrocode} % \end{macro} % % \begin{macrocode} % %%%%%%%%%%1991 November 6%%%\bslskipchange%%%%%%%%%% % \newenvironment{bslskipchange}[1]% % {\par\begingroup\global\baselineskip= #1\normalbaselineskip}% % {\endgroup\par\global\baselineskip=\normalbaselineskip% % \global\@ignoretrue} % \end{macrocode} % % \section{Captions} % \subsection{Changing caption types within a float} % \changes{v1.00}{1993/06/17}{by S. Fujita} % % \begin{macro}{\tbcaption} % \begin{macro}{\fgcaption} % \begin{macro}{\smcaption} % % These commands enable us to place two or more floats of % different kinds in a single floating body. % % \begin{center} % \begin{tabular}{lp{5cm}} % \verb/\tbcaption[TCAP]{CAP}/ & % makes a table caption in a float other than ``table'' or % after using \verb/\fgcaption/ or \verb/\smcaption/ command. \\ % \verb/\fgcaption[TCAP]{CAP}/ & % makes a figure caption in a float other than ``figure'' or % after using \verb/\tbcaption/ or \verb/\smcaption/ command. \\ % \verb/\smcaption[TCAP]{CAP}/ & % makes a scheme caption in a float other than ``scheme'' or % after using \verb/\tbcaption/ or \verb/\fgcaption/ command. \\ % \end{tabular} % \end{center} % % For exmaple, we have % % \begin{verbatim} % \begin{figure} % \caption{aaa} % 通常のキャプション。 % \tbcaption{bbb} % 表のキャプションの強制的に変更。 % \fgcaption[ccc]{ddd} %図のキャプションに戻す。 % \end{figure} % \end{verbatim} % % \begin{macrocode} \def\tbcaption{\def\@captype{table}\caption} \def\fgcaption{\def\@captype{figure}\caption} \def\smcaption{\def\@captype{scheme}\caption} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\chapinitial} % % \begin{macrocode} % ***************** % * miscellaneous * % ***************** %%%%%%%%%%%1991 November 7%%%chapinitial%%%%%%%%%%%%% \def\chap@initial#1% {\medbreak\begingroup\clubpenalty=10000 \def\par{\endgraf\endgroup\medbreak} \noindent\hangindent28pt\hangafter=-2 \hbox to0pt{\hskip-\hangindent \hbox to28pt{\hss\raise-4pt\hbox{\lower3pt\hbox{\Huge\bf #1}} } } \hskip-5pt plus2pt minus2pt} \outer\def\chapinitial{\chap@initial} % \end{macrocode} % \end{macro} % % \section{Redefinition of verbatim} % % \begin{macro}{\yen} % % The {\sffamily chemist} package uses a customaized defintion of |\yen| for % printing the top symbol of each command sequence. % \begin{macrocode} % ************ % * ¥の定義 * % ************ % % ¥ %%%%%from ascmac.sty%%%%added \leavevmode%%%%%%%%%%%%%%%% %\def\yen{\leavevmode{\setbox0=\hbox{Y}Y\kern-.97\wd0\vbox{% % \hrule\@height.1ex\@width.98\wd0% % \kern.33ex\hrule\@height.1ex\@width.98\wd0\kern.45ex}}} % \def\yen{\leavevmode\hbox{\setbox0=\hbox{Y}% \setbox1=\vbox{\hrule height.05\ht0 width.96\wd0% \kern.18\ht0\hrule height.05\ht0 width.96\wd0}% \setbox1=\hbox to\wd0{\raise.3\ht0\box1\hss}% {\ooalign{\hfil\box1\hfil\crcr\box0}}}} % \end{macrocode} % \end{macro} % % \begin{macro}{\ifverbswitch} % \begin{macro}{\verb} % % The switch |\ifverbswitch| is used for changing |\yen| or % |\backslash| for the top symbol of each control sequence % printed by the |\verb| command. % % \begin{macrocode} % ************************** % * ¥を含んだverbatim環境 * % ************************** % %%%%%%1992 April 30 %%%verbatim%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % from 奥村晴彦 LaTeX美文書作成入門 1991 技術評論社 % % % omitted: =, by, etc. % % % added: verbswitch % % % \verbswitchtrue===> yen mark % % % \verbswitchfalse===> backslash mark % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \newif\ifverbswitch \verbswitchtrue \let\old@verbatim\@verbatim \let\old@xverbatim\@xverbatim \let\old@sxverbatim\@sxverbatim \begingroup \catcode`\|=0 \catcode`\\=13 |gdef|verbh@@k{|catcode`|\=13 |let\=|yen} |endgroup % \end{macrocode} % % \begin{macrocode} \def\verb{\begingroup \catcode``=13 \@noligs \tt \let\do\@makeother \dospecials \ifverbswitch \verbh@@k \fi \@ifstar{\@sverb}{\@verb}} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{environment}{@verbatim} % \begin{environment}{verbatim} % % The switch |\ifverbswitch| is also effective % for in a verbtim environment. % % \begin{macrocode} \begingroup \catcode`|=0 \catcode`[=1 \catcode`]=2 \catcode`\{=12 \catcode`\}=12 \catcode`\\=13 |gdef|@xverbatim#1\end{verbatim}[#1|end[verbatim]] |gdef|@sxverbatim#1\end{verbatim*}[#1|end[verbatim*]] |endgroup % \end{macrocode} % % \begin{macrocode} \newdimen\verbatimleftmargin \verbatimleftmargin\leftmargini \newdimen\verbatimbaselineskip \verbatimbaselineskip11pt \def\verbatimsize{\small} % \end{macrocode} % % \begin{macrocode} \def\@verbatim{\trivlist \item[]% \if@minipage \else \vskip\baselineskip% \vskip-\verbatimbaselineskip \vskip\parskip\fi \leftskip\@totalleftmargin \if@minipage \else \advance\leftskip\verbatimleftmargin \fi \rightskip\z@ \parindent\z@ \parfillskip\@flushglue \parskip\z@ \@tempswafalse \def\par{\if@tempswa\hbox{}\fi\@tempswatrue\@@par} \obeylines \verbatimsize \baselineskip\verbatimbaselineskip \tt \catcode``=13 \@noligs \let\do\@makeother \dospecials} % \end{macrocode} % % \begin{macrocode} \def\verbatim{\ifverbswitch \@verbatim \else \old@verbatim \fi \frenchspacing \@vobeyspaces \ifverbswitch \verbh@@k \@xverbatim \else \old@xverbatim \fi} \@namedef{verbatim*}{% \ifverbswitch \@verbatim \verbh@@k \@sxverbatim \else \old@verbatim \old@sxverbatim \fi} % \end{macrocode} % % \begin{macrocode} % %%%%%%%%%%%%%%pLaTeX2e%%%%%%%%%%%%%1996/04/20 by S. Fujita%%%%%% % pLaTeX2eでは再定義されているので,上のままだとエラーになる % LaTeX2.09の定義を補っておく \def\@sverb#1{\def\@tempa ##1#1{##1\endgroup}\@tempa} \def\@verb{\obeyspaces \frenchspacing \@sverb} \def\@sverbtim{\obeyspaces\@verbatim} \let\endverbatim=\endtrivlist \@namedef{varbatim*}{\@verbatim\@sxverbatim} \expandafter\let\csname endverbatim*\endcsname =\endtrivlist % \end{macrocode} % \end{environment} % \end{environment} % % % \section{Shadowed Boxes} % % \begin{macro}{\fb@xit} % \begin{macro}{\fboxit} % % \begin{macrocode} % % <> % \fb@xit{LWIDTH}{SPACE}{BWIDTH}{TEXT} % #1 LWIDTH: line thickness % #2 SPACE: spacing around the text % #3 BWIDTH: box width % #4 TEXT: text % \long\def\fb@xit#1#2#3#4{% \setbox4=\vbox{\hsize#3\noindent#4}% %\setbox4=\vbox{\hsize#3\noindent\strut#4\strut}% \vbox{\hrule\@height#1\hbox{\vrule\@width#1\kern#2\vbox{% \kern#2\box4\kern#2}\kern#1\vrule\@width#1}\hrule\@height#1}} %\kern#2\box4\kern#2}\vrule\@width#1}\hrule\@height#1}} % \end{macrocode} % % \begin{macrocode} % % \fboxit{BWIDTH}{TEXT} % #1 BWIDTH: box width % #2 TEXT: text % \long\def\fboxit#1#2{\fb@xit{\fboxrule}{\fboxsep}{#1}{#2}} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\leftshfr@me} % \begin{macro}{\leftshframe} % \begin{macro}{\leftshfbox} % % \begin{macrocode} % % ************************************************************ % % * 影のついた箱 * % % * January 3, 1993 by Shinsaku Fujita * % % * Borde ({\em \TeX{} by Example})の記載を参考にして作った* % % ************************************************************ % After Chapter 12 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita % % left shadow box % % \leftshfr@me{SWIDTH}{SPACE}{BOXWIDTH}{TEXT} % % #1 SWIDTH: shadow width % #2 SPACE: spacing around the text % #3 BOXWIDTH: box width % #4 TEXT: text % % \leftshframe{BOXWIDTH}{TEXT} % % #1 BOXWIDTH: box width % #2 TEXT: text % % \leftshfbox{TEXT} % % #1 TEXT: text % % %%leftshfr@me#1 shadow width, #2 space, #3 boxwidth, #4 text% \long\def\leftshfr@me#1#2#3#4{\leavevmode% \vbox{\hbox{\hsize #3\vbox{% \hbox{\vrule\@width #1% \vbox{\kern-#1\fb@xit{% \fboxrule}{#2}{#3}{#4}\kern-\fboxrule}\kern-#1}% \hrule\@height#1}}}\strut\hskip #1\relax} % %leftshframe%%%%%%%%%%%%%%%%%%%%%%%%% #1 width, #2 text%%%%% \long\def\leftshframe#1#2{% \leftshfr@me{\fboxsep}{\fboxsep}{#1}{#2}} % %leftshfbox%%%%%%%%%%%%%%%%%%%%%%%%% #1 text%%%%%%%%%%%%%%%% \long\def\leftshfbox#1{\leavevmode\setbox0=\hbox{\fbox{#1}}% \vbox{\hbox{\vbox{\hbox{\vrule\@width\fboxsep\vbox{% \kern-\fboxsep\box0\kern-\fboxrule}\kern-\fboxsep}% \hrule\@height\fboxsep}}}\hskip\fboxsep\relax} %%%% % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\rightshfr@me} % \begin{macro}{\rightshframe} % \begin{macro}{\rightshfbox} % % \begin{macrocode} % % right shadow box % % \rightshfr@me{SWIDTH}{SPACE}{BOXWIDTH}{TEXT} % % #1 SWIDTH: shadow width % #2 SPACE: spacing around the text % #3 BOXWIDTH: box width % #4 TEXT: text % % \rightshframe{BOXWIDTH}{TEXT} % % #1 BOXWIDTH: box width % #2 TEXT: text % % \rightshfbox{TEXT} % % #1 TEXT: text % % %rightshfr@me#1 shadow width, #2 space, #3 boxwidth, #4 text% \long\def\rightshfr@me#1#2#3#4{\leavevmode% \vbox{\hbox{\kern#1\vbox{\hsize#3\vbox{\kern-#1\hbox{% \kern-#1\fb@xit{\fboxrule}{#2}{#3}{#4}}\hrule\@height#1}}% \vrule\@width#1}}\strut} % %rightshframe%%%%%%%%%%%%%%%%%%%%%%%%% #1 width, #2 text%%%%% \long\def\rightshframe#1#2{% \rightshfr@me{\fboxsep}{\fboxsep}{#1}{#2}} % %rightshfbox%%%%%%%%%%%%%%%%%%%%%%%%% #1 text%%%%%%%%%%%%%%%% \long\def\rightshfbox#1{\leavevmode% \vbox{\hbox{\kern\fboxsep\vbox{\vbox{\kern-\fboxsep\hbox{% \kern-\fboxsep\fbox{#1}}\hrule\@height\fboxsep}}% \vrule\@width\fboxsep}}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{environment}{ffboxit} % \begin{macro}{\ffparbox} % % \begin{macrocode} % ***************************************** % * 箱 (環境版) * % * November 2, 1991 by Shinsaku Fujita * % ***************************************** % After Chapter 12 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita % %%%%%%1991 November 2 %%%ffboxit%%%%%%%%%%%%%%%%%%%%%% \def\ffboxit{\par\vskip1pc\hfil\vbox\bgroup \hrule\hbox\bgroup\vrule\kern3pt\vbox\bgroup\kern3pt} \def\endffboxit{\kern3pt\egroup\kern3pt\vrule\egroup\hrule\egroup \hfil\\} \def\ffparbox#1#2{\vbox{\hsize=#1 \noindent\strut #2\strut}} % \end{macrocode} % \end{macro} % \end{environment} % % \section{Framed box environment with and without shadows} % % \subsection{Framed box environment without shadows} % % \begin{macrocode} % %%%%%%1991 November 2 %%%frameboxit%%%old definition%%%%%%%%%% % with centering function %\def\frameboxit#1{\par\vskip1pc\hfil\vbox\bgroup % \hrule\hbox\bgroup\vrule\kern3pt\vbox\bgroup\kern3pt % \vbox\bgroup\hsize=#1 \noindent\strut % \@minipagetrue% % \everypar{\global\@minipagefalse\everypar{}}} %\def\endframeboxit{\strut\egroup\kern3pt\egroup% %\kern3pt\vrule\egroup % \hrule\egroup\hfil\\} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % <> % \begin{fr@meboxit}{LWIDTH}{SPACE}{BWIDTH} % LWIDTH: line thickness % SPACE: spacing around the text % BWIDTH: box width % \end{fr@meboxit} % % %%fr@meboxit%%%%%#1 line width, #2 space, #3 width%%%%%%%%%%%%% %\def\fr@meboxit#1#2#3{\gdef\fr@meline{#1}\gdef\fr@mesp{#2}% % \hbox\bgroup\vbox\bgroup% % \hrule\@height#1\hbox\bgroup% % \vrule\@width#1\kern#2\vbox\bgroup% % \kern#2\vbox\bgroup\hsize=#3\strut% % \@minipagetrue% % \everypar{\global\@minipagefalse\everypar{}}} %\def\endfr@meboxit{\strut\egroup% %\kern\fr@mesp\egroup\kern\fr@mesp\egroup\hrule\@height\fr@meline% %\egroup\vrule\@width\fr@meline\egroup} % \end{macrocode} % % \begin{environment}{fr@meboxit} % \begin{environment}{frameboxit} % % \begin{macrocode} % %%%%%%%revised by S. Fujita, January 16, 1993%%%%%%%%%%%%%%%%%%%%% \long\def\fr@meboxit#1#2#3{\gdef\fr@meline{#1}\gdef\fr@mesp{#2}% % % \setbox4=\vbox\bgroup\hsize=#3\@parboxrestore\ignorespaces} \global\setbox4=\hbox\bgroup\minipage{#3}} % %\def\endfr@meboxit{\egroup% \def\endfr@meboxit{\endminipage\egroup% \hbox{\vbox{\hrule\@height\fr@meline% \hbox{\vrule\@width\fr@meline\kern\fr@mesp% \vbox{\kern\fr@meline\kern\fr@mesp\box4\kern\fr@mesp}% % % \vbox{\kern\fr@mesp\box4\kern\fr@mesp}% \kern\fr@mesp}\hrule\@height\fr@meline}% \vrule\@width\fr@meline}} % \end{macrocode} % % \begin{macrocode} % %%%%%%%revised by S. Fujita, January 16, 1993%%%%%%%%%%%%%%%%%%%% \def\frameboxit#1{\leavevmode\fr@meboxit{\fboxrule}{\fboxsep}{#1}} \let\endframeboxit=\endfr@meboxit % \end{macrocode} % \end{environment} % \end{environment} % % \subsection{Framed box environment with shadows} % % \begin{environment}{lshfr@meboxit} % \begin{environment}{lshfboxit} % % \begin{macrocode} % ***************************************** % * 影のついた箱 (環境版) * % * January 16, 1993 by Shinsaku Fujita * % * \sh@hwidth: 水平の影の太さ * % * \sh@vwidth: 垂直の影の太さ * % ***************************************** % After Chapter 12 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita % % <> See above % \begin{fr@meboxit}{LWIDTH}{SPACE}{BWIDTH} % LWIDTH: line thickness % SPACE: spacing around the text % BWIDTH: box width % \end{fr@meboxit} % % <> % \begin{lshfr@meboxit}{HSWIDTH}{VSWIDTH}{SPACE}{BWIDTH} % HSWIDTH: the thickness of the horizontal shadow % VSWIDTH: the thickness of the vertical shadow % SPACE: spacing around the text % BWIDTH: box width % \end{lshfr@meboxit} % % <> % \begin{lshfboxit}{BWIDTH} % BWIDTH: box width % \end{lshfboxit} % % %%%lshfr@meboxit#1 #2 shadow width, #3 space, #4 boxwidth%%%% \def\lshfr@meboxit#1#2#3#4{\gdef\sh@hwidth{#1}\gdef\sh@vwidth{#2}% \leavevmode% \vbox\bgroup\hbox\bgroup\hsize #4\vbox\bgroup% \hbox\bgroup\vrule\@width\sh@vwidth% \vbox\bgroup\kern-\sh@hwidth\fr@meboxit{\fboxrule}{#3}{#4}} \def\endlshfr@meboxit{\endfr@meboxit%%%%\kern-\fboxrule \egroup\kern-\sh@vwidth\egroup% \hrule\@height\sh@hwidth\egroup\egroup\egroup% \strut\kern\sh@hwidth\relax} % \end{macrocode} % % \begin{macrocode} % %%lshfboxit%%%%%%%%%%%%%%%%%%%%%%%%% #1 width %%%%%%%% \def\lshfboxit#1{\leavevmode% \lshfr@meboxit{\fboxsep}{\fboxsep}{\fboxsep}{#1}} \let\endlshfboxit=\endlshfr@meboxit % \end{macrocode} % \end{environment} % \end{environment} % % \begin{environment}{rshfr@meboxit} % \begin{environment}{rshfboxit} % % \begin{macrocode} % <> % \begin{rshfr@meboxit}{HSWIDTH}{VSWIDTH}{SPACE}{BWIDTH} % HSWIDTH: the thickness of the horizontal shadow % VSWIDTH: the thickness of the vertical shadow % SPACE: spacing around the text % BWIDTH: box width % \end{rshfr@meboxit} % % <> % \begin{rshfboxit}{BWIDTH} % BWIDTH: box width % \end{rshfboxit} % % %%rshfr@meboxit#1 #2 shadow width, #3 space, #4 boxwidth%%% \def\rshfr@meboxit#1#2#3#4{% \gdef\sh@hwidth{#1}\gdef\sh@vwidth{#2}% \leavevmode% \vbox\bgroup\hbox\bgroup\kern\sh@vwidth% \vbox\bgroup\hsize#4\vbox\bgroup% \kern-\sh@hwidth\hbox\bgroup\kern-\sh@vwidth% \fr@meboxit{\fboxrule}{#3}{#4}} \def\endrshfr@meboxit{\endfr@meboxit\egroup% \hrule\@height\sh@hwidth% \egroup\egroup\vrule\@width\sh@vwidth\egroup\egroup\strut} % \end{macrocode} % % \begin{macrocode} % %%rshfboxit%%%%%%%%%%%%%%%%%%%%%%%%% #1 width%%%%%%%% \def\rshfboxit#1{\leavevmode% \rshfr@meboxit{\fboxsep}{\fboxsep}{\fboxsep}{#1}} \let\endrshfboxit=\endrshfr@meboxit % \end{macrocode} % \end{environment} % \end{environment} % % \subsection{Framed box environment with gradient shadows} % % \begin{macro}{\hsgr@d} % \begin{macro}{\vsgr@d} % \begin{macro}{\vwgr@d} % \begin{macro}{\hwgr@d} % \begin{macro}{\vsepgr@d} % \begin{macro}{\hsepgr@d} % \begin{macro}{\nrep} % \begin{macro}{\nrepmax} % % \begin{macrocode} % %%parameters%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \newdimen\hsgr@d \newdimen\vsgr@d \newdimen\vwgr@d \newdimen\hwgr@d \newdimen\vsepgr@d \newdimen\hsepgr@d \newcount\nrep \newcount\nrepmax %\nrepmax=20 \nrepmax=25 % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{environment}{grshfr@meboxit} % \begin{environment}{grshfboxit} % % \begin{macrocode} % ***************************************** % * 斜の影のついた箱 (環境版) * % * Box environments with gradient shadow * % * January 16, 1993 by Shinsaku Fujita * % ***************************************** % After Chapter 12 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita % % <> % \begin{grshfr@meboxit}{HSWIDTH}{VSWIDTH}{SPACE}{BWIDTH} % HSWIDTH: the thickness of the horizontal shadow % VSWIDTH: the thickness of the vertical shadow % SPACE: spacing around the text % BWIDTH: box width % \end{grshfr@meboxit} % % <> % \begin{grshfboxit}{BWIDTH} % BWIDTH: box width % \end{grshfboxit} % %%%%%%%%grshfr@meboxit#1 #2 shadow width, #3 space, #4 boxwidth%%% \def\grshfr@meboxit#1#2#3#4{% \hsgr@d=0pt \advance\hsgr@d by#1 \divide\hsgr@d by\nrepmax% \vsgr@d=0pt \advance\vsgr@d by#2 \divide\vsgr@d by\nrepmax% \leavevmode% \setbox0=\vbox\bgroup\fr@meboxit{\fboxrule}{#3}{#4}} \def\brb@xit#1{\vbox{\setbox1=\hbox{#1}% \offinterlineskip% \hbox{\copy1\vsepgr@d=\nrep\vsgr@d% \vwgr@d=\ht1\advance\vwgr@d by-\vsepgr@d% \vrule\@height\vwgr@d\@width\vsgr@d}% \hbox{\hsepgr@d=\nrep\hsgr@d\kern\hsepgr@d% \vbox{\hwgr@d=\wd1\advance\hwgr@d by-\hsepgr@d% \hrule\@height\hsgr@d\@width\hwgr@d}}}} \def\lprb@xit{\expandafter\setbox0=\expandafter\brb@xit{\box0}} \def\endgrshfr@meboxit{\endfr@meboxit\egroup% \nrep=\@ne\@whilenum\nrep<\nrepmax\do% {\lprb@xit\advance\nrep\@ne}\box0\relax} % %%%%% in TeX grammer %\def\endgrshfr@meboxit{\endfr@meboxit\egroup% % \nrep=\@ne \loop \lprb@xit \advance\nrep\@ne% % \ifnum \nrep<\nrepmax \repeat \box0\relax} % \end{macrocode} % % \begin{macrocode} % %%%%%%%grshfboxit%%%%%%%%%%%%%%%%%%%%%%%%% #1 width, #2 text%%%%%%%% \def\grshfboxit#1{\leavevmode% \grshfr@meboxit{\fboxsep}{\fboxsep}{\fboxsep}{#1}} \let\endgrshfboxit=\endgrshfr@meboxit % \end{macrocode} % \end{environment} % \end{environment} % % \begin{environment}{glshfr@meboxit} % \begin{environment}{glshfboxit} % % \begin{macrocode} % <> % \begin{glshfr@meboxit}{HSWIDTH}{VSWIDTH}{SPACE}{BWIDTH} % HSWIDTH: the thickness of the horizontal shadow % VSWIDTH: the thickness of the vertical shadow % SPACE: spacing around the text % BWIDTH: box width % \end{glshfr@meboxit} % % <> % \begin{glshfboxit}{BWIDTH} % BWIDTH: box width % \end{glshfboxit} % %%%%%%%%glshfr@meboxit#1 #2 shadow width, #3 space, #4 boxwidth%% \def\glshfr@meboxit#1#2#3#4{% \hsgr@d=0pt \advance\hsgr@d by#1 \divide\hsgr@d by\nrepmax% \vsgr@d=0pt \advance\vsgr@d by#2 \divide\vsgr@d by\nrepmax% \leavevmode% \setbox0=\vbox\bgroup\fr@meboxit{\fboxrule}{#3}{#4}} \def\blb@xit#1{% \vbox{\setbox1=\hbox{#1}% \offinterlineskip% \vsepgr@d=\nrep\vsgr@d% \vwgr@d=\ht1\advance\vwgr@d by-\vsepgr@d% \hsepgr@d=\nrep\hsgr@d% \hwgr@d=\wd1\advance\hwgr@d by-\hsepgr@d% \hbox{\vrule\@height\vwgr@d\@width\vsgr@d\copy1}% \hbox{\kern-\vsgr@d% \vrule\@height\hsgr@d\@width\hwgr@d}}} % %% \hbox{\vbox{\hrule\@height\hsgr@d\@width\hwgr@d}}}} \def\lplb@xit{\expandafter\setbox0=\expandafter\blb@xit{\box0}} \def\endglshfr@meboxit{\endfr@meboxit\egroup% \nrep=\@ne\@whilenum\nrep<\nrepmax\do% {\lplb@xit\advance\nrep\@ne}\box0\relax} % %%%%% in TeX grammer %\def\endglshfr@meboxit{\endfr@meboxit\egroup% % \nrep=\@ne \loop \lplb@xit \advance\nrep\@ne% % \ifnum\nrep<\nrepmax\repeat\box0\relax} % \end{macrocode} % % \begin{macrocode} % %%%%%%%%glshfboxit%%%%%%%%%%%%%%%%%%%%%%%%% #1 width, #2 text%%% \def\glshfboxit#1{\leavevmode% \glshfr@meboxit{\fboxsep}{\fboxsep}{\fboxsep}{#1}} \let\endglshfboxit=\endglshfr@meboxit % \end{macrocode} % \end{environment} % \end{environment} % % \section{(Mini)screen environment} % \subsection{(Mini)screen environment without a title} % % \begin{macro}{\@oval} % \begin{macro}{\h@b@x} % \begin{macro}{\@vrf@} % \changes{v2.00}{2000/06/15}{ybaselineshift etc.} % % \begin{macrocode} \@ifundefined{ybaselineshift}{% \newdimen\ybaselineshift \ybaselineshift=\z@}{} \@ifundefined{tbaselineshift}{% \newdimen\tbaselineshift \tbaselineshift=\z@}{} \newdimen\@savetbaselineshift \@savetbaselineshift=\z@ \def\@oval(#1,#2)[#3]{\begingroup\boxmaxdepth \maxdimen \@ovttrue \@ovbtrue \@ovltrue \@ovrtrue \@tfor\@tempa :=#3\do{\csname @ov\@tempa false\endcsname}\@ovxx #1\unitlength \@ovyy #2\unitlength \@tempdimb \ifdim \@ovyy >\@ovxx \@ovxx\else \@ovyy \fi \advance\@tempdimb -2pt\relax \@getcirc \@tempdimb \@ovro \ht\@tempboxa \@ovri \dp\@tempboxa \@ovdx\@ovxx \advance\@ovdx -\@tempdima \divide\@ovdx \tw@ \@ovdy\@ovyy \advance\@ovdy -\@tempdima \divide\@ovdy \tw@ \@circlefnt \setbox\@tempboxa \hbox{\if@ovr \@ovvert32\kern -\@tempdima \fi \if@ovl \kern \@ovxx \@ovvert01\kern -\@tempdima \kern -\@ovxx \fi \if@ovt \@ovhorz \kern -\@ovxx \fi \if@ovb \raise \@ovyy \@ovhorz \fi}\advance\@ovdx\@ovro \advance\@ovdy\@ovro \ht\@tempboxa\z@ \dp\@tempboxa\z@ \@put{-\@ovdx}{-\@ovdy}{\box\@tempboxa}% \endgroup} \def\h@b@x#1#2#3{\hbox to\dimen1% {\@oval(#3,#3)[#1]\hfil\@oval(#3,#3)[#2]}} \def\@vrf@#1#2{\vskip#1\leaders\vrule\@width#2\vfil\vskip#1} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{environment}{miniscreen} % \begin{environment}{screen} % \changes{v2.00}{2000/06/15}{ybaselineshift etc.} % \changes{v4.01c}{2004/12/03}{To be compatible with multicol.sty: dimen2 into dimen6} % % % \begin{macrocode} % ****************** % * miniscreen環境 * % ****************** % % ASCII版Micro\TeXのscreen環境を枠の幅を指定できるように改変 % % ifcase文 ==> 直接計算 % dimen類 ==> dimen0 to dimen5 % box類 ==> box0 and box1 % % After Chapter 12 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita % miniscreen environment % \let\miniscreentoprule=\hrule \def\miniscreen{\@ifnextchar[{\@miniscreen}{\@miniscreen[0]}} % \end{macrocode} % % \begin{macrocode} \def\miniscreen{\@ifnextchar[{\@miniscreen}{\@miniscreen[0]}} \def\@miniscreen[#1]#2{\dimen1=#2\relax% \@savetbaselineshift\tbaselineshift \tbaselineshift\z@ \@tempcnta=-2 \multiply\@tempcnta by#1\relax% \advance\@tempcnta by 20\relax \dimen5=1pt \multiply\dimen5\@tempcnta \dimen4=-1pt \multiply\dimen4 by#1\relax \advance\dimen4 by 10pt \dimen3=\dimen4 \advance\dimen3 by -.2pt \par\vspace{.3\baselineskip}% \dimen6=\dimen1 \advance\dimen6 by .1pt \advance\dimen1 -\dimen5\relax% \setbox0=\hbox\bgroup\minipage{\dimen1 \tbaselineshift\@savetbaselineshift}}% % \end{macrocode} % % \begin{macrocode} \def\endminiscreen{\endminipage\egroup% \setbox1=\hbox to\dimen6{\hfil\vbox{\offinterlineskip% \thinlines\unitlength=1pt \miniscreentoprule%\hrule \kern\dimen3% \h@b@x{tl}{tr}{\@tempcnta}% \kern-\dimen4\box0\h@b@x{bl}{br}{\@tempcnta}% \kern-.4pt\hrule}\hfil}\dimen0=\ht1\noindent% \hbox to\dimen6{\hbox to.4pt{% \vbox to\dimen0{\@vrf@{\dimen4}{.4pt}}\hss}% \box1\hbox to.2pt{% \hss\vbox to\dimen0{\@vrf@{\dimen4}{.4pt}}}\hss}}% % %%%%%%alternative %\def\miniscreen{\@ifnextchar[{\@miniscreen}{\@miniscreen[0]}} %\def\@miniscreen[#1]#2{\noindent\minipage{#2}\@screen[#1]} %\def\endminiscreen{\endscreen\endminipage} % \end{macrocode} % % \begin{macrocode} \def\screen{\@ifnextchar[{\@screen}{\@miniscreen[0]{\linewidth}}} \def\@screen[#1]{\miniscreen[#1]{\linewidth}} \let\endscreen=\endminiscreen % \end{macrocode} % \end{environment} % \end{environment} % % \subsection{(Mini)screen environment with a title} % % \begin{macro}{\tboxscreentoprule} % \begin{macro}{\tboxtitle} % % \begin{macrocode} \def\tboxscreentoprule{% \hbox to\wd0{\smash{\lower.4ex\hbox{% \fboxsep=2pt \fbox{\small \tboxtitle}}}\hrulefill}} \def\tboxtitle{\bf Memorandum} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{environment}{\tboxminiscreen} % \begin{environment}{\tboxscreen} % % \begin{macrocode} % ****************** % * tboxscreen環境 * % ****************** % 1996/06/04 by Shinsaku Fujita % \def\tboxminiscreen{\@ifnextchar[{\vskip8pt \let\miniscreentoprule=\tboxscreentoprule% \@miniscreen}{\vskip8pt \let\miniscreentoprule=\tboxscreentoprule% \@miniscreen[0]}} \let\endtboxminiscreen=\endminiscreen % \end{macrocode} % % \begin{macrocode} \def\tboxscreen{\@ifnextchar[{\@tboxscreen}% {\@tboxscreen[0]}} \def\@tboxscreen[#1]{\tboxminiscreen[#1]{\linewidth}} \let\endtboxscreen=\endtboxminiscreen % \end{macrocode} % \end{environment} % \end{environment} % % \section{Further boxes} % % \begin{macro}{\sboxit} % % \begin{macrocode} % ****************************** % * \sboxit 左右の余裕のない箱 * % ****************************** % After Chapter 12 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\sboxit#1#2{\vbox{\hrule\hbox% {\vrule\vbox{\kern3pt\vbox{\hsize #1 \noindent #2}% \kern3pt}\vrule}\hrule}} % \end{macrocode} % \end{macro} % % \section{Boxes with no height or no width} % % \begin{macro}{\bury} % \begin{macro}{\pushtowall} % % \begin{macrocode} % *********************** % * bury and pushtowall * % *********************** % After Chapter 7 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita % % \bury[下げ幅]{内容} % 下げ幅のデフォルト値は,\normalbaselineksipの半分 % % (旧) \def\bury#1{\smash{\lower.5\normalbaselineskip\hbox{#1}}} % これは,「化学と生化学のためのLaTeX」に載せた定義です. % 以下の定義は,下げ幅をオプション引数として取るように % 拡張したものです. % \def\bury{\@ifnextchar [{\@bury}{\@bury[.5\normalbaselineskip]}} \def\@bury[#1]#2{\smash{\lower#1\hbox{#2}}} % % \pushtowall{内容} % 水平方向の押し付ける命令 (\smashの水平方向版) % \def\finpushw@ll{\wd0=0pt \box0} \def\makepushw@ll#1{\setbox0=\hbox{#1}\finpushw@ll} \def\mathpushw@ll#1#2{\setbox0=\hbox{$\m@th#1{#2}$}\finpushw@ll} \def\pushtowall{\relax \leavevmode \ifmmode\def\next{\mathpalette\mathpushw@ll} \else\let\next\makepushw@ll \fi \next} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\penetrate} % % \begin{macrocode} % \penetrate{DIM}{OBJ} % 幅無しを、印字位置はそのままにして、だけ移動させる。この時 % 引き続く文字の印字位置はがなかったとした時の位置になる。 % (\bury命令の水平方向版) % % (比較) % aaa bbb \penetrate{-50pt}{ccc} ddd eee fff \\ % aaa bbb \hspace{-50pt} ccc ddd eee fff \\ % \def\penetrate#1#2{\pushtowall{\hbox{\hskip#1\hbox{#2}}}} % \end{macrocode} % \end{macro} % % \section{Symbols for instant photography} % % \begin{macro}{\cyandye}%%orig. |\cyan| 2010/10/01 % \begin{macro}{\magentadye}%%orig. |\magenta| 2010/10/01 % \begin{macro}{\yellowdye}%%orig. |\yellow| 2010/10/01 % \begin{macro}{\cyandv} % \begin{macro}{\magentadv} % \begin{macro}{\yellowdv} % \begin{macro}{\agxlatent} % \begin{macro}{\agxdv} % \begin{macro}{\agx} % % \begin{macrocode} % *********************** % * instant photography * % *********************** % After Chapter 7 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\cyandye{\mbox{$\bigcirc$\kern-.06em{--}\kern-.06em \ooalign{\hfil \raise.05ex\hbox{\scriptsize C}\hfil\cr\cr$\bigcirc$}\,}} \def\magentadye{\mbox{$\bigcirc$\kern-.06em{--}\kern-.06em \ooalign{\hfil \raise.05ex\hbox{\scriptsize M}\hfil\cr\cr$\bigcirc$}\,}} \def\yellowdye{\mbox{$\bigcirc$\kern-.06em{--}\kern-.06em \ooalign{\hfil \raise.05ex\hbox{\scriptsize Y}\hfil\cr\cr$\bigcirc$}\,}} \def\cyandv{\mbox{$\bigotimes$\kern-.06em{--}\kern-.06em \ooalign{\hfil \raise.05ex\hbox{\scriptsize C}\hfil\cr\cr$\bigcirc$}\,}} \def\magentadv{\mbox{$\bigotimes$\kern-.06em{--}\kern-.06em \ooalign{\hfil \raise.05ex\hbox{\scriptsize M}\hfil\cr\cr$\bigcirc$}\,}} \def\yellowdv{\mbox{$\bigotimes$\kern-.06em{--}\kern-.06em \ooalign{\hfil \raise.05ex\hbox{\scriptsize Y}\hfil\cr\cr$\bigcirc$}\,}} \def\agxlatent{% \mbox{\ooalign{% \hfil\raise.07ex\hbox{\footnotesize $\bullet$}\hfil\cr\cr $\triangle$}\,}} \def\agxdv{% \mbox{\ooalign{\hfil\raise.07ex\hbox{% \small $\spadesuit$}\hfil\cr\cr $\triangle$}\,}} \def\agx{\mbox{$\triangle$}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \section{Various arrows with fixed length} % % \begin{macro}{\llongrightarrow} % \begin{macro}{\llongleftarrow} % \begin{macro}{\llongleftrightarrow} % \begin{macro}{\Equilibarrow} % \begin{macro}{\Llongrightarrow} % \begin{macro}{\Llongleftarrow} % \begin{macro}{\Llongleftrightarrow} % % \begin{macrocode} % *********************** % * various long arrows * % *********************** % After Chapter 18 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\oldllongrightarrow{%%%---> \relbar\joinrel\relbar\joinrel\relbar\joinrel\rightarrow} \def\oldllongleftarrow{%%%<--- \leftarrow\joinrel\relbar\joinrel\relbar\joinrel\relbar} \def\oldllongleftrightarrow{%%%<---> \leftarrow\joinrel\relbar\joinrel\relbar\joinrel\rightarrow} %\def\oldEquilibarrow{%%%<--- and ---> % \mathrel{\ooalign{\raise.35ex\hbox{$\llongrightarrow$}\crcr % \lower.35ex\hbox{$\llongleftarrow$}}}} \def\oldEquilibarrow{%%%<--- and ---> \mathrel{\ooalign{\raise.35ex\hbox{$\oldllongrightarrow$}\crcr \lower.35ex\hbox{$\oldllongleftarrow$}}}} \def\oldLlongrightarrow{%%%===> \Relbar\joinrel\Relbar\joinrel\Relbar\joinrel\Rightarrow} \def\oldLlongleftarrow{%%%<=== \Leftarrow\joinrel\Relbar\joinrel\Relbar\joinrel\Relbar} \def\oldLlongleftrightarrow{%%<===> \Leftarrow\joinrel\Relbar\joinrel\Relbar\joinrel\Rightarrow} %%%%%2009/11/19 old... %\let\llongrightarrow=\oldllongrightarrow%%%---> %\let\llongleftarrow=\oldllongleftarrow%%%<--- %\let\llongleftrightarrow=\oldllongleftrightarrow%%%<---> %\let\Equilibarrow=\oldEquilibarrow%%%<--- and ---> %\let\Llongrightarrow=\oldLlongrightarrow%%%===> %\let\Llongleftarrow=\oldLlongleftarrow%%%<=== %\let\Llongleftrightarrow=\oldLlongleftrightarrow%%<===> % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\llongleftharpoondown} % \begin{macro}{\llongrightharpoonup} % \begin{macro}{\equilibarrow} % \changes{v5.01}{2013/06/06}{bug fix. \cs{mathrel} added} % % \begin{macrocode} \def\oldllongleftharpoondown{%%% /--- \mathrel{\leftharpoondown}\joinrel\relbar\joinrel\relbar\joinrel\relbar} \def\oldllongrightharpoonup{%%%---/ \relbar\joinrel\relbar\joinrel\relbar\joinrel\mathrel{\rightharpoonup}} \def\oldequilibarrow{%%% /--- and ---/ \mathrel{\ooalign{% \raise.3ex\hbox{$\oldllongrightharpoonup$}\crcr \lower.3ex\hbox{$\oldllongleftharpoondown$}}}} %%%%%2009/11/19 %\let\llongleftharpoondown=\oldllongleftharpoondown%%% /--- %\let\llongrightharpoonup=\oldllongrightharpoonup%%%---/ %\let\equilibarrow=\oldequilibarrow%%% /--- and ---/ % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\eqproton} % % \begin{macrocode} % ******************************* % * 平衡の両側矢印の上にH+を書く* % ******************************* \def\eqproton{\stackrel{{\rm \displaystyle H}^{+}}{\Equilibarrow}} % \end{macrocode} % \end{macro} % % \begin{macro}{\lllongrightarrow} % \begin{macro}{\lllongleftarrow} % \begin{macro}{\lllongleftrightarrow} % \begin{macro}{\Equiliblongarrow} % \begin{macro}{\Lllongrightarrow} % \begin{macro}{\Lllongleftarrow} % \begin{macro}{\Lllongleftrightarrow} % % \begin{macrocode} % **************** % * 長い長い矢印 * % **************** \def\oldlllongrightarrow{\relbar\joinrel\relbar% \joinrel\relbar\joinrel\relbar\joinrel\rightarrow} \def\oldlllongleftarrow{%%%<------- \leftarrow\joinrel\relbar\joinrel\relbar% \joinrel\relbar\joinrel\relbar} \def\oldlllongleftrightarrow{%%%<-------> \leftarrow\joinrel\relbar\joinrel\relbar% \joinrel\relbar\joinrel\rightarrow} \def\oldEquiliblongarrow{%%%<------- and -------> \mathrel{\ooalign{\raise.35ex\hbox{$\oldlllongrightarrow$}\crcr \lower.35ex\hbox{$\oldlllongleftarrow$}}}} \def\oldLllongrightarrow{%%%=======> \Relbar\joinrel\Relbar\joinrel\Relbar\joinrel% \Relbar\joinrel\Rightarrow} \def\oldLllongleftarrow{%%%<======= \Leftarrow\joinrel\Relbar\joinrel\Relbar\joinrel% \Relbar\joinrel\Relbar} \def\oldLllongleftrightarrow{%%<=======> \Leftarrow\joinrel\Relbar\joinrel\Relbar\joinrel% \Relbar\joinrel\Rightarrow} %%%%2009/11/19 %\let\lllongrightarrow=\oldlllongrightarrow%%%%------> %\let\lllongleftarrow=\oldlllongleftarrow%%%<------- %\let\lllongleftrightarrow=\oldlllongleftrightarrow%%%<-------> %\let\Equiliblongarrow=\oldEquiliblongarrow%%%<------- and -------> %\let\Lllongrightarrow=\oldLllongrightarrow%%%=======> %\let\Lllongleftarrow=\oldLllongleftarrow%%%<======= %\let\Lllongleftrightarrow=\oldLllongleftrightarrow%%<=======> % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\lllongleftharpoondown} % \begin{macro}{\lllongrightharpoonup} % \begin{macro}{\equiliblongarrow} % \begin{macro}{\deHBr} % \changes{v5.01}{2013/06/06}{bug fix. \cs{mathrel} added} % % \begin{macrocode} \def\oldlllongleftharpoondown{%%% /------- \mathrel{\leftharpoondown}\joinrel\relbar\joinrel\relbar% \joinrel\relbar\joinrel\relbar} \def\oldlllongrightharpoonup{%%%-------/ \relbar\joinrel\relbar\joinrel\relbar\joinrel% \relbar\joinrel\mathrel{\rightharpoonup}} \def\oldequiliblongarrow{%%% /------ and ------/ \mathrel{\ooalign{% \raise.3ex\hbox{$\oldlllongrightharpoonup$}\crcr \lower.3ex\hbox{$\oldlllongleftharpoondown$}}}} %%%%%%%%2009/11/19 %\let\lllongleftharpoondown=\oldlllongleftharpoondown%%% /------- %\let\lllongrightharpoonup=\oldlllongrightharpoonup%%%-------/ %\let\equiliblongarrow=\oldequiliblongarrow%%% /------ and ------/ % %%%%% \def\deHBr{\stackrel{\displaystyle \rm -HBr}% {\stackrel{\displaystyle \lllongrightarrow}{\rm E2}}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \section{Chemical Corrections} % % \subsection{Correction commands} % % \begin{macro}{\chemcorr} % \begin{macro}{\leavechemcorr} % % \changes{v2.00a}{2000/11/03}{chemcorr 3.0pt into 3.5pt} % \changes{v4.055}{2009/11/19}{chemcorr 3.5pt into 3.05pt} % \begin{macrocode} % ******************** % * chemform command * % ******************** % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\chemcorr{% \fontdimen16\textfont2=3.05pt \fontdimen17\textfont2=3.05pt %\fontdimen14\textfont2=3.8pt } \def\leavechemcorr{% \fontdimen16\textfont2=1.49998pt \fontdimen17\textfont2=2.47217pt %\fontdimen14\textfont2=3.62892pt } % \end{macrocode} % \end{macro} % \end{macro} % % \subsection{Chem Version} % % The `chem' for mathversion is introduced to describe chemical equations. % The `boldchem' for mathversion is introduced to describe % boldfaced chemical equations. % % \changes{v3.00}{2002/05/30}{Added the correction for commas and periods.} % \changes{v3.00}{2002/05/30}{Added the correction for Greek letters.} % \changes{v3.00}{2002/05/30}{Redefinition of \cs{mathversion}.} % \changes{v3.00}{2002/05/30}{New mathversion: boldchem} % \changes{v4.05}{2009/10/25}{Bugfix for chem and boldchem} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % % \begin{macro}{\ifnewl@tex} % % \begin{macrocode} \newif\ifnewl@tex \newl@textrue \@ifundefined{DeclareMathVersion}% {\global\newl@texfalse}{\global\newl@textrue}% % \end{macrocode} % \end{macro} % % Old commands are stored temporarily. % \begin{macrocode} \if@chemtimes\else%for chemtimes package \def\math@chem{chem} \def\math@boldchem{boldchem} \def\math@bold{bold} \def\math@normal{normal} %%added 2005/09/02 \let\oldalpha=\alpha \let\oldbeta=\beta \let\oldgamma=\gamma \let\olddelta=\delta \let\oldepsilon=\epsilon \let\oldzeta=\zeta \let\oldeta=\eta \let\oldtheta=\theta \let\oldiota=\iota \let\oldkappa=\kappa \let\oldlambda=\lambda \let\oldmu=\mu \let\oldnu=\nu \let\oldxi=\xi \let\oldpi=\pi \let\oldrho=\rho \let\oldsigma=\sigma \let\oldtau=\tau \let\oldupsilon=\upsilon \let\oldphi=\phi \let\oldchi=\chi \let\oldpsi=\psi \let\oldomega=\omega \let\oldvarepsilon=\varepsilon \let\oldvartheta=\vartheta \let\oldvarpi=\varpi \let\oldvarrho=\varrho \let\oldvarsigma=\varsigma \let\oldvarphi=\varphi \let\oldGamma=\Gamma \let\oldDelta=\Delta \let\oldTheta=\Theta \let\oldLamda=\Lambda \let\oldXi=\Xi \let\oldPi=\Pi \let\oldSigma=\Sigma \let\oldUpsilon=\Upsilon \let\oldPhi=\Phi \let\oldPsi=\Psi \let\oldOmega=\Omega \fi % \end{macrocode} % % \begin{macro}{\chemGreekletter} % % \changes{v3.01}{2004/11/17}{Redefined: \cs{chemGreekletter}} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % \changes{v5.00a}{2010/11/21}{bug fix: \cs{bgroup} and \cs{egroup} added} % \begin{macrocode} \if@chemtimes\else%for chemtimes package \def\chemGreekletter#1#2{% \expandafter\def\csname #1\endcsname{\bgroup%added 2010/11/21 \ifx\math@version\math@chem \mathord{\hbox{\mathversion{normal}$\mathchar"#2$}}\else \ifx\math@version\math@boldchem \mathord{\hbox{\mathversion{bold}$\mathchar"#2$}}\else \ifx\math@version\math@bold \csname old#1\endcsname %\mathord{\hbox{\mathversion{bold}$\mathchar"#2$}}%changed 2005/09/02 \else \csname old#1\endcsname %\mathord{\hbox{\mathversion{normal}$\mathchar"#2$}}%changed 2005/09/02 \fi\fi\fi\egroup}}%added 2010/11/21 \fi % \end{macrocode} % \end{macro} % % \begin{macro}{\chemUpGreekletter} % % \changes{v4.05}{2009/10/25}{Defined: \cs{chemUpGreekletter}} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % \changes{v5.00a}{2010/11/21}{bug fix: \cs{bgroup} and \cs{egroup} added} % \begin{macrocode} %%%\if@chemtimes\else%for chemtimes package \newif\ifupgreekrm \upgreekrmfalse \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\upgreekrmtrue\mathrm} %%%\fi \if@chemtimes\else\relax%for chemtimes package \def\chemUpGreekletter#1#2#3{% \expandafter\def\csname #1\endcsname{\bgroup%added 2010/11/21 by SF \ensuremath{% \ifx\math@version\math@chem #2{\hbox{\usefont{OML}{cmm}{m}{it}\char"#3}}\else \ifx\math@version\math@boldchem #2{\hbox{\usefont{OML}{cmm}{b}{it}\char"#3}}\else \ifx\math@version\math@bold \ifupgreekrm #2{\hbox{\usefont{OML}{cmm}{b}{it}\char"#3}}% \upgreekrmfalse \else #2{\hbox{\usefont{OML}{cmm}{b}{it}\char"#3}}% \fi \else #2{\hbox{\usefont{OML}{cmm}{m}{it}\char"#3}}% \fi\fi\fi}\egroup}}%added 2010/11/21 by SF \fi % \end{macrocode} % \end{macro} % % \begin{macro}{\ChemAccent} % % \changes{v4.05}{2009/10/25}{Defined: \cs{ChemAccent}} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % \begin{macrocode} \if@chemtimes\else%for chemtimes package \def\ChemAccent#1#2#3{% \expandafter\def\csname #1\endcsname{% \ifx\math@version\math@chem #2{\hbox{\kern-0.15em\usefont{OML}{cmm}{m}{it}\char"#3}}\else \ifx\math@version\math@boldchem #2{\hbox{\kern-0.2em\usefont{OML}{cmm}{b}{it}\char"#3}}\else \ifx\math@version\math@bold \ifupgreekrm #2{\hbox{\usefont{OML}{cmm}{b}{it}\char"#3}}% \upgreekrmfalse \else #2{\hbox{\usefont{OML}{cmm}{b}{it}\char"#3}}% \fi \else #2{\hbox{\usefont{OML}{cmm}{m}{it}\char"#3}}% \fi\fi\fi}} \fi % \end{macrocode} % \end{macro} % % % \begin{macro}{\SetChemSymbol} % % \changes{v3.01}{2004/11/17}{New command: \cs{SetChemSymbol}} % \changes{v4.05}{2009/10/25}{Added due to \cs{chemUpGreekletter}} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % % \begin{macrocode} \if@chemtimes\else%for chemtimes package \def\SetChemSymbol{% \chemGreekletter{alpha}{010B}% \chemGreekletter{beta}{010C}% \chemGreekletter{gamma}{010D}% \chemGreekletter{delta}{010E}% \chemGreekletter{epsilon}{010F}% \chemGreekletter{zeta}{0110}% \chemGreekletter{eta}{0111}% \chemGreekletter{theta}{0112}% \chemGreekletter{iota}{0113}% \chemGreekletter{kappa}{0114}% \chemGreekletter{lambda}{0115}% \chemGreekletter{mu}{0116}% \chemGreekletter{nu}{0117}% \chemGreekletter{xi}{0118}% \chemGreekletter{pi}{0119}% \chemGreekletter{rho}{011A}% \chemGreekletter{sigma}{011B}% \chemGreekletter{tau}{011C}% \chemGreekletter{upsilon}{011D}% \chemGreekletter{phi}{011E}% \chemGreekletter{chi}{011F}% \chemGreekletter{psi}{0120}% \chemGreekletter{omega}{0121}% \chemGreekletter{varepsilon}{0122}% \chemGreekletter{vartheta}{0123}% \chemGreekletter{varpi}{0124}% \chemGreekletter{varrho}{0125}% \chemGreekletter{varsigma}{0126}% \chemGreekletter{varphi}{0127}% % %\chemGreekletter{Gamma}{7000}% %\chemGreekletter{Delta}{7001}% %\chemGreekletter{Theta}{7002}% %\chemGreekletter{Lambda}{7003}% %\chemGreekletter{Xi}{7004}% %\chemGreekletter{Pi}{7005}% %\chemGreekletter{Sigma}{7006}% %\chemGreekletter{Upsilon}{7007}% %\chemGreekletter{Phi}{7008}% %\chemGreekletter{Psi}{7009}% %\chemGreekletter{Omega}{700A}% % % for uppercase Greek letters and some fonts % (cmmi medium or bold) 2009/10/25 \chemUpGreekletter{Gamma}{\mathord}{00}% \chemUpGreekletter{Delta}{\mathord}{01}% \chemUpGreekletter{Theta}{\mathord}{02}% \chemUpGreekletter{Lambda}{\mathord}{03}% \chemUpGreekletter{Xi}{\mathord}{04}% \chemUpGreekletter{Pi}{\mathord}{05}% \chemUpGreekletter{Sigma}{\mathord}{06}% \chemUpGreekletter{Upsilon}{\mathord}{07}% \chemUpGreekletter{Phi}{\mathord}{08}% \chemUpGreekletter{Psi}{\mathord}{09}% \chemUpGreekletter{Omega}{\mathord}{0A}% \chemUpGreekletter{imath}{\mathord}{7B}% \chemUpGreekletter{jmath}{\mathord}{7C}% \chemUpGreekletter{mathless}{\mathrel}{3C}%in place of < \chemUpGreekletter{mathgreater}{\mathrel}{3E}% in place of > \chemUpGreekletter{leftharpoonup}{\mathrel}{28}% \chemUpGreekletter{leftharpoondown}{\mathrel}{29}% \chemUpGreekletter{rightharpoonup}{\mathrel}{2A}% \chemUpGreekletter{rightharpoondown}{\mathrel}{2B}% \chemUpGreekletter{ell}{\mathord}{60}% \chemUpGreekletter{wp}{\mathord}{7D}% \chemUpGreekletter{partial}{\mathord}{40}% \chemUpGreekletter{flat}{\mathord}{5B}% \chemUpGreekletter{natural}{\mathord}{5C}% \chemUpGreekletter{sharp}{\mathord}{5D}% \chemUpGreekletter{triangleleft}{\mathbin}{2F}% \chemUpGreekletter{triangleright}{\mathbin}{2E}% \chemUpGreekletter{smile}{\mathrel}{5E}% \chemUpGreekletter{frown}{\mathrel}{5F}% \chemUpGreekletter{star}{\mathbin}{3F}% \ChemAccent{vec}{\rlap}{7E}% } \fi % \end{macrocode} % \end{macro} % % \begin{macro}{\mathversion} % % \changes{v3.00}{2002/5/30}{Redefined: \cs{mathversion}} % \changes{v3.01}{2004/11/17}{Redefined: \cs{mathversion}} % \changes{v4.05}{2009/10/25}{Setting added for bugfix} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % % \begin{macrocode} \if@chemtimes\else%for chemtimes package \DeclareRobustCommand\mathversion[1] {\@nomath\mathversion \expandafter\ifx\csname mv@#1\endcsname\relax \@latex@error{Math version `#1' is not defined}\@eha\else \edef\math@version{#1}% \gdef\glb@currsize{}% %%%%%%2002/5/30, 2004/11/17, and 2009/10/25 \ifx\math@version\math@chem \mathcode`\.="012E \mathcode`\,="612C \mathcode`\/="012F \mathcode`\=="313D \mathcode`\?="513F \mathcode`\[="415B \mathcode`\]="515D \mathcode`\(="4128 \mathcode`\)="5129 % \mathcode`\+="212B \SetChemSymbol \else\ifx\math@version\math@boldchem \mathcode`\.="012E \mathcode`\,="612C \mathcode`\/="012F \mathcode`\=="313D \mathcode`\?="513F \mathcode`\[="415B \mathcode`\]="515D \mathcode`\(="4128 \mathcode`\)="5129 % \mathcode`\+="212B \def\check{\mathaccent"7114 } \def\dot{\mathaccent"715F } \def\acute{\mathaccent"7113 } \def\grave{\mathaccent"7112 } \def\ddot{\mathaccent"717F } \def\bar{\mathaccent"7116 } \def\breve{\mathaccent"7115 } \SetChemSymbol \else\ifx\math@version\math@bold \mathcode`\.="013A \mathcode`\,="613B \mathcode`\/="013D \mathcode`\=="303D \mathcode`\?="503F \mathcode`\[="405B \mathcode`\]="505D \mathcode`\(="4028 \mathcode`\)="5029 % \mathcode`\+="202B \SetChemSymbol% \else \mathcode`\.="013A \mathcode`\,="613B \mathcode`\/="013D \mathcode`\=="303D \mathcode`\?="503F \mathcode`\[="405B \mathcode`\]="505D \mathcode`\(="4028 \mathcode`\)="5029 % \mathcode`\+="202B \SetChemSymbol% \fi\fi\fi %%%%%% \aftergroup\glb@settings \fi} \fi % \end{macrocode} % \end{macro} % % \begin{macro}{\SetSymbolFont} % % \changes{v3.01}{2004/11/17}{Fonts for mathverion{chem}.} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % % \begin{macrocode} \if@chemtimes\else%for chemtimes package \ifnewl@tex \@ifundefined{mv@chem}{\DeclareMathVersion{chem}% \SetSymbolFont{letters}{chem}{OT1}{cmr}{m}{n}%OT1-->T1-->OT1 \SetSymbolFont{operators}{chem}{OT1}{cmr} {m}{n}% \SetSymbolFont{symbols} {chem}{OMS}{cmsy}{m}{n}% \DeclareMathVersion{boldchem}%2002/5/30 \SetSymbolFont{operators}{boldchem}{OT1}{cmr} {bx}{n}% \SetSymbolFont{letters} {boldchem}{OT1}{cmr} {b}{n}% \SetSymbolFont{symbols} {boldchem}{OMS}{cmsy}{b}{n}% }{} \fi \fi % \end{macrocode} % \end{macro} % % \begin{macro}{\mathnormal} % % The macro \verb/\mathnormal/ for outputting numbers of old style % has been redefined to meet ``boldchem''. % % \changes{v4.05}{2009/10/25}{Redefined for oldsytle fonts} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % % \begin{macrocode} \if@chemtimes\else%for chemtimes package \let\oldmathnormal=\mathnormal \def\mathnormal#1{% \ifx\math@version\math@chem %\mathgroup\@ne \mathord{\hbox{\usefont{OML}{cmm}{m}{it}#1}}% \else\ifx\math@version\math@boldchem %\mathgroup\@ne \mathord{\hbox{\usefont{OML}{cmm}{b}{it}#1}}% \else\ifx\math@version\math@bold \ifupgreekrm \oldmathnormal{#1}% \upgreekrmfalse \else \oldmathnormal{#1}% \fi \else \oldmathnormal{#1}% %\mathgroup\@ne\usefont{OML}{cmm}{m}{it}% \fi\fi\fi}% \fi % \end{macrocode} % \end{macro} % % \begin{macro}{\oldstyle} % % The command \verb/\oldstyle/ should be used in the form of \verb/{\oldstyle ...}/ % in a math mode. % % \changes{v4.05}{2009/10/25}{Redefined for oldsytle fonts} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % % \begin{macrocode} \if@chemtimes\else%for chemtimes package \def\oldstyle{\egroup% \ifx\math@version\math@chem \hbox\bgroup\usefont{OML}{cmm}{m}{it}% \else\ifx\math@version\math@boldchem \hbox\bgroup\usefont{OML}{cmm}{b}{it}% \else\ifx\math@version\math@bold \ifupgreekrm \oldmathnormal\bgroup% \upgreekrmfalse \else \oldmathnormal\bgroup% \fi \else \oldmathnormal\bgroup% \fi\fi\fi}% \fi % \end{macrocode} % \end{macro} % % \begin{macro}{\mathcal} % % The macro \verb/\mathcal/ for outputting calligraphic letters % has been redefined to meet ``boldchem''. % % \changes{v4.05}{2009/10/25}{Redefined for calligraphic letters} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % % \begin{macrocode} \if@chemtimes\else%for chemtimes package \let\oldmathcal=\mathcal \def\mathcal#1{% \ifx\math@version\math@chem \mathgroup\tw@{\usefont{OMS}{cmsy}{m}{n}#1}% \else\ifx\math@version\math@boldchem \mathgroup\tw@{\usefont{OMS}{cmsy}{b}{n}#1}% \else\ifx\math@version\math@bold \ifupgreekrm \oldmathcal{#1}\upgreekrmfalse \else \oldmathcal{#1}\fi \else \oldmathcal{#1}% \fi\fi\fi}% \fi % \end{macrocode} % \end{macro} % % \begin{macro}{\cal} % % The macro \verb/\cal/ for outputting calligraphic letters % (a macro of declaration type) has been redefined to meet ``boldchem''. % % \changes{v4.05}{2009/10/25}{Redefined for calligraphic letters} % \changes{v4.05}{2009/11/20}{Switch by \cs{if@chemtimes} for chemtimes package} % % \begin{macrocode} \if@chemtimes\else%for chemtimes package \let\oldcal=\cal \def\cal{% \ifx\math@version\math@chem \mathgroup\tw@\usefont{OMS}{cmsy}{m}{n}% \else\ifx\math@version\math@boldchem \mathgroup\tw@\usefont{OMS}{cmsy}{b}{n}% \else\ifx\math@version\math@bold \ifupgreekrm \oldcal\upgreekrmfalse \else\oldcal\fi \else \oldcal% \fi\fi\fi}% \fi % \end{macrocode} % \end{macro} % % \begin{macro}{\chemform} % % \changes{v2.00a}{2000/11/03}{change the position of chemcorr % in chemform command} % % \begin{macrocode} \ifnewl@tex \def\chemform#1{{\mathversion{chem}% $\chemcorr #1$\leavechemcorr}} \else \def\chemform#1{\chemcorr $\rm #1$\leavechemcorr} \fi % \end{macrocode} % \end{macro} % % \begin{environment}{chemmath} % % \changes{v2.00a}{2000/11/03}{change the position of chemcorr % in chemmath command} % \begin{macrocode} % ************************ % * chemmath environment * % ************************ % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \ifnewl@tex \def\chemmath{\begingroup\mathversion{chem}\[\chemcorr} \def\endchemmath{\]\endgroup\leavechemcorr} \else \def\chemmath{\chemcorr\[\rm} \def\endchemmath{\] \leavechemcorr} \fi % \end{macrocode} % \end{environment} % % \begin{environment}{chemeqn} % % \changes{v2.00a}{2000/11/03}{change the position of chemcorr % in chemeqn command} % \begin{macrocode} % *********************** % * chemeqn environment * % *********************** % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \ifnewl@tex \def\chemeqn{\begingroup\mathversion{chem}\equation\chemcorr} %\def\endchemeqn{\endequation\endgroup\leavechemcorr} \def\endchemeqn{\endequation\leavechemcorr\endgroup}%bug fix 2013/6/15 \else \def\chemeqn{\chemcorr\equation\rm} \def\endchemeqn{\endequation\leavechemcorr} \fi % \end{macrocode} % \end{environment} % % \begin{environment}{chemeqnarray} % % \changes{v2.00a}{2000/11/03}{change the position of chemcorr % in chemeqnarray command} % \begin{macrocode} % **************************** % * chemeqnarray environment * % **************************** % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \ifnewl@tex \def\chemeqnarray{\stepcounter{equation} \let\@currentlabel=\theequation \global\@eqnswtrue \global\@eqcnt\z@\tabskip\@centering \let\\=\@eqncr \begingroup\mathversion{chem} $$\chemcorr\halign to \displaywidth\bgroup \@eqnsel\hskip\@centering $\rm \displaystyle\tabskip\z@{##}$ & \global\@eqcnt\@ne \hskip \arraycolsep \hfil$\rm{##}$\hfil & \global\@eqcnt\tw@ \hskip \arraycolsep $\rm \displaystyle\tabskip\z@{##}$\hfil \tabskip\@centering & \llap{##}\tabskip\z@\cr} \def\endchemeqnarray{\endeqnarray\endgroup \leavechemcorr} \else \def\chemeqnarray{\stepcounter{equation} \let\@currentlabel=\theequation \global\@eqnswtrue \global\@eqcnt\z@\tabskip\@centering \let\\=\@eqncr \chemcorr $$\halign to \displaywidth\bgroup \@eqnsel\hskip\@centering $\rm \displaystyle\tabskip\z@{##}$ & \global\@eqcnt\@ne \hskip \arraycolsep \hfil$\rm{##}$\hfil & \global\@eqcnt\tw@ \hskip \arraycolsep $\rm \displaystyle\tabskip\z@{##}$\hfil \tabskip\@centering & \llap{##}\tabskip\z@\cr} \def\endchemeqnarray{\endeqnarray \leavechemcorr} \fi % \end{macrocode} % \end{environment} % % \begin{environment}{chemeqnarray*} % % \begin{macrocode} % ***************************** % * chemeqnarray* environment * % ***************************** % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita % bug fix (1996/06/15) the end command is replaced. \let\@seqncr=\@eqncr \ifnewl@tex \@namedef{chemeqnarray*}{% \def\@eqncr{\nonumber\@seqncr}\chemeqnarray} \@namedef{endchemeqnarray*}{\nonumber\endchemeqnarray} \else \@namedef{chemeqnarray*}{% \def\@eqncr{\nonumber\@seqncr\rm}\chemeqnarray} \@namedef{endchemeqnarray*}{\nonumber\endchemeqnarray} \fi % \end{macrocode} % \end{environment} % % \begin{environment}{chemeqnarraya} % % \begin{macrocode} % ***************** % * chemeqnarraya * % ***************** % After Chapter 9 of ``LaTeX for (Bio)Chemists'' by S. Fujita % revised may 21 1992 by S. Fujita \def\chemeqnarraya{\chemeqn@rraya \chemeqnarray} \def\chemeqn@rraya{% \c@enumi=\c@equation \advance\c@enumi\@ne \c@equation=\z@ \@ifundefined{chapter}% {\def\theequation{\theenumi\alph{equation}}}% {\def\theequation{% \thechapter.\theenumi\alph{equation}}}} \def\endchemeqnarraya{\endchemeqnarray \global\c@equation=\c@enumi} % \end{macrocode} % \end{environment} % % \begin{macro}{\if@display} % This switch is to meat the \textsf{amsmath} package. % \changes{v4.05}{2009/10/25}{A new command} % \begin{macrocode} \@ifundefined{if@display}{\newif\if@display}{} % \end{macrocode} % \end{macro} % \begin{environment}{ChemEquation} % \changes{v4.05}{2009/10/25}{A new environment} % \begin{macrocode} \newif\ifupgreekrm \upgreekrmfalse \let\ChemEqFont=\rm \def\ChemEquation{\everymath{\ChemEqFont\chemcorr\upgreekrmtrue}% \everydisplay{\ChemEqFont\chemcorr\@displaytrue\upgreekrmtrue}\equation} \def\endChemEquation{\endequation\everymath{}\everydisplay{}% \@displayfalse\leavechemcorr\upgreekrmfalse} % \end{macrocode} % \end{environment} % \begin{environment}{ChemEqnarray} % \changes{v4.05}{2009/10/25}{A new environment} % \begin{macrocode} \def\ChemEqnarray{\everymath{\ChemEqFont\chemcorr\upgreekrmtrue}% %\everydisplay{\ChemEqFont\chemcorr\@displaytrue} \eqnarray} \def\endChemEqnarray{\endeqnarray\everymath{}% %\everydisplay{}\@displayfalse \leavechemcorr\upgreekrmfalse} % \end{macrocode} % \end{environment} % % \begin{macro}{\ChemForm} % % \changes{v4.05}{2009/10/25}{A new command} % \begin{macrocode} \def\ChemForm#1{\everymath{\ChemEqFont\chemcorr\upgreekrmtrue}$#1$\everymath{}% \leavechemcorr\upgreekrmfalse} % \end{macrocode} % \end{macro} % % \begin{environment}{ChemEqnarray*} % \changes{v4.05}{2009/10/25}{A new environment} % \begin{macrocode} \@namedef{ChemEqnarray*}{\def\@eqncr{\nonumber\@seqncr}\ChemEqnarray} \@namedef{endChemEqnarray*}{\nonumber\endChemEqnarray} % \end{macrocode} % \end{environment} % % \begin{macro}{\newchemenvironment} % This command is used to creat a new environment for chemistry based on an appropriate % environment for mathematics. % % \begin{verbatim} % \newchemenviroment{New Name}{Old Environment} % \end{verbatim} % % \changes{v4.05}{2009/11/19}{A new command} % \begin{macrocode} \def\newchemenvironment#1#2{% \expandafter\def\csname #1\endcsname{% \everymath{\ChemEqFont\chemcorr\upgreekrmtrue}% %\everydisplay{\ChemEqFont\chemcorr\@displaytrue}% \csname #2\endcsname}% \expandafter\def\csname end#1\endcsname{% \csname end#2\endcsname\everymath{}% %\everydisplay{}\@displayfalse% \leavechemcorr\upgreekrmfalse}} % \end{macrocode} % \end{macro} % % \section{XyMcompd and XyMtab Environments} % % These environments are designed for XyM Markup Language % to treat a XyM tag and a XyMtab tag. % % \begin{environment}{XyMcompd} % \changes{v2.00}{1999/03/16}{New Environment} % % \begin{macrocode} \def\XyMcompd(#1,#2)(#3,#4)#5#6{% \begingroup \edef\xymrefa{#5}\edef\xymrefb{#6}% \edef\kkk{#1}% \begin{tabular}{c} \ifx\kkk\empty\else \begin{sfpicture}(#1,#2)(#3,#4)\fi\ignorespaces} \def\endXyMcompd{% \ifx\kkk\empty\else\end{sfpicture}\fi \\[-\baselineskip] \ifx\xymrefa\empty\else{\bf \compd\xymrefb \expandafter\label{\xymrefa}}\fi \end{tabular}\endgroup} % \end{macrocode} % \end{environment} % % \begin{environment}{XyMtab} % \changes{v2.00}{1999/03/16}{New Environment} % % \begin{macrocode} \def\XyMtab#1{\center\tabular{#1c}} \def\endXyMtab{\endtabular\endcenter} % \end{macrocode} % \end{environment} % % \begin{macro}{\derivlist} % \changes{v2.00}{1999/03/17}{New command} % % For example, derivatives are specified as follows: % \begin{verbatim} % \derivlist{X = Cl;X = F;X = Me} % \end{verbatim} % % \begin{macrocode} \def\derivlist#1{% \mbox{}\\ \begingroup\def\arraystretch{0.7}% \begin{tabular}{l} \@forsemicol\member:=#1\do{% \ifx\member\empty\else% \hbox to2em{\hss\derivnum}:\space\member \\ \fi}\end{tabular}\endgroup} % \end{macrocode} % \end{macro} % This command is used in the XyMderiv environment. % % \begin{environment}{XyMderiv} % \changes{v2.00}{1999/03/17}{New Environment} % % \begin{macrocode} \def\XyMderiv{\tabular{c}} \def\endXyMderiv{\endtabular} % \end{macrocode} % \end{environment} % % \section{Useful commands} % % \begin{macro}{\endash} % \begin{macro}{\Cent} % \begin{macro}{\degC} % \begin{macro}{\degF} % % \begin{macrocode} % *************** % * temperature * % *************** % After Chapter 12 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\endash{\mbox{--{}}} \def\Cent{\mbox{\raise.9ex\hbox{% \scriptsize$\circ$}\kern-.12em\hbox{C}}} \def\degC{\mbox{\kern-.2em\char'27\kern-.3em C}} \def\degF{\mbox{\kern-.2em\char'27\kern-.3em F}} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\yubin} % \begin{macro}{\Yubin} % % \begin{macrocode} % ******************* % * yubin and Yubin * % ******************* % After Chapter 12 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\yubin{$\overline{\top}$} \def\Yubin#1{\leavevmode\hbox{\vbox{\hrule\@height.12ex\@width.7em \kern.28ex\hrule\@height.12ex\@width.7em \hbox{\kern.35em\kern-.06ex \vbox{\hrule\@height1ex\@width.12ex}}}\kern.1em{#1}}} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\xlethead} % % \begin{macrocode} % *********** % * lethead * % *********** % After Chapter 18 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\xlethead#1{% \kern-.6667\baselineskip \line{\hrulefill\phantom{ #1 }\hrulefill} \kern-.6667\baselineskip \line{\hrulefill\phantom{ #1 }\hrulefill} \kern-.6667\baselineskip \line{\hrulefill\hbox{ #1 }\hrulefill}} \def\lethead#1#2#3{\def\line{\hbox to\textwidth} \vbox{\line{\hrulefill} \xlethead{#1} \xlethead{#2} \xlethead{#3} \kern-.6667\baselineskip \line{\hrulefill}}} % \end{macrocode} % \end{macro} % % \begin{macro}{\horizon} % % \begin{macrocode} % ************ % * baseline * % ************ % After Chapter 12 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \def\horizon{\rule{12pt}{0.1pt}} % \end{macrocode} % \end{macro} % % \section{Logos} % % \begin{macro}{\resetfontsize} % \begin{macro}{\Bib} % \begin{macro}{\BibTeX} % \begin{macro}{\jBibTeX} % % \begin{macrocode} % ******************************** % * Redefinition of Logos * % * January 3, 1993 by S. Fujita * % ******************************** % After Chapter 12 of ``LaTeX for (Bio)Chemists'' by Shinsaku Fujita \newcount\TestCount \def\tmpkern{\kern0pt} \ifnewl@tex \else \def\resetfontsize{% \ifx\@currsize\normalsize% \def\tmpf@ntsize{% \load{\footnotesize}{\sf}% \load{\footnotesize}{\sl}% \load{\footnotesize}{\bf}% \def\tmpkern{\kern0.05em}% \footnotesize}\fi \ifx\@currsize\scriptsize \let\tmpf@ntsize=\tiny\fi \ifx\@currsize\footnotesize \let\tmpf@ntsize=\tiny\fi \ifx\@currsize\small \let\tmpf@ntsize=\scriptsize\fi \ifx\@currsize\large \let\tmpf@ntsize=\small\fi \ifx\@currsize\Large \let\tmpf@ntsize=\@normalsize\fi \ifx\@currsize\LARGE \let\tmpf@ntsize=\large\fi \ifx\@currsize\huge \let\tmpf@ntsize=\Large\fi \ifx\@currsize\Huge \let\tmpf@ntsize=\LARGE\fi} \fi % \end{macrocode} % % \begin{macrocode} \ifnewl@tex \else \def\Bib{\ifnum \fam=\m@ne \fam=\z@ \fi\TestCount=\fam\leavevmode% \edef\aaa{\fontname\scriptfont\fam}% \edef\bbb{\fontname\textfont\fam}% \resetfontsize% \hbox{$\fam=\TestCount\textstyle B$}% \ifx\aaa\bbb% \hbox{\tmpf@ntsize\bf $\fam=\TestCount\kern-.025em I\kern-.045em B$}% \else% \hbox{$\fam\TestCount\scriptstyle\kern-.025em I\kern-.045em B$}% \fi } \fi % \end{macrocode} % % \begin{macrocode} %\def\BibTeX{\Bib\kern-.08em\TeX} %\def\jBibTeX{\leavevmode\lower.46ex\hbox{J} %\kern-.08em\Bib\kern-.08em\TeX} % %%\def\BibTeX{% % {\rm B\kern-.05em{\sc i\kern-.025emb}\kern-.08em\TeX}} % %%%%%1996/04/20 by Shinsaku Fujita%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ifnewl@tex \DeclareRobustCommand{\BibTeX}{% B\hbox{$\m@th$\csname S@\f@size\endcsname \fontsize\sf@size\z@ \math@fontsfalse\selectfont \kern-.025em I\kern-.045em B}\kern-.08em\TeX} \else \def\BibTeX{\Bib\kern-.08em\TeX} \fi % \end{macrocode} % % \begin{macrocode} \ifnewl@tex \DeclareRobustCommand{\jBibTeX}{\mbox{% \if b\expandafter\@car\f@series\@nil\boldmath\fi \leavevmode\lower.46ex\hbox{J}\kern-.08em\BibTeX}} \else \def\jBibTeX{\leavevmode\lower.46ex\hbox{J}% \kern-.08em\Bib\kern-.08em\TeX} \fi % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\jTeX} % \begin{macro}{\pTeX} % % \begin{macrocode} \def\jTeX{\leavevmode\lower.46ex\hbox{J}\kern-.15em\TeX} \def\pTeX{p\kern-.15em\TeX} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\Sub} % \begin{macro}{\Subbib} % % \begin{macrocode} \ifnewl@tex \else \def\Sub{\leavevmode\ifnum \fam=\m@ne \fam=\z@ \fi% \TestCount=\fam{S}% \edef\aaa{\fontname\scriptfont\fam}% \edef\bbb{\fontname\textfont\fam}% \ifx\aaa\bbb\resetfontsize% \hbox{\tmpf@ntsize\bf% $\fam=\TestCount\kern-.045em{U}\kern-.12em{B}$}% \else% \hbox{$\fam\TestCount% \scriptstyle\kern-.045em{U}\kern-.12em{B}$}% \fi} \fi %\def\SubBib{\Sub\kern-.08em\Bib} % \end{macrocode} % % \begin{macrocode} % %%%%%1996/04/20 by Shinsaku Fujita%%%%%%%%%%%%%%%%%%%%%%%%%%% \ifnewl@tex \DeclareRobustCommand{\SubBib}{S\hbox{$\m@th$% \csname S@\f@size\endcsname\fontsize\sf@size\z@ \math@fontsfalse\selectfont% \kern-.045em{U}\kern-.12em{B}}B\hbox{$\m@th$% \csname S@\f@size\endcsname\fontsize\sf@size\z@ \math@fontsfalse\selectfont \kern-.025em I\kern-.045em B}} \else \def\SubBib{\Sub\kern-.08em\Bib} \fi % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\La} % \begin{macro}{\LaTeX} % % \begin{macrocode} %\def\La{\TestCount=\fam \leavevmode L\raise.42ex % \hbox{$\fam\TestCount\scriptstyle\kern-.3em A$}} \ifnewl@tex \else \def\La{\ifnum \fam=\m@ne \fam=\z@ \fi\TestCount=\fam% \edef\aaa{\fontname\scriptfont\fam}% \edef\bbb{\fontname\textfont\fam}\leavevmode{L}% \ifx\aaa\bbb \resetfontsize% \raise.46ex\hbox{{\tmpf@ntsize\bf% $\fam\TestCount\kern-.4em\tmpkern{A}$}}% \else% \raise.42ex\hbox{$\fam\TestCount\scriptstyle\kern-.3em{A}$}% \fi} \fi % \end{macrocode} % % \begin{macrocode} % %%%%%1996/04/20 by Shinsaku Fujita%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %\def\LaTeX{\La\kern-.15em\TeX} \ifnewl@tex \else \def\LaTeX{\La\kern-.15em\TeX}\fi % \end{macrocode} % % \begin{macrocode} %\def\jLaTeX{\leavevmode\lower.46ex\hbox{J}\kern-.08em\LaTeX} \ifnewl@tex \DeclareRobustCommand{\jLaTeX}% {\leavevmode\lower.46ex\hbox{J}\kern-.08em\LaTeX} \else \def\jLaTeX{\leavevmode\lower.46ex\hbox{J}\kern-.08em\LaTeX} \fi % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\PiC} % \begin{macro}{\PiCTeX} % % \begin{macrocode} \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} % \end{macrocode} % % \begin{macrocode} %\def\PiCTeX{\PiC\kern-.11em\TeX} \ifnewl@tex \DeclareRobustCommand{\PiCTeX}{\PiC\kern-.11em\TeX} \else \def\PiCTeX{\PiC\kern-.11em\TeX} \fi % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\tpic} % \begin{macro}{\PiCTeX} % % \begin{macrocode} %\def\tpic{\TestCount=\fam \leavevmode T% % \hbox{$\fam\TestCount\scriptstyle %\kern-.025em P\kern-.025em I\kern-.025emC$}} \ifnewl@tex \DeclareRobustCommand{\tpic}{T\hbox{$\m@th$% \csname S@\f@size\endcsname\fontsize\sf@size\z@ \math@fontsfalse\selectfont \kern-.025em P\kern-.025em I\kern-.025emC}} \else \def\tpic{\ifnum \fam=\m@ne \fam=\z@ \fi% \TestCount=\fam \leavevmode% \edef\aaa{\fontname\scriptfont\fam}% \edef\bbb{\fontname\textfont\fam}% \resetfontsize\hbox{$\fam=\TestCount\textstyle T$}% \ifx\aaa\bbb\hbox{\tmpf@ntsize\bf$\fam=\TestCount% \kern-.025em P\kern-.025em I\kern-.025emC$}\else% \hbox{$\fam\TestCount\scriptstyle% \kern-.025em P\kern-.025em I\kern-.025emC$}\fi} \fi % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\Post} % \begin{macro}{\Script} % \begin{macro}{\PostScript} % % \begin{macrocode} \ifnewl@tex \else \def\Post{\ifnum \fam=\m@ne \fam=\z@ \fi% \TestCount=\fam\leavevmode% \edef\aaa{\fontname\scriptfont\fam}% \edef\bbb{\fontname\textfont\fam}% \resetfontsize% \hbox{$\fam=\TestCount\textstyle P$}% \ifx\aaa\bbb% \hbox{\tmpf@ntsize\bf% $\fam=\TestCount\kern-.045em O\kern-.015em ST$}% \else% \hbox{$\fam\TestCount% \scriptstyle\kern-.045em O\kern-.015em ST$}% \fi} % \end{macrocode} % % \begin{macrocode} \def\Script{\ifnum \fam=\m@ne \fam=\z@ \fi% \TestCount=\fam\leavevmode% \edef\aaa{\fontname\scriptfont\fam}% \edef\bbb{\fontname\textfont\fam}% \resetfontsize% \hbox{$\fam=\TestCount\textstyle S$}% \ifx\aaa\bbb% \hbox{\tmpf@ntsize\bf$\fam=\TestCount\kern-.035em % C\kern-.015em R\kern-.015em IP\kern-.035em T$}% \else% \hbox{$\fam\TestCount\scriptstyle\kern-.035em % C\kern-.015em R\kern-.015em IP\kern-.035em T$}% \fi} \fi % \end{macrocode} % % \begin{macrocode} %\def\PostScript{\Post\Script} % %%%%%1996/04/20 by Shinsaku Fujita%%%%%%%%%%%%%%%%%%%%%%%%%%% \ifnewl@tex \DeclareRobustCommand{\PostScript}{P\hbox{$\m@th$% \csname S@\f@size\endcsname\fontsize\sf@size\z@ \math@fontsfalse\selectfont \kern-.045em O\kern-.015em ST}S\hbox{$\m@th$% \csname S@\f@size\endcsname\fontsize\sf@size\z@ \math@fontsfalse\selectfont \kern-.035em C\kern-.015em R\kern-.015em IP\kern-.035em T}} \else \def\PostScript{\Post\Script} \fi % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % \section{Double and triple bonds} % % \begin{macro}{\triplebond} % \begin{macro}{\doublebond} % \begin{macro}{\tbond} % \begin{macro}{\dbond} % % \begin{macrocode} % ***************** % * 二重 三重結合 * % ***************** \def\triplebond{\leavevmode\kern.2pt\raisebox{.2ex}{% \hbox{\vbox{\hrule height.03ex width1em\kern.4ex \hrule height.03ex width1em\kern.4ex \hrule height.03ex width1em}}}\hskip.4pt} \def\doublebond{\leavevmode\kern.2pt\raisebox{.3ex}{% \hbox{\vbox{\hrule height.03ex width1em\kern.6ex \hrule height.03ex width1em}}}\hskip.4pt} \let\tbond=\triplebond \let\dbond=\doublebond % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \section{Round Arrows} % % The macro |\calcontrolpoints| is comman to define round arrows in the \textsf{chmst-ps} % pacakage and in the \textsf{chmst-pdf} pacakage. Two control points for Bezier curves % are automatically calculated to draw round arrows. % % \begin{macro}{\upwardarrowcalcA} % \changes{v5.00}{2010/10/01}{Control points for round arrows} % This macro gives a midpoint between two control points for % drawing an upward-curved arrow. % This is used in the definition of the |\calcontrolpoints| command. % % \begin{macrocode} \def\upwardarrowcalcA{% \@tempcntXc=\@tempcntXa \advance\@tempcntXc by\@tempcntXb \advance\@tempcntXc by-\@tempcntYb \advance\@tempcntXc by\@tempcntYa \divide\@tempcntXc by2\relax %% \@tempcntYc=\@tempcntYa \advance\@tempcntYc by\@tempcntYb \advance\@tempcntYc by-\@tempcntXa \advance\@tempcntYc by\@tempcntXb \divide\@tempcntYc by2\relax} % \end{macrocode} % \end{macro} % % \begin{macro}{\upwardarrowcalcB} % \changes{v5.00}{2010/10/01}{Control points for round arrows} % This macro gives two control points for drawing an upward-curved arrow. % This is used in the definition of the |\calcontrolpoints| command. % % \begin{macrocode} \def\upwardarrowcalcB{% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % control point: (\@tempcntXc, \@tempcntYc)% % control point: (\@cnttempa, \@cnttempb) % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \advance\@tempcntXc by\@tempcntXd \advance\@tempcntYc by\@tempcntYd \advance\@cnttempa by-\@tempcntXd \advance\@cnttempb by-\@tempcntYd} % \end{macrocode} % \end{macro} % % \begin{macro}{\downwardarrowcalcA} % \changes{v5.00}{2010/10/01}{Control points for round arrows} % This macro gives a midpoint between two control points for % drawing a down ward-curved arrow. % This is used in the definition of the |\calcontrolpoints| command. % % \begin{macrocode} \def\downwardarrowcalcA{% \@tempcntXc=\@tempcntXa \advance\@tempcntXc by\@tempcntXb \advance\@tempcntXc by\@tempcntYb \advance\@tempcntXc by-\@tempcntYa \divide\@tempcntXc by2\relax % \@tempcntYc=\@tempcntYa \advance\@tempcntYc by\@tempcntYb \advance\@tempcntYc by\@tempcntXa \advance\@tempcntYc by-\@tempcntXb \divide\@tempcntYc by2\relax} % \end{macrocode} % \end{macro} % % \begin{macro}{\downwardarrowcalcA} % \changes{v5.00}{2010/10/01}{Control points for round arrows} % This macro gives two control points for drawing a down ward-curved arrow. % This is used in the definition of the |\calcontrolpoints| command. % % \begin{macrocode} \def\downwardarrowcalcB{% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % control point: (\@tempcntXc, \@tempcntYc)% % control point: (\@cnttempa, \@cnttempb) % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \advance\@tempcntXc by\@tempcntXd \advance\@tempcntYc by\@tempcntYd \advance\@cnttempa by-\@tempcntXd \advance\@cnttempb by-\@tempcntYd} % \end{macrocode} % \end{macro} % % \begin{macro}{\calcontrolpoints} % \changes{v5.00}{2010/10/01}{Control points for round arrows} % % \begin{macrocode} \def\calcontrolpoints#1{% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % arrow (\@tempcntXa,\@tempcntYa) <---> (\@tempcntXb, \@tempcntYb) % % #1=0, 2, 4: upward round arrow % % #1=1, 3, 5: downward round arrow % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \@tempcntXd=\@tempcntXb \advance\@tempcntXd by-\@tempcntXa \divide\@tempcntXd by4\relax \@tempcntYd=\@tempcntYb \advance\@tempcntYd by-\@tempcntYa \divide\@tempcntYd by4\relax % \ifcase#1\relax%upward round: 0 \upwardarrowcalcA% \@cnttempa=\@tempcntXc \@cnttempb=\@tempcntYc \upwardarrowcalcB% \or%downward-round: 1 \downwardarrowcalcA% \@cnttempa=\@tempcntXc \@cnttempb=\@tempcntYc \downwardarrowcalcB% \or%upward round: 2 \upwardarrowcalcA% \advance\@tempcntXc by-\@tempcntYd \advance\@tempcntYc by\@tempcntXd \@cnttempa=\@tempcntXc \@cnttempb=\@tempcntYc \upwardarrowcalcB% \or%downward-round: 3 \downwardarrowcalcA% \advance\@tempcntXc by\@tempcntYd \advance\@tempcntYc by-\@tempcntXd \@cnttempa=\@tempcntXc \@cnttempb=\@tempcntYc \downwardarrowcalcB% \or%upward round: 4 \upwardarrowcalcA% \advance\@tempcntXc by-\@tempcntYd \advance\@tempcntXc by-\@tempcntYd \advance\@tempcntYc by\@tempcntXd \advance\@tempcntYc by\@tempcntXd \@cnttempa=\@tempcntXc \@cnttempb=\@tempcntYc \upwardarrowcalcB% \or%downward-round: 5 \downwardarrowcalcA% \advance\@tempcntXc by\@tempcntYd \advance\@tempcntXc by\@tempcntYd \advance\@tempcntYc by-\@tempcntXd \advance\@tempcntYc by-\@tempcntXd \@cnttempa=\@tempcntXc \@cnttempb=\@tempcntYc \downwardarrowcalcB% \fi} % \end{macrocode} % \end{macro} % % % The following macros are supported only by the \textsf{chmst-ps} pacakage. % % \begin{macrocode} %\let\reactDEqarrow=\reactdeqarrow %\let\reactUEqarrow=\reactueqarrow %\let\reactVEqarrow=\reactveqarrow %\let\reactREqarrow=\reactreqarrow %\let\reactLEqarrow=\reactleqarrow %\let\reactEqarrow=\reacteqarrow %\let\lllongleftharpoonup=\lllongleftarrow %\let\lllongrightharpoondown=\lllongrightarrow %\let\llongleftharpoonup=\llongleftarrow %\let\llongrightharpoondown=\llongrightarrow % \end{macrocode} % % \section{Initial Setting and Switch to Arrows of Original Styles} % % \begin{macro}{\chemistsw} % \begin{macrocode} \def\chemistsw{%setting of the chemist package \let\reactrarrow=\oldreactrarrow% \let\reactlarrow=\oldreactlarrow \let\reactlrarrow=\oldreactlrarrow \let\reacteqarrow=\oldreacteqarrow %%%% \let\reactreqarrow=\oldreactreqarrow% \let\reactleqarrow=\oldreactleqarrow %%%% \let\reactdarrow=\oldreactdarrow% \let\reactuarrow=\oldreactuarrow \let\reactveqarrow=\oldreactveqarrow \let\reactduarrow=\oldreactduarrow %%%% \let\reactsearrow=\oldreactsearrow% \let\reactnwarrow=\oldreactnwarrow \let\reactnearrow=\oldreactnearrow \let\reactswarrow=\oldreactswarrow %%%% \let\reactdeqarrow=\oldreactdeqarrow% \let\reactueqarrow=\oldreactueqarrow \let\reactulrarrow=\oldreactulrarrow \let\reactdlrarrow=\oldreactdlrarrow %%%% \let\schemelarrow=\oldschemelarrow% \let\schemerarrow=\oldschemerarrow \let\schemelrarrow=\oldschemelrarrow %%%% \let\llongrightarrow=\oldllongrightarrow%%%--->% \let\llongleftarrow=\oldllongleftarrow%%%<--- \let\llongleftrightarrow=\oldllongleftrightarrow%%%<---> \let\Equilibarrow=\oldEquilibarrow%%%<--- and ---> \let\Llongrightarrow=\oldLlongrightarrow%%%===> \let\Llongleftarrow=\oldLlongleftarrow%%%<=== \let\Llongleftrightarrow=\oldLlongleftrightarrow%%<===> %%%%% \let\llongleftharpoondown=\oldllongleftharpoondown%%% /---% \let\llongrightharpoonup=\oldllongrightharpoonup%%%---/ \let\equilibarrow=\oldequilibarrow%%% /--- and ---/ %%%%% \let\lllongrightarrow=\oldlllongrightarrow%%%%------>% \let\lllongleftarrow=\oldlllongleftarrow%%%<------- \let\lllongleftrightarrow=\oldlllongleftrightarrow%%%<-------> \let\Equiliblongarrow=\oldEquiliblongarrow%%%<------- and -------> \let\Lllongrightarrow=\oldLllongrightarrow%%%=======> \let\Lllongleftarrow=\oldLllongleftarrow%%%<======= \let\Lllongleftrightarrow=\oldLllongleftrightarrow%%<=======> %%%%% \let\lllongleftharpoondown=\oldlllongleftharpoondown%%% /-------% \let\lllongrightharpoonup=\oldlllongrightharpoonup%%%-------/ \let\equiliblongarrow=\oldequiliblongarrow%%% /------ and ------/ %%%%tentative setting \let\reactDEqarrow=\oldreactdeqarrow \let\reactUEqarrow=\oldreactueqarrow \let\reactVEqarrow=\oldreactveqarrow \let\reactREqarrow=\oldreactreqarrow \let\reactLEqarrow=\oldreactleqarrow \let\reactEqarrow=\oldreacteqarrow \let\lllongleftharpoonup=\oldlllongleftarrow \let\lllongrightharpoondown=\oldlllongrightarrow \let\llongleftharpoonup=\oldllongleftarrow \let\llongrightharpoondown=\oldllongrightarrow %%%% } % \end{macrocode} % \end{macro} % % Dummy commands are declared for compatibility to PS and PDF mode. % In paticular, arrows defined in the \textsf{chmst-ps} and \textsf{chmst-pdf} packages % are defined as futile commands. % \changes{v5.00}{2010/10/01}{for bond coloring and the LaTeX Project Public License} % \begin{macrocode} \RequirePackage{assurechemist} % \end{macrocode} % % Initial setting: % \begin{macrocode} \chemistsw%setting of the chemist package \mathversion{normal} % % \end{macrocode} % \Finale \endinput