Changeset b22b28e for doc/LaTeXmacros
- Timestamp:
- May 7, 2025, 9:46:03 PM (5 months ago)
- Branches:
- master
- Children:
- 2c065ed
- Parents:
- 411aa65
- Location:
- doc/LaTeXmacros
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/LaTeXmacros/common.sty
r411aa65 rb22b28e 11 11 %% Created On : Sat Apr 9 10:06:17 2016 12 12 %% Last Modified By : Peter A. Buhr 13 %% Last Modified On : Wed Mar 19 21:22:28202514 %% Update Count : 66 413 %% Last Modified On : Mon May 5 21:37:13 2025 14 %% Update Count : 666 15 15 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 16 17 % This latex idiom for checking empty optional parameters 18 % \ifx#1\@empty\else\if\relax\detokenize{#1}\relax 19 % first checks if there is no optional parameter specified: \name{...} versus \name[]{...} 20 % second checks if the optional parameter is specified but empty: \name[]{...} versus \name[...]{...} 16 21 17 22 \setlength{\textheight}{9in} … … 142 147 \newcommand{\Index}{\@ifstar\@sIndex\@Index} 143 148 % inline text and as-in index: \Index[as-is index text]{inline text} 144 \newcommand{\@Index}[2][\@empty]{\lowercase{\def\temp{#2}}#2\ifx#1\@empty\ index{\temp}\else\index{#1@{\protect#2}}\fi}149 \newcommand{\@Index}[2][\@empty]{\lowercase{\def\temp{#2}}#2\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\index{\temp}\else\index{#1@{\protect#2}}\fi\fi} 145 150 % inline text but index with different as-is text: \Index[index text]{inline text} 146 \newcommand{\@sIndex}[2][\@empty]{#2\ifx#1\@empty\ index{#2}\else\index{#1@{\protect#2}}\fi}151 \newcommand{\@sIndex}[2][\@empty]{#2\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\index{#2}\else\index{#1@{\protect#2}}\fi\fi} 147 152 148 153 % inline text and code index (cannot use ©) … … 156 161 \newcommand{\newtermFontInline}{\emph} 157 162 \newcommand{\newterm}{\protect\@ifstar\@snewterm\@newterm} 158 \newcommand{\@snewterm}[2][\@empty]{{\newtermFontInline{#2}}\ifx#1\@empty\ index{#2}\else\index{#1@{\protect#2}}\fi}159 \newcommand{\@newterm}[2][\@empty]{\lowercase{\def\temp{#2}}{\newtermFontInline{#2}}\ifx#1\@empty\ index{\temp}\else\index{#1@{\protect#2}}\fi}163 \newcommand{\@snewterm}[2][\@empty]{{\newtermFontInline{#2}}\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\index{#2}\else\index{#1@{\protect#2}}\fi\fi} 164 \newcommand{\@newterm}[2][\@empty]{\lowercase{\def\temp{#2}}{\newtermFontInline{#2}}\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\index{\temp}\else\index{#1@{\protect#2}}\fi\fi} 160 165 161 166 % \snake{<identifier>} … … 254 259 \renewcommand{\reftextfaraway}[1]{\unskip, p.~\pageref{#1}} 255 260 \renewcommand{\reftextpagerange}[2]{\unskip, pp.~\pageref{#1}--\pageref{#2}} 256 \newcommand{\VRef}[2][Section]{\ifx#1\@empty\else {#1}\nobreakspace\fi\vref{#2}}257 \newcommand{\VRefrange}[3][Sections]{\ifx#1\@empty\else {#1}\nobreakspace\fi\vrefrange{#2}{#3}}258 \newcommand{\VPageref}[2][page]{\ifx#1\@empty\else {#1}\nobreakspace\fi\pageref{#2}}259 \newcommand{\VPagerefrange}[3][pages]{\ifx#1\@empty\else {#1}\nobreakspace\fi\pageref{#2}{#3}}261 \newcommand{\VRef}[2][Section]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else{#1}\nobreakspace\fi\fi\vref{#2}} 262 \newcommand{\VRefrange}[3][Sections]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else{#1}\nobreakspace\fi\fi\vrefrange{#2}{#3}} 263 \newcommand{\VPageref}[2][page]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else{#1}\nobreakspace\fi\fi\pageref{#2}} 264 \newcommand{\VPagerefrange}[3][pages]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else{#1}\nobreakspace\fi\fi\pageref{#2}{#3}} 260 265 261 266 \let\Oldthebibliography\thebibliography … … 282 287 \setlength{\columnposn}{\gcolumnposn} 283 288 \newcommand{\setgcolumn}[1]{\global\gcolumnposn=#1\global\columnposn=\gcolumnposn} 284 \newcommand{\C}[2][\@empty]{\ifx#1\@empty\else\ global\setlength{\columnposn}{#1}\global\columnposn=\columnposn\fi\hfill\makebox[\textwidth-\columnposn][l]{\LstCommentStyle{#2}}}285 \newcommand{\CD}[2][\@empty]{\ifx#1\@empty\else\ global\setlength{\columnposn}{#1}\global\columnposn=\columnposn\fi\hfill\makebox[\textwidth-\columnposn][l]{\LstBasicStyle{#2}}}289 \newcommand{\C}[2][\@empty]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else\global\setlength{\columnposn}{#1}\global\columnposn=\columnposn\fi\fi\hfill\makebox[\textwidth-\columnposn][l]{\LstCommentStyle{#2}}} 290 \newcommand{\CD}[2][\@empty]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else\global\setlength{\columnposn}{#1}\global\columnposn=\columnposn\fi\fi\hfill\makebox[\textwidth-\columnposn][l]{\LstBasicStyle{#2}}} 286 291 \newcommand{\CRT}{\global\columnposn=\gcolumnposn} 287 292 -
doc/LaTeXmacros/common.tex
r411aa65 rb22b28e 11 11 %% Created On : Sat Apr 9 10:06:17 2016 12 12 %% Last Modified By : Peter A. Buhr 13 %% Last Modified On : Wed Mar 19 07:37:17202514 %% Update Count : 68813 %% Last Modified On : Mon May 5 21:34:53 2025 14 %% Update Count : 709 15 15 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 16 17 % This latex idiom for checking empty optional parameters 18 % \ifx#1\@empty\else\if\relax\detokenize{#1}\relax 19 % first checks if there is no optional parameter specified: \name{...} versus \name[]{...} 20 % second checks if the optional parameter is specified but empty: \name[]{...} versus \name[...]{...} 16 21 17 22 \setlength{\textheight}{9in} … … 143 148 \newcommand{\Index}{\@ifstar\@sIndex\@Index} 144 149 % inline text and as-in index: \Index[as-is index text]{inline text} 145 \newcommand{\@Index}[2][\@empty]{\lowercase{\def\temp{#2}}#2\ifx#1\@empty\ index{\temp}\else\index{#1@{\protect#2}}\fi}150 \newcommand{\@Index}[2][\@empty]{\lowercase{\def\temp{#2}}#2\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\index{\temp}\else\index{#1@{\protect#2}}\fi\fi} 146 151 % inline text but index with different as-is text: \Index[index text]{inline text} 147 \newcommand{\@sIndex}[2][\@empty]{#2\ifx#1\@empty\ index{#2}\else\index{#1@{\protect#2}}\fi}152 \newcommand{\@sIndex}[2][\@empty]{#2\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\index{#2}\else\index{#1@{\protect#2}}\fi\fi} 148 153 149 154 % inline text and code index (cannot use ©) … … 157 162 \newcommand{\newtermFontInline}{\emph} 158 163 \newcommand{\newterm}{\protect\@ifstar\@snewterm\@newterm} 159 \newcommand{\@snewterm}[2][\@empty]{{\newtermFontInline{#2}}\ifx#1\@empty\ index{#2}\else\index{#1@{\protect#2}}\fi}160 \newcommand{\@newterm}[2][\@empty]{\lowercase{\def\temp{#2}}{\newtermFontInline{#2}}\ifx#1\@empty\ index{\temp}\else\index{#1@{\protect#2}}\fi}164 \newcommand{\@snewterm}[2][\@empty]{{\newtermFontInline{#2}}\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\index{#2}\else\index{#1@{\protect#2}}\fi\fi} 165 \newcommand{\@newterm}[2][\@empty]{\lowercase{\def\temp{#2}}{\newtermFontInline{#2}}\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\index{\temp}\else\index{#1@{\protect#2}}\fi\fi} 161 166 162 167 % \snake{<identifier>} … … 256 261 \renewcommand{\reftextfaraway}[1]{\unskip, p.~\pageref{#1}} 257 262 \renewcommand{\reftextpagerange}[2]{\unskip, pp.~\pageref{#1}--\pageref{#2}} 258 \newcommand{\VRef}[2][Section]{\ifx#1\@empty\else {#1}\nobreakspace\fi\vref{#2}}259 \newcommand{\VRefrange}[3][Sections]{\ifx#1\@empty\else {#1}\nobreakspace\fi\vrefrange{#2}{#3}}260 \newcommand{\VPageref}[2][page]{\ifx#1\@empty\else {#1}\nobreakspace\fi\pageref{#2}}261 \newcommand{\VPagerefrange}[3][pages]{\ifx#1\@empty\else {#1}\nobreakspace\fi\pageref{#2}{#3}}263 \newcommand{\VRef}[2][Section]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else{#1}\nobreakspace\fi\fi\vref{#2}} 264 \newcommand{\VRefrange}[3][Sections]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else{#1}\nobreakspace\fi\fi\vrefrange{#2}{#3}} 265 \newcommand{\VPageref}[2][page]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else{#1}\nobreakspace\fi\fi\pageref{#2}} 266 \newcommand{\VPagerefrange}[3][pages]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else{#1}\nobreakspace\fi\fi\pageref{#2}{#3}} 262 267 263 268 \let\Oldthebibliography\thebibliography … … 285 290 \setlength{\columnposn}{\gcolumnposn} 286 291 \newcommand{\setgcolumn}[1]{\global\gcolumnposn=#1\global\columnposn=\gcolumnposn} 287 \newcommand{\C}[2][\@empty]{\ifx#1\@empty\else\ global\setlength{\columnposn}{#1}\global\columnposn=\columnposn\fi\hfill\makebox[\textwidth-\columnposn][l]{\LstCommentStyle{#2}}}288 \newcommand{\CD}[2][\@empty]{\ifx#1\@empty\else\ global\setlength{\columnposn}{#1}\global\columnposn=\columnposn\fi\hfill\makebox[\textwidth-\columnposn][l]{\LstBasicStyle{#2}}}292 \newcommand{\C}[2][\@empty]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else\global\setlength{\columnposn}{#1}\global\columnposn=\columnposn\fi\fi\hfill\makebox[\textwidth-\columnposn][l]{\LstCommentStyle{#2}}} 293 \newcommand{\CD}[2][\@empty]{\ifx#1\@empty\else\if\relax\detokenize{#1}\relax\else\global\setlength{\columnposn}{#1}\global\columnposn=\columnposn\fi\fi\hfill\makebox[\textwidth-\columnposn][l]{\LstBasicStyle{#2}}} 289 294 \newcommand{\CRT}{\global\columnposn=\gcolumnposn} 290 295
Note:
See TracChangeset
for help on using the changeset viewer.