summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/identkey
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/identkey
Initial commit
Diffstat (limited to 'macros/latex/contrib/identkey')
-rw-r--r--macros/latex/contrib/identkey/README.md13
-rw-r--r--macros/latex/contrib/identkey/identkey.sty41
2 files changed, 54 insertions, 0 deletions
diff --git a/macros/latex/contrib/identkey/README.md b/macros/latex/contrib/identkey/README.md
new file mode 100644
index 0000000000..1f2efc9c02
--- /dev/null
+++ b/macros/latex/contrib/identkey/README.md
@@ -0,0 +1,13 @@
+# Identkey
+
+## Usage
+
+ \begin{key}
+ \lead Flowers zygomorphic \ident{Senna}
+ \lead Flowers actinomorphic \goto{2}
+
+ \lead Corolla inconspicuous, flowers arranged in dense head or spikes
+ \ident{Acacia}
+ \lead Corolla conspicuous, flowers not arranged in dense heads or spikes
+ \ident{Gleditsia}
+ \end{key}
diff --git a/macros/latex/contrib/identkey/identkey.sty b/macros/latex/contrib/identkey/identkey.sty
new file mode 100644
index 0000000000..1a11059ffd
--- /dev/null
+++ b/macros/latex/contrib/identkey/identkey.sty
@@ -0,0 +1,41 @@
+% Copyright (c) 2018 Robert White
+
+% This program is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% (at your option) any later version.
+
+% This program is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+
+% You should have received a copy of the GNU General Public License
+% along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+\ProvidesPackage{identkey}[2018/10/29 v0.1.0 Package for typesetting bracketed dichotomous identification keys]
+
+\RequirePackage{enumitem}
+\RequirePackage{etoolbox}
+
+\setlist[1]{labelindent=\parindent}
+\newlist{key}{enumerate}{1}
+\setlist[key]{leftmargin=*, label=\arabic*, labelsep=10pt, format=\bfseries}
+
+\newcounter{coupletcounter}
+\setcounter{coupletcounter}{0}
+
+\newcommand\lead{%
+ \refstepcounter{coupletcounter}%
+ \ifnumodd{\value{coupletcounter}}{\firstlead}{\secondlead}%
+}
+
+\newcommand\firstlead{\item}
+\newcommand\secondlead{%
+ \item[\@itemlabel\rlap{:}]%
+}
+
+\newcommand{\ident}[1]{ \dotfill\textit{\textbf{#1}}}
+\newcommand{\goto}[1]{ \dotfill\textbf{#1}}
+
+\endinput