From 4c112777c49cfb407c74d33e498cbe518f9855f1 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 24 Apr 2017 21:27:53 +0000 Subject: langsci (24apr17) git-svn-id: svn://tug.org/texlive/trunk@44027 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/xelatex/langsci/README.md | 18 +- Master/texmf-dist/doc/xelatex/langsci/avm.sty | 184 +++++ .../xelatex/langsci/documentation/langsci-doc.tex | 67 +- .../xelatex/langsci/examples/samplemonograph.tex | 5 +- .../doc/xelatex/langsci/examples/samplevolume.tex | 4 +- Master/texmf-dist/doc/xelatex/langsci/jambox.sty | 93 +++ .../langsci/biblatex-langsci-unified-undecap.bbx | 564 +++++++++++++++ .../xelatex/langsci/biblatex-langsci-unified.bbx | 4 +- .../tex/xelatex/langsci/biblatex-sp-unified.bbx | 564 +++++++++++++++ .../tex/xelatex/langsci/langsci-basic.sty | 16 +- .../tex/xelatex/langsci/langsci-colors.def | 4 +- .../tex/xelatex/langsci/langsci-forest-setup.sty | 88 ++- .../tex/xelatex/langsci/langsci-gb4e.sty | 6 +- .../tex/xelatex/langsci/langsci-glyphs.sty | 29 + .../tex/xelatex/langsci/langsci-linguex.sty | 441 ++++++++++++ .../tex/xelatex/langsci/langsci-optional.sty | 146 +++- .../tex/xelatex/langsci/langsci-series.def | 8 +- .../tex/xelatex/langsci/langsci-subparts.sty | 22 + .../tex/xelatex/langsci/langsci-tbls.sty | 90 +++ .../texmf-dist/tex/xelatex/langsci/langscibook.cls | 775 +++++++++++---------- .../tex/xelatex/langsci/sp-authoryear-comp.cbx | 289 ++++++++ .../texmf-dist/tex/xelatex/langsci/tbls-book.eps | Bin 229046 -> 2837 bytes .../texmf-dist/tex/xelatex/langsci/tbls-bulb.eps | Bin 227862 -> 3021 bytes .../texmf-dist/tex/xelatex/langsci/tbls-glass.eps | Bin 228458 -> 2763 bytes Master/texmf-dist/tex/xelatex/langsci/tbls-law.eps | Bin 237930 -> 3420 bytes 25 files changed, 2979 insertions(+), 438 deletions(-) create mode 100755 Master/texmf-dist/doc/xelatex/langsci/avm.sty create mode 100644 Master/texmf-dist/doc/xelatex/langsci/jambox.sty create mode 100644 Master/texmf-dist/tex/xelatex/langsci/biblatex-langsci-unified-undecap.bbx create mode 100644 Master/texmf-dist/tex/xelatex/langsci/biblatex-sp-unified.bbx create mode 100644 Master/texmf-dist/tex/xelatex/langsci/langsci-glyphs.sty create mode 100644 Master/texmf-dist/tex/xelatex/langsci/langsci-linguex.sty create mode 100644 Master/texmf-dist/tex/xelatex/langsci/langsci-subparts.sty create mode 100644 Master/texmf-dist/tex/xelatex/langsci/sp-authoryear-comp.cbx (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/xelatex/langsci/README.md b/Master/texmf-dist/doc/xelatex/langsci/README.md index ab936dbe555..73397b3ac59 100644 --- a/Master/texmf-dist/doc/xelatex/langsci/README.md +++ b/Master/texmf-dist/doc/xelatex/langsci/README.md @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Project: langsci %% Author: Language Science Press (http://langsci-press.org) -%% Date: 2016-05-10 11:11:11 UTC +%% Date: 2017-04-24 11:11:11 UTC %% Purpose: publishing boks with Language Science Press. %% Languages: LaTeX, tikz, eps %% Copyright 2012- Language Science Press @@ -22,15 +22,18 @@ %% - series.def: metadata for series %% - colors.def: colors used by the series %% - langsci-basic.sty for commands required by the standard template -%% - bib style definitions langsci-unified.bst, biblatex-langsci-unified.bbx, langsci-authoryear-comp.cbx -%% - files for the logos used in the textbook series Textbooks in Language Sciences: book.eps bulb.eps glass.eps law.eps +%% - bib style definitions langsci-unified.bst, biblatex-langsci-unified.bbx, langsci-authoryear-comp.cbx, biblatex-langsci-unified-undecap.bbx +%% - files for the logos used in the textbook series Textbooks in Language Sciences: tbls-book.eps tbls-bulb.eps tbls-glass.eps tbls-law.eps %% - the file logo.pdf as a dummy, to be replaced with a file for the hosting institution %% - a file advertisement.tex added to the very last page in tikz %% - langsci-optional.sty: additional useful commands %% - langsci-gb4e.sty and langsci-cgloss.sty: typeset linguistic examples %% - langsci-forest-setup.sty: definitions for linguistic trees %% - langsci-bidi.sty: bidirectional text -%% - langsci-tbls.sty: macros for the textbook series Textbooks in Language Sciences +%% - langsci-tbls.sty: macros for the textbook series Textbooks in Language Sciencesjambox.sty +%% - langsci-glyphs.sty: some workarounds for Libertine font limitations +%% - langsci-linguex.sty: a version of linguex which does not break gb4e +%% - langsci-subparts.sty: adds an additional sectioning level between part and chapter %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -48,10 +51,13 @@ The main file is the file langscibook.cls. This defines the basic structure of t The following optional packages are also provided, but have to be included manually if desired: - `langsci-optional.sty`: additional useful commands -- `langsci-gb4e.sty` and langsci-cgloss.sty typeset linguistic examples +- `langsci-gb4e.sty` and `langsci-cgloss.sty` typeset linguistic examples +- `langsci-linguex.sty`: a version of linguex which does not break gb4e - `langsci-forest-setup.sty`: definitions for linguistic trees - `langsci-bidi.sty`: bidirectional text -- `langsci-tbls.sty`: macros for the textbook series Textbooks in Language Sciences +- `langsci-tbls.sty`: macros for the textbook series Textbooks in Language Sciences +- `langsci-glyphs.sty`: some shortcuts for font workarounds +- `langsci-subparts.sty`: adds an additional sectioning level between part and chapter Documentation is found in the folder `documentation/`. diff --git a/Master/texmf-dist/doc/xelatex/langsci/avm.sty b/Master/texmf-dist/doc/xelatex/langsci/avm.sty new file mode 100755 index 00000000000..03e57511cfe --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/langsci/avm.sty @@ -0,0 +1,184 @@ +%% avm.sty - a style file for attribute-value matrices +%% Copyright 1992, 1993, 2006, 2013 Christopher Manning (manning@cs.stanford.edu) +% +% v 1.00 mar 29, 1992 +% v 1.01 dec 6, 1993 +% v 1.02 jan 5, 2006 +% v 1.03 dec 8, 2013 +% +% 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. +% +% This work has the LPPL maintenance status `maintained'. +% +% The Current Maintainer of this work is Christopher Manning. +% +% This work consists of the files avm.sty, avm-doc.tex, avm-test.tex. + +\newif\ifavmactive\newif\ifavmsorted\newif\ifavmlabeled +\newif\ifavmcenter\newif\ifavmbottom +\newif\ifavmbottomright\newif\ifavmtopleft\newif\ifavmtopright + +\newdimen\avmdimen +\newbox\avmboxone\newbox\avmboxthree + +\def\avmoptions#1{\avmactivefalse\avmsortedfalse\avmlabeledfalse + \avmcenterfalse\avmbottomfalse + \avmbottomrightfalse\avmtopleftfalse\avmtoprightfalse + \def\more{#1}\ifx\more\empty\else\avmjoptions#1,\@nil\fi} +\def\avmjoptions#1,#2\@nil{\def\more{#2}\csname avm#1true\endcsname + \ifx\more\empty\else\avmjoptions#2\@nil\fi} + + +\def\avmfont#1{\def\avmjfont{#1}} +\def\avmjfont{} + +\def\avmvalfont#1{\def\avmjvalfont{#1}} +\def\avmjvalfont{} + +\def\avmsortfont#1{\def\avmjsortfont{#1}} +\def\avmjsortfont{} + +\def\avmhskip#1{\def\avmjhskip{#1}} +\def\avmjhskip{1em} + +\def\avmbskip#1{\def\avmjbskip{#1}} +\def\avmjbskip{0em} + +\def\avmvskip#1{\def\avmjvskip{#1}} +\def\avmjvskip{0.385ex}%was .3875 + + +\def\avmjprolog#1{$\mskip-\thinmuskip + \left#1\hskip\avmjbskip\vcenter\bgroup\vskip\avmjvskip + \ialign\bgroup\avmjfont + \strut ##\unskip\hfil + &&\hskip\avmjhskip\avmjvalfont ##\unskip\hfil\cr} +\def\avmjpostlog#1{\crcr\egroup\vskip\avmjvskip\egroup + \hskip\avmjbskip\right#1\mskip-\thinmuskip$\ignorespaces} + + +\def\avmjcatcode{\let\lparen=(\let\rparen=)\catcode`\[=13\catcode`\]=13 + \catcode`\<=13\catcode`\@=13\catcode`\(=13\catcode`\)=13 + \catcode`\>=13\catcode`\|=13} + +{\avmjcatcode % new group: redefine above catcodes as active + +\gdef\specialavm{\avmjcatcode +\def({\avmjprolog\lparen}% +\def){\avmjpostlog\rparen}% +\def<{\avmjprolog\langle}% +\def>{\avmjpostlog\rangle}% +\ifavmsorted +\def[##1{\setbox\avmboxthree=\hbox{\avmjsortfont##1\/}\setbox2=\hbox + \bgroup\avmjprolog\lbrack}% +\def]{\avmjpostlog\rbrack\egroup\avmjsort}% +\else\ifavmlabeled +\def[##1{\def\more{##1}\setbox2=\hbox\bgroup\avmjprolog[}% +\def]{\avmjpostlog]\egroup\node{\more}{\box2}}% +\else +\def[{\avmjprolog\lbrack}% +\def]{\avmjpostlog\rbrack}% +\fi\fi +% +\def\<{$\langle$}\def\>{$\rangle$}% +\def\({\lparen} +\def\){\rparen}% +\def\[{\lbrack} +\def\]{\rbrack}% +\def|{$\,\vert\,$}% +\def@##1{\avmbox{##1}}% +} % end defn of \specialavm +} % restore active catcodes + + +\long\def\avm{\begingroup +\ifavmactive\specialavm +\else +\def\({\avmjprolog(}% +\def\){\avmjpostlog)}% +\def\<{\avmjprolog\langle}% +\def\>{\avmjpostlog\rangle}% +% +\ifavmsorted +\def\[##1{\setbox\avmboxthree=\hbox{\avmjsortfont##1\/}\setbox + 2=\hbox\bgroup\avmjprolog[}% +\def\]{\avmjpostlog]\egroup\avmjsort}% +\else\ifavmlabeled +\def\[##1{\def\more{##1}\setbox2=\hbox\bgroup\avmjprolog[}% +\def\]{\avmjpostlog]\egroup\node{\more}{\box2}}% +\else +\def\[{\avmjprolog[}% +\def\]{\avmjpostlog]}% +\fi\fi +% +\def\|{$\,\vert\,$}% +\def\@##1{\avmbox{##1}}% +\fi % end not active +% +\ifx\LaTeX\undefined\def\\{\cr}% running under TeX +\else \ifx\@tabularcr\relax +\def\\{\@arraycr}% fix for the Mainz array package +\else +\def\\{\@tabularcr}% Leverage off LaTeX's \\*[dimen] options +\fi +\fi +\def\!{\node}% +\long\def\avmjsort{\dimen2=\ht2\advance\dimen2 by -.25\baselineskip + \global\dimen\avmdimen=\wd\avmboxthree + \ifavmtopleft \raise\dimen2\llap{\box\avmboxthree}\box2% + \else\ifavmtopright \box2\raise\dimen2\box\avmboxthree + \else\ifavmbottomright \box2\lower\dimen2\box\avmboxthree + \else \lower\dimen2\llap{\box\avmboxthree}\box2% + \fi\fi\fi}% +\long\def\sort##1##2{\setbox2=\hbox{##2}\setbox + \avmboxthree=\hbox{\avmjsortfont##1\/}\dimen2=\ht2% + \advance\dimen2 by -.25\baselineskip + \ifavmtopleft \raise\dimen2\box\avmboxthree\box2% + \else\ifavmtopright \box2\raise\dimen2\box\avmboxthree% + \else\ifavmbottomright \box2\lower\dimen2\box\avmboxthree% + \else \lower\dimen2\box\avmboxthree\box2% + \fi\fi\fi}% +\long\def\osort##1##2{\setbox2=\hbox{##2}\setbox + \avmboxthree=\hbox{\avmjsortfont ##1\/}\avmjsort}% +\def\asort##1{\avmspan{\avmjsortfont ##1}\\}% +\def\avml{\avmjprolog.}% +\def\avmr{\avmjpostlog.}% +\def\avmb##1{\node{##1}{\lbrack\;\rbrack}}% +\def\avmd##1{\node{##1}{---}}% +\def\q##1{\ifx ##1\{$\lbrace$\else + \ifx ##1\}$\rbrace$\else + \ifx ##1<$\langle$\else + \ifx ##1>$\rangle$\fi \fi \fi \fi}% +\def\{{\avmjprolog\lbrace}% +\def\}{\avmjpostlog\rbrace}% +\def\;{\hskip\avmjhskip}% +\def\avmspan##1{\multispan2\strut ##1\expandafter\hfil}% +\avmjfont +\openup\avmjvskip +\setbox\avmboxone=\hbox\bgroup\ignorespaces +} % end defn of \avm + + +\def\endavm{\egroup\ifvmode\leavevmode\fi % this if is useful! + \ifavmsorted\null\hskip\dimen\avmdimen\fi + \ifavmcenter + \box\avmboxone + \else \ifavmbottom + \lower.575\baselineskip\hbox{\vbox{\box\avmboxone\null}}% + \else +% the next bit is ripped off from Emma's \evnup in lingmacros.sty + \dimen2=\ht\avmboxone\advance\dimen2 by -.725\baselineskip + \lower\dimen2\box\avmboxone +\fi \fi \endgroup} + + +% based on TeXbook exercise 21.3 +\def\avmbox#1{\setbox2=\hbox{$\scriptstyle #1$}\lower.2ex\vbox{\hrule + \hbox{\vrule\kern1.25pt + \vbox{\kern1.25pt\box2\kern1.25pt}\kern1.25pt\vrule}\hrule}} diff --git a/Master/texmf-dist/doc/xelatex/langsci/documentation/langsci-doc.tex b/Master/texmf-dist/doc/xelatex/langsci/documentation/langsci-doc.tex index cd0090f84a5..5255a5e256a 100644 --- a/Master/texmf-dist/doc/xelatex/langsci/documentation/langsci-doc.tex +++ b/Master/texmf-dist/doc/xelatex/langsci/documentation/langsci-doc.tex @@ -1,7 +1,6 @@ \documentclass[% -modfonts, output=guidelines, -guidelines]{langscibook} +guidelines]{../langscibook} \author{Sebastian Nordhoff} \title{The \texttt{langscibook} {\LaTeX} class} \subtitle{} @@ -41,7 +40,7 @@ This document describes the {\LaTeX} class langscibook.cls. This class is used f \chapter{The class} The class is loaded via \verb+\documentclass{langscibook}+. The standard use case is the creation of a book. If used without an \texttt{output=} option, the option \texttt{output=book} is loaded. The class can also be used to create dust jackets for books with different measurements via the output option values \texttt{covercreatespace} (for \url{http://www.createspace.com}) and -\texttt{coverbod} (for \url{http://www.bod.de}). +\texttt{coverbodsc/coverbodhc} (for \url{http://www.bod.de}). The class provides for the following: \begin{itemize} @@ -78,6 +77,9 @@ A couple of additional style files come with the class. Documents using this cla % \item \texttt{langsci-lgr.sty}: \item \texttt{langsci-tbls.sty}: Package for the textbook series Textbooks in Language Sciences \item \texttt{langsci-bidi.sty}: Package for typesetting right-to-left text +% \item \texttt{langsci-glyphs.sty}: some shortcuts for font workarounds +% \item \texttt{langsci-subparts.sty}: adds an additional sectioning level between part and chapter + \end{itemize} \section{Colors and series definitions} @@ -87,7 +89,7 @@ The metadata for Language Science Press book series are stored in the file \text The easiest way to start a book is to download the skeletons from \url{http://langsci-press.org/templatesAndTools}. Sample documents for monographs, edited volumes and chapters in edited volumes are provided in the folder \texttt{samples/} as well. \section{Creating a monograph} -Load the class. Make sure the following metadata values are set, either as options or with the metadata commands listed in \sectref{sec:metadatacommands}: +Load the class. Make sure the following metadata values are set with the metadata commands listed in \sectref{sec:metadatacommands}: \begin{itemize} \item author @@ -115,7 +117,7 @@ Provide the following additional information if necessary: \section{Creating an edited volume} -Proceed as for a monograph, but use the option \texttt{collection}. Use \verb+\author+ for the editor(s). You may want to use the further options \texttt{collectionchapter} and \texttt{collectiontoclong}. Chapters are included via \verb+\includepaper{}+. Set the bibliography resource for all papers in the main file. +Proceed as for a monograph, but use the option \texttt{collection}. Use \verb+\author+ for the editor(s). Use the option \texttt{multiauthors} if there is more than one editor. You may want to use the further options \texttt{collectionchapter} and \texttt{collectiontoclong}. Chapters are included via \verb+\includepaper{}+. Set the bibliography resource for all papers in the main file. \section{Creating a paper for an edited volume} @@ -126,15 +128,14 @@ Use the output option \texttt{paper}. Provide the following metadata in the prea \item \verb+\abstract+ (optional) \end{itemize} -You might want to redefine \verb+\rohead+ for chapters with very long titles. +You might want to use \verb+\shorttitlerunninghead+ for chapters with very long titles. \chapter{Creating a dust jacket} -Use the option \texttt{coverbod} or \texttt{covercreatespace}. Set the lengths \verb+\bodspine+ and \verb+\csspine+. For \texttt{covercreatespace} set the further output option \texttt{coverus} if desired. Run {\XeLaTeX} twice. Upload to the respective websites to see whether the lengths were chosen correctly. +Use the option \texttt{coverbodhc}, \texttt{coverbodsc} or \texttt{covercreatespace} and set the option \texttt{spinewidth}. Run {\XeLaTeX} twice. Upload to the respective websites to see whether the lengths were chosen correctly. \chapter{Options} -The class has flag options to toggle certain behaviour and string options to set metadata values. -The metadata values can all also be set via the metadata commands listed in \sectref{sec:metadatacommands}. +The class has flag options to toggle certain behaviour and string options to set metadata values. \section{Flag options} % \option{blackandwhite} @@ -143,39 +144,36 @@ The metadata values can all also be set via the metadata commands listed in \sec % \option{smallfont} % use 10pt as fontsize % {false -\option{draftmode}{Switch to draft mode (adds: draft stamp, indication of overlong lines, date)}{false} -\option{openreview}{Switch to open review mode}{false} % \option{noindex} % remove index} % {false -\option{nonflat}{Use elaborate directory structure. If set to true, fonts, packages etc will be loaded from subfolders. If set to false, they will be loaded from the working directory}{false} -\option{modfonts}{Use modified fonts provided by Language Science Press}{false} -\option{showindex}{Show indexed terms in margin}{false} \option{biblatex}{Use Bib\LaTeX}{true} \option{bibtex}{Use Bibtex}{false} -\option{newtxmath}{Switch math fonts to newtxmath}{false} \option{collection}{Make the book an edited volume}{false} \option{collectionchapter}{Add numeric chapter prefix to each contribution.}{false} -\option{collectiontoclong}{More detailed table of content in edited volumes}{false} -\option{coverus}{Use \texttt{isbnsoftcoverus} instead of \texttt{isbnsoftcover} if \texttt{output=covercreatespace}}{false} - -\section{String options} -\option{number}{Number of the book within the series}{"??"} -\option{issn}{ISSN of the series this book will appear in}{"??"} -\option{isbndigital}{The ISBN of the digital release}{"000-0-000000-00-0"} -\option{isbnsoftcover}{The ISBN of the soft cover release}{"000-0-000000-00-0"} -\option{isbnsoftcoverus}{The ISBN of the US version of soft cover release (used for distribution to US academic institutions)}{"000-0-000000-00-0"} -\option{isbnhardcover}{The ISBN of the hard cover release}{"000-0-000000-00-0"} -\option{url}{The URL of the book }{"http://langsci-press.org/catalog"} -\option{series}{The series code (see \texttt{series.def} for a list of acronyms)}{"eotms"} +\option{collectiontoclong}{More detailed table of content in edited volumes}{false} +\option{draftmode}{Switch to draft mode (adds: draft stamp, indication of overlong lines, date)}{false} +\option{openreview}{Switch to open review mode}{false} +\option{modfonts}{Use modified fonts provided by Language Science Press}{false} +\option{multiauthors}{Set editor suffix to eds. instead of ed.}{false} +\option{newtxmath}{Switch math fonts to newtxmath}{false} +\option{nobabel}{Do not use the Babel package in the class}{false} +\option{nonflat}{Use elaborate directory structure. If set to true, fonts, packages etc will be loaded from subfolders. If set to false, they will be loaded from the working directory}{false} +\option{showindex}{Show indexed terms in margin}{false} +\option{smallfont}{Use a smaller font for books above 500 pages}{false} +\option{undecapitalize}{Do not decapitalize titles in the list of references}{false} + +\section{String options} \option{output}{Different output formats}{book} \begin{itemize} \item \texttt{book}: The book with frontcover and backcover \item \texttt{inprep}: Mark manuscript as in preparation \item \texttt{paper}: Contribution to edited volume \item \texttt{guidelines}: Choose color grey; condense frontmatter -\item \texttt{coverbod}: Create a two-page wide cover (back-spine-front) for use with BoD +\item \texttt{coverbodsc}: Create a two-page wide cover (back-spine-front) for use with BoD hardcover books +\item \texttt{coverbodsc}: Create a two-page wide cover (back-spine-front) for use with BoD softcover books \item \texttt{covercreatespace}: Create a two-page wide cover (back-spine-front) for use with CreateSpace +\item \texttt{spinewidth}{The width of the spine (for cover creation)} \end{itemize} \option{copyright}{The license chosen}{"CC-BY"} \option{biblatexbackend}{The backend of BibLaTeX}{"bibtex"} @@ -205,7 +203,7 @@ Alternative: \texttt{biber} \section{Metadata commands}\label{sec:metadatacommands} -The following commands are used to indicated metadata. These commands can override the options passed to the class. +The following commands are used to indicated metadata. \option{$\backslash$BackBody}{Text to be printed on the back cover}{Europan lingues es membres del sam familie. Lor separat existentie es un myth. Por scientie, musica, sport etc, litot Europa usa li sam vocabular. Li lingues differe solmen in li grammatica, li pronunciation e li plu commun vocabules. Omnicos directe al desirabilite de un nov lingua franca: On refusa continuar payar custosi traductores.} @@ -218,7 +216,7 @@ myth. Por scientie, musica, sport etc, litot Europa usa li sam vocabular. Li lin \option{$\backslash$ISBNsoftcover}{ISBN for the softcover version}{000-0-000000-00-0} \option{$\backslash$ISBNsoftcoverus}{ISBN for the softcover version (US distribution)}{000-0-000000-00-0} \option{$\backslash$Series}{The series this book appears in. Use the acronyms found in \texttt{series.def}}{eotms} -\option{$\backslash$SeriesNumber}{Number of the book in the series}{??} +\option{$\backslash$SeriesNumber}{Position of the book in its series}{??} \option{$\backslash$URL}{The URL where this title can be downloaded}{http://langsci-press.org/catalog} @@ -231,15 +229,14 @@ The following commands allow to override further default settings: \section{Command redefinitions} Redefine the following commands to further alter the appearance: -\option{$\backslash$lsAdvertisement}{specify the advertisement on the last page of the book}{$\backslash$include\{$\backslash$logopath didyoulikethisbook\}} +\option{$\backslash$lsAdvertisement}{Specify the advertisement on the last page of the book}{$\backslash$include\{$\backslash$logopath didyoulikethisbook\}} \option{$\backslash$lsBackBodyFont}{Font used for text on back cover}{\textrm{main font}} \option{$\backslash$lsBackTitleFont}{Font used for title on back cover}{$\backslash$sffamily$\backslash$addfontfeatures{Scale=MatchUppercase}\\$\backslash$fontsize\{25pt\}\{10mm\}$\backslash$selectfont} \option{$\backslash$lsCopyright}{Choice of licence}{CC-BY} \option{$\backslash$lsCoverAuthorFont}{Font for author/editor on cover}{$\backslash$fontsize\{25pt\}\{12.5mm\}$\backslash$selectfont} -\option{$\backslash$lsCoverSubTitleFont}{Font for the subtitle}{$\backslash$sffamily$\backslash$addfontfeatures\{Scale=MatchUppercase\}\\ -$\backslash$fontsize\{25pt\}\{10mm\}$\backslash$selectfont} -% \option{$\backslash$lsCoverTitleFont -\option{$\backslash$lsEditorPrefix}{How editors are indicated on title page. Useful for localization.}{{$\backslash$LARGE Edited by}\\} +\option{$\backslash$lsCoverSubTitleFont}{Font for the subtitle}{$\backslash$sffamily$\backslash$addfontfeatures\{Scale=MatchUppercase\}\\ $\backslash$fontsize\{25pt\}\{10mm\}$\backslash$selectfont} +\option{$\backslash$lsCoverTitleFont}{Font for the title}{$\backslash$sffamily$\backslash$addfontfeatures{Scale=MatchUppercase}\\ $\backslash$fontsize{52pt}{17.25mm}$\backslash$selectfont} +\option{$\backslash$lsEditorPrefix}{How editors are indicated on title page. Useful for localization.}{{$\backslash$LARGE Edited by$\backslash$$\backslash$}} \option{$\backslash$lsFontsize}{size of main font}{11pt} \option{$\backslash$lsImpressumCitationText}{custom citation text, useful for including notes etc.}{\textrm{computed from author and title fields}} \option{$\backslash$lsISSN}{ISSN of the series}{??} diff --git a/Master/texmf-dist/doc/xelatex/langsci/examples/samplemonograph.tex b/Master/texmf-dist/doc/xelatex/langsci/examples/samplemonograph.tex index 5cc60836589..dbb890b197f 100644 --- a/Master/texmf-dist/doc/xelatex/langsci/examples/samplemonograph.tex +++ b/Master/texmf-dist/doc/xelatex/langsci/examples/samplemonograph.tex @@ -13,10 +13,7 @@ \dedication{For Mom and Dad} \typesetter{Jane Doe} \proofreader{John Doe} -\BackBody{What everyone should know about monographs: it's here} - -\setlength{\csspine}{25.0559784mm} -\setlength{\bodspine}{20mm} +\BackBody{What everyone should know about monographs: it's here} \bibliography{localbibliography} \begin{document} diff --git a/Master/texmf-dist/doc/xelatex/langsci/examples/samplevolume.tex b/Master/texmf-dist/doc/xelatex/langsci/examples/samplevolume.tex index e912be8bcad..633e8375b83 100644 --- a/Master/texmf-dist/doc/xelatex/langsci/examples/samplevolume.tex +++ b/Master/texmf-dist/doc/xelatex/langsci/examples/samplevolume.tex @@ -1,8 +1,6 @@ \documentclass[output=book ,collection - ,collectionchapter - ,collectiontoclongg - ,biblatex + ,collectionchapter ]{langscibook} \author{Jane Doe} diff --git a/Master/texmf-dist/doc/xelatex/langsci/jambox.sty b/Master/texmf-dist/doc/xelatex/langsci/jambox.sty new file mode 100644 index 00000000000..ccf65af5762 --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/langsci/jambox.sty @@ -0,0 +1,93 @@ +%%%%%%%%%%%%%%%%%% JAMBOX: RIGHT-COLUMN ANNOTATIONS %%%%%%%%%%%%%%%% +% +% Alexis Dimitriadis +% +% This is version 0.3 (informal release, Nov. 2003). +% +% Line up material a fixed distance from the right margin. For annotating +% example sentences, usually with a short note in parentheses. +% May overflow to the left or right, or line up on the next line as necessary. +% +% \jambox[width]{text} Align 'text' starting 'width' distance from the +% right margin (default \the\jamwidth). +% \jam(something) Align a note delimited by parentheses (which are +% retained). No optional argument. +% \jambox*{text} Set \jamwidth to the width of 'text', then align it. +% (\jamwidth stays set for the rest of the environment). +% +% Notes: +% +% Distance from the right margin can be set to an explicit amount, or to the +% width of some piece of text, as follows: +% +% \jamwidth=2in\relax Or +% \settowidth\jamwidth {(``annotation'')} +% +% \jamwidth is locally scoped, so it can be set globally or inside an example +% environment. +% +% BUG: Not compatible with ragged-right mode. +% +% Incompatibilities: Not useful with the vanilla cgloss4e.sty, which ends +% glossed lines prematurely. +% I do have a suitably modified file, cgloss.sty. With it you can do the +% following: +% \gll To kimeno. \\ +% the text \\ \jambox{(Greek)} +% \trans `The text.' + + +\newdimen\jamwidth \jamwidth=2in +\def\jambox{\@ifnextchar[{\@jambox} + {\@ifnextchar*{\@jamsetbox}{\@jambox[\the\jamwidth]}}} + +% Quickie invocation: The argument is delimited by the parentheses (no width +% argument allowed). I redefine it in my documents to add formatting. +% Syntax: \jam(Some note) +% +\def\jam(#1){\jambox{(#1)}} + +% Set width AND display the argument. +% The star is read and ignored; the argument #1 is boxed, used to set +% \jamwidth, then passed to \@jambox (which also puts it in \@tempboxa!) +% +\def\@jamsetbox*#1{\setbox\@tempboxa\hbox{#1}\jamwidth=\wd\@tempboxa + \@jambox[\the\jamwidth]{\box\@tempboxa}} + +%% Version 1: old & stupid +%% \def\@jambox[#1]#2{\hfill\hbox to #1 {#2\hfil}} + +% Version 2: +% Always takes up \jamwidth space, even if it means breaking the line. But it +% works on ragged-right mode, too. +% \def\@jambox[#1]#2{\setbox\@tempboxa\hbox {#2\hfil}% +% \ifdim \wd\@tempboxa<#1\relax \wd\@tempboxa=#1\relax\fi +% \hskip 0.5em plus 1fill +% \penalty 100\vadjust{}\nobreak\hfill\box\@tempboxa\par} +% The penalty enables a break. \vadjust inserts an empty element +% at the beginning of the next line, protecting \hfill from being discarded. + +% Version 3: +% This seems to cover everything! But unfortunately, it won't work in +% ragged-right mode-- the line is broken BEFORE the last word, to make enough +% space... +\def\@jambox[#1]#2{{\setbox\@tempboxa\hbox {#2}% + \ifdim \wd\@tempboxa<#1\relax % if label fits in the alloted space: + \@tempdima=#1\relax \advance\@tempdima by-\wd\@tempboxa % remaining \hspace + \unskip\nobreak\hfill\penalty250 % break line here if necessary + \hskip 1.2em minus 1.2em % used when the line extends past the margin + \hbox{}\nobreak\hfill\box\@tempboxa\nobreak + \hskip\@tempdima minus \@tempdima\hbox{}% + \else % the label is too wide: just right-align it + \hfill\penalty50\hbox{}\nobreak\hfill\box\@tempboxa + \fi + % suppress closing glue: + \parfillskip=0pt \finalhyphendemerits=0 \par}} +% The penalty enables a break, taken only if the line cannot fit. +% The \hbox{} ensures the next line does not begin with \hfill, which would +% be discarded if initial. +% (\vadjust inserts an empty element at the beginning of the next line, so +% that COULD be used instead of \hbox{}). +% Algorithm adapted from The TeXBook. +% +% The closing \par could be a problem if there is a \parskip... diff --git a/Master/texmf-dist/tex/xelatex/langsci/biblatex-langsci-unified-undecap.bbx b/Master/texmf-dist/tex/xelatex/langsci/biblatex-langsci-unified-undecap.bbx new file mode 100644 index 00000000000..062b42d0c3d --- /dev/null +++ b/Master/texmf-dist/tex/xelatex/langsci/biblatex-langsci-unified-undecap.bbx @@ -0,0 +1,564 @@ +% Modified by LSP, Thu Jul 31 22:36:02 CEST 2014 +% Modified further, Mo Sep 26 12:29:00 CEST 2016 +\ProvidesFile{sp-biblatex.bbx} + +% NB: The Unified Style Sheet wants abbreviated "ed(s)", "edn". But using the abbreviate option also abbreviates the names of months. But then dateabbrev=false restores the long names of months +% biblatex has a "useprefix" option, which makes "von" count for alphabetization; the Unified Stylesheet does not want that, so it is important that this option be disabled (even if an author tries to set it to true) + +\ExecuteBibliographyOptions{labeldate,sorting=nyt,abbreviate,dateabbrev=false,useprefix=false} + +% biblatex by default calls biblatex.def, we add to this authoryear.bbx, which in turn loads standard.bbx. So, sp-biblatex.bbx is built on top of those styles; once authoryear.bbx is loaded, we tell it not to put in dashes for repeated authors (in accordance with the Unified Stylesheet) + +\RequireBibliographyStyle{authoryear} +\ExecuteBibliographyOptions{dashed=false} + +% Formatting directives for name lists +% ------------------------------------------------------------------ +% +% In biblatex.def, there are name formats defined: first-last, last-first, last-first/first-last. They could be simplified (we don't need provisions for using initials only, since the Unified Style doesn't do that), but since biblatex.def is loaded automatically, there's no point. The name formats call bibmacros that figure out how to order the internal of name components. These are re-defined here to make sure that "von" is treated as part of the last name (it still doesn't count for sorting -- which is controlled by the \useprefix package option) +% name:last is used to produce citation labels +% name:last-first is used to produce the first author's name listing in the alphabetical bibliography + +% Also moved the Jr part to after the first name and inserted another comma, because the Unified Stylesheet disagrees with standard.bbx: it wants "Jr." not to be treated as part of the last name. + +% The macros here get 4 arguments passed to them. They are: #1 last name, #2 first name, #3 von, #4 Jr. + +\renewbibmacro*{name:last}[4]{% + \usebibmacro{name:delim}{#3#1}% + \usebibmacro{name:hook}{#3#1}% + \ifblank{#3} + {} + {\ifcapital + {\mkbibnameprefix{\MakeCapital{#3}}\isdot} + {\mkbibnameprefix{#3}\isdot}% + \ifpunctmark{'}{}{\bibnamedelimc}}% + \mkbibnamelast{#1}}% + +\renewbibmacro*{name:last-first}[4]{% + \usebibmacro{name:delim}{#3#1}% + \usebibmacro{name:hook}{#3#1}% + \ifblank{#3}{}{% + \mkbibnameprefix{#3}\isdot% + \ifpunctmark{'}{}{\bibnamedelimc}}% + \mkbibnamelast{#1}\isdot + \ifblank{#2}{}{\addcomma\bibnamedelimd\mkbibnamefirst{#2}\isdot}% + \ifblank{#4}{}{\addcomma\bibnamedelimd\mkbibnameaffix{#4}\isdot}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Various bibmacros used in producing the bibliography +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\renewbibmacro*{date+extrayear}{% + \iffieldundef{labelyear} + {} + {\printtext{\printdatelabel}}{\printfield{extrayear}} + }% Took out the parentheses around the year + +\renewbibmacro*{author}{% + \ifboolexpr{ + test \ifuseauthor + and + not test {\ifnameundef{author}} + } + {\usebibmacro{bbx:dashcheck} + {\bibnamedash} + {\usebibmacro{bbx:savehash}% + \printnames{author}% + \iffieldundef{authortype} + {\newunit}% period instead of space + {\setunit{\addcomma\space}}}% + \iffieldundef{authortype} + {} + {\usebibmacro{authorstrg}% + \newunit}}% period instead of space + {\global\undef\bbx@lasthash + \usebibmacro{labeltitle}% + \newunit}% period instead of space + \usebibmacro{date+extrayear}} + +\renewbibmacro*{editor}{% + \usebibmacro{bbx:editor}{editorstrg}} +\renewbibmacro*{editor+others}{% + \usebibmacro{bbx:editor}{editor+othersstrg}} +\renewbibmacro*{bbx:editor}[1]{% + \ifboolexpr{ + test \ifuseeditor + and + not test {\ifnameundef{editor}} + } + {\usebibmacro{bbx:dashcheck} + {\bibnamedash} + {\printnames{editor}% + \setunit{\addspace}% + \usebibmacro{bbx:savehash}}% + \printtext[parens]{\usebibmacro{#1}}% + \clearname{editor}% + \newunit}% period instead of space + {\global\undef\bbx@lasthash + \usebibmacro{labeltitle}% + \newunit}% period instead of space + \usebibmacro{date+extrayear}} + +\renewbibmacro*{translator}{% + \usebibmacro{bbx:translator}{translatorstrg}} +\renewbibmacro*{translator+others}{% + \usebibmacro{bbx:translator}{translator+othersstrg}} +\renewbibmacro*{bbx:translator}[1]{% + \ifboolexpr{ + test \ifusetranslator + and + not test {\ifnameundef{translator}} + } + {\usebibmacro{bbx:dashcheck} + ts {\bibnamedash} + {\printnames{translator}% + \setunit{\addcomma\space}% + \usebibmacro{bbx:savehash}}% + \usebibmacro{translator+othersstrg}% + \clearname{translator}% + \newunit}% period instead of space + {\global\undef\bbx@lasthash + \usebibmacro{labeltitle}% + \newunit}% period instead of space + \usebibmacro{date+extrayear}} + +\renewbibmacro*{journal}{% + \iffieldundef{journaltitle} + {} + {\printtext{% + \printfield{journaltitle}% + \setunit{\subtitlepunct}% + \printfield{journalsubtitle}}}} + +\renewbibmacro*{volume+number+eid}{% + \printfield{volume}% +% \setunit*{\adddot}% + \printfield[parens]{number}% parentheses instead of dot before issue number + \setunit{\addcomma\space}% + \printfield{eid}} + +% Because of the weird format "3 May, 2007" specified in the Unified Stylesheet for URL access dates, we need a special way to format the urldate + +\newcommand{\mkbibdateunified}[3]{% Year-Month-Day as input --> xx Month, Year + \iffieldundef{#3} + {} + {\stripzeros{\thefield{#3}}% + \nobreakspace}% + \iffieldundef{#2} + {\iffieldundef{#1}% + {}% + {\stripzeros{\thefield{#1}}}}% + {\mkbibmonth{\thefield{#2}}% + \iffieldundef{#1}% + {}% + {\iffieldundef{#3}% + {}% + {,}% + \space\stripzeros{\thefield{#1}}}% + }% + }% + +\renewbibmacro*{url+urldate}{% + \printfield{url}% + \iffieldundef{urlyear}% + {}% + {\setunit*{\addspace}% + \printtext[parens]{\mkbibdateunified{urlyear}{urlmonth}{urlday}}}% + } + +\renewbibmacro*{series+number}{% + \iffieldundef{series} + {} + {\printtext[parens]{% + \printfield{series}% + \setunit*{\addspace}% + \printfield{number}}% + }} + +\renewbibmacro*{byeditor+others}{% + \ifnameundef{editor} + {} + {\printnames[byeditor]{editor}% + \setunit{\addspace}% + \printtext[parens]{\usebibmacro{editor+othersstrg}}% putting (ed.) or (eds.) after editors of books + \clearname{editor}% + \newunit}% + \usebibmacro{byeditorx}% + \usebibmacro{bytranslator+others}} + +\renewbibmacro*{chapter+pages}{% + \iffieldundef{chapter}% + {}% + {\printfield{chapter}% + \setunit{\addcomma\space}}% + \printfield{pages}% + \newunit} + +\renewbibmacro*{note+pages}{% + \iffieldundef{note}% + {}% + {\printfield{note}% + \setunit{\addcomma\space}}% + \printfield{pages}% + \newunit} + +\newbibmacro*{institution+location+type+date}{% + \printlist{location}% + \iflistundef{institution} + {} + {\setunit*{\addcolon\space}}% + \printlist{institution}% + \setunit{\addspace}% + \printfield{type}% + \setunit*{\addcomma\space}% + \usebibmacro{date}% + \newunit} + +% The following is a hack to satisfy the Unified Stylesheet's decision to give the edition right after the OED as used as a sortlabel. + +\renewbibmacro*{labeltitle}{% + \iffieldundef{label} + {\iffieldundef{shorttitle} + {\printfield{title}% + \setunit{\addcomma\space}% Here it comes, preparing for the edition + \printfield{edition}% Here's the edition + \clearfield{title}% + \clearfield{edition}}% Clearing the edition field, so it's not printed again below + {\printfield[title]{shorttitle}}} + {\printfield{label}}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Punctuation & formatting +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% This gets rid of the Oxford comma in name lists and uses the ampersand rather than "and": + +\renewcommand*{\finalnamedelim}{\addspace\&\addspace} +\renewcommand*{\finallistdelim}{\addspace\&\addspace} + +% no colon after "In" in incollection entries (overriding biblatex.def): + +\renewcommand{\intitlepunct}{\addspace} + +\renewcommand{\subtitlepunct}{\addcolon\space} +\renewcommand*{\bibpagespunct}{\newunitpunct} % No comma before pages, just the usual new unit period + +\DefineBibliographyStrings{english}{% + edition = {edn\adddot}, +} + +% basically everything is in sentence case, other than journals and book series (recurring titles) +% \DeclareFieldFormat[article,periodical,book,thesis,incollection,unpublished,inproceedings]{titlecase}{\MakeSentenceCase*{#1}}% + +% No quotes around titles +\DeclareFieldFormat[article,periodical,inbook,incollection,inproceedings,patent,thesis,unpublished]{title}{#1} + +% Just like book titles, thesis titles are in italics +\DeclareFieldFormat[thesis]{title}{\mkbibemph{#1}} + +\DeclareFieldFormat{pages}{#1} % no pp. prefix, took \mkpageprefix out [kvf] +\DeclareFieldFormat{doi}{\doi{#1}} +\DeclareFieldFormat{url}{\url{#1}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% The bibliography drivers, specifying the formats of each type of entry in the bibliography +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%% First, the entry types used in the Unified Test Bibliography. Could rely on standard.bbx for all others as a fallback. + +% For the article type, the only departure from standard.bbx is that +% we don't use a literal "In: " before the journal title; other formatting +% departures are done in the format specs and bibmacros + +\DeclareBibliographyDriver{article}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{bytranslator+others}% + \newunit\newblock + \printfield{version}% + \newunit\newblock +% \usebibmacro{in:}% We don't use "In: " before journal titles + \usebibmacro{journal+issuetitle}% + \newunit + \usebibmacro{byeditor+others}% + \newunit\newblock% \newblock ensures period before pages + \usebibmacro{note+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{issn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{periodical}{% +\usebibmacro{bibindex}% +\usebibmacro{begentry}% +\usebibmacro{author/editor+others/translator+others}% +\setunit{\labelnamepunct}\newblock +\usebibmacro{title}% +\newunit +\printlist{language}% +\newunit\newblock +\usebibmacro{byauthor}% +\newunit\newblock +\usebibmacro{bytranslator+others}% +\newunit\newblock +\printfield{version}% +\newunit\newblock +% \usebibmacro{in:}% We don't use "In: " before journal titles +\usebibmacro{journal+issuetitle}% +\newunit +\usebibmacro{byeditor+others}% +\newunit\newblock% \newblock ensures period before pages +\usebibmacro{note+pages}% +\newunit\newblock +\iftoggle{bbx:isbn} +{\printfield{issn}} +{}% +\newunit\newblock +\usebibmacro{doi+eprint+url}% +\newunit\newblock +\usebibmacro{addendum+pubstate}% +\setunit{\bibpagerefpunct}\newblock +\usebibmacro{pageref}% +\newunit\newblock +\iftoggle{bbx:related} +{\usebibmacro{related:init}% +\usebibmacro{related}} +{}% +\usebibmacro{finentry}} + +\DeclareBibliographyDriver{book}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \printfield{edition}% + \newunit + \iffieldundef{maintitle} + {\printfield{volume}% + \printfield{part}} + {}% + \newunit + \printfield{volumes}% + \setunit{\addspace}% crucial difference from standard.bbx: space and then (Series + number) + \usebibmacro{series+number}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + % \newunit\newblock commented by LSP + % \usebibmacro{chapter+pages}% + % \newunit + % \printfield{pagetotal}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + \DeclareBibliographyDriver{incollection}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \ifnameundef{editor} + {\setunit{\addspace}} + {\usebibmacro{byeditor+others}\setunit{\addcomma\space}} + \usebibmacro{maintitle+booktitle}% + \setunit{\addcomma\space} + \printfield{edition}% + \setunit{\addcomma\space} + \iffieldundef{maintitle} + {\printfield{volume}% + \printfield{part}} + {}% + \setunit{\addcomma\space} + \printfield{volumes}% + \setunit{\addspace}% + \usebibmacro{series+number}% + \setunit{\addcomma\space} + \usebibmacro{chapter+pages}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{inproceedings}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \ifnameundef{editor} + {\setunit{\addspace}} + {\usebibmacro{byeditor+others}\setunit{\addcomma\space}} + \usebibmacro{maintitle+booktitle}% + \setunit{\addcomma\space} + \printfield{edition}% + \setunit{\addcomma\space} + \iffieldundef{maintitle} + {\printfield{volume}% + \printfield{part}} + {}% + \setunit{\addcomma\space} + \printfield{volumes}% + \setunit{\addspace}% + \usebibmacro{series+number}% + \setunit{\addcomma\space} + \usebibmacro{chapter+pages}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit + \usebibmacro{publisher+location+date}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{thesis}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{institution+location+type+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \printfield{pagetotal}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{unpublished}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \printfield{howpublished}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{location+date}% + \newunit\newblock + \iftoggle{bbx:url} + {\usebibmacro{url+urldate}} + {}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + diff --git a/Master/texmf-dist/tex/xelatex/langsci/biblatex-langsci-unified.bbx b/Master/texmf-dist/tex/xelatex/langsci/biblatex-langsci-unified.bbx index 84d10be4588..1f541f6e127 100644 --- a/Master/texmf-dist/tex/xelatex/langsci/biblatex-langsci-unified.bbx +++ b/Master/texmf-dist/tex/xelatex/langsci/biblatex-langsci-unified.bbx @@ -1,4 +1,5 @@ % Modified by LSP, Thu Jul 31 22:36:02 CEST 2014 +% Modified further, Mo Sep 26 12:29:00 CEST 2016 \ProvidesFile{sp-biblatex.bbx} % NB: The Unified Style Sheet wants abbreviated "ed(s)", "edn". But using the abbreviate option also abbreviates the names of months. But then dateabbrev=false restores the long names of months @@ -50,7 +51,8 @@ \renewbibmacro*{date+extrayear}{% \iffieldundef{labelyear} {} - {\printtext{\printdateextralabel}}}% Took out the parentheses around the year + {\printtext{\printdatelabel}}{\printfield{extrayear}} + }% Took out the parentheses around the year \renewbibmacro*{author}{% \ifboolexpr{ diff --git a/Master/texmf-dist/tex/xelatex/langsci/biblatex-sp-unified.bbx b/Master/texmf-dist/tex/xelatex/langsci/biblatex-sp-unified.bbx new file mode 100644 index 00000000000..1f541f6e127 --- /dev/null +++ b/Master/texmf-dist/tex/xelatex/langsci/biblatex-sp-unified.bbx @@ -0,0 +1,564 @@ +% Modified by LSP, Thu Jul 31 22:36:02 CEST 2014 +% Modified further, Mo Sep 26 12:29:00 CEST 2016 +\ProvidesFile{sp-biblatex.bbx} + +% NB: The Unified Style Sheet wants abbreviated "ed(s)", "edn". But using the abbreviate option also abbreviates the names of months. But then dateabbrev=false restores the long names of months +% biblatex has a "useprefix" option, which makes "von" count for alphabetization; the Unified Stylesheet does not want that, so it is important that this option be disabled (even if an author tries to set it to true) + +\ExecuteBibliographyOptions{labeldate,sorting=nyt,abbreviate,dateabbrev=false,useprefix=false} + +% biblatex by default calls biblatex.def, we add to this authoryear.bbx, which in turn loads standard.bbx. So, sp-biblatex.bbx is built on top of those styles; once authoryear.bbx is loaded, we tell it not to put in dashes for repeated authors (in accordance with the Unified Stylesheet) + +\RequireBibliographyStyle{authoryear} +\ExecuteBibliographyOptions{dashed=false} + +% Formatting directives for name lists +% ------------------------------------------------------------------ +% +% In biblatex.def, there are name formats defined: first-last, last-first, last-first/first-last. They could be simplified (we don't need provisions for using initials only, since the Unified Style doesn't do that), but since biblatex.def is loaded automatically, there's no point. The name formats call bibmacros that figure out how to order the internal of name components. These are re-defined here to make sure that "von" is treated as part of the last name (it still doesn't count for sorting -- which is controlled by the \useprefix package option) +% name:last is used to produce citation labels +% name:last-first is used to produce the first author's name listing in the alphabetical bibliography + +% Also moved the Jr part to after the first name and inserted another comma, because the Unified Stylesheet disagrees with standard.bbx: it wants "Jr." not to be treated as part of the last name. + +% The macros here get 4 arguments passed to them. They are: #1 last name, #2 first name, #3 von, #4 Jr. + +\renewbibmacro*{name:last}[4]{% + \usebibmacro{name:delim}{#3#1}% + \usebibmacro{name:hook}{#3#1}% + \ifblank{#3} + {} + {\ifcapital + {\mkbibnameprefix{\MakeCapital{#3}}\isdot} + {\mkbibnameprefix{#3}\isdot}% + \ifpunctmark{'}{}{\bibnamedelimc}}% + \mkbibnamelast{#1}}% + +\renewbibmacro*{name:last-first}[4]{% + \usebibmacro{name:delim}{#3#1}% + \usebibmacro{name:hook}{#3#1}% + \ifblank{#3}{}{% + \mkbibnameprefix{#3}\isdot% + \ifpunctmark{'}{}{\bibnamedelimc}}% + \mkbibnamelast{#1}\isdot + \ifblank{#2}{}{\addcomma\bibnamedelimd\mkbibnamefirst{#2}\isdot}% + \ifblank{#4}{}{\addcomma\bibnamedelimd\mkbibnameaffix{#4}\isdot}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Various bibmacros used in producing the bibliography +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\renewbibmacro*{date+extrayear}{% + \iffieldundef{labelyear} + {} + {\printtext{\printdatelabel}}{\printfield{extrayear}} + }% Took out the parentheses around the year + +\renewbibmacro*{author}{% + \ifboolexpr{ + test \ifuseauthor + and + not test {\ifnameundef{author}} + } + {\usebibmacro{bbx:dashcheck} + {\bibnamedash} + {\usebibmacro{bbx:savehash}% + \printnames{author}% + \iffieldundef{authortype} + {\newunit}% period instead of space + {\setunit{\addcomma\space}}}% + \iffieldundef{authortype} + {} + {\usebibmacro{authorstrg}% + \newunit}}% period instead of space + {\global\undef\bbx@lasthash + \usebibmacro{labeltitle}% + \newunit}% period instead of space + \usebibmacro{date+extrayear}} + +\renewbibmacro*{editor}{% + \usebibmacro{bbx:editor}{editorstrg}} +\renewbibmacro*{editor+others}{% + \usebibmacro{bbx:editor}{editor+othersstrg}} +\renewbibmacro*{bbx:editor}[1]{% + \ifboolexpr{ + test \ifuseeditor + and + not test {\ifnameundef{editor}} + } + {\usebibmacro{bbx:dashcheck} + {\bibnamedash} + {\printnames{editor}% + \setunit{\addspace}% + \usebibmacro{bbx:savehash}}% + \printtext[parens]{\usebibmacro{#1}}% + \clearname{editor}% + \newunit}% period instead of space + {\global\undef\bbx@lasthash + \usebibmacro{labeltitle}% + \newunit}% period instead of space + \usebibmacro{date+extrayear}} + +\renewbibmacro*{translator}{% + \usebibmacro{bbx:translator}{translatorstrg}} +\renewbibmacro*{translator+others}{% + \usebibmacro{bbx:translator}{translator+othersstrg}} +\renewbibmacro*{bbx:translator}[1]{% + \ifboolexpr{ + test \ifusetranslator + and + not test {\ifnameundef{translator}} + } + {\usebibmacro{bbx:dashcheck} + ts {\bibnamedash} + {\printnames{translator}% + \setunit{\addcomma\space}% + \usebibmacro{bbx:savehash}}% + \usebibmacro{translator+othersstrg}% + \clearname{translator}% + \newunit}% period instead of space + {\global\undef\bbx@lasthash + \usebibmacro{labeltitle}% + \newunit}% period instead of space + \usebibmacro{date+extrayear}} + +\renewbibmacro*{journal}{% + \iffieldundef{journaltitle} + {} + {\printtext{% + \printfield{journaltitle}% + \setunit{\subtitlepunct}% + \printfield{journalsubtitle}}}} + +\renewbibmacro*{volume+number+eid}{% + \printfield{volume}% +% \setunit*{\adddot}% + \printfield[parens]{number}% parentheses instead of dot before issue number + \setunit{\addcomma\space}% + \printfield{eid}} + +% Because of the weird format "3 May, 2007" specified in the Unified Stylesheet for URL access dates, we need a special way to format the urldate + +\newcommand{\mkbibdateunified}[3]{% Year-Month-Day as input --> xx Month, Year + \iffieldundef{#3} + {} + {\stripzeros{\thefield{#3}}% + \nobreakspace}% + \iffieldundef{#2} + {\iffieldundef{#1}% + {}% + {\stripzeros{\thefield{#1}}}}% + {\mkbibmonth{\thefield{#2}}% + \iffieldundef{#1}% + {}% + {\iffieldundef{#3}% + {}% + {,}% + \space\stripzeros{\thefield{#1}}}% + }% + }% + +\renewbibmacro*{url+urldate}{% + \printfield{url}% + \iffieldundef{urlyear}% + {}% + {\setunit*{\addspace}% + \printtext[parens]{\mkbibdateunified{urlyear}{urlmonth}{urlday}}}% + } + +\renewbibmacro*{series+number}{% + \iffieldundef{series} + {} + {\printtext[parens]{% + \printfield{series}% + \setunit*{\addspace}% + \printfield{number}}% + }} + +\renewbibmacro*{byeditor+others}{% + \ifnameundef{editor} + {} + {\printnames[byeditor]{editor}% + \setunit{\addspace}% + \printtext[parens]{\usebibmacro{editor+othersstrg}}% putting (ed.) or (eds.) after editors of books + \clearname{editor}% + \newunit}% + \usebibmacro{byeditorx}% + \usebibmacro{bytranslator+others}} + +\renewbibmacro*{chapter+pages}{% + \iffieldundef{chapter}% + {}% + {\printfield{chapter}% + \setunit{\addcomma\space}}% + \printfield{pages}% + \newunit} + +\renewbibmacro*{note+pages}{% + \iffieldundef{note}% + {}% + {\printfield{note}% + \setunit{\addcomma\space}}% + \printfield{pages}% + \newunit} + +\newbibmacro*{institution+location+type+date}{% + \printlist{location}% + \iflistundef{institution} + {} + {\setunit*{\addcolon\space}}% + \printlist{institution}% + \setunit{\addspace}% + \printfield{type}% + \setunit*{\addcomma\space}% + \usebibmacro{date}% + \newunit} + +% The following is a hack to satisfy the Unified Stylesheet's decision to give the edition right after the OED as used as a sortlabel. + +\renewbibmacro*{labeltitle}{% + \iffieldundef{label} + {\iffieldundef{shorttitle} + {\printfield{title}% + \setunit{\addcomma\space}% Here it comes, preparing for the edition + \printfield{edition}% Here's the edition + \clearfield{title}% + \clearfield{edition}}% Clearing the edition field, so it's not printed again below + {\printfield[title]{shorttitle}}} + {\printfield{label}}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Punctuation & formatting +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% This gets rid of the Oxford comma in name lists and uses the ampersand rather than "and": + +\renewcommand*{\finalnamedelim}{\addspace\&\addspace} +\renewcommand*{\finallistdelim}{\addspace\&\addspace} + +% no colon after "In" in incollection entries (overriding biblatex.def): + +\renewcommand{\intitlepunct}{\addspace} + +\renewcommand{\subtitlepunct}{\addcolon\space} +\renewcommand*{\bibpagespunct}{\newunitpunct} % No comma before pages, just the usual new unit period + +\DefineBibliographyStrings{english}{% + edition = {edn\adddot}, +} + +% basically everything is in sentence case, other than journals and book series (recurring titles) +\DeclareFieldFormat[article,periodical,book,thesis,incollection,unpublished,inproceedings]{titlecase}{\MakeSentenceCase*{#1}}% + +% No quotes around titles +\DeclareFieldFormat[article,periodical,inbook,incollection,inproceedings,patent,thesis,unpublished]{title}{#1} + +% Just like book titles, thesis titles are in italics +\DeclareFieldFormat[thesis]{title}{\mkbibemph{#1}} + +\DeclareFieldFormat{pages}{#1} % no pp. prefix, took \mkpageprefix out [kvf] +\DeclareFieldFormat{doi}{\doi{#1}} +\DeclareFieldFormat{url}{\url{#1}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% The bibliography drivers, specifying the formats of each type of entry in the bibliography +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%% First, the entry types used in the Unified Test Bibliography. Could rely on standard.bbx for all others as a fallback. + +% For the article type, the only departure from standard.bbx is that +% we don't use a literal "In: " before the journal title; other formatting +% departures are done in the format specs and bibmacros + +\DeclareBibliographyDriver{article}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{bytranslator+others}% + \newunit\newblock + \printfield{version}% + \newunit\newblock +% \usebibmacro{in:}% We don't use "In: " before journal titles + \usebibmacro{journal+issuetitle}% + \newunit + \usebibmacro{byeditor+others}% + \newunit\newblock% \newblock ensures period before pages + \usebibmacro{note+pages}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{issn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{periodical}{% +\usebibmacro{bibindex}% +\usebibmacro{begentry}% +\usebibmacro{author/editor+others/translator+others}% +\setunit{\labelnamepunct}\newblock +\usebibmacro{title}% +\newunit +\printlist{language}% +\newunit\newblock +\usebibmacro{byauthor}% +\newunit\newblock +\usebibmacro{bytranslator+others}% +\newunit\newblock +\printfield{version}% +\newunit\newblock +% \usebibmacro{in:}% We don't use "In: " before journal titles +\usebibmacro{journal+issuetitle}% +\newunit +\usebibmacro{byeditor+others}% +\newunit\newblock% \newblock ensures period before pages +\usebibmacro{note+pages}% +\newunit\newblock +\iftoggle{bbx:isbn} +{\printfield{issn}} +{}% +\newunit\newblock +\usebibmacro{doi+eprint+url}% +\newunit\newblock +\usebibmacro{addendum+pubstate}% +\setunit{\bibpagerefpunct}\newblock +\usebibmacro{pageref}% +\newunit\newblock +\iftoggle{bbx:related} +{\usebibmacro{related:init}% +\usebibmacro{related}} +{}% +\usebibmacro{finentry}} + +\DeclareBibliographyDriver{book}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/editor+others/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{maintitle+title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{byeditor+others}% + \newunit\newblock + \printfield{edition}% + \newunit + \iffieldundef{maintitle} + {\printfield{volume}% + \printfield{part}} + {}% + \newunit + \printfield{volumes}% + \setunit{\addspace}% crucial difference from standard.bbx: space and then (Series + number) + \usebibmacro{series+number}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + % \newunit\newblock commented by LSP + % \usebibmacro{chapter+pages}% + % \newunit + % \printfield{pagetotal}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + + \DeclareBibliographyDriver{incollection}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \ifnameundef{editor} + {\setunit{\addspace}} + {\usebibmacro{byeditor+others}\setunit{\addcomma\space}} + \usebibmacro{maintitle+booktitle}% + \setunit{\addcomma\space} + \printfield{edition}% + \setunit{\addcomma\space} + \iffieldundef{maintitle} + {\printfield{volume}% + \printfield{part}} + {}% + \setunit{\addcomma\space} + \printfield{volumes}% + \setunit{\addspace}% + \usebibmacro{series+number}% + \setunit{\addcomma\space} + \usebibmacro{chapter+pages}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{publisher+location+date}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{inproceedings}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author/translator+others}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \usebibmacro{in:}% + \ifnameundef{editor} + {\setunit{\addspace}} + {\usebibmacro{byeditor+others}\setunit{\addcomma\space}} + \usebibmacro{maintitle+booktitle}% + \setunit{\addcomma\space} + \printfield{edition}% + \setunit{\addcomma\space} + \iffieldundef{maintitle} + {\printfield{volume}% + \printfield{part}} + {}% + \setunit{\addcomma\space} + \printfield{volumes}% + \setunit{\addspace}% + \usebibmacro{series+number}% + \setunit{\addcomma\space} + \usebibmacro{chapter+pages}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \printlist{organization}% + \newunit + \usebibmacro{publisher+location+date}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{thesis}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{institution+location+type+date}% + \newunit\newblock + \usebibmacro{chapter+pages}% + \newunit + \printfield{pagetotal}% + \newunit\newblock + \iftoggle{bbx:isbn} + {\printfield{isbn}} + {}% + \newunit\newblock + \usebibmacro{doi+eprint+url}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + +\DeclareBibliographyDriver{unpublished}{% + \usebibmacro{bibindex}% + \usebibmacro{begentry}% + \usebibmacro{author}% + \setunit{\labelnamepunct}\newblock + \usebibmacro{title}% + \newunit + \printlist{language}% + \newunit\newblock + \usebibmacro{byauthor}% + \newunit\newblock + \printfield{howpublished}% + \newunit\newblock + \printfield{note}% + \newunit\newblock + \usebibmacro{location+date}% + \newunit\newblock + \iftoggle{bbx:url} + {\usebibmacro{url+urldate}} + {}% + \newunit\newblock + \usebibmacro{addendum+pubstate}% + \setunit{\bibpagerefpunct}\newblock + \usebibmacro{pageref}% + \newunit\newblock + \iftoggle{bbx:related} + {\usebibmacro{related:init}% + \usebibmacro{related}} + {}% + \usebibmacro{finentry}} + diff --git a/Master/texmf-dist/tex/xelatex/langsci/langsci-basic.sty b/Master/texmf-dist/tex/xelatex/langsci/langsci-basic.sty index 520bda606b7..152790db886 100644 --- a/Master/texmf-dist/tex/xelatex/langsci/langsci-basic.sty +++ b/Master/texmf-dist/tex/xelatex/langsci/langsci-basic.sty @@ -8,7 +8,7 @@ %% Licence: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\newcommand{\sectref}[1]{{\S}\ref{#1}} +\newcommand{\sectref}[1]{§\ref{#1}} \newcommand{\chapref}[1]{Chapter~\ref{#1}} \newcommand{\partref}[1]{Part~\ref{#1}} \newcommand{\tabref}[1]{Table~\ref{#1}} @@ -27,12 +27,15 @@ \newcommand{\cb}{{\upshape ]}} %closing bracket \newcommand{\op}{{\upshape (}} %opening paren \newcommand{\cp}{{\upshape )}} %closing paren +\newcommand{\db}{\hspaceThis{[}} %dummy space for [ in IMT line \newcommand{\rmfnm}{{\upshape\footnotemark}} %romanfootnotemark \newcommand{\citegen}[2][]{\citeauthor{#2}'s (\citeyear[#1]{#2})} \newcommand{\protectedex}[1]{ -\parbox{\textwidth}{#1} +\noindent +\parbox{\textwidth}{ +#1} } \newcommand{\largerpage}[1][1]{ @@ -40,3 +43,12 @@ } \newcommand\shorttitlerunninghead[1]{\rohead{\thechapter\hspace{.5em} #1}} + +% old font commands +\renewcommand{\it}{\itshape} +\renewcommand{\bf}{\bfseries} +\renewcommand{\sc}{\scshape} +\renewcommand{\rm}{\upshape} + +% vertical space to structure tables +\newcommand{\tablevspace}{\\[-.5em]} \ No newline at end of file diff --git a/Master/texmf-dist/tex/xelatex/langsci/langsci-colors.def b/Master/texmf-dist/tex/xelatex/langsci/langsci-colors.def index 9ba525da3e8..0374b95128b 100644 --- a/Master/texmf-dist/tex/xelatex/langsci/langsci-colors.def +++ b/Master/texmf-dist/tex/xelatex/langsci/langsci-colors.def @@ -22,8 +22,8 @@ \definecolor{lsLightGreen}{cmyk}{0.4,0,1,0} \definecolor{lsMidGreen}{cmyk}{0.55,0,0.9,0.1} \definecolor{lsRichGreen}{cmyk}{0.6,0,0.9,0.35} -\definecolor{lsDarkGreen1}{cmyk}{0.85,0.02,0.95,0.38} -\definecolor{lsDarkGreen2}{cmyk}{0.85,0.05,1,0.5} +\definecolor{lsDarkGreenOne}{cmyk}{0.85,0.02,0.95,0.38} +\definecolor{lsDarkGreenTwo}{cmyk}{0.85,0.05,1,0.5} \definecolor{lsNightGreen}{cmyk}{0.88,0.15,1,0.66} \definecolor{lsLightGray}{cmyk}{0,0,0,0.17} \definecolor{lsGuidelinesGray}{cmyk}{0,0.04,0,0.45} diff --git a/Master/texmf-dist/tex/xelatex/langsci/langsci-forest-setup.sty b/Master/texmf-dist/tex/xelatex/langsci/langsci-forest-setup.sty index dc7c887bcbd..2d8d0571582 100644 --- a/Master/texmf-dist/tex/xelatex/langsci/langsci-forest-setup.sty +++ b/Master/texmf-dist/tex/xelatex/langsci/langsci-forest-setup.sty @@ -3,7 +3,7 @@ %% Author: Language Science Press (http://langsci-press.org) %% Date: 2016-01-16 16:47:43 UTC %% Purpose: This file contains optional styles and settings for the -%% forest package. +%% forest package. This version is for 2.0. %% Language: LaTeX %% Licence: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30,13 +30,54 @@ \tikzset{deparrow/.style={-Latex}}%,blue}} -\usepackage{forest} -% does not work -%\usepackage[external]{forest}\tikzexternalize\usepackage{morewrites} +% does not work with forest v1.05 did not check later versions +\usepackage[external]{forest} +\tikzset{external/up to date check=simple} +% for texlive: -shell-escape, for miktex -enable-write18 +% All externalized graphics go go the \externaldirectory +%\tikzexternalize[prefix=external-figures/,shell escape=-shell-escape] +\tikzset{external/system call={xelatex \tikzexternalcheckshellescape -halt-on-error -interaction=batchmode -jobname "\image" "\texsource"}} +%\usepackage{morewrites} +%\usepackage{forest} +% for forest version2 +\useforestlibrary{linguistics} +\forestapplylibrarydefaults{linguistics} + + + + +% specification for all trees, "default preamble" appends to existing specification. +% The version with apostrophe replaces it. +\forestset{default preamble'={ + for tree={align=center,parent anchor=south, child anchor=north,base=bottom}, + before drawing tree={ + sort by=y, + for min={tree}{baseline} + } + }} + + +\forestset{ + declare dimen={child anchor yshift}{0pt}, + adjust childrens child anchors/.style={ + if n children>=2{ + before packing={ + tempdima/.max={max_y}{children}, + for children={ + child anchor yshift=tempdima()-max_y() + }, + } + }{} + }, + default preamble={ + for tree={ + edge path'={(!u.parent anchor)--([yshift=\forestoption{child anchor yshift}].child anchor)}, + adjust childrens child anchors + } + }, +} -% specification for all trees -\forestset{.style={for tree={parent anchor=south, child anchor=north,align=center,base=top}}} % http://www.texample.net/tikz/examples/borrowers-and-lenders/ @@ -63,7 +104,13 @@ append translation/.expanded/.wrap pgfmath arg={\gettranslation{##1}}{content}, content/.expanded/.wrap pgfmath arg={\gettext{##1}}{content}, }, - append translation/.style={append={[#1,no edge,l=0,inner xsep=0,inner ysep=0,outer ysep=0,before computing xy={l-=2pt}]}} + append translation/.style={ + if={strequal("#1","")}{}{ + append={[#1,no edge,inner xsep=0,inner ysep=0,outer ysep=0, + l=\baselineskip + 0.2ex, + ]} + } + } } \def\gettext#1{\gettextA#1;;\endget} @@ -77,10 +124,10 @@ % to do: make this style default and change all other figures explicitely as is described here: % http://tex.stackexchange.com/questions/167983/getting-rid-of-a-default-where-specification \forestset{ -sn edges/.style={for tree={parent anchor=south, child anchor=north,align=center,base=top}, +sm edges/.style={for tree={parent anchor=south, child anchor=north,base=bottom}, where n children=0{tier=word,delay=with translation}{} %,delay=with translation }, -sn edges without translation/.style={for tree={parent anchor=south, child anchor=north,align=center,base=top}, +sm edges without translation/.style={for tree={parent anchor=south, child anchor=north,base=bottom}, where n children=0{tier=word}{} }, word tier/.style={where n children=0{tier=word}{} @@ -171,16 +218,25 @@ typehierarchy/.style={for tree={parent anchor=south, child instance/.style={edge=dotted}, % % auxiliary nodes without node label -empty nodes/.style={ - delay={where content={}{shape=coordinate,for parent={for children={anchor=north}}}{}}} +%empty nodes/.style={ +% delay={where content={}{shape=coordinate,for parent={for children={anchor=north}}}{}}} } - % Manual page 52 +%% \forestset{ +%% nice empty nodes/.style={ +%% for tree={calign=fixed edge angles}, +%% delay={where content={}{shape=coordinate,for parent={for children={anchor=north}}}{}} +%% }} + + +% forest 2.0 \forestset{ -nice empty nodes/.style={ -for tree={calign=fixed edge angles}, -delay={where content={}{shape=coordinate,for parent={for children={anchor=north}}}{}} -}} + empty nodes/.style={ + delay={where content={}{shape=coordinate,for siblings={anchor=north}}{}} + } +} + + diff --git a/Master/texmf-dist/tex/xelatex/langsci/langsci-gb4e.sty b/Master/texmf-dist/tex/xelatex/langsci/langsci-gb4e.sty index a2bffda887e..a0b97ab945d 100644 --- a/Master/texmf-dist/tex/xelatex/langsci/langsci-gb4e.sty +++ b/Master/texmf-dist/tex/xelatex/langsci/langsci-gb4e.sty @@ -65,8 +65,8 @@ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\input{./langsci/styles/langsci-cgloss.sty} -\input{./langsci/styles/jambox.sty} +\input{\stylepath langsci-cgloss.sty} +\input{\stylepath jambox.sty} \@ifundefined{new@fontshape}{\def\reset@font{}\let\mathrm\rm\let\mathit\mit}{} @@ -92,7 +92,7 @@ % % 2) in footnote % a. example line -\newcommand{\fnexfont}{\footnotesize\itshape} +\newcommand{\fnexfont}{\footnotesize\upshape} % b. glossing line \newcommand{\fnglossfont}{\footnotesize\upshape} % c. translation font diff --git a/Master/texmf-dist/tex/xelatex/langsci/langsci-glyphs.sty b/Master/texmf-dist/tex/xelatex/langsci/langsci-glyphs.sty new file mode 100644 index 00000000000..171e5ad99b3 --- /dev/null +++ b/Master/texmf-dist/tex/xelatex/langsci/langsci-glyphs.sty @@ -0,0 +1,29 @@ +\newcommand{\downstep}{\textsf{↓}} +\newcommand{\↓}{\textsf{↓}} +\newcommand{\saltillo}{\textsf{ꞌ}} +\newcommand{\Saltillo}{\textsf{Ꞌ}} +\newcommand{\ꞌ}{\textsf{ꞌ}} +\newcommand{\Ꞌ}{\textsf{Ꞌ}} + + +\newcommand{\higha}{{$^{\text{a}}$}} +\newcommand{\highe}{{$^{\text{e}}$}} +\newcommand{\highE}{{$^{\text{ɛ}}$}} +\newcommand{\highI}{{$^{\text{ɨ}}$}} +\newcommand{\higho}{{$^{\text{o}}$}} +\newcommand{\highO}{{$^{\text{ɔ}}$}} +\newcommand{\highu}{{$^{\text{u}}$}} +\newcommand{\highU}{{$^{\text{ʊ}}$}} + + + \newcommand{\ᵃ}{\textsf{{\hspace{.5pt}ᵃ}}} + \newcommand{\ᵋ}{\textsf{{\hspace{.5pt}ᵋ}}} + \newcommand{\ᵉ}{\textsf{{\hspace{.1pt}ᵉ}}} + \newcommand{\ᴵ}{\textsf{{\hspace{.5pt}ᴵ}}} + \newcommand{\ᶤ}{\textsf{{\hspace{.5pt}ᶤ}}} + \newcommand{\ᵒ}{\textsf{{\hspace{.5pt}ᵒ}}} + \newcommand{\ᵓ}{\textsf{{\hspace{.5pt}ᵓ}}} + \newcommand{\ᵘ}{\textsf{{\hspace{.5pt}ᵘ}}} + \newcommand{\ᶶ}{\textsf{{\hspace{.5pt}ᶶ}}} + \newcommand{\ꜜ}{\textsf{ꜜ\hspace*{-2pt}}} + \ No newline at end of file diff --git a/Master/texmf-dist/tex/xelatex/langsci/langsci-linguex.sty b/Master/texmf-dist/tex/xelatex/langsci/langsci-linguex.sty new file mode 100644 index 00000000000..8af16219793 --- /dev/null +++ b/Master/texmf-dist/tex/xelatex/langsci/langsci-linguex.sty @@ -0,0 +1,441 @@ +%% Copyright 1996-2013 by Wolfgang Sternefeld +%% This program can be redistributed and/or modified under the terms +%% of the LaTeX Project Public License Distributed from CTAN +%% archives in directory macros/latex/base/lppl.txt; either +%% version 1 of the License, or any later version. +%% linguex.sty version 3.3, revised 2000/12/22, compatability with +%% lucida fonts: Defaults defined \AtBeginDocument +%% linguex.sty version 3.4, revised 2001/04/30, corrected vspacing for +%% \ex. embedded in \a. +%% linguex.sty version 3.5, revised 2002/01/26, corrected hspacing for +%% \alignSubEx +%% linguex.sty version 3.6, revised 2008/03/20, \lessthanten, +%% \lessthanhundred, and \lessthanthousand redefined due to problems +%% with kerning in fonts +%% linguex.sty version 3.7, revised 2008/06/30, \lessthanten, +%% \lessthanhundred, and \lessthanthousand redefined due to problems +%% with kerning in fonts +%% linguex.sty version 3.7a, revised 2009/09/02, replaced hard-coded +%% example format with \theExNo +%% linguex.sty version 4.0 replaces hard-coded brackets with +%% predefined commands +%% linguex.sty version 4.1 replaces \refstepcounter by \stepcounter +%% for internal counters +%% linguex.sty version 4.2 replaces \rm by \textrm in definition of +%% \stripoffbr; undoes the change in version 4.0 from .66\baselineskip to +%% \Extopsep; renews definition of \label AtBeginDocument +%% linguex.sty version 4.3 removes code that caused problems with beamer; adds +%% a \ProvidesPackage line to keep track of versions better +%% Author: Wolfgang.Sternefeld@uni-tuebingen.de +%% status: maintained +%% filedate May 28th 2013 + +%% This is a modified version for the use with langsci-gb4e. It is part of the Language Science Press LaTeX packages for producing books. +%% Modifications done by Felix Kopecky on 14 Feb 2017: +%% \ex -> \Lsciex +%% \exi -> Lsciexi + +\ProvidesPackage{langsci-linguex}[2017/02/14 adapted to work in the LangSci class] +\RequirePackage{xspace,cgloss4e} +%%%%%%%%%%%%%%%%%%% FOOTNOTES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% to let \ex. know whether or not it is in a footnote +\newif\if@noftnote\@noftnotetrue +\let\predefinedfootnotetext=\@footnotetext +\long\def\@footnotetext#1{\@noftnotefalse\predefinedfootnotetext{#1}% + \@noftnotetrue} +% +%%%%%%%%%%%%%%% COUNTERS FOR LABELLING %%%%%%%%%%%%%%%%%%%%%%%%%%% +\@ifundefined{chapter}{\newcounter{ExNo}}{\newcounter{ExNo}[chapter]} +\newcounter{SubExNo}[\if@noftnote ExNo\else FnExNo\fi] +\newcounter{SubSubExNo}[SubExNo] +\newcounter{FnExNo}[footnote] +\newcounter{ABC} +\newcommand{\ExLBr}{(}%added in version 4.0 +\newcommand{\ExRBr}{)}%added in version 4.0 +\newcommand{\FnExLBr}{(}%added in version 4.0 +\newcommand{\FnExRBr}{)}%added in version 4.0 +\newcommand{\theExLBr}{(}%added in version 4.0 +\newcommand{\theExRBr}{)}%added in version 4.0 +\newcommand{\theFnExLBr}{(}%added in version 4.0 +\newcommand{\theFnExRBr}{)}%added in version 4.0 +\renewcommand{\theExNo}{\theExLBr\arabic{ExNo}\theExRBr}%modified in version 4.0 +\renewcommand{\theFnExNo}{\theFnExLBr\roman{FnExNo}\theFnExRBr}%removed in version 4.0 +\newcommand{\firstrefdash}{-} +\newcommand{\secondrefdash}{-} +\newcommand{\SubExLBr}{} +\newcommand{\SubExRBr}{.} +\newcommand{\SubSubExLBr}{(} +\newcommand{\SubSubExRBr}{)} +\newcommand{\Exarabic}{\arabic}%added in version 4.0 +\newcommand{\Exalph}{\alph}%added in version 4.0 +\newcommand{\Exroman}{\roman}%added in version 4.0 +% Modification in version 4.0: hard wired brackets replaced by +% commands defined above: +\renewcommand{\theSubExNo}{\hbox{\if@noftnote\theExLBr\Exarabic{ExNo}\firstrefdash + \Exalph{SubExNo}\theExRBr\else +\theFnExLBr\Exroman{FnExNo}\firstrefdash\Exalph{SubExNo}\theFnExRBr\fi}} +\renewcommand{\theSubSubExNo}{% + \hbox{\if@noftnote\theExLBr\Exarabic{ExNo}\firstrefdash\Exalph{SubExNo}\secondrefdash + \Exroman{SubSubExNo}\theExRBr% + \else\theFnExLBr\Exroman{FnExNo}\firstrefdash + \Exalph{SubExNo}\secondrefdash\Exarabic{SubSubExNo}\theFnExRBr\fi}}% +% +%%%%%%%%%%%%%% LENGTHS FOR SPACING %%%%%%%%%%%%%%%%%%%%%%%%%% +\newlength{\currentlabel} +\newlength{\lessthanten} +\newlength{\lessthanhundred} +\newlength{\lessthanthousand} +\newlength{\@Exleftmargin} +\newlength{\Exlabelwidth} +\newlength{\Extopsep} +\newlength{\Exindent} +\newlength{\SubExleftmargin} +\newlength{\SubSubExleftmargin} +\newlength{\Exlabelsep} +\newlength{\alignSubExnegindent} +\newlength{\Exredux} +\newif\ifalignSubEx +\newcommand{\resetExdefaults}{% + \setlength{\Exlabelsep}{1.3em}% + \setlength{\Extopsep}{.66\baselineskip}% + \setlength{\SubSubExleftmargin}{2.4em}% + \setlength{\SubExleftmargin}{2em}% + \setlength{\Exindent}{0pt}% + \setlength{\Exlabelwidth}{4em}% + \setlength{\alignSubExnegindent}{\Exlabelsep}% + \ifalignSubEx\addtolength{\Exlabelsep}{.7em}% + \addtolength{\alignSubExnegindent}{.7em}\fi + \setlength{\Exredux}{-\baselineskip}% + } +\AtBeginDocument{\resetExdefaults} +%%% +\newlength\digitwidth%added-3.7 +\newlength\mindigitwidth%added-3.7 +\newcommand{\minimalwidth}[1]{\settowidth{\digitwidth}{#1}%added-3.7 +\ifdim\digitwidth<\mindigitwidth\mindigitwidth\digitwidth\fi}%added-3.7 +% +%%%%%%%%%%%%%%%%%%% DEFINITION OF \Lsciex. %%%%%%%%%%%%%%%%%%%%%%%%%% +\newif\ifembedded +\newif\ifExWarning +\newcounter{ExDepth} +\newcounter{TempExDepth}\setcounter{TempExDepth}{0} +\def\trivex.#1\par{\ifdim\lastskip=.66\baselineskip\vspace{\Exredux}\fi + \begin{list}{}{\leftmargin\z@% + \labelwidth\z@\labelsep\z@\partopsep\z@\topsep\Extopsep}% + \item{}#1% + \stepcounter{ExDepth}\ExEnd}%refstepcounter replaced +\def\Lsciex.#1\par{% + \ifnum\theExDepth>0 \setcounter{TempExDepth}{\theExDepth}% + \setcounter{ExDepth}{0} + \embeddedtrue\fi + \ifembedded\else + \ifdim\lastskip=.66\baselineskip\vspace{\Exredux}\fi + \fi + \stepcounter{ExDepth}%%refstepcounter replaced + \my@ifnextchar[{\OptArgEx}{\ifindex\expandafter\lookforwords\fi + \NormalEx\testforgramm}% + #1% + \addtocounter{ExDepth}{\theTempExDepth}\setcounter{TempExDepth}{0}% + \embeddedfalse\global\ExWarningfalse\ExEnd} +\newcommand{\NormalEx}{\ifExWarning + \PackageWarning{linguex}{Check example numbering (screwed up?), + check number of empty lines at end of examples. + Detected}\fi\ExWarningtrue + \if@noftnote\refstepcounter{ExNo}% + \Exformat[\ExLBr\Exarabic{ExNo}\ExRBr]% + \else + \refstepcounter{FnExNo}\Exformat[\FnExLBr\Exroman{FnExNo}\FnExRBr]% + \fi} +\def\OptArgEx[#1]{\Exformat[#1]\expandafter\testforgramm\ifindex\expandafter + \lookforwords\fi} +\def\philarge{4\mindigitwidth} +\def\philmiddle{3\mindigitwidth} +\def\philsmall{2\mindigitwidth} +%%%%%%%%%%%%%%% +\newcommand{\phlabelwidth}[1]{% + \renewcommand{\philarge}{#1}% + \renewcommand{\philmiddle}{#1}% + \renewcommand{\philsmall}{#1}} +\newcommand{\phlabeldefault}{% + \renewcommand{\philarge}{4\mindigitwidth}% + \renewcommand{\philmiddle}{3\mindigitwidth}% + \renewcommand{\philsmall}{2\mindigitwidth}} +\newcommand{\ExEnd}{% + \ifnum\theExDepth=0\global\unembeddedfalse\else% + \end{list}\addtocounter{ExDepth}{-1}\ExEnd\fi} +\newcommand{\listdecl}{\parsep\z@\itemsep\z@\partopsep\z@\labelsep\z@% + \@Exleftmargin\z@% + \settowidth{\digitwidth}{0}\mindigitwidth\digitwidth%modified-3.7 + \minimalwidth{1}%modified-3.7 + \minimalwidth{2}% + \minimalwidth{3}% + \minimalwidth{4}% + \minimalwidth{5}% + \minimalwidth{6}% + \minimalwidth{7}% + \minimalwidth{8}% + \minimalwidth{9}% + \settowidth{\lessthanthousand}{\ExLBr\hbox to \philarge{}\ExRBr}%modified-3.7,4.0 + \ifdim\currentlabel<\lessthanthousand\leftmargin\Exlabelsep + \ifdim\lessthanthousand<\Exlabelwidth\Exlabelwidth\Exlabelsep% + \settowidth{\lessthanten}{\ExLBr\hbox + to \philsmall{}\ExRBr}%modified-3.7 + \settowidth{\lessthanhundred}{\ExLBr\hbox to + \philmiddle{}\ExRBr}%modified-3.7 + \ifdim\currentlabel<\lessthanten\leftmargin\lessthanten% + \else + \ifdim\currentlabel<\lessthanhundred\leftmargin\lessthanhundred% + \else + \ifdim\currentlabel<\lessthanthousand\leftmargin\lessthanthousand% + \fi\fi\fi\fi + \else + \Exlabelwidth\z@ + \fi% + \@Exleftmargin\Exlabelwidth + \labelwidth\leftmargin + \ifembedded\relax\else + \addtolength{\Exlabelwidth}{\Exindent} + \fi + \addtolength{\leftmargin}{\Exlabelwidth}% + \addtolength{\labelwidth}{\@Exleftmargin}% +} +\def\Exformat[#1]{% + \settowidth{\currentlabel}{#1}% + \begin{list}{\makebox[\labelwidth][l]{#1}}{% + \setlength{\leftmargin}{\currentlabel}% + \listdecl% + \if@noftnote\relax\else\addtolength{\topsep}{-.5\topsep}\fi + \ifembedded\topsep=.3\Extopsep\else\topsep=\Extopsep\fi + }% + \ifindex\firstwordtrue\fi\item{}} +% +%%%%%%%% the `[' of OPTIONAL ARGUMENTS must immediately follow \Lsciex. %%%%%% +%%%% redefinition of \@ifnextchar that does NOT ignore spaces %%%%%%%%%%% +\def\my@ifnextchar#1#2#3{\let\reserved@d=#1% + \def\reserved@a{#2}\def\reserved@b{#3}% + \futurelet\@let@token\my@ifnch} +\def\my@ifnch{\ifx\@let@token\@sptoken% + % \let\reserved@c\@xifnch + \let\reserved@c\reserved@b% + \else + \ifx\@let@token\reserved@d% + \let\reserved@c\reserved@a% + \else + \let\reserved@c\reserved@b% + \fi\fi + \reserved@c}% cf. definition of \@ifnextchar in latex2e.ltx %% +% +%%%%%%%%%%%%%% PROCESSING OF GRAMMATICALITY JUDGMENTS %%%%%%%%%%%%% +\newtoks\CollectTokens +\newcommand\AddInfo[1]{\expandafter\expandafter\expandafter + \CollectTokens\expandafter{% + \the\CollectTokens#1}} +\def\testforgramm{\GTest{}{\printGramm}} +\def\printGramm{\makebox[0pt][r]{\normalfont\the\CollectTokens}\ignorespaces} +\def\GTest#1#2{% + \def\TestForGramm{\CollectTokens={}% + \@ifnextchar *{\AddInfo{*}\@firstoftwo\recTestForGramm}{% + \@ifnextchar ?{\AddInfo{\char63}\@firstoftwo\recTestForGramm}{% + \@ifnextchar \#{\AddInfo{\#}\@firstoftwo\recTestForGramm}{% + \@ifnextchar \%{\AddInfo{\%}\@firstoftwo\recTestForGramm}% + {#1}}}}}% + \def\recTestForGramm{\@ifnextchar *{\AddInfo{*}\@firstoftwo% + \recTestForGramm}{% + \@ifnextchar ?{\AddInfo{\char63}\@firstoftwo\recTestForGramm}{% + \@ifnextchar \#{\AddInfo{\#}\@firstoftwo\recTestForGramm}{% + \@ifnextchar \%{\AddInfo{\%}\@firstoftwo\recTestForGramm}% + {#2}}}}}% + \TestForGramm} +% +%%%%%%%%%%%%%%%% SUBLISTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newif\ifunembedded +\newcommand{\SubExlabel}{\SubExLBr\Exalph{SubExNo}\SubExRBr} +\def\a.{\ifindex\firstwordtrue\fi + \ifnum\theExDepth=0 \unembeddedtrue + \trivex.\fi + \stepcounter{ExDepth}%refstepcounter replaced + \begin{list}{\makebox[\labelwidth][l]{% + \ifnum\theExDepth=1 \SubExLBr\Exalph{ABC}\SubExRBr% + \else + \ifnum\theExDepth=2 % + \ifdim\currentlabel<\lessthanthousand% + \ifalignSubEx + \llap{\hbox to \alignSubExnegindent{\ifunembedded% + \SubExLBr\Exalph{SubExNo}\SubExRBr + \else\SubExlabel\fi\hss}}% + \else\SubExlabel\fi% + \else\ifunembedded% + \SubSubExLBr\Exroman{SubExNo}\SubSubExRBr + \else\SubExlabel\fi\fi + \else + \ifnum\theExDepth=3 % + \if@noftnote%\ifunembedded\mbox{$\bullet$!}\else + \SubSubExLBr\Exroman{SubSubExNo}\SubSubExRBr + %\fi + \else\Exarabic{SubSubExNo}\SubSubExRBr\fi + \fi\fi\fi}}% + {\labelsep\z@ + \ifnum\theExDepth=2\topsep .3\Extopsep\else\topsep 0pt\fi + \parsep\z@\itemsep\z@ + \ifnum\theExDepth=1 % + \usecounter{ABC}% + \settowidth{\currentlabel}{\ExLBr\Exarabic{ExNo}\ExRBr}% + \listdecl% + \else + \ifnum\theExDepth=2 % + \usecounter{SubExNo}% + \ifalignSubEx\ifdim\currentlabel<\lessthanthousand% + \leftmargin\z@\else\leftmargin=\SubExleftmargin\fi% + \else\leftmargin=\SubExleftmargin\fi% + \else + \ifnum\theExDepth=3 \usecounter{SubSubExNo}\fi + \leftmargin=\SubSubExleftmargin% + \fi + \labelwidth=\leftmargin% + \fi}% + \ifnum\theExDepth=1 \setlength{\Exlabelwidth}{4em}\fi% + %previous line added 2000/12/22 + \b.} +% +%%%%%%%%%%%%%%%%% ITEMS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\newExitem[#1]{\ifnum\theExDepth=2 % + \ifdim\currentlabel<\lessthanthousand% + \ifalignSubEx + \item[\llap{\hbox to \alignSubExnegindent{#1\hfill}}]% + \else + \item[#1\hfill]\fi + \else\item[#1\hfill]% + \fi + \else\item[#1\hfill]% + \fi\testforgramm} +\let\oldb=\b +\DeclareRobustCommand{\b}{\@ifnextchar.{\newb}{\oldb}} +\def\newb.{\ifindex\firstwordtrue\fi + \my@ifnextchar[{\newExitem}{\item\testforgramm}} +\let\oldc=\c +\DeclareRobustCommand{\c}{\@ifnextchar.{\b}{\oldc}} +\let\oldd=\d +\DeclareRobustCommand{\d}{\@ifnextchar.{\b}{\oldd}} +\let\e=\b +\let\f=\b +\def\Lsciz.{\end{list}\addtocounter{ExDepth}{-1}} +% +%%%%%%%%%%%%%%%%%%%% INDEXED BRACKETS %%%%%%%%%%%%%%%%%%%%%%%% +\newif\ifindex +\newif\iffirstword +\def\I#1#2 {#1\labelBr#2 } +\def\Lsciexi.#1\par{\indextrue\Lsciex.#1 | blabla | \indexfalse\par} +\def\ai.#1 \par{\indextrue + \a.#1 | blabla | + \par + \indexfalse} +\def\finish|#1|{\ExEnd} +\newcommand{\testGrAndBr}{\GTest{}{\printGramm\checkforbr}} +\def\doaword#1 {% + \iffirstword\firstwordfalse\expandafter\testGrAndBr\fi% + #1 + \ifgloss\expandafter\checkforbrorstar\else + \expandafter\lookforwords\fi} +\newcommand{\checkforbrorstar}{\GTest{\checkforbr}{\printGramm\checkforbr}} +\newcommand{\lookforwords}{\@ifnextchar]{\firstwordfalse\@aber}% + {\@ifnextchar[{\firstwordfalse\@aber}% + {\@ifnextchar|{\firstwordfalse\finish}{\doaword}}}} +\def\labelBr#1 {\mbox{$\hspace{.05em}_{\mbox{\scriptsize\rm#1}}$} } +\newcommand{\jetzt}{\my@ifnextchar[{\@aber}{\my@ifnextchar]{\@aber}% + {\@schnell}}} +\def\@aber#1#2 {#1\jetzt#2 } +\def\@schnell#1 {\labelBr#1 \lookforwords} +\newcommand{\checkforbr}{\@ifnextchar[{\recurseonbr}% + {\@ifnextchar]{\recurseonbr}{}}} +\newcommand{\recurseonbr}{\my@ifnextchar[{\stripoffbr}% + {\my@ifnextchar]{\stripoffbr}{\labelBr}}} +\def\stripoffbr#1#2 {\textrm{#1}\recurseonbr#2 }%\rm changed to \textrm +% +%%%%%%%%%%%%%%%%%%%% GLOSSES %%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newif\ifgloss +%%% modification of cgloss4e %%%% +\def\getwords(#1,#2)#3 #4\\% #1=linebox, #2=\each, #3=1st word, #4=remainder + {\setbox#1=\vbox{\hbox{#2\strut\ifindex\expandafter\checkforbr\fi#3 }% + \unvbox#1}% + \def\more{#4}% + \ifx\more\empty\let\more=\donewords + \else\let\more=\getwords + \fi + \more(#1,#2)#4\\% + } +\def\gl@stop{{\hskip -\glossglue}\unhbox\gline\end{flushleft}% + \global\glossfalse% + \ifindex\expandafter\lookforwords\fi {} } +%%% +\newcommand{\newgll}{\glosstrue\GTest{\gll}{\gll\printGramm}} +\def\exg.{\my@ifnextchar[{\newglossex}{\Lsciex.\newgll}} +\def\newglossex[#1]{\Lsciex.[#1]\newgll} +\def\ag.{\my@ifnextchar[{\newglossa}{\a.\newgll}} +\def\newglossa[#1]{\a.[#1]\newgll} +\def\newglossitem[#1]{\ifalignSubEx%\ifdim\currentlabel<\lessthanthousand% + \item[\llap{\hbox to \alignSubExnegindent{#1\hfill}}]% + \else + \item[#1\hfill]% + \fi +\newgll} +\def\bg.{\my@ifnextchar[{\newglossitem}{\item\newgll}} +\def\cg.{\bg.} +\def\dg.{\bg.} +% \def\eg.{\bg.} +% \def\fg.{\bg.} +% +%%%%%%%%%%%%%%%%%%%% GLOSSES WITH INDEXED BRACKETS %%%%%%%%%%%% +\def\exig.{\my@ifnextchar[{\newglossexi}{\Lsciexi.\newgll}} +\def\newglossexi[#1]{\Lsciexi.[#1]\newgll} +\let\exgi=\exig +\def\aig.{\my@ifnextchar[{\newglossai}{\ai.\newgll}} +\def\newglossai[#1]{\ai.[#1]\newgll} +\let\agi=\aig +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CROSS REFERENCES %%%%%%%%%%%%%% +\newcounter{tmpaEx} +\newif\ifNoFnRef +\newcommand{\Next}{\if@noftnote\NoFnReftrue\else\NoFnReffalse\fi + \copyExNo\stepcounter{tmpaEx}\printExNo}%refstepcounter replaced +\newcommand{\NNext}{\if@noftnote\NoFnReftrue\else\NoFnReffalse\fi + \copyExNo\addtocounter{tmpaEx}{2}\printExNo} +\newcommand{\TextNext}{\NoFnReftrue\copyExNo\stepcounter{tmpaEx}\printExNo}%refstepcounter replaced +\newcommand{\Last}{\if@noftnote\NoFnReftrue\else + \ifnum\Exarabic{FnExNo}=0 \NoFnReftrue\else\NoFnReffalse\fi + \fi + \copyExNo\printExNo} +\newcommand{\LLast}{\if@noftnote\NoFnReftrue\copyExNo% + \addtocounter{tmpaEx}{-1}% + \else + \ifnum\Exarabic{FnExNo}=0 \NoFnReftrue\copyExNo% + \addtocounter{tmpaEx}{-1}% + \else + \ifnum\Exarabic{FnExNo}=1 \NoFnReftrue\copyExNo% + \else + \NoFnReffalse\copyExNo\addtocounter{tmpaEx}{-1}% + \fi\fi\fi + \printExNo} +\newcommand{\copyExNo}{\strut\ifNoFnRef\setcounter{tmpaEx}{\value{ExNo}}% + \def\thetmpaEx{\Exarabic{tmpaEx}}% + \else + \setcounter{tmpaEx}{\value{FnExNo}}\def\thetmpaEx{\Exroman{tmpaEx}}% + \fi} +\def\complexExNo[#1]{\hbox{\if@noftnote\theExLBr\else\theFnExLBr\fi% + \thetmpaEx\firstrefdash#1\if@noftnote\theExRBr + \else\theFnExRBr\fi}}%hard wired bracket changed to \theExBr in version 4.0 +\newcommand{\printExNo}{\@ifnextchar[{\complexExNo}{% + \if@noftnote\theExLBr\else\theFnExLBr\fi\thetmpaEx% + \if@noftnote\theExRBr\else\theFnExRBr\fi\xspace}}%hard + %wired bracket changed to \theExBr in version 4.0 +%%%%%%%%%%%%%%%%%%%%%%%%%%% compatibility with beamer class %%%%%%%%%%%%%%%%%%%%%%%%%% +% This code has now been commented out in v 4.2 since it now causes problems with beamer +% The original problem it solved was probably a beamer issue, not a linguex issue. +% Users with old versions of beamer may need this code so let's leave it in the source for the moment +% +% +%\@ifundefined{usetheme}{}{\AtBeginDocument{\def\label#1{\strut%strut added to definition +%\@bsphack +% \protected@write\@auxout{}% +% {\string\newlabel{#1}{{\@currentlabel}{\thepage}}}% +%\@esphack}}} +%%%%%%%%%%%%%%%%%%%%%%%%%%% END %%%%%%%%%%%%%%%%%%%%%%%%%% +\endinput \ No newline at end of file diff --git a/Master/texmf-dist/tex/xelatex/langsci/langsci-optional.sty b/Master/texmf-dist/tex/xelatex/langsci/langsci-optional.sty index 074d7ddd1b9..6f634b03e5c 100644 --- a/Master/texmf-dist/tex/xelatex/langsci/langsci-optional.sty +++ b/Master/texmf-dist/tex/xelatex/langsci/langsci-optional.sty @@ -9,6 +9,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Heiko Oberdiek % http://tex.stackexchange.com/questions/136644/vertical-space-in-interaction-with-figure-center-environment \newcommand{\oneline}[1]{% @@ -151,7 +152,150 @@ \fi% #3)}\nopagebreak[4]\ignorespaces} + +\newcommand{\fittable}[1]{\resizebox{\textwidth}{!}{#1}} + + +% integrate see also in multiple indexes +\def\igobble#1 {} +\newcommand{\langsciseealso}{\par\addvspace{.1\baselineskip}\hspace*{1.4cm}\hangindent=1.4cm\seealso} +\newcommand{\ilsa}[2]{\il{#1@\igobble | langsciseealso{#2}}} +\newcommand{\issa}[2]{\is{#1@\igobble | langsciseealso{#2}}} +\newcommand{\iasa}[2]{\ia{#1@\igobble | langsciseealso{#2}}} + +\usepackage{tabularx} +\usepackage{array} +\newenvironment{widetabular}[1][1] + {\tabularx{#1\textwidth}} + {\endtabularx} + + +\newcommand{\citetv}[1]{\citeauthor{#1} (\citeyear*{#1} [this volume])} +\newcommand{\citepv}[1]{(\citealt{#1} [this volume])} + + +% Vowel chart tikz commands +\newcommand{\aeiou}{% + \node at (1.5,0) (a) {a}; + \node at (0,3) (i) {i}; + \node at (3,3) (u) {u}; + \node at (0.5,1.5) (e) {e}; + \node at (2.5,1.5) (o) {o}; +} +\newcommand{\aeiouEO}{% + \node at (1.5,0) (a) {a}; + \node at (0,3) (i) {i}; + \node at (3,3) (u) {u}; + \node at (0.25,2) (e) {e}; + \node at (2.75,2) (o) {o}; + \node at (0.75,1) (E) {ε}; + \node at (2.25,1) (O) {ɔ}; +} + +%no hyphenation left alingned +\newcolumntype{Q}{>{\raggedright\arraybackslash}X} +%no hyphenation right aligned +\newcolumntype{S}{>{\raggedleft\arraybackslash}X} +%no hyphenation centered +\newcolumntype{C}{>{\centering\arraybackslash}X} +%no hyphenation fixed width +\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}} +%no hyphenation centered fixed width +\newcolumntype{Z}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}} +%no hyphenation right aligned fixed width +\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}} + +\newcolumntype{d}[1]{D{.}{.}{#1}} +\newcommand{\xxref}[2]{(\ref{#1}--\ref{#2})} + + +% Underlining in gb4e-example Environments. Usual underlining commands that span multiple words do not work, because gb4e would parse it as one word. +% Example: \underline{My example phrase} should become \ulp{My}{~~~~~} \ulp{example}{~~~~~} \ule{phrase} +% Note: The 2nd Argument of the \ulp command is filled in by experience - if you are not familiar with the command, you should experiment a bit. Usually, five tildes are enough, but be sure to check the outcome. +% \ule is meant to be the last word in a phrase that is underlined. Therefore, \ule does not have an extra length. +\usepackage[normalem]{ulem} +\newcommand{\ulp}[2]{%#1: stuff to underline, #2: extra length to skip the whitespace between to components + \settowidth{\LSPTmp}{#1}% + % several boxes are need to assure that words with ascending and descending letters are underlined at the same + % level, leading to the impression of a continuous stroke + \parbox[t]{\LSPTmp}{ %restrict first box to the length of first argument + \settowidth{\LSPTmp}{#1#2} %inner box is larger than outerbox, so underlining will extend beyond length of outer box + % align parbox to bottom + % | mbox to prevent hyphenation + \uline{\parbox[b]{\LSPTmp}{\mbox{#1#2}}} + } +} + +\newcommand{\ule}[1]{%#1: stuff to underline, no extra length + \ulp{#1}{} + } + + + +\usepackage{newfile} +\newoutputstream{colorfigures} +\openoutputfile{\jobname.clr}{colorfigures} +\addtostream{colorfigures}{Note the offset incurred by the frontmatter!} +\newenvironment{colorfigure}{\begin{figure}\addtostream{colorfigures}{\thepage}}{\end{figure}} -% \newcommand{\tobi}[3][0]{\parbox{0cm}{\raisebox{1em}[0cm]{\hspace{#1mm}#3}}#2} +\AtEndDocument{ + \closeoutputstream{colorfigures} +} + +\newcommand{\longrule}{\rule{1em}{.3pt}} +\usepackage{colortbl} +\newcommand{\shadecell}{\cellcolor{black!20!white}} + +% vertical alignment of numbered example +\newcommand{\eabox}[2][-.7\baselineskip]{ + \ea + \parbox[t]{.8\textwidth}{ + \vspace{#1} + #2 + } + \z +} +\newcommand{\exbox}[2][-.7\baselineskip]{ + \ex + \parbox[t]{.8\textwidth}{ + \vspace{#1} + #2 + } +} + +%fix \verb error in biblatex +\makeatletter +\def\blx@maxline{77} +\makeatother + + +\newcommand{\twodigitexamples}{\exewidth{(23)}} +\newcommand{\threedigitexamples}{\exewidth{(234)}} +\newcommand{\fourdigitexamples}{\exewidth{(2345)}} + +\newcommand{\noabstract}{\vspace*{-2\baselineskip}} %for chapters without abstract + +\newcommand{\barplot}[4]{% + \begin{tikzpicture} + \begin{axis}[ + xlabel={#1}, + ylabel={#2}, + axis lines*=left, + width = \textwidth, + height = .3\textheight, + nodes near coords, + xtick=data, + x tick label style={}, + ymin=0, + symbolic x coords={#3}, + ] + \addplot+[ybar,lsRichGreen!80!black,fill=lsRichGreen] plot coordinates { + #4 + }; + \end{axis} + \end{tikzpicture} +} +\newcommand{\rephrase}[2]{{\color{yellow!30!black}#2}\todo{replaced `#1'}} +\newcommand{\missref}[2][]{\todo[#1]{missing reference #2}} \ No newline at end of file diff --git a/Master/texmf-dist/tex/xelatex/langsci/langsci-series.def b/Master/texmf-dist/tex/xelatex/langsci/langsci-series.def index 65f14ded6e2..d1d1599b423 100644 --- a/Master/texmf-dist/tex/xelatex/langsci/langsci-series.def +++ b/Master/texmf-dist/tex/xelatex/langsci/langsci-series.def @@ -9,6 +9,7 @@ \newcommand{\calseries}{calseries} \newcommand{\eotms}{eotms} \newcommand{\eotmsig}{eotmsig} +\newcommand{\eurosla}{eurosla} \newcommand{\sidl}{sidl} \newcommand{\algad}{algad} \newcommand{\tmnlp}{tmnlp} @@ -32,6 +33,7 @@ \ifx\lsSeries\calseries %\cal is already taken as a command \newcommand{\lsSeriesTitle}{Contemporary African Linguistics~\lsSeriesNumber} \newcommand{\lsSeriesColor}{lsMidWine} + \renewcommand{\lsISSN}{2511-7726} \fi \ifx\lsSeries\cfls \newcommand{\lsSeriesTitle}{Conceptual Foundations of \newlineCover Language Science~\lsSeriesNumber} @@ -57,6 +59,10 @@ \newcommand{\lsSeriesTitle}{Implemented Grammars~\lsSeriesNumber} \newcommand{\lsSeriesColor}{lsMidBlue} \fi +\ifx\lsSeries\eurosla + \newcommand{\lsSeriesTitle}{Eurosla Studies~\lsSeriesNumber} + \newcommand{\lsSeriesColor}{lsMidOrange} +\fi \ifx\lsSeries\lv \newcommand{\lsSeriesTitle}{Language Variation~\lsSeriesNumber} \newcommand{\lsSeriesColor}{lsDarkWine} @@ -68,7 +74,7 @@ \fi \ifx\lsSeries\ogs \newcommand{\lsSeriesTitle}{Open Generative Syntax~\lsSeriesNumber} - \newcommand{\lsSeriesColor}{lsDarkGreen1} + \newcommand{\lsSeriesColor}{lsDarkGreenOne} \fi \ifx\lsSeries\scl \newcommand{\lsSeriesTitle}{Studies in Caribbean Languages~\lsSeriesNumber} diff --git a/Master/texmf-dist/tex/xelatex/langsci/langsci-subparts.sty b/Master/texmf-dist/tex/xelatex/langsci/langsci-subparts.sty new file mode 100644 index 00000000000..d428530fed5 --- /dev/null +++ b/Master/texmf-dist/tex/xelatex/langsci/langsci-subparts.sty @@ -0,0 +1,22 @@ +% add an additional section level between part and chapter. +\usepackage[newparttoc]{titlesec} +\usepackage{titletoc} + +% \titleformat{\part}[display]{\normalfont\Huge\bfseries}% +% {\partname~\thepart}{1pc}{\Huge\bfseries} + +\titleclass{\subpart}{page}[\part] + +\newcounter{subpart}[part] +% \numberwithin{chapter}{subpart} +\renewcommand{\thesubpart}{\thepart-\Alph{subpart}} +\newcommand{\subpartname}{Subpart} + +\titleformat{\subpart}[display]{\vspace*{6cm}\centering\normalfont\Large\bfseries}% +{\subpartname~\thesubpart~}{1pc}{\LARGE\bfseries} +\titlespacing{\subpart}{0pt}{0pt}{0pt} + +\titlecontents{subpart}[0pt]{\addvspace{1pc}\normalfont\bfseries}% +{\thecontentslabel\enspace ---\enspace}% +{\normalfont\bfseries}{\hspace{2em plus 1fill}\contentspage} + \ No newline at end of file diff --git a/Master/texmf-dist/tex/xelatex/langsci/langsci-tbls.sty b/Master/texmf-dist/tex/xelatex/langsci/langsci-tbls.sty index 2368cd6789c..2cd63401d56 100644 --- a/Master/texmf-dist/tex/xelatex/langsci/langsci-tbls.sty +++ b/Master/texmf-dist/tex/xelatex/langsci/langsci-tbls.sty @@ -1,3 +1,93 @@ +%%% MDFRAMED STYLES DEFS %%% + +\usepackage[framemethod=tikz]{mdframed} +\mdfsetup{skipabove=2\baselineskip,skipbelow=2\baselineskip,frametitlefont=\sffamily\bfseries\Large, needspace=4\baselineskip, splittopskip=1.5\baselineskip} +\mdfsetup{apptotikzsetting={\tikzset{mdfbackground/.append style={draw=none}}}} +\newcommand{\langscisymbol}{book} +\newlength{\trennlinie} +\setlength{\trennlinie}{.8mm} +\newcommand{\tblsboxcolor}{black} +\newcommand{\tblslinecolour}{lsYellow} + +\mdfdefinestyle{yellowexercise}{% + linewidth=1.5pt, linecolor=\tblslinecolour, + innerleftmargin=5mm, innerrightmargin=5mm, innerbottommargin=5mm, + frametitleaboveskip=15mm, frametitlebelowskip=10mm,frametitlerule=false, innertopmargin=0, repeatframetitle=false, + firstextra={\useasboundingbox (P) rectangle (P);\node[xshift=5mm,right,draw=\tblslinecolour, line width=1.5pt,rectangle, minimum size=10mm, fill=white] at (P-|O) {\color{\tblslinecolour}\includegraphics[width=10mm]{langsci/graphics/tbls-\langscisymbol.pdf}};}, % if environment is on multiple pages, print this on the first page. + singleextra={\useasboundingbox (P) rectangle (P);\node[xshift=5mm,right,draw=\tblslinecolour, line width=1.5pt,rectangle, minimum size=10mm, fill=white] at (P-|O) {\color{\tblslinecolour}\includegraphics[width=10mm]{langsci/graphics/tbls-\langscisymbol.pdf}};} % if env. does not span multiple pages, print the same. +} + +\mdfdefinestyle{greyexercise}{% + everyline=true,ignorelastdescenders=true, + linewidth=0pt,backgroundcolor=\tblsboxcolor, + innerleftmargin=5mm, innerrightmargin=5mm, innerbottommargin=5mm, innertopmargin=5mm, + frametitleaboveskip=15mm, frametitlebelowskip=5mm,frametitlerule=false, repeatframetitle=false, + firstextra={\useasboundingbox (P) rectangle (P);\node[xshift=5mm,right,draw=\tblsboxcolor, line width=1.5pt,rectangle, minimum size=10mm, fill=white] at (P-|O) {\color{\tblsboxcolor}\includegraphics[width=10mm]{langsci/graphics/tbls-\langscisymbol.pdf}};}, % if environment is on multiple pages, print this on the first page. + singleextra={\useasboundingbox (P) rectangle (P);\node[xshift=5mm,right,draw=\tblsboxcolor, line width=1.5pt,rectangle, minimum size=10mm, fill=white] at (P-|O) {\color{\tblsboxcolor}\includegraphics[width=10mm]{langsci/graphics/tbls-\langscisymbol.pdf}};} % if env. does not span multiple pages, print the same. +} + + +\mdfdefinestyle{tblsbox}{% + leftline=false, rightline=false, frametitleaboveskip=10mm, frametitlebelowskip=5mm,frametitlerule=false, repeatframetitle=false, linewidth=\trennlinie, linecolor=\tblslinecolour, innerbottommargin=5mm, innertopmargin=5mm,innerleftmargin=0mm,innerrightmargin=0 + } + +\mdfdefinestyle{tblsframedbox}{% + frametitleaboveskip=5mm, frametitlebelowskip=0mm,frametitlerule=false, repeatframetitle=false, linewidth=\trennlinie, linecolor=\tblslinecolour, innerbottommargin=5mm, innertopmargin=5mm +} + +\newcommand{\tblsfillcolour}{black!12} +\mdfdefinestyle{tblsfilledbox}{% + hidealllines=true, backgroundcolor=\tblsfillcolour, frametitleaboveskip=5mm, frametitlebelowskip=0mm,frametitlerule=false, repeatframetitle=false, innerleftmargin=5mm, innerrightmargin=5mm, innerbottommargin=5mm, innertopmargin=5mm +} + +\mdfdefinestyle{tblsfilledcolumnbox}{% % Copy of tblsfilledbox with multicols + hidealllines=true, backgroundcolor=\tblsfillcolour, frametitleaboveskip=5mm, frametitlebelowskip=0mm,frametitlerule=false, repeatframetitle=false, innerleftmargin=5mm, innerrightmargin=5mm, innerbottommargin=5mm, innertopmargin=5mm,startinnercode={\begin{multicols}{2}},endinnercode={\end{multicols}} +} + +\mdfdefinestyle{tblsframedcolumnbox}{% + frametitleaboveskip=10mm, frametitlebelowskip=5mm,frametitlerule=false, repeatframetitle=false, linewidth=\trennlinie, linecolor=\tblsboxcolor, innerbottommargin=5mm, innertopmargin=5mm, startinnercode={\begin{multicols}{2}},endinnercode={\end{multicols}} +} + +%%% MDFRAMED COMMANDS %%% + +\newcommand{\tblssy}[4][black!12]{% Use like this \tblsfr[colour]{book|bulb|glass|law}{title}{text}, where [colour] is optional + \renewcommand{\langscisymbol}{#2}\renewcommand{\tblsboxcolor}{#1} + \begin{mdframed}[style=greyexercise,frametitle={#3}] + #4 + \end{mdframed} +} + +\newcommand{\tblsli}[4][black!20]{% Use like this \tblsli[colour]{line width}{title}{text} +\renewcommand{\tblsboxcolor}{#1}\setlength{\trennlinie}{#2mm} +\begin{mdframed}[style=tblsbox,frametitle={#3}] +#4 +\end{mdframed} +} + +\newcommand{\tblsfi}[3][black!12]{% Use like this \tblsfi[colour]{title}{text}, where [colour] is optional +\renewcommand{\tblsfillcolour}{#1} +\begin{mdframed}[style=tblsfilledbox,frametitle={#2}] +#3 +\end{mdframed} +} + +\newcommand{\tblsfr}[4][\lsSeriesColor]{% Use like this \tblsfr[colour]{book|bulb|glass|law}{title}{text}, where [colour] is optional +\renewcommand{\tblslinecolour}{#1}\renewcommand{\langscisymbol}{#2} +\begin{mdframed}[style=tblsbox,frametitle={#3}] +#4 +\end{mdframed} +} + +\newcommand{\tblsfd}[4]{ % Use like this: \tblsfd{colour}{line width}{title}{content} +\renewcommand{\tblslinecolour}{#1}\setlength{\trennlinie}{#2mm} +\begin{mdframed}[style=tblsframedbox,frametitle={#3}] +#4 +\end{mdframed} +} + +%%% MDFRAMED END %%% + + \newcommand{\tblsbwbox}[4][]{% \\ \noindent diff --git a/Master/texmf-dist/tex/xelatex/langsci/langscibook.cls b/Master/texmf-dist/tex/xelatex/langsci/langscibook.cls index 0d43722dcba..78e7147468d 100644 --- a/Master/texmf-dist/tex/xelatex/langsci/langscibook.cls +++ b/Master/texmf-dist/tex/xelatex/langsci/langscibook.cls @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% File: langscibook.cls %% Author: Language Science Press (http://langsci-press.org) -%% Date: 2016-05-10 11:11:11 UTC +%% Date: #FIXME UTC %% Purpose: This file defines the basic document class %% for books published with Language Science Press. %% Language: LaTeX @@ -29,6 +29,7 @@ % \- Option handling % \- MAIN CLASS % \- General packages +% \- print on demand macros % \- Output types (book, draft, cover) % \- Page geometry % \- Fonts @@ -51,10 +52,9 @@ % \_ Miscellaneous %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{langsci/langscibook}[2016/04/20 Language Science Press] +\ProvidesClass{langscibook}[2016/10/29 Language Science Press] - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Paths @@ -88,12 +88,15 @@ \newcommand{\lsSpineBreadth}{20mm} \newcommand{\lsOutput}{book} %"short" makes no sense if "long" is deprecated \newcommand{\lsFontsize}{11pt} +\newcommand{\lsChapterFooterSize}{\small} %footers in editedvolumes \newcommand{\lsCopyright}{CC-BY} +\newcommand{\lsSpinewidth}{20mm} \newcommand{\lsBiblatexBackend}{bibtex} -\newcommand{\logotext}{FU-Logo} +\newcommand{\logotext}{{\color{red}no logo}} +\newcommand{\lsYear}{\the\year} \newcommand{\lsBackBody}{Europan lingues es membres del sam familie. Lor separat existentie es un myth. Por scientie, musica, sport etc, litot Europa usa li sam vocabular. Li lingues differe solmen in li grammatica, li pronunciation e li plu commun vocabules. Omnicos directe al desirabilite de un nov lingua franca: On refusa continuar payar custosi traductores.} -\newcommand{\lsBackTitle}{Back Title} +\newcommand{\lsBackTitle}{\@title} \newcommand{\BackTitle}[1]{\renewcommand{\lsBackTitle}{#1}} \newcommand{\BackBody}[1]{\renewcommand{\lsBackBody}{#1}} @@ -116,6 +119,7 @@ \newif\iflsDraft \lsDraftfalse \newif\iflsOpenReview \lsOpenReviewfalse +\newif\iflsUndecapitalize \lsUndecapitalizefalse \newif\iflsShowIndex \lsShowIndexfalse \newif\iflsBiblatex \lsBiblatextrue \newif\iflsCollection \lsCollectionfalse @@ -125,6 +129,8 @@ \newif\iflsCover \lsCoverfalse %output format is cover \newif\iflsUscover \lsUscoverfalse \newif\iflsModfonts \lsModfontsfalse +\newif\iflsNoBabel \lsNoBabelfalse +\newif\iflsMultiauthors \lsMultiauthorsfalse %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -137,27 +143,6 @@ \SetupKeyvalOptions{ family=langscibook, prefix=langscibook@ } -\DeclareStringOption{number}[??] - \define@key{langscibook}{number}{% - \renewcommand{\lsSeriesNumber}{#1}} -\DeclareStringOption{issn}[??] - \define@key{langscibook}{issn}{% - \renewcommand{\lsISSN}{#1}} -\DeclareStringOption{isbndigital}[000-0-000000-00-0] - \define@key{langscibook}{isbndigital}{% - \renewcommand{\lsISBNdigital}{#1}} -\DeclareStringOption{isbnsoftcover}[000-0-000000-00-0] - \define@key{langscibook}{isbnsoftcover}{% - \renewcommand{\lsISBNsoftcover}{#1}} -\DeclareStringOption{isbnhardcover}[000-0-000000-00-0] - \define@key{langscibook}{isbnhardcover}{% - \renewcommand{\lsISBNhardcover}{#1}} -\DeclareStringOption{url}[http://langsci-press.org/catalog] - \define@key{langscibook}{url}{% - \renewcommand{\lsURL}{#1}} -\DeclareStringOption{series}[eotms] - \define@key{langscibook}{series}{% - \renewcommand{\lsSeries}{#1}} \DeclareStringOption{output}[book] \define@key{langscibook}{output}{% \renewcommand{\lsOutput}{#1}} @@ -167,10 +152,13 @@ \DeclareStringOption{biblatexbackend}[bibtex] \define@key{langscibook}{biblatexbackend}{% \renewcommand{\lsBiblatexBackend}{#1}} -% \DeclareVoidOption{long}{ -% \renewcommand{\lsOutput}{long}} +\DeclareStringOption{spinewidth}[20mm] + \define@key{langscibook}{spinewidth}{% + \renewcommand{\lsSpinewidth}{#1}} \DeclareVoidOption{smallfont}{ \renewcommand{\lsFontsize}{10pt}} +\DeclareVoidOption{undecapitalize}{ + \lsUndecapitalizetrue } \DeclareVoidOption{draftmode}{ % 'draftmode' instead of 'draft' due to undesirable side efects \lsDrafttrue \overfullrule=5pt } % to indicate overfull hboxes @@ -184,13 +172,18 @@ \renewcommand{\bstpath}{./langsci/bst/} \renewcommand{\stylepath}{./langsci/styles/} } +\DeclareVoidOption{nobabel}{ + \lsNoBabeltrue} \DeclareVoidOption{modfonts}{ \lsModfontstrue} +\DeclareVoidOption{multiauthors}{ + \lsMultiauthorstrue} \DeclareVoidOption{showindex}{ \lsShowIndextrue} \DeclareVoidOption{biblatex}{ \lsBiblatextrue} -\DeclareVoidOption{bibtex}{ +\DeclareVoidOption{bibtex}{ + \ClassWarningNoLine{langscibook}{BibTeX frontend deprecated. Please use BibLaTeX in the final version} \lsBiblatexfalse} \DeclareVoidOption{nonewtxmath}{ \lsNewtxmathfalse} @@ -201,9 +194,7 @@ \lsCollectionChaptertrue} \DeclareVoidOption{collectiontoclong}{ \lsCollectiontrue% - \lsCollectionTOCLongtrue} -\DeclareVoidOption{coverus}{ - \lsUscovertrue} + \lsCollectionTOCLongtrue} \ProcessKeyvalOptions{langscibook} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -230,6 +221,7 @@ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\usepackage{morewrites} %more helper files to write to \usepackage{etex} \reserveinserts{18} \usepackage{xstring} @@ -249,6 +241,158 @@ \usepackage{\stylepath langsci-basic} %% useful commands for glossings: % \usepackage{\stylepath langsci-lgr} #FIXME this should probably be replaced by \usepackage{leipzig} +\usepackage{todonotes} + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% Print on demand macros +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Basic cover commands, including PGF layers +\newcommand{\podsetup}{ + \lsCovertrue + \renewcommand{\maketitle}{} %no need for this + \StrLen{\@subtitle}[\subtitleStrLen] % Get the length of the subtitle. Later, we use this length to check if a subtitle exists. + \pagestyle{empty} + \pgfdeclarelayer{lspcls_bg} % Create a background layer that serves as the canvas for the coloured rectangles. + \pgfsetlayers{lspcls_bg,main} % Order the background layer behind the main layer of TikZ. + \renewcommand{\and}{, }% + \renewcommand{\lastand}{ \& }% + \renewcommand{\affiliation}[1]{} +} + +% \usepackage[outline]{contour} + +% Content creation for the spine. Including Logo, author, title, and volume number on spine. +\newcommand{\podspine}{ + \renewcommand{\newlineCover}{} + \renewcommand{\and}{, } + \renewcommand{\lastand}{ \& } + \node [above = 0mm of CoverSpine.south, anchor=base] (lspcls_spinelogo) {\color{\lsSeriesColor}\includegraphics{\logopath langsci_spinelogo_nocolor.pdf}}; +% add number on spine +% inside logo +% \node [below = -7mm of lspcls_spinelogo] (lspcls_splinenumber) { \hspace*{4mm}{\parbox{.37cm}{\centering \contour{\lsSeriesColor}{\color{white}\sffamily \large \lsSeriesNumber }}}}; +% bottom centered +% \node [below = -1mm of lspcls_spinelogo] (lspcls_splinenumber) {\color{\lsSeriesColor} \hspace*{4mm}{\parbox{.37cm}{\centering\sffamily \large \lsSeriesNumber }}}; +% bottom leftaligned +% \node [below = -1mm of lspcls_spinelogo] (lspcls_splinenumber) {\color{\lsSeriesColor} \hspace*{4mm}{\parbox{.37cm}{\sffamily \large \lsSeriesNumber }}}; +% +\node [below = 0mm of CoverSpine.north, anchor=north] (lspcls_splinenumber) {\color{\lsSeriesColor} + {\parbox{.47cm}{ + \centering + \sffamily + \huge + \lsSeriesNumber + } + } +}; + + \node [font=\fontsize{18pt}{14pt}\selectfont, above left = 15mm and 4mm of lspcls_spinelogo.north, rotate=270] (lspcls_spinetitle) {\color{\lsSeriesColor} \lsSpineAuthorFont{\lsSpineAuthor\xspace\lsEditorSuffix} \hspace{13mm} \lsSpineTitleFont{\lsSpineTitle}}; + \renewcommand{\newlineCover}{\\} +} + +% Fill the canvas for the cover with coloured areas on back and front cover +% Argument 1: White margin that encompasses the coloured title and backtitle form. Input: 12.34mm +% Argument 2: Height of the coloured title and backtitle form and of the spine. Input: 12.45cm +% Argument 3: Width of the coloured title and backtitle form. Input: 12.45cm +\newcommand{\podgeometry}[3]{ + \begin{pgfonlayer}{lspcls_bg} % Draw on the background layer + \node [ bg, % Draw the coloured background on the front cover + left = #1 of current page.east, + fill=\lsSeriesColor, + minimum height=#2, + minimum width=#3 + ] (CoverColouredRectangleFront) {}; % Die können wir noch dynamisch bestimmen % 7.5mm -> 10.675mm for bleed + \node [ bg, % Draw the coloured background on the back cover + right = #1 of current page.west, + fill=\lsSeriesColor, + minimum height=#2, + minimum width=#3 + ] (CoverColouredRectangleBack) {}; + \node at (current page.center) [ % Create a reference node for the spine + bg, + minimum height=#2, + minimum width=\spinewidth,dashed + ] (CoverSpine) {}; % add [draw] option for preview mode + \end{pgfonlayer} +} + +% Generates the content of the back cover +% Argument 1: Text width, corresponding to Argument 1 of \podfrontcovertoptext +\newcommand{\podbackcover}[1]{ + \node [ font=\fontsize{25pt}{10mm}\selectfont, + right, + below right = 10mm and 7.5mm of CoverColouredRectangleBack.north west, + text width=#1 + ] (lspcls_backtitle) {\color{\lsCoverFontColour}\lsBackTitleFont{\raggedright\lsBackTitle\par}}; + \node [ below = 10mm of lspcls_backtitle, + text width=#1, + align=justify + ] {\color{\lsCoverFontColour}\lsBackBodyFont{\parindent=15pt\lsBackBody}}; + \node [ below right = 192.5mm and 97.5mm of CoverColouredRectangleBack.north west, + text width=4cm] {% + \colorbox{white}{ + \begin{pspicture}(0,0)(4.1,1in) + \psbarcode[transx=.4,transy=.3]{\lsISBNcover}{includetext height=.7}{isbn}% + \end{pspicture} + } + }; +} + +% Generates the content on the front cover, including title, author, subtitle. See below for remaining commands +% Argument 1: Text width on the front cover. Input: 12.34mm +% Argument 2: Font size on the front cover. Adjust to compensate varying text width. Input: 12.34pt +\newcommand{\podfrontcovertoptext}[2]{ + \newcommand{\lsCoverFontColour}{white} + \renewcommand{\and}{\\} + \renewcommand{\lastand}{\\} + + \node [ execute at begin node={}, + font=\fontsize{#2}{17.25mm}\selectfont, + below right = 10mm and 7.5mm of CoverColouredRectangleFront.north west, + text width=#1, + align=left + ] (lspcls_covertitle) {\color{\lsCoverFontColour}\lsCoverTitleFont{\raggedright\@title\par}}; + + \ifnum\subtitleStrLen=0 % Is there a subtitle? If no, just print the author. + \node [ font=\fontsize{25pt}{12.5mm}\selectfont, + right, + below = 11.2mm of lspcls_covertitle.south, + text width=#1 + ] {\color{\lsCoverFontColour}\lsCoverAuthorFont\nohyphens{\lsEditorPrefix\@author\par}}; + \else % If yes, create a node for subtitle and author + \node [ font=\fontsize{25pt}{10mm}\selectfont, + below = 8mm of lspcls_covertitle.south, + text width=#1 + ] (lspcls_coversubtitle) {\color{\lsCoverFontColour} \lsCoverSubTitleFont \nohyphens{\@subtitle}\par}; + \node [ + font=\fontsize{25pt}{12.5mm}\selectfont, + right, + below = 11.2mm of lspcls_coversubtitle.south, + text width=#1 + ] {\color{\lsCoverFontColour}\lsCoverAuthorFont{\nohyphens{\lsEditorPrefix\@author\par}}}; + \fi +} + +% Generates the bottom half of the front cover content: series, series number, logo. +\newcommand{\podcoverbottomtext}{ + \node [ above right = 18.5mm and -.1mm of CoverColouredRectangleFront.south west, + rectangle, + fill=white, + minimum size=17pt] (lspcls_square) {}; % This is the white square at the bottom left of the front cover + \node [ above left = 10mm and 7.5mm of CoverColouredRectangleFront.south east] {\color{\lsCoverFontColour}\includegraphics{\logopath langsci_logo_nocolor.pdf}}; % Print the Language Science press Logo + \path let \p1 = (lspcls_square.north east), % Calculate the exact coordinates for the Series Title to print. + \p2 = (lspcls_covertitle.west) + in node at (\x2,\y1) (lspcls_seriesinfo) [ + font=\fontsize{17pt}{7.5mm}\selectfont, + right, + text width=95mm, + anchor=north west] + {\color{\lsCoverFontColour}\lsCoverSeriesFont{\lsSeriesTitle\par}}; +} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % @@ -257,18 +401,15 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \newcommand{\lsOutputLong}{long} -\newcommand{\lsOutputBook}{book} % standard book -\newcommand{\lsOutputShort}{short} % standard book, old key name +\newcommand{\lsOutputBook}{book} % standard book \newcommand{\lsOutputInprep}{inprep} % marks manuscript as in preparation \newcommand{\lsOutputPaper}{paper} % paper in edited volume -\newcommand{\lsOutputGuidelines}{guidelines} % guidelines -\newcommand{\lsOutputCover}{cover} % FIXME remove this? -\newcommand{\lsOutputCoverBOD}{coverbod} % cover with BoD measurements -\newcommand{\lsOutputCoverDOB}{coverdob} % FIXME remove this? +\newcommand{\lsOutputGuidelines}{guidelines} % guidelines +\newcommand{\lsOutputCoverBODsc}{coverbodsc} % cover with BoD measurements +\newcommand{\lsOutputCoverBODhc}{coverbodhc} % cover with BoD measurements \newcommand{\lsOutputCoverCS}{covercreatespace} % cover with CreateSpace measurements - %% Output types are defined with \newcommand above so they can be used with geometry. \AtBeginDocument{ @@ -281,40 +422,7 @@ \renewcommand{\maketitle}{ \begin{titlepage} \thispagestyle{empty} - -% \ifx\lsOutput\lsOutputLong % only if output=long -% \setcounter{page}{-3} -% %% First titlepage: -% {\lsFrontPage} -% %%%%%%%%%%%%%%%%%%% -% \newpage\thispagestyle{empty} -% \null\newpage\thispagestyle{empty} -% %% Back page: -% {\lsBackPage} -% %%%%%%%%%%%%%%%%%%% -% \newpage\thispagestyle{empty} -% \null\newpage\thispagestyle{empty} -% %% Book spine: -% {\lsSpine} -% %%%%%%%%%%%%%%%% -% \newpage\thispagestyle{empty} -% \null\newpage\thispagestyle{empty} -% %% Series information: -% {\lsSeriesHistory} -% %%%%%%%%%%%%%%%%%%%%% -% \newpage\thispagestyle{empty} -% %% Schmutztitel: -% {\renewcommand{\lsCoverBlockColor}{white} -% \renewcommand{\lsCoverFontColor}{\lsSeriesColor} -% \lsSchmutztitel} -% %%%%%%%%%%%%%%%%%%%% -% \AtEndDocument{ -% \lsPageStyleEmpty -% \null\newpage\thispagestyle{empty} -% %% Advertisement: -% {\lsAdvertisement} -% } -% \fi + \ifx\lsOutput\lsOutputBook % only if output=book \setcounter{page}{-1} @@ -342,36 +450,7 @@ {\lsBackPage} \null\newpage\thispagestyle{empty} } -\fi - - -\ifx\lsOutput\lsOutputShort %repeated from \lsOutputBook above for backward compatibility - \setcounter{page}{-1} - %% First titlepage: - {\lsFrontPage} - %%%%%%%%%%%%%%%%%%% - \newpage\thispagestyle{empty} - \null\newpage\thispagestyle{empty} - %% Series information: - {\lsSeriesHistory} - %%%%%%%%%%%%%%%%%%%%% - \newpage\thispagestyle{empty} - %% Schmutztitel: - {\renewcommand{\lsCoverBlockColor}{white} - \renewcommand{\lsCoverFontColor}{\lsSeriesColor} - \lsSchmutztitel} - %%%%%%%%%%%%%%%%%%%% - \AtEndDocument{ - \lsPageStyleEmpty - \null\newpage\thispagestyle{empty} - %% Advertisement: - {\lsAdvertisement} - \null\newpage\thispagestyle{empty} - %% Back page: - {\lsBackPage} - \null\newpage\thispagestyle{empty} - } -\fi +\fi \ifx\lsOutput\lsOutputInprep % only if output=inprep {\renewcommand{\lsCoverBlockColor}{white} @@ -389,142 +468,61 @@ \fi -\ifx\lsOutput\lsOutputCoverBOD % only if output=cover - \lsCovertrue - \renewcommand{\maketitle}{} %no need for this - \StrLen{\@subtitle}[\subtitleStrLen] % check if a subtitle exists - \pagestyle{empty} - \pgfdeclarelayer{lspcls_bg} % Please make sure to never use lspcls_... PGF layers in any document - \pgfsetlayers{lspcls_bg,main} - \iflsCollection% Check for Collection option - \IfSubStr{\@author}{\&} % if \@author contains \& - {\renewcommand{\lsEditorSuffix}{\xspace(eds.)}} - {\IfSubStr{\@author}{,} % if \@author contains , - {\renewcommand{\lsEditorSuffix}{\xspace(eds.)}} - {\renewcommand{\lsEditorSuffix}{\xspace(ed.)}}} - \renewcommand{\lsEditorPrefix}{{\LARGE Edited by}\\} - \else - \renewcommand{\lsEditorPrefix}{} - \fi - \begin{tikzpicture}[remember picture, overlay,bg/.style={outer sep=0}] - \begin{pgfonlayer}{lspcls_bg} % background layer - \node [bg, left = 24.5mm of current page.east, fill=\lsSeriesColor, minimum height=23.1cm, minimum width=15.2cm] (lspcls_bg1) {}; % Die können wir noch dynamisch bestimmen - \node [bg, right = 24.5mm of current page.west, fill=\lsSeriesColor, minimum height=23.1cm, minimum width=15.2cm] (lspcls_bg2) {}; - \node at (current page.center) [bg, minimum height=24.6cm, minimum width=\totalspine,dashed] (lspcls_bgspline) {}; % add draw option for preview mode - \end{pgfonlayer} - - %% Text and Graphics Layer +\ifx\lsOutput\lsOutputCoverBODhc % only if output=cover + \podsetup + \begin{tikzpicture}[remember picture, overlay,bg/.style={outer sep=0}] + \podgeometry{24.2mm}{23.1cm}{15.5cm} + \podspine + \podfrontcovertoptext{140mm}{51pt} % Due to different cover sizes, the text size was adjusted so that the difference in line breaks would be minimal between hard and softcover books. + \podcoverbottomtext + \newcommand{\lsISBNcover}{\lsISBNhardcover} + \podbackcover{135.5mm} + \end{tikzpicture} + %exit the document right here + \end{titlepage} + \end{document} + \fi - %% Spine - \renewcommand{\newlineCover}{} - \node [above = 7.5mm of lspcls_bgspline.south] (lspcls_splinelogo) {\color{\lsSeriesColor}\includegraphics{\logopath langsci_spinelogo_nocolor.pdf}}; - \node [font=\fontsize{18pt}{14pt}\selectfont, above left = 15mm and 4mm of lspcls_splinelogo.north, rotate=270] (lspcls_splinetitle) {\color{\lsSeriesColor} \lsSpineAuthorFont{\lsSpineAuthor\lsEditorSuffix} \hspace{13mm} \lsSpineTitleFont{\@title}}; - \renewcommand{\newlineCover}{\\} - %% Book Cover - - \newcommand{\lsCoverFontColour}{white} - - \node [execute at begin node={}, font=\fontsize{52pt}{16.75mm}\selectfont, below right = 10mm and 7.5mm of lspcls_bg1.north west, text width=13.7cm, align=left] (lspcls_covertitle) {\color{\lsCoverFontColour}\lsCoverTitleFont{\@title\par}}; % x = 15mm - 7.5mm ; y = 17.5mm - 7.5mm - - \ifnum\subtitleStrLen=0 % Is there a subtitle? - \node [font=\fontsize{25pt}{12.5mm}\selectfont, right, below = 11.2mm of lspcls_covertitle.south, text width=137mm] {\color{\lsCoverFontColour}\lsCoverAuthorFont\nohyphens{\lsEditorPrefix\@author\par}}; % If not, just print the author - \else - \node [font=\fontsize{25pt}{10mm}\selectfont,below = 8mm of lspcls_covertitle.south, text width=137mm] (lspcls_coversubtitle) {\color{\lsCoverFontColour} \lsCoverSubTitleFont \nohyphens{\@subtitle}\par}; - \node [font=\fontsize{25pt}{12.5mm}\selectfont, right, below = 11.2mm of lspcls_coversubtitle.south, text width=137mm] {\color{\lsCoverFontColour}\lsCoverAuthorFont{\nohyphens{\lsEditorPrefix\@author\par}}}; - \fi - - \node [above left = 10mm and 7.5mm of lspcls_bg1.south east] {\color{\lsCoverFontColour}\includegraphics{\logopath langsci_logo_nocolor.pdf}}; - \node [above right = 18.5mm and -.1mm of lspcls_bg1.south west, rectangle, fill=white, minimum size=17pt] (lspcls_square) {}; % 2 - \path let \p1 = (lspcls_square.north east), \p2 = (lspcls_covertitle.west) in node at (\x2,\y1) (lspcls_seriesinfo) [font=\fontsize{17pt}{7.5mm}\selectfont, right, text width=95mm, anchor=north west] {\color{\lsCoverFontColour}\lsCoverSeriesFont{\lsSeriesTitle\par}}; - - %% Book Back Cover - \node [font=\fontsize{25pt}{10mm}\selectfont, right, below right = 16.5mm and 7.5mm of lspcls_bg2.north west, text width=11.5cm] (lspcls_backtitle) {\color{\lsCoverFontColour}\lsBackTitleFont{\lsBackTitle\par}}; - \node [below = 10mm of lspcls_backtitle, text width=11.5cm, align=justify] {\color{\lsCoverFontColour}\lsBackBodyFont{\parindent=15pt\lsBackBody}}; - %\node [below right = 192.5mm and 97.5mm of lspcls_bg2.north west] {\color{\lsCoverFontColour}ISBN \lsBackBodyFont{\lsISBN}}; - \node [below right = 192.5mm and 97.5mm of lspcls_bg2.north west, text width=4cm] { - \colorbox{white}{ - \begin{pspicture}(0,0)(4.1,1in) - \psbarcode[transx=.4,transy=.3]{\lsISBNhardcover}{includetext height=.7}{isbn}% - \end{pspicture}}}; - - %% Guiding Lines - %\draw [red, thick, dashed] (lspcls_covertitle.west) -- (lspcls_seriesinfo.west); - - % \node [below right=17mm and 17mm of current page.north west] (GL1) {}; - % \node [above left=17mm and 17mm of current page.south east] (GL2) {}; - % \draw [dashed, orange, thick] (GL1) -| (GL2) -| (GL1); - % - - \end{tikzpicture} +\ifx\lsOutput\lsOutputCoverBODsc % only if output=cover + \podsetup + \begin{tikzpicture}[remember picture, overlay,bg/.style={outer sep=0}] + \podgeometry{13.75mm}{23.1cm}{15.5cm} + \podspine + \podfrontcovertoptext{140mm}{51pt} % Due to different cover sizes, the text size was adjusted so that the difference in line breaks would be minimal between hard and softcover books. + \podcoverbottomtext + \newcommand{\lsISBNcover}{\lsISBNsoftcover} + \podbackcover{135.5mm} + \end{tikzpicture} + %exit the document right here \end{titlepage} - \end{document} % the cover and nothing else. + \end{document} \fi - \ifx\lsOutput\lsOutputCoverCS % only if output=covercs - \lsCovertrue - \renewcommand{\maketitle}{} % no need for this - \StrLen{\@subtitle}[\subtitleStrLen] % check if a subtitle exists - \pagestyle{empty} - \pgfdeclarelayer{lspcls_bg} % Please make sure to never use lspcls_... PGF layers in any document - \pgfsetlayers{lspcls_bg,main} - \iflsCollection% Check for Collection option - \IfSubStr{\@author}{\&} % if \@author contains \& - {\renewcommand{\lsEditorSuffix}{\xspace(eds.)}} - {\IfSubStr{\@author}{,} % if \@author contains , - {\renewcommand{\lsEditorSuffix}{\xspace(eds.)}} - {\renewcommand{\lsEditorSuffix}{\xspace(ed.)}}} - \renewcommand{\lsEditorPrefix}{{\LARGE Edited by}\\} - \else - \renewcommand{\lsEditorPrefix}{} - \fi - \begin{tikzpicture}[remember picture, overlay,bg/.style={outer sep=0}] - \begin{pgfonlayer}{lspcls_bg} % background layer - \node [bg, left = 10.675mm of current page.east, fill=\lsSeriesColor, minimum height=22.5cm, minimum width=15.5cm] (lspcls_bg1) {}; % Die können wir noch dynamisch bestimmen % 7.5mm -> 10.675mm for bleed - \node [bg, right = 10.675mm of current page.west, fill=\lsSeriesColor, minimum height=22.5cm, minimum width=15.5cm] (lspcls_bg2) {}; - \node at (current page.center) [bg, minimum height=24cm, minimum width=\spinewidth,dashed] (lspcls_bgspline) {}; % add [draw] option for preview mode - \end{pgfonlayer} - %% Text and Graphics Layer - %% Spine - \renewcommand{\newlineCover}{} - \node [above = 10.675mm of lspcls_bgspline.south] (lspcls_splinelogo) {\color{\lsSeriesColor}\includegraphics{\logopath langsci_spinelogo_nocolor.pdf}}; - \node [font=\fontsize{18pt}{14pt}\selectfont, above left = 15mm and 4mm of lspcls_splinelogo.north, rotate=270] (lspcls_splinetitle) {\color{\lsSeriesColor} \lsSpineAuthorFont{\lsSpineAuthor\lsEditorSuffix} \hspace{13mm} \lsSpineTitleFont{\@title}}; - \renewcommand{\newlineCover}{\\} - - %% Book Cover - \newcommand{\lsCoverFontColour}{white} - - \node [execute at begin node={}, font=\fontsize{52pt}{16.75mm}\selectfont, below right = 10mm and 7.5mm of lspcls_bg1.north west, text width=140mm, align=left] (lspcls_covertitle) {\color{\lsCoverFontColour}\lsCoverTitleFont{\@title\par}}; % x = 15mm - 7.5mm ; y = 17.5mm - 7.5mm - - \ifnum\subtitleStrLen=0 % Is there a subtitle? - {\color{\lsCoverFontColour}\lsCoverAuthorFont\nohyphens{\lsEditorPrefix\@author\par}}; % If not, just print the author - \else - \node [font=\fontsize{25pt}{10mm}\selectfont, right, below = 8mm of lspcls_covertitle.south, text width=140mm] (lspcls_coversubtitle) {\color{\lsCoverFontColour} \lsCoverSubTitleFont \nohyphens{\@subtitle\par}}; - \node [font=\fontsize{25pt}{12.5mm}\selectfont, right, below = 11.2mm of lspcls_coversubtitle.south, text width=140mm] {\color{\lsCoverFontColour}\lsCoverAuthorFont\nohyphens{\lsEditorPrefix\@author\par}}; - \fi - - \node [below right = 197.5mm and 117.1mm of lspcls_bg1.north west] {\color{\lsCoverFontColour}\includegraphics{\logopath langsci_logo_nocolor.pdf}}; - \node [above right = 18.5mm and -.1mm of lspcls_bg1.south west, rectangle, fill=white, minimum size=17pt] (lspcls_square) {}; % 2 - \path let \p1 = (lspcls_square.north east), \p2 = (lspcls_covertitle.west) in node at (\x2,\y1) (lspcls_seriesinfo) [font=\fontsize{17pt}{7.5mm}\selectfont, right, text width=95mm, anchor=north west] {\color{\lsCoverFontColour}\lsCoverSeriesFont{\lsSeriesTitle\par}}; - - %% Book Back Cover - \node [font=\fontsize{25pt}{10mm}\selectfont, right, below right = 16.5mm and 7.5mm of lspcls_bg2.north west, text width=11.5cm] (lspcls_backtitle) {\color{\lsCoverFontColour}\lsBackTitleFont{\lsBackTitle\par}}; - \node [below = 10mm of lspcls_backtitle, text width=11.5cm, align=justify] {\color{\lsCoverFontColour}\lsBackBodyFont{\parindent=15pt\lsBackBody}}; - %\node [below right = 192.5mm and 97.5mm of lspcls_bg2.north west] {\color{\lsCoverFontColour}ISBN \lsBackBodyFont{\lsISBN}}; - \node [below right = 192.5mm and 97.5mm of lspcls_bg2.north west, text width=4cm] { - \colorbox{white}{ - \begin{pspicture}(0,0)(4.1,1in) - \psbarcode[transx=.4,transy=.3]{% - \iflsUscover\lsISBNsoftcoverus\else\lsISBNsoftcover\fi - }{includetext height=.7}{isbn}% - \end{pspicture}} - }; +% ============================ +\ifx\lsOutput\lsOutputCoverCS % only if output=covercs + \podsetup + \begin{tikzpicture}[remember picture, overlay,bg/.style={outer sep=0}] + \podgeometry{10.675mm}{22.5cm}{15.5cm} + \podspine + \podfrontcovertoptext{140mm}{52pt} % Due to different cover sizes, the text size was adjusted so that the difference in line breaks would be minimal between hard and softcover books. + \podcoverbottomtext +% %unclear why this was different between BOD and CS +% %----------------------------- +% \node [above right = 18.5mm and -.1mm of CoverColouredRectangleFront.south west, rectangle, fill=white, minimum size=17pt] (lspcls_square) {}; % 2 +% \node [above left = 10mm and 7.5mm of CoverColouredRectangleFront.south east] {\color{\lsCoverFontColour}\includegraphics{\logopath langsci_logo_nocolor.pdf}}; +% % \node [below right = 197.5mm and 117.1mm of CoverColouredRectangleFront.north west] {\color{\lsCoverFontColour}\includegraphics{\logopath langsci_logo_nocolor.pdf}}; +% \path let \p1 = (lspcls_square.north east), \p2 = (lspcls_covertitle.west) in node at (\x2,\y1) (lspcls_seriesinfo) [font=\fontsize{17pt}{7.5mm}\selectfont, right, text width=95mm, anchor=north west] {\color{\lsCoverFontColour}\lsCoverSeriesFont{\lsSeriesTitle\par}}; +% %----------------------------- + \iflsUscover\newcommand{\lsISBNcover}{\lsISBNsoftcoverus}\else\newcommand{\lsISBNcover}{\lsISBNsoftcover}\fi + \podbackcover{140mm} \end{tikzpicture} + %exit the document right here \end{titlepage} - \end{document} % the cover and nothing else. - \fi - + \end{document} +\fi + \end{titlepage} \frontmatter @@ -567,6 +565,11 @@ \renewenvironment{table}{\setfootnoterule{0pt}\oldtable}{\endoldtable} \fi +\ifx\lsSeries\pmwe + \renewcommand{\eachwordone}{\itshape} +\fi + + } %% \AtBeginDocument @@ -579,28 +582,26 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % For output type cover -\newlength{\csspine} -\newlength{\bodspine} +% \usepackage{catchfilebetweentags} +\newlength{\csspine} % CS spine width algorithm, when page count is known: Total Page Number (excluding cover), usually (Total Page - 3) * 0.0572008 mm +\newlength{\bodspine} % BoD spine width algorithm located at http://www.bod.de/hilfe/coverberechnung.html (German only, please contact LangSci for help) \newlength{\bleed} \newlength{\seitenbreite} \newlength{\seitenhoehe} \newlength{\spinewidth} \newlength{\totalwidth} \newlength{\totalheight} -\setlength{\csspine}{20mm} -\setlength{\bodspine}{20mm} +% \IfFileExists{./localmetadata.tex}{\ExecuteMetaData[localmetadata.tex]{coverdimen}}{\typeout{No local meta data found, therefore default spline length was chosen}} % Get only the information between the tag "coverdimen" from localmetadata.tex \setlength{\bleed}{3.175mm} - - - \ifx\lsOutput\lsOutputCoverCS % if output = cover; This is the CreateSpace Version -% \input{./lengths.tex} +\setlength{\spinewidth}{\lsSpinewidth} % Create Space Version +\usepackage{calc} + + \ifx\lsOutput\lsOutputCoverCS % if output = cover; This is the CreateSpace Version \lsCovertrue \setlength{\bleed}{3.175mm} \setlength{\seitenbreite}{169.9mm} \setlength{\seitenhoehe}{244.1mm} - \setlength{\spinewidth}{\csspine} % Create Space Version - \usepackage{calc} \setlength{\totalwidth}{\spinewidth+\seitenbreite+\seitenbreite+\bleed+\bleed} \setlength{\totalheight}{\seitenhoehe+\bleed+\bleed} @@ -608,20 +609,33 @@ \hyphenpenalty 750 \fi -\ifx\lsOutput\lsOutputCoverBOD - \lsCovertrue - \usepackage{calc} -% \input{./lengths.tex} +\ifx\lsOutput\lsOutputCoverBODhc + \lsCovertrue \newlength{\bodfold} \newlength{\totalspine} \setlength{\bodfold}{8mm} \setlength{\seitenbreite}{192mm} - \setlength{\seitenhoehe}{280mm} % For BOD: Hardcover, Gerader Rücken, Kaschiert, papier 80g/m², weiß - \setlength{\spinewidth}{\bodspine} - \setlength{\totalspine}{\spinewidth+\bodfold+\bodfold} + \setlength{\seitenhoehe}{280mm} % For BOD: Hardcover, Runder Rücken, Kaschiert, papier 80g/m², weiß, Papier 17x24cm +% \setlength{\spinewidth}{\bodspine} +% \setlength{\totalspine}{\spinewidth+\bodfold+\bodfold} + \setlength{\totalspine}{\spinewidth} \setlength{\totalwidth}{\spinewidth+\seitenbreite+\seitenbreite} \setlength{\totalheight}{\seitenhoehe} - \usepackage[paperheight=\seitenhoehe, paperwidth=\totalwidth]{geometry} + \usepackage[paperheight=\totalheight, paperwidth=\totalwidth]{geometry} + \hyphenpenalty 750 +\fi + + +\ifx\lsOutput\lsOutputCoverBODsc + \lsCovertrue + \newlength{\totalspine} + \setlength{\seitenbreite}{170mm} + \setlength{\seitenhoehe}{240mm} % For BOD: Softcover, papier 80g/m², weiß, Papier 17x24cm + \setlength{\bleed}{5mm} + \setlength{\totalspine}{\spinewidth} + \setlength{\totalwidth}{\spinewidth+\seitenbreite+\seitenbreite+\bleed+\bleed} + \setlength{\totalheight}{\seitenhoehe+\bleed+\bleed} + \usepackage[paperheight=\totalheight, paperwidth=\totalwidth]{geometry} \hyphenpenalty 750 \fi @@ -723,7 +737,7 @@ \fi \iflsNewtxmath % some users have problems when installing newtxmath - \usepackage[libertine]{newtxmath} +% \usepackage[libertine]{newtxmath} %% following http://tex.stackexchange.com/questions/297328/xelatex-does-not-load-newtxmath-with-linuxlibertine-sometimes %% due to a bug in XeTeX; unfortunately this is NOT extensively tested! @@ -744,7 +758,7 @@ %\frenchspacing \usepackage[final]{microtype} -\newcommand{\lsCoverTitleFont}[1]{\sffamily\addfontfeatures{Scale=MatchUppercase}\fontsize{52pt}{16.75mm}\selectfont #1} +\newcommand{\lsCoverTitleFont}[1]{\sffamily\addfontfeatures{Scale=MatchUppercase}\fontsize{52pt}{17.25mm}\selectfont #1} \newcommand{\lsCoverSubTitleFont}{\sffamily\addfontfeatures{Scale=MatchUppercase}\fontsize{25pt}{10mm}\selectfont} \newcommand{\lsCoverAuthorFont}{\fontsize{25pt}{12.5mm}\selectfont} \newcommand{\lsCoverSeriesFont}{\sffamily\fontsize{17pt}{7.5mm}\selectfont} % fontsize? @@ -753,8 +767,8 @@ \newcommand{\lsDedicationFont}{\fontsize{15pt}{10mm}\selectfont} \newcommand{\lsBackTitleFont}{\sffamily\addfontfeatures{Scale=MatchUppercase}\fontsize{25pt}{10mm}\selectfont} \newcommand{\lsBackBodyFont}{\lsInsideFont} -\newcommand{\lsSpineAuthorFont}{\fontsize{16pt}{14pt}\selectfont} -\newcommand{\lsSpineTitleFont}{\sffamily\fontsize{18pt}{14pt}\selectfont} +\newcommand{\lsSpineAuthorFont}{\bfseries\fontsize{16pt}{14pt}\selectfont} +\newcommand{\lsSpineTitleFont}{\sffamily\bfseries\fontsize{18pt}{14pt}\selectfont} \setkomafont{sectioning}{\normalcolor\bfseries} @@ -776,21 +790,21 @@ \usepackage{pst-barcode} % for generating bar codes \newcommand{\lsCoverFontColor}{white} -\newcommand{\lsCoverBlockColor}{\lsSeriesColor} +\newcommand{\lsCoverBlockColor}{\lsSeriesColor} + + \newcommand{\lsEditorPrefix}{} -\newcommand{\lsEditorSuffix}{} - +\newcommand{\lsEditorSuffix}{} \iflsCollection % for collections: set \lsEditorSuffix depending on \@author -\AtBeginDocument{ - \onlyAuthor - \renewcommand{\newlineCover}{} - \renewcommand{\newlineSpine}{} - \IfSubStr{\@author}{\&} % if \@author contains \& - {\renewcommand{\lsEditorSuffix}{(eds.)}} - {\IfSubStr{\@author}{,} % if \@author contains , - {\renewcommand{\lsEditorSuffix}{(eds.)}} - {\renewcommand{\lsEditorSuffix}{(ed.)}}} -} + \AtBeginDocument{ + \renewcommand{\newlineCover}{} + \renewcommand{\newlineSpine}{} + \renewcommand{\lsEditorPrefix}{{\Large Edited by\\}} + \renewcommand{\lsEditorSuffix}{(ed.)} + \iflsMultiauthors + \renewcommand{\lsEditorSuffix}{(eds.)} + \fi + } \else \fi @@ -825,11 +839,27 @@ } } \end{textblock} - \fi} + \fi + \iflsUndecapitalize + \begin{textblock}{170}(-20,75) + \rotatebox{30}{ + \colorbox{red}{ + \parbox[c][15ex][c]{220mm}{\centering\lsCoverTitleFont\color{white}Undecapitalized\\[-0.1ex]} + % \begin{tabular}{c} + % ~\\ + % \scalebox{6}{\color{red}Open Review}\\[-0.5ex] + % ~%version of \today, \currenttime + % \end{tabular} + } + } + \end{textblock} + \fi + + } \newcommand{\lsCoverTitleAuthor}{ - \renewcommand{\and}{} - \renewcommand{\lastand}{} + \renewcommand{\and}{\\} + \renewcommand{\lastand}{\\} \renewcommand{\newlineCover}{\\} \renewcommand{\newlineSpine}{} \lsCoverBlock @@ -904,23 +934,6 @@ }% \end{textblock}} -% \newcommand{\lsSpine}{ % Book spine -% \renewcommand{\newlineSpine}{\\} -% \renewcommand{\newlineCover}{} -% \begin{textblock}{40}(65,0) -% \rotatebox{90}{\color{black}\begin{minipage}[c][\lsSpineBreadth][c]{\paperheight} -% \color{\lsSeriesColor} -% \hspace{7.5mm} -% \IfFileExists{\logopath langsci_spinelogo_nocolor.pdf}{$\vcenter{\hbox{\includegraphics[angle=-90,origin=c]{\logopath langsci_spinelogo_nocolor.pdf}}}$}{logo} -% \hspace{15mm} -% {\lsSpineTitleFont -% \rotatebox[origin=c]{180}{\pbox[c]{150mm}{\lsSpineTitle}}} -% \hspace{13mm} -% {\lsSpineAuthorFont -% \rotatebox[origin=c]{180}{\pbox[c]{100mm}{\lsSpineAuthor\if\lsEditorSuffix\empty\else\ \lsEditorSuffix\fi}}} -% \end{minipage}} -% \end{textblock}} - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % @@ -972,6 +985,7 @@ %\def\@author{\@latex@warning@no@line{No \noexpand\author given}} \newcommand{\ISBNdigital}[1]{\renewcommand{\lsISBNdigital}{#1}} \newcommand{\ISBNsoftcover}[1]{\renewcommand{\lsISBNsoftcover}{#1}} +\newcommand{\ISBNsoftcoverus}[1]{\renewcommand{\lsISBNsoftcoverus}{#1}} \newcommand{\ISBNhardcover}[1]{\renewcommand{\lsISBNhardcover}{#1}} \newcommand{\URL}[1]{\renewcommand{\lsURL}{#1}} @@ -984,7 +998,7 @@ \renewcommand{\newlineCover}{} \renewcommand{\newlineSpine}{} {\@author}\if\lsEditorSuffix\empty\else\ \lsEditorSuffix\fi. % - {\the\year}. % + {\lsYear}. % \textit{\@title}\if\@subtitle\empty\else: \textit{\@subtitle}\fi\ % (\lsSeriesTitle). % Berlin: Language Science Press. @@ -1000,7 +1014,7 @@ This title can be downloaded at:\\ \url{\lsURL} -© \the\year, \iflsCollection the authors\else\@author\fi +© \lsYear, \iflsCollection the authors\else\@author\fi \newcommand{\ccby}{CC-BY} \ifx\lsCopyright\ccby @@ -1012,10 +1026,23 @@ http://creativecommons.org/licenses/by-nd/4.0/ \fi \begin{tabular}{@{}l@{~}l} -ISBN: & \lsISBNdigital~(Digital) \\ - & \lsISBNhardcover~(Hardcover)\\ - & \lsISBNsoftcover~(Softcover)\\ - & \lsISBNsoftcoverus~(Softcover US)\\ +ISBN: & +\IfStrEq{\lsISBNdigital}{000-0-000000-00-0} +{\color{red}no digital ISBN} +{\lsISBNdigital~(Digital)} +\\ +& +\IfStrEq{\lsISBNhardcover}{000-0-000000-00-0} +{\color{red}no hardcover ISBN} +{\lsISBNhardcover~(Hardcover)} +\\& +\IfStrEq{\lsISBNsoftcover}{000-0-000000-00-0} +{\color{red}no softcover ISBN} +{\lsISBNsoftcover~(Softcover)} +\\ +% & \lsISBNhardcover~(Hardcover)\\ +% & \lsISBNsoftcover~(Softcover)\\ +% & \lsISBNsoftcoverus~(Softcover US)\\ \end{tabular} \IfStrEq{\lsISSN}{??} % \IfStrEq from xstring @@ -1023,7 +1050,7 @@ ISBN: & \lsISBNdigital~(Digital) \\ {ISSN: \lsISSN} \IfStrEq{\lsBookDOI}{??} % \IfStrEq from xstring - {} + {{\color{red} no DOI}} {\doi{\lsBookDOI}} @@ -1057,8 +1084,8 @@ Typesetting software: \XeLaTeX \bigskip Language Science Press\\ -Habelschwerdter Allee 45\\ -14195 Berlin, Germany\\ +Unter den Linden 6\\ +10099 Berlin, Germany\\ \href{http://langsci-press.org}{langsci-press.org} \vfill @@ -1077,7 +1104,6 @@ Storage and cataloguing done by FU Berlin \\[3ex] external or third-party Internet websites referred to in this publication, and does not guarantee that any content on such websites is, or will remain, accurate or appropriate. -%Information regarding prices, travel timetables and other factual information given in this work are correct at the time of first publication but \lsp does not guarantee the accuracy of such information thereafter. } @@ -1183,7 +1209,7 @@ is, or will remain, accurate or appropriate. \fi \raggedbottom -\deffootnote[1.5em]{1.5em}{\normalparindent}{\textsuperscript{\thefootnotemark}\ } +\deffootnote[1.5em]{1.5em}{\normalparindent}{\textsuperscript{\thefootnotemark}} % putting a space after footnotemark has undesirable side effects with footnotes that start with an empty line; instead use \xspace in the footnote definition below \newlength{\normalparindent} \AtBeginDocument{\setlength{\normalparindent}{\parindent}} @@ -1194,7 +1220,7 @@ is, or will remain, accurate or appropriate. \newcommand\nextToken\relax \renewcommand\footnote[1]{% -\oldFootnote{#1}\futurelet\nextToken\isFootnote} +\oldFootnote{\xspace#1}\futurelet\nextToken\isFootnote} \newcommand\isFootnote{% \ifx\footnote\nextToken\textsuperscript{,}\fi} @@ -1229,52 +1255,33 @@ is, or will remain, accurate or appropriate. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\usepackage[ + natbib=true, + \iflsUndecapitalize + style=\bstpath biblatex-langsci-unified-undecap, + \else + style=\bstpath biblatex-langsci-unified, + \fi + citestyle=\bstpath langsci-authoryear-comp, + %refsection=chapter, + maxbibnames=99, + isbn=false, + doi=false, + url=false, + eprint=false, + backend=\lsBiblatexBackend, + indexing=cite, + \iflsCollection\else + toc=bib % make bibliography appear in toc + \fi + ]{biblatex} +\renewcommand{\postnotedelim}{: }% +\renewcommand{\multicitedelim}{\addsemicolon\space}% +\renewcommand{\compcitedelim}{\multicitedelim} +\DeclareFieldFormat{postnote}{#1}% +%\renewcommand{\nameyeardelim}{ }% +\defbibheading{references}{\chapter{References}} -\iflsBiblatex % BibLaTeX - \usepackage[ - natbib=true, - style=\bstpath biblatex-langsci-unified, - citestyle=\bstpath langsci-authoryear-comp, - %refsection=chapter, - maxbibnames=99, - isbn=false, - doi=false, - url=false, - eprint=false, - backend=\lsBiblatexBackend, - indexing=cite, - \iflsCollection\else - toc=bib % make bibliography appear in toc - \fi - ]{biblatex} - \renewcommand{\postnotedelim}{: }% - \renewcommand{\multicitedelim}{\addsemicolon\space}% - \renewcommand{\compcitedelim}{\multicitedelim} - \DeclareFieldFormat{postnote}{#1}% - %\renewcommand{\nameyeardelim}{ }% - \defbibheading{references}{\chapter{References}} -\else %BibTeX - \usepackage{natbib} - \setlength{\bibsep}{0mm} - %% unified style sheet for linguistics journals - %% http://celxj.org/downloads/unified.bst - \bibliographystyle{./langsci/bst/unified} - %% This does not work ... - % \setcitestyle{ - % notesep={: }, % 2002: 125 - % aysep={~} % Gazdar 2002 - % } - - %% check what the unified people have to say on this. - \bibpunct[: ]{(}{)}{;}{a}{}{,} - %% They do not say anything about citations in the running text. - %% As was sown in \citew{Meier2002} -> As was shown in Meier (2002), ... - %% This is what De Gruyter does: - \let\citew=\citet - %% This is what Stefan did: - %\let\citew=\citealt -\fi - \let\cite=\citet % in order to prevent inconsistencies between \cite and \citet %% penalties against widows and orphans in bibliography @@ -1287,6 +1294,10 @@ is, or will remain, accurate or appropriate. } {}{} +% % temporary workaround to fix wrong wrapping for \verb in bibtex +% \makeatletter +% \def\blx@maxline{77} +% \makeatother %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % @@ -1323,6 +1334,18 @@ is, or will remain, accurate or appropriate. %% N.B.: floatpagefraction MUST be less than topfraction !! \renewcommand{\dblfloatpagefraction}{0.7} % require fuller float pages +\usepackage{setspace} +\usepackage{caption} +% \captionsetup{labelfont=bf} +\captionsetup{% +font={% +stretch=.8% +,small% +},% +width=.8\textwidth +} + +\setcapindent{0pt} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Appendices: @@ -1392,19 +1415,20 @@ is, or will remain, accurate or appropriate. \AtBeginDocument{ \makeindex - \newindex{lan}{ldx}{lnd}{\lsLanguageIndexTitle} - % \newindex{aut}{adx}{and}{Name index} + \newindex{lan}{ldx}{lnd}{\lsLanguageIndexTitle} \newindex{sbj}{sdx}{snd}{\lsSubjectIndexTitle} \renewindex{default}{adx}{and}{\lsNameIndexTitle} %biblatex can only deal with the default index - \newindex{wrd}{wdx}{wnd}{Expression index} - \newindex{rwrd}{rdx}{rnd}{Reverse expression index} +% \newindex{wrd}{wdx}{wnd}{Expression index} +% \newindex{rwrd}{rdx}{rnd}{Reverse expression index} } \indexproofstyle{\setlength{\overfullrule}{0pt}\raggedright\footnotesize} %% \index inside footnote \def\infn#1#2{% - \hyperpage{#2}n#1% +% \hyperpage{#2}n#1% 99n2 +% \hyperpage{#2}*% 99* + \hyperpage{#2}\textsuperscript{#1}% 99² }% \newcommand{\footnoteindex}[2]{\index{#2|infn{#1}}} \newcommand{\footnoteindex@sbj}[2]{\index[sbj]{#2|infn{#1}}} @@ -1454,12 +1478,17 @@ is, or will remain, accurate or appropriate. \iflsShowIndex % shows index commands in text \RequirePackage{soul} - \RequirePackage{todonotes} - \RequirePackage[noadjust]{marginnote} +% \RequirePackage[noadjust]{marginnote} \renewcommand{\marginpar}{\marginnote} \let\isold\is + \let\ilold\il + \let\iaold\ia \renewcommand{\isi}[1]{\sethlcolor{green}\hl{#1}\isold{#1}} \renewcommand{\is}[1]{{\tikzstyle{notestyleraw} += [text width=1.5cm]\todo[color=green,size=\scriptsize]{\tiny#1}\isold{#1}}} + \renewcommand{\ili}[1]{\sethlcolor{yellow}\hl{#1}\ilold{#1}} + \renewcommand{\il}[1]{{\tikzstyle{notestyleraw} += [text width=1.5cm]\todo[color=yellow,size=\scriptsize]{\tiny#1}\ilold{#1}}} + \renewcommand{\iai}[1]{\sethlcolor{pink}\hl{#1}\iaold{#1}} + \renewcommand{\ia}[1]{{\tikzstyle{notestyleraw} += [text width=1.5cm]\todo[color=pink,size=\scriptsize]{\tiny#1}\iaold{#1}}} \fi @@ -1493,9 +1522,8 @@ is, or will remain, accurate or appropriate. \renewcommand{\doitext}{DOI:} \iflsBiblatex \renewbibmacro*{finentry}{\finentry - \iffieldundef{doi} - {} - { {\color{lsGuidelinesGray}\doi{\thefield{doi}}}} + \iffieldundef{url}{}{ \url{\thefield{url}}\iffieldundef{urlday}{}{, accessed \thefield{urlyear}-\thefield{urlmonth}-\thefield{urlday}}.} + \iffieldundef{doi}{}{ {\color{lsGuidelinesGray}\doi{\thefield{doi}}}} } %\DeclareFieldFormat{doi}{{\color{lsGuidelinesGray}\doi{#1}}} \fi @@ -1533,7 +1561,7 @@ is, or will remain, accurate or appropriate. \ClassError{langsci/langscibook}{Collection option not compatible with plain BibTeX. Please use biblatex option}{} \fi -\renewcommand{\lsEditorPrefix}{{\LARGE Edited by}\\} + \AtBeginDocument{ % for the citation in the footer \onlyAuthor \renewcommand{\newlineCover}{} @@ -1552,6 +1580,7 @@ is, or will remain, accurate or appropriate. \renewcommand{\@pnumwidth}{1.5em} % width of page numbers \usepackage{tocstyle} \usetocstyle{standard} %\usetocstyle{allwithdot} +\settocfeature[toc]{raggedhook}{\raggedright} \iflsCollectionTOCLong\else \setcounter{tocdepth}{0}\fi % show only parts and chapters \settocstylefeature[-1]{pagenumberbox}{\csname @gobble\endcsname} % parts without page number @@ -1590,8 +1619,10 @@ is, or will remain, accurate or appropriate. \renewcommand{\lsCollectionPaperCitationText}{\fullciteFooter{#1}} \include{#1}% + \addtocounter{page}{-1} \edef\lsCollectionPaperLastPage{\thepage} % \lsCollectionPaperFirstPage is defined in \lsPaper - + \addtocounter{page}{1} + %%% for citation in footer %% preprocessing of author/editor names \onlyAuthor @@ -1605,7 +1636,7 @@ is, or will remain, accurate or appropriate. %% write bib entry to file %% FIXME: the publisher field needs a final period, since this is not provided by \fullciteFooter together with DOIs. - \immediate\write\tempfile{@incollection{#1,author={\authorTemp},title={{\@title}},booktitle={{\lsCollectionTitle}},editor={\editorTemp},publisher={Language Science Press.},Address={Berlin},year=\the\year,pages={\lsCollectionPaperFirstPage --\lsCollectionPaperLastPage},doi={\lsChapterDOI},options={skipbib=true}}} + \immediate\write\tempfile{@incollection{#1,author={\authorTemp},title={{\@title}},booktitle={{\lsCollectionTitle}},editor={\editorTemp},publisher={Language Science Press.},Address={Berlin},year=\lsYear,pages={\lsCollectionPaperFirstPage --\lsCollectionPaperLastPage},doi={\lsChapterDOI},options={skipbib=true,skiplab=true}}} \end{refsection} \end{collectionpaper}} @@ -1616,7 +1647,8 @@ is, or will remain, accurate or appropriate. \newcommand{\onlyAuthor}{% % collection paper \renewcommand{\and}{, }% \renewcommand{\lastand}{ \& }% - \renewcommand{\affiliation}[1]{}} + \renewcommand{\affiliation}[1]{} + } \newcommand{\AuthorAffiliation}{ \renewcommand{\and}{\newline\newline} @@ -1642,10 +1674,12 @@ is, or will remain, accurate or appropriate. \newcommand{\lsCollectionPaperTitle}{{% \renewcommand{\newlineTOC}{} - \renewcommand{\newlineCover}{\\} - \iflsCollectionChapter - \vspace*{-2\baselineskip} - {\LARGE Chapter \thechapter}\newline\newline\fi + \renewcommand{\newlineCover}{\\} +% \\[-1\baselineskip] +% \vspace*{-2\baselineskip} + \renewcommand{\chapterheadstartvskip}{} + {\LARGE \noindent \hspace*{-.7cm} Chapter \thechapter}\\ %there must be a better way to undo this length than a hard value + \bigskip \@title}} \newcommand{\lsCollectionPaperAuthor}{{% @@ -1655,8 +1689,9 @@ is, or will remain, accurate or appropriate. \newcommand{\lsCollectionPaperCitation}{\scalebox{1.2}{ \includegraphics{\logopath langsci_spinelogo_nocolor.pdf}}% - \hspace{0.8em}% - \parbox[b]{.85\textwidth}{\linespread{0.8}\small\normalfont\lsCollectionPaperCitationText}} + % \hspace{0.8em}% + \hfill% + \parbox[b]{.87\textwidth}{\linespread{0.8}\lsChapterFooterSize\normalfont\lsCollectionPaperCitationText}} \newcommand{\lsCollectionPaperCitationText}{\string\lsCollectionPaperCitationText.} @@ -1694,7 +1729,16 @@ is, or will remain, accurate or appropriate. } +%writeout page numbers for separation of chapters +% \usepackage{newfile} +% \newoutputstream{pages} +% \openoutputfile{\jobname.pgs}{pages} +% \newcommand{\writechapterpages}{\addtostream{pages}{\thepage}} +% +% \AtEndDocument{ +% \closeoutputstream{pages} +% } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % @@ -1708,6 +1752,9 @@ is, or will remain, accurate or appropriate. \newlength{\LSPTmp} \newcommand*{\hspaceThis}[1]{\settowidth{\LSPTmp}{#1}\hspace*{\LSPTmp}} - +\iflsNoBabel + \else + \usepackage[english]{babel} +\fi \endinput \ No newline at end of file diff --git a/Master/texmf-dist/tex/xelatex/langsci/sp-authoryear-comp.cbx b/Master/texmf-dist/tex/xelatex/langsci/sp-authoryear-comp.cbx new file mode 100644 index 00000000000..12638193071 --- /dev/null +++ b/Master/texmf-dist/tex/xelatex/langsci/sp-authoryear-comp.cbx @@ -0,0 +1,289 @@ +\ProvidesFile{sp-authoryear-comp.cbx} + +\ExecuteBibliographyOptions{labeldate,uniquename,uniquelist,autocite=inline} +% disabled sortcites option, since it was sorting by name, instead of +% year, and we often want to keep citations in the order chosen by the +% author +\newbool{cbx:parens} + +\newbibmacro*{cite:init}{% + \ifnumless{\value{multicitecount}}{2} + {\global\boolfalse{cbx:parens}% + \global\undef\cbx@lasthash + \global\undef\cbx@lastyear} + {\iffieldundef{prenote} + {} + {\global\undef\cbx@lasthash + \global\undef\cbx@lastyear}}} + +\newbibmacro*{cite:reinit}{% + \global\undef\cbx@lasthash + \global\undef\cbx@lastyear} + +\newbibmacro*{cite}{% Based on cite bib macro from authoryear-comp.cbx + \iffieldundef{shorthand} + {\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}} + {\printtext[bibhyperref]{% Include labelname in hyperlink + \DeclareFieldAlias{bibhyperref}{default}% Prevent nested hyperlinks + \usebibmacro{cite:label}% + \setunit{\addspace}% + \usebibmacro{cite:labelyear+extrayear}}% + \usebibmacro{cite:reinit}} + {\iffieldequals{namehash}{\cbx@lasthash} + {\ifthenelse{\iffieldequals{labelyear}{\cbx@lastyear}\AND + \(\value{multicitecount}=0\OR\iffieldundef{postnote}\)} + {\setunit{\addcomma}% + \usebibmacro{cite:extrayear}} + {\setunit{\compcitedelim}% + \usebibmacro{cite:labelyear+extrayear}% + \savefield{labelyear}{\cbx@lastyear}}} + {\printtext[bibhyperref]{% Include labelname in hyperlink + \DeclareFieldAlias{bibhyperref}{default}% Prevent nested hyperlinks + \printnames{labelname}% + \setunit{\nameyeardelim}% + \usebibmacro{cite:labelyear+extrayear}}% + \savefield{namehash}{\cbx@lasthash}% + \savefield{labelyear}{\cbx@lastyear}}}} + {\usebibmacro{cite:shorthand}% + \usebibmacro{cite:reinit}}% + \setunit{\multicitedelim}} + +\newbibmacro*{citeyear}{% + \iffieldundef{shorthand} + {\iffieldundef{labelyear} + {\usebibmacro{cite:label}% + \usebibmacro{cite:reinit}} + {\iffieldequals{namehash}{\cbx@lasthash} + {\ifthenelse{\iffieldequals{labelyear}{\cbx@lastyear}\AND + \(\value{multicitecount}=0\OR\iffieldundef{postnote}\)} + {\setunit{\addcomma}% + \usebibmacro{cite:extrayear}} + {\setunit{\compcitedelim}% + \usebibmacro{cite:labelyear+extrayear}% + \savefield{labelyear}{\cbx@lastyear}}} + {\usebibmacro{cite:labelyear+extrayear}% + \savefield{namehash}{\cbx@lasthash}% + \savefield{labelyear}{\cbx@lastyear}}}} + {\usebibmacro{cite:shorthand}% + \usebibmacro{cite:reinit}}% + \setunit{\multicitedelim}} + +\renewbibmacro*{textcite}{% Based on textcite bib macro from authoryear-comp.cbx + \iffieldequals{namehash}{\cbx@lasthash} + {\iffieldundef{shorthand} + {\ifthenelse{\iffieldequals{labelyear}{\cbx@lastyear}\AND + \(\value{multicitecount}=0\OR\iffieldundef{postnote}\)} + {\setunit{\addcomma}% + \usebibmacro{cite:extrayear}} + {\setunit{\compcitedelim}% + \usebibmacro{cite:labelyear+extrayear}% + \savefield{labelyear}{\cbx@lastyear}}} + {\setunit{\compcitedelim}% + \usebibmacro{cite:shorthand}% + \global\undef\cbx@lastyear}} + {\ifnameundef{labelname} + {\printtext[bibhyperref]{% Include labelname in hyperlink + \DeclareFieldAlias{bibhyperref}{default}% Prevent nested hyperlinks + \iffieldundef{shorthand} + {\usebibmacro{cite:label}% + \setunit{% + \global\booltrue{cbx:parens}% + \addspace\bibopenparen}% + \ifnumequal{\value{citecount}}{1} + {\usebibmacro{prenote}} + {}% + \usebibmacro{cite:labelyear+extrayear}} + {\usebibmacro{cite:shorthand}}% + \ifthenelse{\iffieldundef{postnote}\AND + \(\value{multicitetotal}=0\AND\value{citetotal}=1\)} + {\bibcloseparen% Include closing parenthesis in hyperlink + \global\boolfalse{cbx:parens}} + {}}} + {\printtext[bibhyperref]{% Include labelname in hyperlink + \DeclareFieldAlias{bibhyperref}{default}% Prevent nested hyperlinks + \printnames{labelname}% + \setunit{% + \global\booltrue{cbx:parens}% + \addspace\bibopenparen}% + \ifnumequal{\value{citecount}}{1} + {\usebibmacro{prenote}} + {}% + \iffieldundef{shorthand} + {\iffieldundef{labelyear} + {\usebibmacro{cite:label}} + {\usebibmacro{cite:labelyear+extrayear}}% + \savefield{labelyear}{\cbx@lastyear}} + {\usebibmacro{cite:shorthand}% + \global\undef\cbx@lastyear}% + \ifthenelse{\iffieldundef{postnote}\AND + \(\value{multicitetotal}=0\AND\value{citetotal}=1\)} + {\bibcloseparen% Include closing parenthesis in hyperlink + \global\boolfalse{cbx:parens}} + {}}% + \savefield{namehash}{\cbx@lasthash}}}% + \setunit{% + \ifbool{cbx:parens} + {\bibcloseparen\global\boolfalse{cbx:parens}} + {}% + \multicitedelim}} + +\newbibmacro*{cite:shorthand}{% + \printtext[bibhyperref]{\printfield{shorthand}}} + +\newbibmacro*{cite:label}{% + \iffieldundef{label} + {\printtext[bibhyperref]{\printfield[citetitle]{labeltitle}}} + {\printtext[bibhyperref]{\printfield{label}}}} + +\newbibmacro*{cite:labelyear+extrayear}{% + \iffieldundef{labelyear} + {} + {\printtext[bibhyperref]{% + \printfield{labelyear}% + \printfield{extrayear}}}} + +\newbibmacro*{cite:extrayear}{% + \iffieldundef{extrayear} + {} + {\printtext[bibhyperref]{\printfield{extrayear}}}} + +\newbibmacro*{textcite:postnote}{% + \usebibmacro{postnote}% + \ifthenelse{\value{multicitecount}=\value{multicitetotal}} + {\setunit{}% + \printtext{% + \ifbool{cbx:parens} + {\bibcloseparen\global\boolfalse{cbx:parens}} + {}}} + {\setunit{% + \ifbool{cbx:parens} + {\bibcloseparen\global\boolfalse{cbx:parens}} + {}% + \multicitedelim}}} + +\DeclareCiteCommand{\cite} + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{cite}} + {} + {\usebibmacro{postnote}} + +\DeclareCiteCommand*{\cite} + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{citeyear}} + {} + {\usebibmacro{postnote}} + +\DeclareCiteCommand{\parencite}[\mkbibparens] + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{cite}} + {} + {\usebibmacro{postnote}} + +\DeclareCiteCommand*{\parencite}[\mkbibparens] + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{citeyear}} + {} + {\usebibmacro{postnote}} + +\DeclareCiteCommand{\footcite}[\mkbibfootnote] + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{cite}} + {} + {\usebibmacro{postnote}} + +\DeclareCiteCommand{\footcitetext}[\mkbibfootnotetext] + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{cite}} + {} + {\usebibmacro{postnote}} + +\DeclareCiteCommand{\smartcite}[\iffootnote\mkbibparens\mkbibfootnote] + {\usebibmacro{cite:init}% + \usebibmacro{prenote}} + {\usebibmacro{citeindex}% + \usebibmacro{cite}} + {} + {\usebibmacro{postnote}} + +\DeclareCiteCommand{\textcite} + {\usebibmacro{cite:init}} + {\usebibmacro{citeindex}% + \usebibmacro{textcite}} + {} + {\usebibmacro{textcite:postnote}} + +\DeclareMultiCiteCommand{\cites}{\cite}{\setunit{\multicitedelim}} +\DeclareMultiCiteCommand{\parencites}[\mkbibparens]{\parencite}{\setunit{\multicitedelim}} +\DeclareMultiCiteCommand{\footcites}[\mkbibfootnote]{\footcite}{\setunit{\multicitedelim}} +\DeclareMultiCiteCommand{\footcitetexts}[\mkbibfootnotetext]{\footcitetext}{\setunit{\multicitedelim}} +\DeclareMultiCiteCommand{\smartcites}[\iffootnote\mkbibparens\mkbibfootnote]{\smartcite} + {\setunit{\multicitedelim}} +\DeclareMultiCiteCommand{\textcites}{\textcite}{} + +\renewcommand*{\nameyeardelim}{\addspace} + +\let\citealt\cite +\let\citet\textcite +\let\Citet\Textcite +\newcommand{\pgcitep}[2]{(\cite{#1}:~#2)} +\newcommand{\pgcitealt}[2]{\cite{#1}:~#2} +\newcommand{\pgcitet}[2]{\citeauthor{#1} (\citeyear{#1}:~#2)} +\newcommand{\pgposscitet}[2]{\citeauthor{#1}'s (\citeyear{#1}:~#2)} +\let\citep\parencite + +\DeclareCiteCommand{\citeauthor} + {\boolfalse{citetracker}% + \boolfalse{pagetracker}% + \usebibmacro{prenote}} + {\ifciteindex + {\indexnames{labelname}} + {}% + \printtext[bibhyperref]{\printnames{labelname}}} + {\multicitedelim} + {\usebibmacro{postnote}} + +\DeclareCiteCommand{\citeyear} + {\boolfalse{citetracker}% + \boolfalse{pagetracker}% + \usebibmacro{prenote}} + {\printfield[bibhyperref]{year}} + {\multicitedelim} + {\usebibmacro{postnote}} + +\DeclareCiteCommand{\citeyearpar}[\mkbibparens] + {\boolfalse{citetracker}% + \boolfalse{pagetracker}% + \usebibmacro{prenote}} + {\printfield[bibhyperref]{year}} + {\multicitedelim} + {\usebibmacro{postnote}} + +\DeclareCiteCommand{\posscitet} + {\boolfalse{citetracker}% + \boolfalse{pagetracker}} + {\printtext[bibhyperref]{\printnames{labelname}'s \printfield[parens]{year}}} + {} + {} + +\DeclareCiteCommand{\possciteauthor} + {\boolfalse{citetracker}% + \boolfalse{pagetracker}} + {\printtext[bibhyperref]{\printnames{labelname}'s}} + {} + {} + +\renewcommand*{\multicitedelim}{\addcomma\space} + + \endinput diff --git a/Master/texmf-dist/tex/xelatex/langsci/tbls-book.eps b/Master/texmf-dist/tex/xelatex/langsci/tbls-book.eps index 570488dded7..12018281714 100644 Binary files a/Master/texmf-dist/tex/xelatex/langsci/tbls-book.eps and b/Master/texmf-dist/tex/xelatex/langsci/tbls-book.eps differ diff --git a/Master/texmf-dist/tex/xelatex/langsci/tbls-bulb.eps b/Master/texmf-dist/tex/xelatex/langsci/tbls-bulb.eps index c953a0031e2..a1c21d719ca 100644 Binary files a/Master/texmf-dist/tex/xelatex/langsci/tbls-bulb.eps and b/Master/texmf-dist/tex/xelatex/langsci/tbls-bulb.eps differ diff --git a/Master/texmf-dist/tex/xelatex/langsci/tbls-glass.eps b/Master/texmf-dist/tex/xelatex/langsci/tbls-glass.eps index d694a32f152..60e261f12ec 100644 Binary files a/Master/texmf-dist/tex/xelatex/langsci/tbls-glass.eps and b/Master/texmf-dist/tex/xelatex/langsci/tbls-glass.eps differ diff --git a/Master/texmf-dist/tex/xelatex/langsci/tbls-law.eps b/Master/texmf-dist/tex/xelatex/langsci/tbls-law.eps index e7a7e623a54..1839c34886d 100644 Binary files a/Master/texmf-dist/tex/xelatex/langsci/tbls-law.eps and b/Master/texmf-dist/tex/xelatex/langsci/tbls-law.eps differ -- cgit v1.2.3