diff options
author | Karl Berry <karl@freefriends.org> | 2009-09-26 23:28:51 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-09-26 23:28:51 +0000 |
commit | 1ac2916f920bece57cb4bbf657e686147f27d4c9 (patch) | |
tree | 81de3da74505864408252dcbffa5749374b3b943 /Master/texmf-dist/tex/latex/bracketkey | |
parent | 3ba97cfb6b13172c9087ba57a49fe8266002cbfb (diff) |
new latex package bracketkey 1.0 (24sep09)
git-svn-id: svn://tug.org/texlive/trunk@15476 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/bracketkey')
-rw-r--r-- | Master/texmf-dist/tex/latex/bracketkey/bracketkey.sty | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/bracketkey/bracketkey.sty b/Master/texmf-dist/tex/latex/bracketkey/bracketkey.sty new file mode 100644 index 00000000000..83806db2289 --- /dev/null +++ b/Master/texmf-dist/tex/latex/bracketkey/bracketkey.sty @@ -0,0 +1,96 @@ +%% bracketkey.sty +%% Copyright 2009 C. Heibl +% +% 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. +% +% For a description of how to use bracketkey, see the files README and +% Malva.txt +% +% Load required packages +\usepackage{calc} +\usepackage{xifthen} +\usepackage{coolstr} +\usepackage{hyperref} +\hypersetup{backref, pdfpagemode=FullScreen, colorlinks=true} +% +%\let\HyperRaiseLinkHook\@empty +%\def\HyperRaiseLinkDefault{\baselineskip} +% +\def\hang{\hangindent\parindent} +\newcounter{index}% +\newcounter{backindex}% +\newcounter{key}\setcounter{key}{0} +\newboolean{named}% +\newboolean{back}% +\newboolean{nameornumber}% true if alternative results in a name +\newsavebox{\gprefix}% Abbreviation of genus name, parameter for key +\newlength{\altindent}% additional indentation of each key level +\setlength{\altindent}{0mm} +\newlength{\keylabelwidth}% width of label of each key step +\setlength{\keylabelwidth}{2em}% +\newlength{\oldparindent} +% +% define command 'keytitle' +\newcommand{\keytitle}[2][it]{ + \vspace{2pt} + \ifthenelse{\equal{#1}{it}} + {\noindent\textbf{Key to \textit{#2}}} % taxonname in italis + {\noindent\textbf{Key to #2}} % normal taxonname + \vspace{2pt} +} +% +% define environment 'key' +\newenvironment{key}[1]% + {\setcounter{index}{0} + \stepcounter{key} + \setboolean{nameornumber}{true}% + \sbox{\gprefix}{\textit{\textbf{#1}}}% + \setlength{\oldparindent}{\parindent}% + \setlength{\hangindent}{0pt}% + \setlength{\parindent}{0pt}% + } + {\par\setlength{\parindent}{\oldparindent}} +% +% define command 'name' +\newcommand{\name}[4][\usebox{\gprefix}]% + {\unskip\nobreak\hfil + \penalty 150 + \leaders\hbox{\thinspace.\thinspace}\hskip 12pt plus 1fill + \vadjust{}\hfil + \isint{#3}{nameornumber} + \ifthenelse{\boolean{nameornumber}} + {#2\hspace{6pt}\textbf{\mbox{ \hyperlink{\thekey:#3}{#3}}}} % + {\hbox{\textbf{#2}\hspace{4pt}\textit{\textbf{#1}\textit{\textbf{\mbox{#3}}}}}\hspace{4pt}#4}% + {\parfillskip=0pt\par}} +% +% define command 'leadONE' +\newcommand{\leadONE}[2]% + {\par% + \stepcounter{index}% + \setcounter{backindex}{\theindex-1} + \hspace*{-\keylabelwidth}\hspace*{-2mm}% + %\parbox[t]{\keylabelwidth}{\hfill{\textbf{\hypertarget{\thekey:\theindex}{\theindex}}}}% + %\parbox[t]{\keylabelwidth}{\hfill{\textbf{ \raisebox{\baselineskip}[0pt]{\hypertarget + % {\thekey:\theindex}{}}\theindex}}}% + \parbox[t]{\keylabelwidth}{\hfill{\textbf{\raisebox{\baselineskip}[0pt]{\hypertarget + {\thekey:\theindex}{}}\hyperlink{\thekey:\thebackindex}{\theindex}}}}% + \ifthenelse{\isempty{#1}} + {\hspace*{2mm}#2} + {\hspace*{1.4pt}\textbf{(\hyperlink{\thekey:#1}{#1})}\hspace*{2pt}#2} +} +% +% Anker nach oben verschieben: +% Instead of '\hypertarget{abc}{def}' you can also use +% '\raisebox{\baselineskip}[0pt]{\hypertarget{abc}{}}def' +% +% define command 'leadTWO' +\newcommand{\leadTWO}% + {\par + \hspace*{-\keylabelwidth}\hspace{-4mm} + \parbox[t]{2em}{\hfill{\textbf{-}}}% die indexe eine Textbox + \hspace*{2.7mm}% hier kommt der Text % \leadTWO +}% |