From 6d3800d3b164704c4038f84408b27f759a4ea744 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Tue, 15 Jan 2013 23:01:04 +0000
Subject: datatool (15jan13)

git-svn-id: svn://tug.org/texlive/trunk@28844 c570f23f-e606-0410-a88d-b1316a301751
---
 .../doc/latex/datatool/samples/sample-dict.tex     | 439 +++++++++++++++++++++
 1 file changed, 439 insertions(+)
 create mode 100644 Master/texmf-dist/doc/latex/datatool/samples/sample-dict.tex

(limited to 'Master/texmf-dist/doc/latex/datatool/samples/sample-dict.tex')

diff --git a/Master/texmf-dist/doc/latex/datatool/samples/sample-dict.tex b/Master/texmf-dist/doc/latex/datatool/samples/sample-dict.tex
new file mode 100644
index 00000000000..5f2dbee76dc
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/datatool/samples/sample-dict.tex
@@ -0,0 +1,439 @@
+\documentclass[oneside]{scrbook}
+
+\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenc}
+\usepackage{mathpazo}
+
+% The low optimize setting won't work for this example
+\usepackage[optimize=high]{datagidx}
+
+\usepackage[colorlinks]{hyperref}
+
+% This is an example document that uses datagidx to create a
+% sorted dictionary, using datatool to do the sorting.
+
+% Make a database labelled 'index' with the given title
+
+\newgidx[heading={\title}]{index}{Sample Dictionary Created Using datagidx}
+
+% Define some terms for the dictionary
+
+% First set the default database, so we don't have to keep using the
+% "database" key:
+\DTLgidxSetDefaultDB{index}
+
+% Add some custom fields
+
+\newtermaddfield{Derivatives}{derivatives}{}
+
+\newtermaddfield{Origin}{origin}{}
+
+\newtermaddfield{Phrases}{phrases}{}
+
+\newtermaddfield{Subject}{subject}{}
+
+\newtermaddfield{Variation}{variation}{}
+
+\newtermaddfield{Phonetic}{phonetic}{}
+
+\newtermaddfield{AltPlural}{altplural}{}
+
+\newtermaddfield{Parenthetical}{parenthetical}{}
+
+% Provide a convenient interface to define words:
+
+% Syntax: \newentry[main option list][cat opt list]{word}{category}{definition}
+
+\newcommand*{\newentry}[1][]{%
+  \def\newentryopts{#1}%
+  \nnewentry
+}
+
+\newcommand*{\nnewentry}[4][]{%
+  \expandafter\newterm\expandafter[\newentryopts]{#2}%
+  \newterm
+  [%
+    label={\datagidxlastlabel-#3},%
+    parent={\datagidxlastlabel},%
+    description={#4},%
+    text={#3},%
+    #1%
+  ]%
+  {#3}%
+  \setcounter{newentrysubcat}{0}%
+}
+
+% Syntax: \newentrycat{parent label}{category}{definition}
+
+\newcommand*{\newentrycat}[3]{%
+  \newterm
+  [%
+    label={#1-#2},%
+    parent={#1},%
+    description={#3}%
+  ]%
+  {#2}%
+  \setcounter{newentrysubcat}{0}%
+}
+
+% Syntax: \newentrysubcat[option list]{parent label}{description}
+
+\newcounter{newentrysubcat}
+
+\newcommand*{\newentrysubcat}[3][]{%
+  \stepcounter{newentrysubcat}%
+  \newterm
+  [%
+    label={#2-\arabic{newentrysubcat}},%
+    sort={#2-\arabic{newentrysubcat}},%
+    parent={#2},%
+    description={#3},%
+   #1%
+  ]
+  {}%
+}
+
+\newcommand*{\categoryand}{ \& }
+
+% hook into the mechanism that constructs the label and sort fields from
+% the name:
+
+\appto\newtermlabelhook{\def\categoryand{+}}
+
+\newcommand*{\namefont}[1]{\textbf{\sffamily #1}}
+\newcommand*{\subjectfont}[1]{\textsf{#1}}
+\newcommand*{\categoryfont}[1]{\namefont{#1}}
+\newcommand*{\originfont}[1]{\emph{#1}}
+\newcommand*{\derivativeformat}[2]{\textbf{#1}\space\textsf{#2}}
+\newcommand*{\phoneticformat}[1]{/#1/}
+
+\newcommand*{\stress}[1]{\textbf{#1}}
+
+\newcommand*{\crossref}[1]{\textbf{\useentry{#1}{Name}}}
+\newcommand*{\Crossref}[1]{\textbf{\textsc{\useentry{#1}{Name}}}}
+
+% Words and their definitions taken from the Compact Oxford English
+% Dictionary
+
+% label and sort must both be specified here as \newterm can't cope
+% with {\ae} when automatically generating the label and sort from
+% the name
+\newentry
+ [%
+   phonetic={ee-\stress{oh}-li-uhn},
+   origin={from \originfont{\AE olus}, the Greek god of the winds},
+   label=aeolian,
+   sort=aeolian
+ ]
+ {{\ae}olian harp}{noun}{a stringed instrument that produces musical
+sounds when a current of air passes through it}
+
+% Similarly label and sort are needed here
+\newentry
+ [%
+   phonetic={i-\stress{sof}-fuh-guhss},
+   plural={{œ}sophagi},
+   origin={Greek \originfont{oisophagos}},
+   label={oesophagus},
+   sort={oesophagus}
+ ]
+ {{œ}sophagus}{noun}{the muscular tube which connects throat to
+stomach}
+
+\newentry
+ [% additional info
+   origin={Old English}
+ ]%
+ [%
+   subject={literary}
+ ]
+ {asunder}{adverb}{apart}
+
+\newentry
+ [% additional info
+   origin={Old English},
+   parenthetical={\subjectfont{US} \namefont{adz}}
+ ]
+ {adze}{noun}{a tool similar to an axe, with an arched blade at right angles to
+ the handle}
+
+\newentry
+ [% additional info
+   origin={Latin \originfont{astutus}},
+   derivatives={\derivativeformat{astutely}{adverb}
+    \derivativeformat{astuteness}{noun}}
+ ]
+ {astute}{adjective}{good at making accurate judgements; shrewd}
+
+\newentry{astern}{adverb}{behind or towards the rear of a ship}
+
+\newentry{thunderbolt}{noun}{flash of lightning with a crash of
+thunder at the same time}
+
+\newentry{thunderclap}{noun}{a crash of thunder}
+
+\newentry
+ [%
+  origin={Italian \originfont{ticchio}}
+ ]
+ {tic}{noun}{a recurring spasm of the muscles, most often in
+the face}
+
+\newentry
+ [%
+   phonetic={thwort},
+   origin={from Old Norse, `transverse'}
+ ]
+ {thwart}{verb}{}
+
+\newentrysubcat{thwart-verb}{prevent someone from accomplishing
+something}
+
+\newentrysubcat{thwart-verb}{prevent something from succeeding}
+
+\newentrycat{thwart}{noun}{a crosspiece forming a seat for a rower
+in a boat}
+
+\newentry
+ [% additional info
+   origin={from an old sense of \Crossref{thwart}, meaning
+`across'},
+   phonetic={uh-\stress{thwart}}
+ ]
+ {athwart}{preposition\categoryand adverb}{from side to side of something;
+  across}
+
+\newentry
+ [%
+   phonetic={aw-\stress{bree}-shuh},
+   parenthetical={also \namefont{aubrietia}},
+   origin={named after the French botanist Claude \originfont{Aubriet}}
+ ]
+ {aubretia}{noun}{a trailing plant with purple, pink, or white
+flowers}
+
+\newentry
+ [%
+   phonetic={aw-\stress{day}-shuhss},
+   derivatives={\derivativeformat{audaciously}{adverb}
+    \derivativeformat{audaciousness}{noun}
+    \derivativeformat{audacity}{noun}},
+   origin={Latin \originfont{audax} `bold'}
+ ]
+ {audacious}{adjective}{}
+
+\newentrysubcat{audacious-adjective}{willing to take daring risks}
+\newentrysubcat{audacious-adjective}{showing lack of respect; rude
+or impudent}
+
+\newentry
+ [%
+   parenthetical={pl.\ \namefont{attorneys}},
+   phonetic={uh-\stress{ter}-ni},
+   origin={Old French \originfont{atorner} `assign'}
+ ]
+ {attorney}{noun}{}
+
+\newentrysubcat{attorney-noun}{a person appointed to act for another
+in legal matters}
+
+\newentrysubcat
+ [%
+   subject={chiefly US}%
+ ]
+ {attorney-noun}{a lawyer}
+
+\newentry
+ [
+   phonetic={\stress{ay}-tri-uhm},
+   altplural={atria},
+   parenthetical={pl.\ \namefont{atria}
+    \phoneticformat{\stress{ay}-tri-uh}
+    or \namefont{atriums}},
+   derivatives={\derivativeformat{atrial}{adjective}},
+   origin={Latin}
+ ]
+ {atrium}{noun}{}
+
+\newentrysubcat{atrium-noun}{a central hall rising through several
+storeys and having a glazed roof}
+
+\newentrysubcat{atrium-noun}{an open area in the centre of an
+ancient Roman house}
+
+\newentrysubcat{atrium-noun}{each of the two cavities of the heart}
+
+\newentry
+ [%
+   plural={austerities},
+   phonetic={oss-\stress{te}-ri-ti}
+ ]
+ {austerity}{noun}{}
+
+\newentrysubcat{austerity-noun}{strictness or severity of appearance
+or manner}
+\newentrysubcat{austerity-noun}{difficult economic conditions
+resulting from a cut in public spending}
+
+\newentry
+[
+  plural={cacti},
+  altplural={cactuses},
+  origin={Greek \originfont{kaktos} `cardoon'}
+]
+{cactus}{noun}{a succulent plant with thick fleshy stems bearing
+spikes but no leaves}
+
+\newentry
+ [%
+   phonetic={chahf},
+   phrases={\namefont{separate} (or \namefont{sort}) \namefont{the
+   wheat from the chaff} distinguish valuable people or things from
+   worthless ones},
+   origin={Old English}
+ ]
+ {chaff\textsuperscript{1}}{noun}{}
+
+\newentrysubcat{chaff1-noun}{the husks of grain from the seed by
+winnowing or threshing}
+
+\newentrysubcat{chaff1-noun}{chopped hay and straw used in cattle
+fodder}
+
+\newentry
+ [
+   phonetic={chaff},
+ ]
+ {chaff\textsuperscript{2}}{noun}{light-hearted joking}
+
+\newentrycat{chaff2}{verb}{tease someone}
+
+\newterm
+[
+  plural={elves},%
+  derivatives={\derivativeformat{elfish}{adjective}
+   \derivativeformat{elven}{adjective (literary)}
+   \derivativeformat{elvish}{adjective}},%
+  origin={Old English},%
+  description={a supernatural creature of folk tales, represented as
+   a small human figure with pointed ears}
+]
+{elf}
+
+% Be careful of words starting with an accent.
+
+\newterm
+ [
+   label={elite},%
+   phonetic={i-\stress{leet}},%
+   origin={French, `selection, choice'}%
+ ]
+ {{é}lite}
+
+\newentrycat{elite}{noun}{a group of people regarded as the best in a
+particular society or organisation}
+
+\newterm
+ [
+   description={plural of \Crossref{elf}}%
+ ]
+ {elves}
+
+% Add all entries
+
+\glsaddall{index}
+
+% Customise index format
+
+\renewcommand{\DTLgidxNameFont}[1]{\namefont{\large#1}}
+
+\newcommand{\postnamespace}{\space}
+
+\renewcommand{\DTLgidxPostName}{%
+  \ifdefempty\Subject
+  {%
+  }%
+  {%
+    \space\subjectfont{\Subject}%
+  }%
+  \ifdefempty\Phonetic
+  {%
+  }%
+  {%
+    \space\phoneticformat{\Phonetic}%
+  }%
+  \ifdefempty\Parenthetical
+  {%
+    \ifdefempty\AltPlural
+    {%
+      \ifthenelse{\equal{\Plural}{\Text s}}%
+      {%
+      }%
+      {%
+        \space (pl.\ \namefont{\Plural})%
+      }%
+    }%
+    {%
+      \space (pl. \namefont{\Plural} or \namefont{\AltPlural})%
+    }%
+  }%
+  {%
+    \space (\Parenthetical)%
+  }%
+  \postnamespace
+}
+
+\renewcommand{\DTLgidxCategoryNameFont}[1]{\categoryfont{#1}}
+\renewcommand{\DTLgidxCategorySep}{\space\textbullet\space}
+\renewcommand*{\DTLgidxChildCountLabel}{%
+ \def\postnamespace{~\def\postnamespace{\space}}%
+ \textbf{\sffamily\theDTLgidxChildCount}%
+}
+
+\renewcommand{\DTLgidxDictPostItem}{%
+  \ifdefempty\Derivatives
+  {}
+  {%
+    \par
+    \datagidxdictparshape
+    -- \textsc{derivatives} \Derivatives.
+  }%
+  \ifdefempty\Phrases
+  {}
+  {%
+    \par
+    \datagidxdictparshape
+    -- \textsc{phrases} \Phrases.
+  }%
+  \ifdefempty\Origin
+  {}
+  {%
+    \par
+    \datagidxdictparshape
+    -- \textsc{origin} \Origin.
+  }%
+  \par
+}
+
+% Title information
+\author{}
+\date{}
+
+\begin{document}
+% don't number the chapters
+\setcounter{secnumdepth}{-1}
+
+\printterms
+[
+   database=index,
+   postheading={\maketitle This is an example document illustrating
+   the use of the datagidx package. The examples here are taken from
+   the Compact Oxford English Dictionary.
+   },
+   columns=2,
+   postdesc=dot,%
+   childsort=false,% don't sort the child lists
+   style={dict} % use the 'dict' style
+]
+
+\end{document}
-- 
cgit v1.2.3

