summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/quotmark
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/quotmark
Initial commit
Diffstat (limited to 'macros/latex/contrib/quotmark')
-rw-r--r--macros/latex/contrib/quotmark/README60
-rw-r--r--macros/latex/contrib/quotmark/doc/CHANGES3
-rw-r--r--macros/latex/contrib/quotmark/doc/quotmark.pdfbin0 -> 184032 bytes
-rw-r--r--macros/latex/contrib/quotmark/doc/sample.tex33
-rw-r--r--macros/latex/contrib/quotmark/quotmark.dtx1764
-rw-r--r--macros/latex/contrib/quotmark/quotmark.ins103
6 files changed, 1963 insertions, 0 deletions
diff --git a/macros/latex/contrib/quotmark/README b/macros/latex/contrib/quotmark/README
new file mode 100644
index 0000000000..d537448359
--- /dev/null
+++ b/macros/latex/contrib/quotmark/README
@@ -0,0 +1,60 @@
+LaTeX Package : quotmark v 1.0
+
+Last Modified : 10 December 2007
+
+Author : Nicola Talbot
+
+Files : quotmark.dtx - documented source file
+ quotmark.ins - installation script
+ sample.tex - sample file
+
+The purpose of this package is to provide consistent quotation
+marks throughout your document. To quote text use either \tqt{text}
+or \begin{qt}text\end{qt}.
+
+The style can be changed either via package options, or through the
+use of commands, so if, say, you have used single inverted commas
+throughout your document, and then your publisher tells you that you
+must use double inverted commas, this can be achieved by editing a
+single line, rather than trying to work out how to get your editor's
+search and replace function to work on closing quotes without changing
+apostrophes or acute accents.
+
+There is also an added advantage in that using the text-block
+command or the environment provided by this package will
+ensure that failing to close a quotation will result in an error.
+Paragraph breaks within a quotation are dealt with
+automatically.
+
+This package detects if babel has been loaded, and will use the
+punctuations marks for the current language.
+
+See the documentation for more details.
+
+To extract the code from the documented source file do:
+
+latex quotmark.ins
+
+This will create the file quotmark.sty and some .def files.
+
+Move quotmark.sty and the .def files to somewhere LaTeX will find it
+(e.g. texmf/tex/latex/quotmark/) and remember to update the TeX
+database.
+
+To extract the documentation do:
+
+latex quotmark.dtx
+makeindex -s gind.ist quotmark
+latex quotmark.dtx
+latex quotmark.dtx
+
+Place the resulting file (quotmark.dvi) into the documentation
+directory (e.g. texmf/doc/latex/quotmark/).
+
+Read the file CHANGES for version changes.
+
+This material is subject to the LaTeX Project Public License.
+See http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html for
+the details of that license.
+
+http://theoval.cmp.uea.ac.uk/~nlct/
diff --git a/macros/latex/contrib/quotmark/doc/CHANGES b/macros/latex/contrib/quotmark/doc/CHANGES
new file mode 100644
index 0000000000..e9b22e7a06
--- /dev/null
+++ b/macros/latex/contrib/quotmark/doc/CHANGES
@@ -0,0 +1,3 @@
+Change log for quotmark.sty:
+
+v1.0: Initial release.
diff --git a/macros/latex/contrib/quotmark/doc/quotmark.pdf b/macros/latex/contrib/quotmark/doc/quotmark.pdf
new file mode 100644
index 0000000000..f90e1d1b87
--- /dev/null
+++ b/macros/latex/contrib/quotmark/doc/quotmark.pdf
Binary files differ
diff --git a/macros/latex/contrib/quotmark/doc/sample.tex b/macros/latex/contrib/quotmark/doc/sample.tex
new file mode 100644
index 0000000000..d87f984e92
--- /dev/null
+++ b/macros/latex/contrib/quotmark/doc/sample.tex
@@ -0,0 +1,33 @@
+\documentclass{article}
+
+\usepackage{quotmark}
+
+\begin{document}
+
+First quote uses an environment:
+\begin{qt}This is a quote.\end{qt} This isn't a quote.
+
+The next quote uses a text-block command:
+\tqt{This is a quote.} This isn't a quote.
+
+Now for some nested quotes:
+
+\tqt{Did she say \tqt{I am here}?} he asked.
+
+\tqt{She said \tqt{where am I?}\,} he replied.
+
+\tqt{He said to me \tqt{I am Harry \tqt{Mad} Hatter},} I said.
+
+Paragraphs within the quotes are dealt with automatically:
+
+\begin{qt}Dear Sir/Madam,
+
+I am writing to inform you that I would like you to quote this
+letter in your so-called \tqt{funny} article, which I don't find
+the least bit amusing.
+
+Yours etc\end{qt}
+
+Back to unquoted text.
+
+\end{document}
diff --git a/macros/latex/contrib/quotmark/quotmark.dtx b/macros/latex/contrib/quotmark/quotmark.dtx
new file mode 100644
index 0000000000..a76cb76cc4
--- /dev/null
+++ b/macros/latex/contrib/quotmark/quotmark.dtx
@@ -0,0 +1,1764 @@
+%\iffalse
+% quotmark.dtx generated using makedtx version 0.94b (c) Nicola Talbot
+% Command line args:
+% -src "(.+)\.(sty)\Z=>\1.\2"
+% -src "(.+)\.(def)\Z=>\1.\2"
+% -doc "quotmark-manual.tex"
+% -author "Nicola Talbot"
+% -dir "source"
+% quotmark
+% Created on 2007/12/19 14:42
+%\fi
+%\iffalse
+%<*package>
+%% \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 \~}
+%</package>
+%\fi
+% \iffalse
+% Doc-Source file to use with LaTeX2e
+% Copyright (C) 2007 Nicola Talbot, all rights reserved.
+% \fi
+% \iffalse
+%<*driver>
+\documentclass{ltxdoc}
+
+\usepackage[french,german,spanish,english]{babel}
+\usepackage{quotmark}
+\usepackage[colorlinks,
+ bookmarks,
+ bookmarksopen,
+ hyperindex=false,
+ pdfauthor={Nicola L.C. Talbot},
+ pdftitle={quotmark.sty},
+ pdfkeywords={LaTeX,counter}]{hyperref}
+
+\renewcommand{\usage}[1]{\textit{\hyperpage{#1}}}
+\renewcommand{\main}[1]{\hyperpage{#1}}
+\newcommand{\see}[2]{\emph{see} #1}
+\makeatletter
+\def\index@prologue{\section*{Index}}
+\makeatother
+\PageIndex
+\newsavebox\dfnbox
+\newlength\dfnboxwidth
+\newenvironment{definition}{\begin{lrbox}{\dfnbox}%
+\setlength{\dfnboxwidth}{\linewidth}%
+\addtolength{\dfnboxwidth}{-2\fboxsep}%
+\addtolength{\dfnboxwidth}{-2\fboxrule}%
+\begin{minipage}{\dfnboxwidth}\flushleft
+}{\end{minipage}\end{lrbox}\par\vskip10pt plus 1pt minus 1pt\noindent\fbox{\usebox{\dfnbox}}%
+\par\vskip10pt plus 1pt minus 1pt\noindent\ignorespacesafterend}
+\newcommand{\env}[1]{\textsf{#1}}
+\newcommand{\pkgopt}[1]{\texttt{#1}\index{package option>#1|main}}
+
+
+\newcommand{\sty}[1]{\textsf{#1}}
+\begin{document}
+\DocInput{quotmark.dtx}
+\end{document}
+%</driver>
+%\fi
+%\CheckSum{927}
+%
+% \title{quotmark.sty v1.0: quotation marks}
+% \author{Nicola L.C. Talbot\\\url{http://theoval.cmp.uea.ac.uk/~nlct/}}
+% \date{10 December 2007}
+% \maketitle
+%
+% \tableofcontents
+% \section{Introduction}
+%
+%The purpose of this package is to provide consistent quotation
+%marks throughout your document. The style can be changed either
+%via package options, or through the use of commands, so if, say,
+%you have used single inverted commas throughout your document,
+%and then your publisher tells you that you must use double
+%inverted commas, this can be achieved by editing a single line,
+%rather than trying to work out how to get your editor's search
+%and replace function to work on closing quotes without changing
+%apostrophes or acute accents.
+%
+%There is also an added advantage in that using the text-block
+%command or the environment provided by this package will
+%ensure that failing to close a quotation will result in an error.
+%Paragraph breaks within a quotation are dealt with
+%automatically.\footnote{in English and Spanish only, I don't know
+%the correct rules for other languages.}
+%
+%\DescribeMacro{\tqt}
+%\begin{definition}
+%\cs{tqt}\marg{text}
+%\end{definition}
+%\DescribeEnv{qt}
+%\begin{definition}
+%|\begin{qt}|\meta{text}|\end{qt}|
+%\end{definition}
+%These place \meta{text} within the quotation marks for the given
+%level. Both \cs{tqt} and \env{qt} may be nested as many times as
+%required. Note that \emph{both} \cs{tqt} and \env{qt} place
+%\meta{text} in a group. By default, double inverted commas (``
+%and '') are used for the first level and single inverted commas (`
+%and ') are used for the second level. Any further nesting will
+%cycle through the available punctuation marks. The following
+%examples show the source code on the left and the typeset output
+%on the right:
+%
+%\newlength\orgparindent
+%\setlength{\orgparindent}{\parindent}
+%\begin{itemize}
+%\item A simple quote:
+%
+%\begin{minipage}{0.4\linewidth}
+%\begin{verbatim}
+%\tqt{Some quoted text.}
+%\end{verbatim}
+%\end{minipage}\hfill
+%\begin{minipage}{0.4\linewidth}
+%\tqt{Some quoted text.}
+%\end{minipage}
+%
+%\item The same as the above, but using the \env{qt} environment:
+%
+%\begin{minipage}{0.4\linewidth}
+%\begin{verbatim}
+%\begin{qt}Some quoted text.\end{qt}
+%\end{verbatim}
+%\end{minipage}\hfill
+%\begin{minipage}{0.4\linewidth}
+%\begin{qt}Some quoted text.\end{qt}
+%\end{minipage}
+%
+%\item Some nested quotes:
+%
+%\begin{minipage}{0.4\linewidth}
+%\begin{verbatim}
+%\tqt{Did she say \tqt{I am here}?}
+%he asked.
+%
+%\tqt{She said \tqt{where am I?}\,}
+%he replied.
+%\end{verbatim}
+%\end{minipage}\hfill
+%\begin{minipage}{0.4\linewidth}\setlength{\parindent}{\orgparindent}%
+%\tqt{Did she say \tqt{I am here}?} he asked.
+%
+%\tqt{She said \tqt{where am I?}\,} he replied.
+%\end{minipage}
+%
+%\item Third level nested quote:
+%
+%\begin{minipage}{0.4\linewidth}
+%\begin{verbatim}
+%\tqt{He said to me \tqt{I am
+%Harry \tqt{Mad} Hatter},} I said.
+%\end{verbatim}
+%\end{minipage}\hfill
+%\begin{minipage}{0.4\linewidth}\setlength{\parindent}{\orgparindent}%
+%\tqt{He said to me \tqt{I am Harry \tqt{Mad} Hatter},} I said.
+%\end{minipage}
+%
+%\item Paragraphs within the quotes are dealt with automatically:
+%
+%\begin{minipage}{0.4\linewidth}
+%\begin{verbatim}
+%\begin{qt}Dear Sir/Madam,
+%
+%I am writing to inform you that
+%I would like you to quote this
+%letter in your so-called \tqt{funny}
+%article, which I don't find
+%the least bit amusing.
+%
+%Yours etc\end{qt}
+%\end{verbatim}
+%\end{minipage}\hfill
+%\begin{minipage}{0.4\linewidth}\setlength{\parindent}{\orgparindent}%
+%\begin{qt}Dear Sir/Madam,
+%
+%I am writing to inform you that I would like you to quote this
+%letter in your so-called \tqt{funny} article, which I don't find
+%the least bit amusing.
+%
+%Yours etc\end{qt}
+%\end{minipage}
+%\end{itemize}
+%
+%\section{Changing the default style}
+%
+%The punctuation used by \cs{tqt} and \env{qt} may be changed either
+%via the \sty{quotmark} package options (see below) or using
+%\DescribeMacro{\setquotemarks}
+%\begin{definition}
+%\cs{setquotemarks}\marg{list}
+%\end{definition}
+%where \meta{list} is a comma-separated list of opening and closing
+%pairs. For example, to change the style to use single inverted
+%commas for the first level and double inverted commas for the
+%second level, do:
+%\begin{verbatim}
+%\setquotemarks{{`}{'},{``}{''}}
+%\end{verbatim}
+%Note that each item in the list must be specified as a pair. If
+%you are influenced by James~Joyce, and want to specify a quotation
+%using an em-dash at the start of the quote, but nothing at the end,
+%you need to specify an empty argument for the closing quote:
+%\begin{verbatim}
+%\setquotemarks{{---}{}}
+%\end{verbatim}
+%however, be aware that failing to signify the end of a quote may
+%confuse readers.
+%
+%Note that you are not restricted to one or two levels, the
+%following example uses guillemets for the first level, double
+%inverted commas for the second level and single inverted commas
+%for the third level:
+%\begin{verbatim}
+%\setquotemarks{{\guillemotleft}{\guillemotright},{``}{''},{`}{'}}
+%\end{verbatim}
+%
+%In English, when a paragraph break occurs within a quote, the end
+%of the first paragraph has no closing quote, and the start of the
+%next paragraph has an opening quote. This can be changed using
+%\DescribeMacro{\setparquotemarks}
+%\begin{definition}
+%\cs{setparquotemarks}\marg{before}\marg{after}
+%\end{definition}
+%where \meta{end} indicates what to use before the paragraph break
+%and \meta{after} indicates what to use after the paragraph break.
+%Both \cs{tqt} and \env{qt} set \DescribeMacro{\currentleftquote}\cs{currentleftquote}
+%and \DescribeMacro{\currentrightquote}\cs{currentrightquote} to
+%the opening and closing quotes for the current level. These
+%commands may then be used in the arguments to
+%\cs{setparquotemarks}. For example, in Spanish nothing occurs
+%before the paragraph break and the closing quote is used after the
+%paragraph break. This can be specified as follows:
+%\begin{verbatim}
+%\setparquotemarks{}{\currentrightquote}
+%\end{verbatim}
+%
+%\subsection{Multi-lingual support}
+%
+%The punctuation used may be changed using the
+%package options listed in \autoref{tab:options}. Note that if
+%you load \sty{babel} before \sty{quotmark}, the relevant option
+%will be used automatically, except the \texttt{swiss} option which
+%needs to be set explicitly. In addition, the \texttt{ngerman}
+%option will be set automatically if the \sty{ngerman} package is
+%loaded before the \sty{quotmark} package.
+%
+%Each language option used creates a command of the form
+%\DescribeMacro{\quotemarks...}\cs{quotemarks}\meta{language}
+%which sets the quote marks using \cs{setquotemarks} and
+%\cs{setparquotemarks} described above. If \sty{babel} is loaded
+%before loading \sty{quotmark}, \cs{quotemarks}\meta{language}
+%will be added to the babel captions for that language. So if
+%you want to change the punctuation for a given language, you
+%will need to redefine \cs{quotemarks}\meta{language}.
+%If you load \sty{babel} after \sty{quotmark}, then the punctuation
+%will not change when you change language, and you will need
+%to specify the language as an option to \sty{quotmark}.
+%
+%(Note that I only know the paragraph rules for English and
+%Spanish, all other languages set the before and after paragraph
+%break punctuation to nothing. If this is not correct, let me
+%know, and I'll fix it in the next version.)
+%
+%Assuming packages have been loaded as follows:
+%\begin{verbatim}
+%\usepackage[french,german,spanish,english]{babel}
+%\usepackage{quotmark}
+%\end{verbatim}
+%the following examples illustrate the effects of changing
+%language:
+%\begin{itemize}
+%\item English:
+%
+%\begin{minipage}{0.45\linewidth}
+%\begin{verbatim}
+%\tqt{Did she say \tqt{I am here}?}
+%he asked.
+%\end{verbatim}
+%\end{minipage}\hfill
+%\begin{minipage}{0.45\linewidth}
+%\tqt{Did she say \tqt{I am here}?} he asked.
+%\end{minipage}
+%
+%\item French:
+%
+%\begin{minipage}{0.45\linewidth}
+%\begin{verbatim}
+%\selectlanguage{french}
+%\tqt{Elle disent que \tqt{je suis
+%ici}?} il a demand\'e.
+%\end{verbatim}
+%\end{minipage}\hfill
+%\begin{minipage}{0.45\linewidth}
+%\selectlanguage{french}
+%\tqt{Elle disent que \tqt{je suis ici}?} il a demand\'e.
+%\end{minipage}
+%
+%\item German:
+%
+%\begin{minipage}{0.45\linewidth}
+%\begin{verbatim}
+%\selectlanguage{german}
+%\tqt{Sie sagt, da{\ss} \tqt{ich bin
+%hier}?} er bat.
+%\end{verbatim}
+%\end{minipage}\hfill
+%\begin{minipage}{0.45\linewidth}
+%\selectlanguage{german}
+%\tqt{Sie sagt, da{\ss} \tqt{ich bin hier}?} er bat.
+%\end{minipage}
+%
+%\item Spanish:
+%
+%\begin{minipage}{0.45\linewidth}
+%\begin{verbatim}
+%\selectlanguage{spanish}
+%\tqt{?`Ella dice que \tqt{estoy
+%aqu\'i}?} \'el pidi\'o.
+%\end{verbatim}
+%\end{minipage}\hfill
+%\begin{minipage}{0.45\linewidth}
+%\selectlanguage{spanish}
+%\tqt{?`Ella dice que \tqt{estoy aqu\'i}?} \'el pidi\'o.
+%\end{minipage}
+%
+%\end{itemize}
+%
+%\begin{table}[htbp]
+%\caption{Package Options}\label{tab:options}
+%\begin{center}
+%\begin{tabular}{llll}
+%\bfseries Option & \bfseries Punctuation &
+%\bfseries Option & \bfseries Punctuation\\
+%\pkgopt{acadian} & \flqq\nobreak\hspace{0.25em}1st\nobreak\hspace{0.25em}\frqq &
+%\pkgopt{afrikaans} &\glqq1st\erqq\ \glq2nd\erq\\
+%\pkgopt{american} &\elqq1st\erqq\ \elq2nd\erq&
+%\pkgopt{austrian} &\glqq1st\grqq\ \glq2nd\grq\\
+%\pkgopt{brazil} &\elqq1st\erqq\ \elq2nd\erq&
+%\pkgopt{brazilian} &\elqq1st\erqq\ \elq2nd\erq\\
+%\pkgopt{british} &\elq1st\erq\ \elqq2nd\erqq&
+%\pkgopt{bulgarian} &\glqq1st\grqq\\
+%\pkgopt{canadian} &\elqq1st\erqq\ \elq2nd\erq&
+%\pkgopt{canadien} & \flqq\nobreak\hspace{0.25em}1st\nobreak\hspace{0.25em}\frqq \\
+%\pkgopt{catalan} & \flqq1st\frqq\ \elqq2nd\erqq&
+%\pkgopt{croatian} & \glqq1st\grqq\ \elq2nd\erq\\
+%\pkgopt{czech} &\glqq1st\grqq\ \glq2nd\grq&
+%\pkgopt{danish} &\frqq1st\flqq\ \frq2nd\flq\\
+%\pkgopt{dutch} &\glqq1st\erqq\ \glq2nd\erq&
+%\pkgopt{english} &\elqq1st\erqq\ \elq2nd\erq\\
+%\pkgopt{estonian} & \glqq1st\grqq&
+%\pkgopt{finnish} &\erqq1st\erqq\ \erq2nd\erq\\
+%\pkgopt{francais} &\flqq\nobreak\hspace{0.25em}1st\nobreak\hspace{0.25em}\frqq &
+%\pkgopt{french} &\flqq\nobreak\hspace{0.25em}1st\nobreak\hspace{0.25em}\frqq \\
+%\pkgopt{frenchb} &\flqq\nobreak\hspace{0.25em}1st\nobreak\hspace{0.25em}\frqq &
+%\pkgopt{german} &\glqq1st\grqq\ \glq2nd\grq\\
+%\pkgopt{germanb} &\glqq1st\grqq\ \glq2nd\grq&
+%\pkgopt{greek} &\flqq\nobreak\hspace{1pt}1st\nobreak\hspace{1pt}\frqq\\
+%\pkgopt{polutonikogreek} &\flqq\nobreak\hspace{1pt}1st\nobreak\hspace{1pt}\frqq&
+%\pkgopt{hebrew}&\elqq1st\erqq\\
+%\pkgopt{hungarian}&\glqq1st\grqq\ \frqq2nd\flqq&
+%\pkgopt{icelandic}&\glqq1st\grqq\ \glq2nd\grq\\
+%\pkgopt{irish}&\elqq\nobreak\hspace{1pt plus 1pt}1st\nobreak\hspace{1pt plus 1pt}\erqq\
+%\elq\nobreak\hspace{1pt plus 1pt}2nd\nobreak\hspace{1pt plus 1pt}\erq&
+%\pkgopt{italian}&\flqq\nobreak\hspace{1pt plus 1pt}1st\nobreak\hspace{1pt plus 1pt}\frqq\\
+%\pkgopt{lowersorbian}&\glqq1st\grqq\ \glq2nd\grq&
+%\pkgopt{magyar}&\glqq1st\grqq\ \frqq2nd\flqq\\
+%\pkgopt{naustrian}&\glqq1st\grqq\ \glq2nd\grq&
+%\pkgopt{ngerman}&\glqq1st\grqq\ \glq2nd\grq\\
+%\pkgopt{norsk}&\flqq1st\frqq\ \flq2nd\frq&
+%\pkgopt{nynorsk}&\flqq1st\frqq\ \flq2nd\frq\\
+%\pkgopt{polish}&\glqq1st\grqq\ \glq2nd\grq&
+%\pkgopt{portuges}&\flqq1st\frqq\ \elqq2nd\erqq\\
+%\pkgopt{portuguese}&\flqq1st\frqq\ \elqq2nd\erqq&
+%\pkgopt{romanian}&\glqq1st\grqq\ \flqq2nd\frqq\\
+%\pkgopt{russian}&\flqq1st\frqq\ \glqq2nd\grqq&
+%\pkgopt{scottish}&\elq1st\erq\ \elqq2nd\erqq\\
+%\pkgopt{serbian}&\glqq1st\grqq\ \glq2nd\grq&
+%\pkgopt{slovak}&\glqq1st\grqq\ \glq2nd\grq\\
+%\pkgopt{slovene}&\glqq1st\grqq\ \glq2nd\grq&
+%\pkgopt{spanish}&\flqq1st\frqq\ \elqq2nd\erqq\\
+%\pkgopt{swedish}&\erqq1st\erqq\ \erq2nd\erq&
+%\pkgopt{swiss}&\flqq1st\frqq\ \flq2nd\frq\\
+%\pkgopt{turkish}&\glqq\nobreak\hspace{0pt plus 1pt}1st\nobreak\hspace{0pt plus 1pt}\grqq\
+%\glq\nobreak\hspace{0pt plus 1pt}2nd\nobreak\hspace{0pt plus 1pt}\grq&
+%\pkgopt{ukraineb}&\glqq1st\grqq\\
+%\pkgopt{uppersorbian}&\glqq1st\grqq\ \glq2nd\grq&
+%\pkgopt{welsh}&\elq\nobreak\hspace{1pt plus 1pt}1st\nobreak\hspace{1pt plus 1pt}\erq\
+%\elqq\nobreak\hspace{1pt plus 1pt}2nd\nobreak\hspace{1pt plus 1pt}\erqq\\
+%\pkgopt{UKenglish}&\elq1st\erq\ \elqq2nd\erqq&
+%\pkgopt{USenglish}&\elqq1st\erqq\ \elq2nd\erq
+%\end{tabular}
+%\end{center}
+%\end{table}
+%
+%\StopEventually{\phantomsection\addcontentsline{toc}{section}{Index}\PrintIndex}
+%
+%
+%
+%\section{The Code}
+%\iffalse
+% \begin{macrocode}
+%<*quotmark.sty>
+% \end{macrocode}
+%\fi
+% Identify package.
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{quotmark}[2007/12/10 v1.0]
+% \end{macrocode}
+%
+%\subsection{Specifying quote marks}
+%\begin{macro}{\qt@marklist}
+% Define a control sequence that contains a list of opening and
+% closing pairs. The default specifies double inverted commas
+% as the primary quote and single inverted commas as the secondary
+% quote.
+% \begin{macrocode}
+\newcommand*{\qt@marklist}{{\elqq}{\erqq},{\elq}{\erq}}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\qt@mark@list}
+%\cs{qt@mark@list} is used to iterate through \cs{qt@marklist}.
+% \begin{macrocode}
+\newcommand*{\qt@mark@list}{}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\currentleftquote}
+% This macro keeps track of the left quote for the current level.
+% \begin{macrocode}
+\newcommand*{\currentleftquote}{\relax}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\currentrightquote}
+% This macro keeps track of the right quote for the current level.
+% \begin{macrocode}
+\newcommand*{\currentrightquote}{\relax}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\qt@endpar}
+% If a paragraph break occurs within a quote, \cs{qt@endpar} specifies
+% what should go at the end of the paragraph. In English, this
+% should be nothing. I don't know how other languages deal with
+% paragraph breaks within a quote.
+% \begin{macrocode}
+\newcommand*{\qt@endpar}{}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{qt@startpar}
+% If a paragraph break occurs within a quote, \cs{qt@startpar}
+% specifies what should go at the start of the next paragraph. In
+% English, this is the opening quote.
+% \begin{macrocode}
+\newcommand*{\qt@startpar}{\currentleftquote}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\setquotemarks}
+%\cs{setquotemarks}\marg{list} sets the quote mark lists, e.g.\
+% \verb|\setquotemarks{{`}{'},{``}{''}}| will set the first level
+% to single inverted commas, and the second level to double
+% inverted commas. Note that using this command will reset the
+% level.
+% \begin{macrocode}
+\newcommand*{\setquotemarks}[1]{\renewcommand*{\qt@marklist}{#1}%
+\renewcommand*{\qt@mark@list}{}}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\setparquotemarks}
+% Sets \cs{qt@endpar} and \cs{qt@startpar}:
+% \begin{macrocode}
+\newcommand*{\setparquotemarks}[2]{%
+\renewcommand*{\qt@endpar}{#1}%
+\renewcommand*{\qt@startpar}{#2}}
+% \end{macrocode}
+%\end{macro}
+%
+%\subsection{Multi-lingual Support}
+%\begin{macro}{\quotemarks@load@lang}
+% Loads language definition files
+% \begin{macrocode}
+\newcommand*{\quotemarks@load@lang}[1]{%
+\IfFileExists{quotmark-#1.def}{%
+ \@ifundefined{quotemarks#1}{\input{quotmark-#1.def}}{}%
+}{\PackageError{quotmark}{Language `#1' not implemented}{%
+File `quotmark-#1.def' does not exist.}}%
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\setlanguagequotemarks}
+%\cs{setlanguagequotemarks}\marg{language}\marg{list}
+% If babel is loaded, add the quotes in the caption settings, otherwise
+% just set the quote marks.
+% \begin{macrocode}
+\@ifpackageloaded{babel}{%
+% \end{macrocode}
+% Babel package has been loaded.
+% \begin{macrocode}
+\newcommand*{\setlanguagequotemarks}[1]{%
+\edef\qt@setlangquotemarks{\noexpand\addto
+ \expandafter\noexpand\csname captions#1\endcsname
+ {\expandafter\noexpand\csname quotemarks#1\endcsname}}%
+\qt@setlangquotemarks
+}
+}{%
+% \end{macrocode}
+% Babel package hasn't been loaded.
+% \begin{macrocode}
+\newcommand*{\setlanguagequotemarks}[1]{\csname quotemarks#1\endcsname}
+}
+% \end{macrocode}
+%\end{macro}
+% If ngerman package has been loaded, set German punctuation:
+% \begin{macrocode}
+\@ifpackageloaded{ngerman}{%
+\quotemarks@load@lang{ngermanb}}{}
+% \end{macrocode}
+%
+%\subsection{Package options}
+% The following two options are provided for the benefit of
+% LaTeX2HTML, and are ignored by \LaTeX.
+% \begin{macrocode}
+\DeclareOption{nonconformance}{}
+\DeclareOption{conformance}{}
+% \end{macrocode}
+% If a language option isn't present, it
+% means I don't know what marks should be used for that language.
+% \begin{macrocode}
+\DeclareOption{acadian}{\quotemarks@load@lang{frenchb}}
+\DeclareOption{afrikaans}{\quotemarks@load@lang{afrikaans}}
+\DeclareOption{american}{\quotemarks@load@lang{USenglish}}
+\DeclareOption{austrian}{\quotemarks@load@lang{germanb}}
+\DeclareOption{brazil}{\quotemarks@load@lang{brazil}}
+\DeclareOption{brazilian}{\quotemarks@load@lang{brazil}}
+\DeclareOption{british}{\quotemarks@load@lang{UKenglish}}
+\DeclareOption{bulgarian}{\quotemarks@load@lang{bulgarian}}
+\DeclareOption{canadian}{\quotemarks@load@lang{USenglish}}
+\DeclareOption{canadien}{\quotemarks@load@lang{frenchb}}
+\DeclareOption{catalan}{\quotemarks@load@lang{catalan}}
+\DeclareOption{croatian}{\quotemarks@load@lang{croatian}}
+\DeclareOption{czech}{\quotemarks@load@lang{czech}}
+\DeclareOption{danish}{\quotemarks@load@lang{danish}}
+\DeclareOption{dutch}{\quotemarks@load@lang{dutch}}
+\DeclareOption{english}{\quotemarks@load@lang{USenglish}}
+\DeclareOption{estonian}{\quotemarks@load@lang{estonian}}
+\DeclareOption{finnish}{\quotemarks@load@lang{finnish}}
+\DeclareOption{francais}{\quotemarks@load@lang{frenchb}}
+\DeclareOption{french}{\quotemarks@load@lang{frenchb}}
+\DeclareOption{frenchb}{\quotemarks@load@lang{frenchb}}
+\DeclareOption{german}{\quotemarks@load@lang{germanb}}
+\DeclareOption{germanb}{\quotemarks@load@lang{germanb}}
+\DeclareOption{greek}{\quotemarks@load@lang{greek}}
+\DeclareOption{polutonikogreek}{\quotemarks@load@lang{greek}}
+\DeclareOption{hebrew}{\quotemarks@load@lang{hebrew}}
+\DeclareOption{hungarian}{\quotemarks@load@lang{magyar}}
+\DeclareOption{icelandic}{\quotemarks@load@lang{icelandic}}
+\DeclareOption{irish}{\quotemarks@load@lang{irish}}
+\DeclareOption{italian}{\quotemarks@load@lang{italian}}
+\DeclareOption{lowersorbian}{\quotemarks@load@lang{sorbian}}
+\DeclareOption{magyar}{\quotemarks@load@lang{magyar}}
+\DeclareOption{naustrian}{\quotemarks@load@lang{ngermanb}}
+\DeclareOption{ngerman}{\quotemarks@load@lang{ngermanb}}
+\DeclareOption{norsk}{\quotemarks@load@lang{norsk}}
+\DeclareOption{nynorsk}{\quotemarks@load@lang{norsk}}
+\DeclareOption{polish}{\quotemarks@load@lang{polish}}
+\DeclareOption{portuges}{\quotemarks@load@lang{portuges}}
+\DeclareOption{portuguese}{\quotemarks@load@lang{portuges}}
+\DeclareOption{romanian}{\quotemarks@load@lang{romanian}}
+\DeclareOption{russian}{\quotemarks@load@lang{russianb}}
+\DeclareOption{scottish}{\quotemarks@load@lang{UKenglish}}
+\DeclareOption{serbian}{\quotemarks@load@lang{serbian}}
+\DeclareOption{slovak}{\quotemarks@load@lang{slovak}}
+\DeclareOption{slovene}{\quotemarks@load@lang{slovene}}
+\DeclareOption{spanish}{\quotemarks@load@lang{spanish}}
+\DeclareOption{swedish}{\quotemarks@load@lang{swedish}}
+\DeclareOption{swiss}{\quotemarks@load@lang{swiss}}
+\DeclareOption{turkish}{\quotemarks@load@lang{turkish}}
+\DeclareOption{ukrainian}{\quotemarks@load@lang{ukraineb}}
+\DeclareOption{uppersorbian}{\quotemarks@load@lang{sorbian}}
+\DeclareOption{welsh}{\quotemarks@load@lang{welsh}}
+\DeclareOption{UKenglish}{\quotemarks@load@lang{UKenglish}}
+\DeclareOption{USenglish}{\quotemarks@load@lang{USenglish}}
+% \end{macrocode}
+% Load language files for known languages
+% \begin{macrocode}
+\def\qtmk@languages{}
+\@ifpackageloaded{babel}{%
+\@for\qtmk@lang:=acadian,afrikaans,american,australian,austrian,%
+bahasa,basque,brazil,brazilian,breton,british,bulgarian,canadian,%
+canadien,catalan,croatian,czech,danish,dutch,english,%
+estonian,finnish,francais,frenchb,french,galacian,german,germanb,%
+greek,polutonikogreek,hebrew,hungarian,icelandic,irish,italian,%
+lowersorbian,magyar,naustrian,ngerman,norsk,samin,%
+nynorsk,polish,portuges,portuguese,romanian,russian,scottish,%
+serbian,slovak,slovene,spanish,swedish,turkish,ukrainian,welsh,%
+UKenglish,USenglish\do{%
+ \@ifundefined{captions\qtmk@lang}{}{%
+ \ifx\qtmk@languages\@empty
+ \edef\qtmk@languages{\qtmk@lang}%
+ \else
+ \expandafter\toks@\expandafter{\qtmk@languages}%
+ \edef\qtmk@languages{\the\toks@,\qtmk@lang}%
+ \fi
+ }%
+}%
+\expandafter\ExecuteOptions\expandafter{\qtmk@languages}
+}{}
+% \end{macrocode}
+% Process options
+% \begin{macrocode}
+\ProcessOptions
+% \end{macrocode}
+%
+%
+%\subsection{Quotation Marks}
+%\begin{macro}{\elq}
+% Left single quote.
+% \begin{macrocode}
+\ProvideTextCommand{\elq}{OT1}{%
+ \textormath{\textquoteleft}{\mbox{\textquoteleft}}}
+\ProvideTextCommand{\elq}{T1}{%
+ \textormath{\textquoteleft}{\mbox{\textquoteleft}}}
+\ProvideTextCommandDefault{\elq}{\UseTextSymbol{OT1}\elq}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\erq}
+% Right single quote.
+% \begin{macrocode}
+\ProvideTextCommand{\erq}{OT1}{%
+ \textormath{\textquoteright}{\mbox{\textquoteright}}}
+\ProvideTextCommand{\erq}{T1}{%
+ \textormath{\textquoteright}{\mbox{\textquoteright}}}
+\ProvideTextCommandDefault{\erq}{\UseTextSymbol{OT1}\erq}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\elqq}
+% Left double quote.
+% \begin{macrocode}
+\ProvideTextCommand{\elqq}{OT1}{%
+ \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}}
+\ProvideTextCommand{\elqq}{T1}{%
+ \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}}
+\ProvideTextCommandDefault{\elqq}{\UseTextSymbol{OT1}\elqq}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\erqq}
+% Right double quote.
+% \begin{macrocode}
+\ProvideTextCommand{\erqq}{OT1}{%
+ \textormath{\textquotedblright}{\mbox{\textquotedblright}}}
+\ProvideTextCommand{\erqq}{T1}{%
+ \textormath{\textquotedblright}{\mbox{\textquotedblright}}}
+\ProvideTextCommandDefault{\erqq}{\UseTextSymbol{OT1}\erqq}
+% \end{macrocode}
+%\end{macro}
+% Define \cs{flqq}, \cs{frqq},
+% \cs{flq}, \cs{frq}, \cs{glqq}, \cs{grqq},
+% \cs{glq} and \cs{grq} if they don't exist. (This code is copied
+% from \texttt{babel.def}.)
+%\begin{macro}{\glq}
+% German left single quote.
+% \begin{macrocode}
+\ProvideTextCommand{\glq}{OT1}{%
+ \textormath{\quotesinglbase}{\mbox{\quotesinglbase}}}
+\ProvideTextCommand{\glq}{T1}{%
+ \textormath{\quotesinglbase}{\mbox{\quotesinglbase}}}
+\ProvideTextCommandDefault{\glq}{\UseTextSymbol{OT1}\glq}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\grq}
+% German right single quote.
+% \begin{macrocode}
+\ProvideTextCommand{\grq}{T1}{%
+ \textormath{\textquoteleft}{\mbox{\textquoteleft}}}
+\ProvideTextCommand{\grq}{OT1}{%
+ \save@sf@q{\kern-.0125em%
+ \textormath{\textquoteleft}{\mbox{\textquoteleft}}%
+ \kern.07em\relax}}
+\ProvideTextCommandDefault{\grq}{\UseTextSymbol{OT1}\grq}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\glqq}
+% German left double quote.
+% \begin{macrocode}
+\ProvideTextCommand{\glqq}{OT1}{%
+ \textormath{\quotedblbase}{\mbox{\quotedblbase}}}
+\ProvideTextCommand{\glqq}{T1}{%
+ \textormath{\quotedblbase}{\mbox{\quotedblbase}}}
+\ProvideTextCommandDefault{\glqq}{\UseTextSymbol{OT1}\glqq}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\grqq}
+% German right double quote.
+% \begin{macrocode}
+\ProvideTextCommand{\grqq}{T1}{%
+ \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}}
+\ProvideTextCommand{\grqq}{OT1}{%
+ \save@sf@q{\kern-.07em%
+ \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}%
+ \kern.07em\relax}}
+\ProvideTextCommandDefault{\grqq}{\UseTextSymbol{OT1}\grqq}
+% \end{macrocode}
+%\end{macro}
+%Guillemets:
+%\begin{macro}{\flqq}
+% French left double quote.
+% \begin{macrocode}
+\ProvideTextCommand{\flqq}{OT1}{%
+ \textormath{\guillemotleft}{\mbox{\guillemotleft}}}
+\ProvideTextCommand{\flqq}{T1}{%
+ \textormath{\guillemotleft}{\mbox{\guillemotleft}}}
+\ProvideTextCommandDefault{\flqq}{\UseTextSymbol{OT1}\flqq}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\frqq}
+% French right double quote.
+% \begin{macrocode}
+\ProvideTextCommand{\frqq}{OT1}{%
+ \textormath{\guillemotright}{\mbox{\guillemotright}}}
+\ProvideTextCommand{\frqq}{T1}{%
+ \textormath{\guillemotright}{\mbox{\guillemotright}}}
+\ProvideTextCommandDefault{\frqq}{\UseTextSymbol{OT1}\frqq}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\flq}
+% French left single quote.
+% \begin{macrocode}
+\ProvideTextCommand{\flq}{OT1}{%
+ \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}}
+\ProvideTextCommand{\flq}{T1}{%
+ \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}}
+\ProvideTextCommandDefault{\flq}{\UseTextSymbol{OT1}\flq}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\frq}
+% French right single quote.
+% \begin{macrocode}
+\ProvideTextCommand{\frq}{OT1}{%
+ \textormath{\guilsinglright}{\mbox{\guilsinglright}}}
+\ProvideTextCommand{\frq}{T1}{%
+ \textormath{\guilsinglright}{\mbox{\guilsinglright}}}
+\ProvideTextCommandDefault{\frq}{\UseTextSymbol{OT1}\frq}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\textormath}
+% Provide \cs{textormath} if it is not already defined.
+% \begin{macrocode}
+\providecommand*{\textormath}[2]{\ifmmode#2\else#1\fi}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\qt@getcurrentquotes}
+% Gets the left and right quotes for the current level
+% \begin{macrocode}
+\def\qt@getcurrentquotes{%
+ \ifx\qt@mark@list\@empty
+ \ifx\qt@marklist\@empty
+ \def\qt@marklist{{}{}}%
+ \fi
+ \expandafter\toks@\expandafter{\qt@marklist}%
+ \edef\qt@mark@list{\the\toks@,}%
+ \fi
+\expandafter\qt@get@currentquotes\qt@mark@list\@nil
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\qt@get@currentquotes}
+% Strips the current quotes from \cs{qt@mark@list}.
+% \begin{macrocode}
+\def\qt@get@currentquotes#1#2,#3\@nil{%
+ \def\currentleftquote{#1}%
+ \def\currentrightquote{#2}%
+ \def\qt@mark@list{#3}%
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\qt@beginquote}
+% Sets up the start of the quote
+% \begin{macrocode}
+\newcommand{\qt@beginquote}{%
+ \bgroup
+ \qt@getcurrentquotes
+ \let\qt@par=\par
+ \def\par{\qt@endpar\qt@par\qt@startpar}%
+ \currentleftquote
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\qt@endquote}
+% Ends the current quote.
+% \begin{macrocode}
+\newcommand*{\qt@endquote}{%
+ \qt@tmpcount=\spacefactor
+ \currentrightquote
+ \spacefactor=\qt@tmpcount
+ \egroup
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\qt@tmpcount}
+% Define a temporary count register
+% \begin{macrocode}
+\newcount\qt@tmpcount
+% \end{macrocode}
+%\end{macro}
+%\begin{environment}{qt}
+% The environment form
+% \begin{macrocode}
+\newenvironment{qt}{\qt@beginquote}{\qt@endquote}
+% \end{macrocode}
+%\end{environment}
+%\begin{macro}{\tqt}
+% Text-block command. Note that the contents of the argument are
+% grouped.
+% \begin{macrocode}
+\newcommand{\tqt}[1]{\qt@beginquote#1\qt@endquote}
+% \end{macrocode}
+%\end{macro}
+%\subsection{Language definition files}
+%\iffalse
+% \begin{macrocode}
+%</quotmark.sty>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-afrikaans.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-afrikaans}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\erqq},{\glq}{\erq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-afrikaans.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-brazil.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-brazil}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\elqq}{\erqq},{\elq}{\erq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-brazil.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-bulgarian.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-bulgarian}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-bulgarian.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-catalan.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-catalan}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\flqq}{\frqq},{\elqq}{\erqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-catalan.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-croatian.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-croatian}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\elq}{\erq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-croatian.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-czech.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-czech}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\glq}{\grq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-czech.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-danish.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-danish}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\frqq}{\flqq},{\frq}{\flq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-danish.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-dutch.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-dutch}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\erqq},{\glq}{\erq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-dutch.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-estonian.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-estonian}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-estonian.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-finnish.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-finnish}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\erqq}{\erqq},{\erq}{\erq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-finnish.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-frenchb.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-frenchb}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{%
+ {\flqq\nobreak\hspace{0.25em}}{\nobreak\hspace{0.25em}\frqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-frenchb.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-germanb.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-germanb}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\glq}{\grq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-germanb.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-greek.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-greek}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{%
+ {\flqq\nobreak\hspace{1pt}}{\nobreak\hspace{1pt}\frqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-greek.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-hebrew.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-hebrew}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\elqq}{\erqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-hebrew.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-icelandic.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-icelandic}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\glq}{\grq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-icelandic.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-irish.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-irish}[2007/12/11]
+% \end{macrocode}
+% Define quote marks
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{%
+ {\elqq\nobreak\hspace{1pt plus 1pt}}%
+ {\nobreak\hspace{1pt plus 1pt}\erqq},%
+ {\elq\nobreak\hspace{1pt plus 1pt}}%
+ {\nobreak\hspace{1pt plus 1pt}\erq}}%
+ \setparquotemarks{}{\currentleftquote}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-irish.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-italian.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-italian}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{%
+ {\flqq\nobreak\hspace{1pt plus 1pt}}%
+ {\nobreak\hspace{1pt plus 1pt}\frqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-italian.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-magyar.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-magyar}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\frqq}{\flqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-magyar.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-ngermanb.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-ngermanb}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\glq}{\grq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-ngermanb.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-norsk.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-norsk}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\flqq}{\frqq},{\flq}{\frq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-norsk.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-polish.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-polish}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\glq}{\grq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-polish.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-portuges.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-portuges}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\flqq}{\frqq},{\elqq}{\erqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-portuges.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-romanian.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-romanian}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\flqq}{\frqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-romanian.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-russianb.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-russianb}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\flqq}{\frqq},{\glqq}{\grqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-russianb.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-serbian.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-serbian}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\glq}{\grq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-serbian.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-slovak.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-slovak}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\glq}{\grq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-slovak.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-slovene.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-slovene}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\glq}{\grq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-slovene.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-sorbian.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-sorbian}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq},{\glq}{\grq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-sorbian.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-spanish.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-spanish}[2007/12/11]
+% \end{macrocode}
+% Define quote marks
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\flqq}{\frqq},{\elqq}{\erqq}}%
+ \setparquotemarks{}{\currentrightquote}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-spanish.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-swedish.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-swedish}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\erqq}{\erqq},{\erq}{\erq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-swedish.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-swiss.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-swiss}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\newcommand*{\quotemarksswiss}{%
+ \setquotemarks{{\flqq}{\frqq},{\flq}{\frq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\@ifpackageloaded{babel}{%
+\@ifundefined{\captionsfrancais}{}{%
+ \addto\captionsfrancais{\quotemarksswiss}}%
+\@ifundefined{\captionsfrench}{}{%
+ \addto\captionsfrench{\quotemarksswiss}}%
+\@ifundefined{\captionsfrenchb}{}{%
+ \addto\captionsfrenchb{\quotemarksswiss}}%
+\@ifundefined{\captionsgerman}{}{%
+ \addto\captionsgerman{\quotemarksswiss}}%
+\@ifundefined{\captionsgermanb}{}{%
+ \addto\captionsgermanb{\quotemarksswiss}}%
+\@ifundefined{\captionsngerman}{}{%
+ \addto\captionsngerman{\quotemarksswiss}}%
+\@ifundefined{\captionsitalian}{}{%
+ \addto\captionsitalian{\quotemarksswiss}}%
+}{\quotemarksswiss}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-swiss.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-turkish.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-turkish}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{%
+ {\glqq\nobreak\hspace{0pt plus 1pt}}%
+ {\nobreak\hspace{0pt plus 1pt}\grqq},%
+ {\glq\nobreak\hspace{0pt plus 1pt}}%
+ {\nobreak\hspace{0pt plus 1pt}\grq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-turkish.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-UKenglish.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-UKenglish}[2007/12/11]
+% \end{macrocode}
+% Define quote marks
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\elq}{\erq},{\elqq}{\erqq}}%
+ \setparquotemarks{}{\currentleftquote}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-UKenglish.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-ukraineb.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-ukraineb}[2007/12/11]
+% \end{macrocode}
+% Define quote marks. I don't know the correct settings for
+% \cs{setparquotemarks} so I shall leave them blank until I
+% am told otherwise.
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\glqq}{\grqq}}%
+ \setparquotemarks{}{}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-ukraineb.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-USenglish.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-USenglish}[2007/12/11]
+% \end{macrocode}
+% Define quote marks
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{{\elqq}{\erqq},{\elq}{\erq}}%
+ \setparquotemarks{}{\currentleftquote}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-USenglish.def>
+% \end{macrocode}
+%\fi
+%\iffalse
+% \begin{macrocode}
+%<*quotmark-welsh.def>
+% \end{macrocode}
+%\fi
+% \begin{macrocode}
+\ProvidesFile{quotmark-welsh}[2007/12/11]
+% \end{macrocode}
+% Define quote marks
+% \begin{macrocode}
+\@namedef{quotemarks\CurrentOption}{%
+ \setquotemarks{%
+ {\elq\nobreak\hspace{1pt plus 1pt}}%
+ {\nobreak\hspace{1pt plus 1pt}\erq},%
+ {\elqq\nobreak\hspace{1pt plus 1pt}}%
+ {\nobreak\hspace{1pt plus 1pt}\erqq}}%
+ \setparquotemarks{}{\currentleftquote}}
+% \end{macrocode}
+% Add quote marks to captions.
+% \begin{macrocode}
+\setlanguagequotemarks{\CurrentOption}
+% \end{macrocode}
+%\iffalse
+% \begin{macrocode}
+%</quotmark-welsh.def>
+% \end{macrocode}
+%\fi
+%\Finale
+\endinput
diff --git a/macros/latex/contrib/quotmark/quotmark.ins b/macros/latex/contrib/quotmark/quotmark.ins
new file mode 100644
index 0000000000..819182006d
--- /dev/null
+++ b/macros/latex/contrib/quotmark/quotmark.ins
@@ -0,0 +1,103 @@
+% quotmark.ins generated using makedtx version 0.94b 2007/12/19 14:42
+\input docstrip
+
+\preamble
+
+ quotmark.dtx
+ Copyright 2007 Nicola Talbot
+
+ This work may be distributed and/or modified under the
+ conditions of the LaTeX Project Public License, either version 1.3
+ of this license of (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 Nicola Talbot.
+
+ This work consists of the files quotmark.dtx and quotmark.ins and the derived files quotmark.sty, quotmark-afrikaans.def, quotmark-brazil.def, quotmark-bulgarian.def, quotmark-catalan.def, quotmark-croatian.def, quotmark-czech.def, quotmark-danish.def, quotmark-dutch.def, quotmark-estonian.def, quotmark-finnish.def, quotmark-frenchb.def, quotmark-germanb.def, quotmark-greek.def, quotmark-hebrew.def, quotmark-icelandic.def, quotmark-irish.def, quotmark-italian.def, quotmark-magyar.def, quotmark-ngermanb.def, quotmark-norsk.def, quotmark-polish.def, quotmark-portuges.def, quotmark-romanian.def, quotmark-russianb.def, quotmark-serbian.def, quotmark-slovak.def, quotmark-slovene.def, quotmark-sorbian.def, quotmark-spanish.def, quotmark-swedish.def, quotmark-swiss.def, quotmark-turkish.def, quotmark-UKenglish.def, quotmark-ukraineb.def, quotmark-USenglish.def, quotmark-welsh.def.
+
+\endpreamble
+
+\askforoverwritefalse
+
+\generate{\file{quotmark.sty}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark.sty,package}}
+\file{quotmark-afrikaans.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-afrikaans.def,package}}
+\file{quotmark-brazil.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-brazil.def,package}}
+\file{quotmark-bulgarian.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-bulgarian.def,package}}
+\file{quotmark-catalan.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-catalan.def,package}}
+\file{quotmark-croatian.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-croatian.def,package}}
+\file{quotmark-czech.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-czech.def,package}}
+\file{quotmark-danish.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-danish.def,package}}
+\file{quotmark-dutch.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-dutch.def,package}}
+\file{quotmark-estonian.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-estonian.def,package}}
+\file{quotmark-finnish.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-finnish.def,package}}
+\file{quotmark-frenchb.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-frenchb.def,package}}
+\file{quotmark-germanb.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-germanb.def,package}}
+\file{quotmark-greek.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-greek.def,package}}
+\file{quotmark-hebrew.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-hebrew.def,package}}
+\file{quotmark-icelandic.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-icelandic.def,package}}
+\file{quotmark-irish.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-irish.def,package}}
+\file{quotmark-italian.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-italian.def,package}}
+\file{quotmark-magyar.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-magyar.def,package}}
+\file{quotmark-ngermanb.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-ngermanb.def,package}}
+\file{quotmark-norsk.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-norsk.def,package}}
+\file{quotmark-polish.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-polish.def,package}}
+\file{quotmark-portuges.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-portuges.def,package}}
+\file{quotmark-romanian.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-romanian.def,package}}
+\file{quotmark-russianb.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-russianb.def,package}}
+\file{quotmark-serbian.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-serbian.def,package}}
+\file{quotmark-slovak.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-slovak.def,package}}
+\file{quotmark-slovene.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-slovene.def,package}}
+\file{quotmark-sorbian.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-sorbian.def,package}}
+\file{quotmark-spanish.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-spanish.def,package}}
+\file{quotmark-swedish.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-swedish.def,package}}
+\file{quotmark-swiss.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-swiss.def,package}}
+\file{quotmark-turkish.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-turkish.def,package}}
+\file{quotmark-UKenglish.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-UKenglish.def,package}}
+\file{quotmark-ukraineb.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-ukraineb.def,package}}
+\file{quotmark-USenglish.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-USenglish.def,package}}
+\file{quotmark-welsh.def}{\usepreamble\defaultpreamble
+\usepostamble\defaultpostamble\from{quotmark.dtx}{quotmark-welsh.def,package}}
+}
+
+\endbatchfile