diff options
Diffstat (limited to 'macros')
44 files changed, 721 insertions, 174 deletions
diff --git a/macros/latex/contrib/keytheorems/CHANGELOG.md b/macros/latex/contrib/keytheorems/CHANGELOG.md index 053436ddb7..4928582240 100644 --- a/macros/latex/contrib/keytheorems/CHANGELOG.md +++ b/macros/latex/contrib/keytheorems/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog for keytheorems package +## [v0.1.3] +- add `noteseparator` key +- add `\IfRestatingT`, `\IfRestatingF` +- add `store*` key +- add Portuguese translations + ## [v0.1.2] - Move support for memoir and AMS classes to dedicated files - document `headformat` key @@ -14,5 +20,6 @@ ## 0.1.0 - 2024-09-04 - First release +[v0.1.3]: https://github.com/mbertucci47/keytheorems/compare/v0.1.2...v0.1.3 [v0.1.2]: https://github.com/mbertucci47/keytheorems/compare/v0.1.1...v0.1.2 [v0.1.1]: https://github.com/mbertucci47/keytheorems/compare/v0.1.0...v0.1.1
\ No newline at end of file diff --git a/macros/latex/contrib/keytheorems/README.md b/macros/latex/contrib/keytheorems/README.md index baf8506c2d..bf344a5b24 100644 --- a/macros/latex/contrib/keytheorems/README.md +++ b/macros/latex/contrib/keytheorems/README.md @@ -94,7 +94,8 @@ Some of the code is a direct translation from thmtools but a few things are chan as in the former, `bodyfont` is `\normalfont`, not the default `\itshape`. This package keeps the defaults unless a key is specifically given. - There is no `restatable` environment except with package option `thmtools-compat`. Use the - `store` (alias `restate`) key. + `store` (alias `restate`) key. For counters and labels pointing to the restated theorem, + use `store*` (alias `restate*`). - Rather than `restate=foo` defining a command `\foo*`, theorems are retrieved with `\getkeytheorem{foo}`. For just the theorem body, use `\getkeytheorem[body]{foo}`. Also, this retrieval can happen even before the theorem is stated since keytheorems writes the contents @@ -107,12 +108,7 @@ Some of the code is a direct translation from thmtools but a few things are chan - With thmtools, the command `\newtheorem{<envname>}{<heading>}` is changed to behave like `\declaretheorem[name=<heading>]{<envname>}`. This is not the default here. Instead either only use the new interface or load the package with option `overload`. -- All new keys (see doc for descriptions): - - global (load-time or in `\keytheoremset`): `overload`, `thmtools-compat`, `store-all`, `restate-counters`, `continues-code`, `qed-symbol`, `auto-translate` - - keys for theorem envs: `note` (alias `name`), `short-note`, `continues*`, `store` (alias `restate`), `seq` - - declaring theorems (in `\newkeytheorem`): `tcolorbox`, `tcolorbox-no-titlebar` - - declaring styles (in `\newkeytheoremstyle`): `inherit-style` - - list of theorems (in `\keytheoremlistset` and `\listofkeytheorems`): `onlynumbered`, `seq`, `title-code`, `no-title`, `note-code`, `print-body`, `no-continues`, `no-chapter-skip`, `chapter-skip-length` +- Adds several new keys (see doc for details). ## thmtools issues resolved by keytheorems Issues from the thmtools [github page](https://github.com/muzimuzhi/thmtools), @@ -464,10 +460,9 @@ text - Clean up the code. Things are out of order, poorly named, etc. - Add more error messages. - thmtools features not yet implemented - - labels pointing to restated theorem, not original - real [`beamer`](https://ctan.org/pkg/beamer) support - certainly more -- For a complete list, see [`keytheorems-ideas.txt`](https://github.com/mbertucci47/keytheorems/blob/main/keytheorems-ideas.txt) +- For a complete list, see [`keytheorems-ideas.md`](https://github.com/mbertucci47/keytheorems/blob/main/keytheorems-ideas.md) ## Notes/issues on thmtools, not on Github diff --git a/macros/latex/contrib/keytheorems/doc/keytheorems-doc.pdf b/macros/latex/contrib/keytheorems/doc/keytheorems-doc.pdf Binary files differindex 79acb6371a..bbcd528596 100644 --- a/macros/latex/contrib/keytheorems/doc/keytheorems-doc.pdf +++ b/macros/latex/contrib/keytheorems/doc/keytheorems-doc.pdf diff --git a/macros/latex/contrib/keytheorems/doc/keytheorems-doc.tex b/macros/latex/contrib/keytheorems/doc/keytheorems-doc.tex index b285f5f840..78b149fbac 100644 --- a/macros/latex/contrib/keytheorems/doc/keytheorems-doc.tex +++ b/macros/latex/contrib/keytheorems/doc/keytheorems-doc.tex @@ -20,7 +20,7 @@ \usepackage{cleveref} \usepackage{amssymb} -\def\version{0.1.2} +\def\version{0.1.3} \title{% \pkg{keytheorems} package \\[1ex] @@ -53,7 +53,17 @@ \newkeytheorem{remark}[style=remark] \tcbset{ defstyle/.style={arc=0mm,colback=blue!5!white,colframe=blue!75!black}, + thmstyle/.style={colback=green!5,colframe=green!35!black}, } +\newkeytheoremstyle{tcb-standard}{ + tcolorbox=thmstyle, + headpunct={}, + notebraces={}{}, + noteseparator={: }, + notefont=\bfseries, + bodyfont=\normalfont, + } +\newkeytheorem{mytheo}[name=My Theorem,style=tcb-standard] \newkeytheorem{corollary}[tcolorbox] \newkeytheorem{definition}[ style=definition, @@ -137,7 +147,7 @@ Several issues encountered with \pkg{thmtools} are avoided (see the README for a \section{Dependencies} -Without using the \refKey{tcolorbox} or \refKey{tcolorbox-no-titlebar} options, the package loads the \pkg{aliascnt}, \pkg{amsthm}, \pkg{refcount}, and \pkg{translations} packages. +Without using the \refKey{tcolorbox} or \refKey{tcolorbox-no-titlebar} options, the package loads the \pkg{aliascnt}, \pkg{amsthm}, \pkg{refcount}, \pkg{translations}, and \pkg{unique} packages. A \LaTeX{} kernel no older than 2023-06-01 is required; if older than 2024-06-01, \pkg{nameref} is required. \section{Global Options} @@ -198,7 +208,7 @@ This key does not reset the list, so you don't need to include |equation| in \me {initially \cs{GetTranslation}\ttbraces{keythms\string_continues}\cs{pageref}\ttbraces{\#1}} The code used to typeset the note produced by the \refKey{continues} key. If English or an unknown language is used, defaults to \texttt{continuing from p.}\cs{,}\cs{pageref}\ttbraces{\#1}. -Currently (likely inaccurate!) translations exist for French, German, Italian, and Spanish. +Currently (likely inaccurate!) translations exist for French, German, Italian, Portuguese, and Spanish. \end{docKey} \begin{docKey}{qed-symbol} @@ -304,10 +314,10 @@ The starred version also copies the theorem note, if it exists. \end{docKey} \begin{docKey}{store} - {=\meta{tag}} + {\sarg=\meta{tag}} {initially unset} -Alias \docAuxKey{restate}. -Stores the the theorem to be restated at any point in the document with \refCom{getkeytheorem}. +Alias \docAuxKey{restate}\sarg. +Stores the the theorem to be restated at any point in the document with \refCom{getkeytheorem}. With the starred version, counters and labels are taken from the copy called with \cs{getkeytheorem}, so in this case can only be restated once. This allows you, for example, to write all theorems and proofs in the appendix and call \cs{getkeytheorem} at the appropriate time mid-document. \begin{keythmscode}[] \begin{theorem}[store=blub] @@ -610,6 +620,33 @@ Some text \end{docKey} +\pkg{tcolorbox} offers its own comprehensive \texttt{theorems} library. If all of your theorems are to be tcolorboxes, I highly recommend using it instead of this package! However, if only some of your theorems will use a tcolorbox, you may want to replicate the styles of \cs{NewTcbTheorem}. Here is an example that emulates \pkg{tcolorbox}'s \texttt{standard} theorem style. + +\begin{tcbwritetemp} +\tcbset{ + thmstyle/.style={ + colback=green!5, + colframe=green!35!black}, + } +\newkeytheoremstyle{tcb-standard}{ + tcolorbox=thmstyle, + headpunct={}, + notebraces={}{}, + noteseparator={: }, + notefont=\bfseries, + bodyfont=\normalfont, + } +\newkeytheorem{mytheo}[ + name=My Theorem, + style=tcb-standard] +\end{tcbwritetemp} + +\begin{keythmscode}[withpreamble] +\begin{mytheo}[This is my title] +Some theorem text +\end{mytheo} +\end{keythmscode} + \section{Theorem Styles} \begin{docCommand}{newkeytheoremstyle} @@ -698,6 +735,12 @@ Alias \docAuxKey{headstyle}. Within \meta{code}, the commands \docAuxCommand{NAM \subsection{Keys added by \pkg{keytheorems}} +\begin{docKey}{noteseparator} + {=\meta{code}} + {initially \textvisiblespace} +The code inserted before the note, and printed only if there is a note. This is executed \emph{before} the font commands set by \refKey{notefont} take effect. +\end{docKey} + \begin{docKey}{inherit-style} {=\meta{style name}} {initially unset} @@ -712,7 +755,7 @@ At the start of the next run, this file is input at the beginning of the documen \begin{docCommand}{getkeytheorem} {\oarg{property}\marg{tag}} -Retrieves the theorem given the key |store=|\meta{tag}. +Retrieves the theorem given the key |store=|\meta{tag} or |store*=|\meta{tag}. An optional \meta{property} can be given to retrieve only the corresponding part of the theorem. Currently only the property |body| is implemented, which retrieves the (unformatted) body of the theorem. @@ -728,9 +771,22 @@ Fascinating example. \end{docCommand} -\begin{docCommand}{IfRestatingTF} - {\marg{true code}\marg{false code}} -Executes \meta{true code} if being retrieved with \refCom{getkeytheorem} and \meta{false code} if in the original theorem. +\begin{docCommands} + { + { + doc name = IfRestatingTF, + doc parameter=\marg{true code}\marg{false code} + }, + { + doc name = IfRestatingT, + doc parameter=\marg{true code} + }, + { + doc name = IfRestatingF, + doc parameter=\marg{false code} + } + } +Executes \meta{true code} if being retrieved with \refCom{getkeytheorem} and \meta{false code} if in the original theorem. This is reversed if \texttt{store*} is used. \begin{keythmscode}[] \begin{example}[store=hmm] @@ -742,7 +798,7 @@ example! \getkeytheorem{hmm} \end{keythmscode} -\end{docCommand} +\end{docCommands} \section{Listing Theorems} @@ -812,7 +868,7 @@ For the AMS classes, this is initially |1.5pc|. {=\meta{text}} {initially \cs{GetTranslation}\ttbraces{keythms\string_listof\string_title}} Defaults to ``List of Theorems'' if English or an unknown language is used. -Currently French, German, Italian, and Spanish have (likely inaccurate!) translations. +Currently French, German, Italian, Portuguese, and Spanish have (likely inaccurate!) translations. A translation can be added with a GitHub pull request or manually with \cs{DeclareTranslation}\marg{lang}\ttbraces{keythms\string_listof\string_title}\marg{text}. \end{docKey} diff --git a/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsart-support.tex b/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsart-support.tex index 36f89461d2..43b1813384 100644 --- a/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsart-support.tex +++ b/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsart-support.tex @@ -1,7 +1,7 @@ % Maintained by Matthew Bertucci, 2024-present % Please report all issues and feature requests at https://github.com/mbertucci47/keytheorems % This work is licensed under the LPPL version 1.3c or later: https://www.latex-project.org/lppl.txt -\ProvidesExplFile{keythms-amsart-support}{2024-09-16}{0.1.2} +\ProvidesExplFile{keythms-amsart-support}{2024-09-19}{0.1.3} {keytheorems~support~for~the~amsart~class} \__keythms_support_AMSshared_code: @@ -20,6 +20,7 @@ postheadspace = .5em, notefont = \@acmplainnotefont, notebraces = {(}{)}, + noteseparator = {~}, headstyle = \keythms_thmstyle_headcmd_default:nnn{#1}{#2}{#3}, } \keys_define:nn { keytheorems/thmstyle } @@ -47,6 +48,7 @@ postheadspace = 5pt plus 1pt minus 1pt, notefont = \fontseries\mddefault\upshape, notebraces = {(}{)}, + noteseparator = {~}, headstyle = \keythms_thmstyle_headcmd_default:nnn{#1}{#2}{#3}, } } diff --git a/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsbook-support.tex b/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsbook-support.tex index e7e83ea1cb..f5d8fc9cb9 100644 --- a/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsbook-support.tex +++ b/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsbook-support.tex @@ -1,7 +1,7 @@ % Maintained by Matthew Bertucci, 2024-present % Please report all issues and feature requests at https://github.com/mbertucci47/keytheorems % This work is licensed under the LPPL version 1.3c or later: https://www.latex-project.org/lppl.txt -\ProvidesExplFile{keythms-amsbook-support}{2024-09-16}{0.1.2} +\ProvidesExplFile{keythms-amsbook-support}{2024-09-19}{0.1.3} {keytheorems~support~for~the~amsbook~class} \__keythms_support_AMSshared_code: @@ -17,6 +17,7 @@ postheadspace = 5pt plus 1pt minus 1pt, notefont = \fontseries\mddefault\upshape, notebraces = {(}{)}, + noteseparator = {~}, headstyle = \keythms_thmstyle_headcmd_default:nnn{#1}{#2}{#3}, } diff --git a/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsproc-support.tex b/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsproc-support.tex index a3bb1d65b9..62306f0b29 100644 --- a/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsproc-support.tex +++ b/macros/latex/contrib/keytheorems/tex/class-support/keythms-amsproc-support.tex @@ -1,7 +1,7 @@ % Maintained by Matthew Bertucci, 2024-present % Please report all issues and feature requests at https://github.com/mbertucci47/keytheorems % This work is licensed under the LPPL version 1.3c or later: https://www.latex-project.org/lppl.txt -\ProvidesExplFile{keythms-amsproc-support}{2024-09-16}{0.1.2} +\ProvidesExplFile{keythms-amsproc-support}{2024-09-19}{0.1.3} {keytheorems~support~for~the~amsproc~class} \__keythms_support_AMSshared_code: @@ -17,6 +17,7 @@ postheadspace = 5pt plus 1pt minus 1pt, notefont = \fontseries\mddefault\upshape, notebraces = {(}{)}, + noteseparator = {~}, headstyle = \keythms_thmstyle_headcmd_default:nnn{#1}{#2}{#3}, } diff --git a/macros/latex/contrib/keytheorems/tex/class-support/keythms-memoir-support.tex b/macros/latex/contrib/keytheorems/tex/class-support/keythms-memoir-support.tex index 4fa2804042..c2ac32a40b 100644 --- a/macros/latex/contrib/keytheorems/tex/class-support/keythms-memoir-support.tex +++ b/macros/latex/contrib/keytheorems/tex/class-support/keythms-memoir-support.tex @@ -1,7 +1,7 @@ % Maintained by Matthew Bertucci, 2024-present % Please report all issues and feature requests at https://github.com/mbertucci47/keytheorems % This work is licensed under the LPPL version 1.3c or later: https://www.latex-project.org/lppl.txt -\ProvidesExplFile{keythms-memoir-support}{2024-09-16}{0.1.2} +\ProvidesExplFile{keythms-memoir-support}{2024-09-19}{0.1.3} {keytheorems~support~for~the~memoir~class} \bool_new:N \l__keythms_support_titlecode_bool diff --git a/macros/latex/contrib/keytheorems/tex/keytheorems.sty b/macros/latex/contrib/keytheorems/tex/keytheorems.sty index 28c485083e..2dc91cf86c 100644 --- a/macros/latex/contrib/keytheorems/tex/keytheorems.sty +++ b/macros/latex/contrib/keytheorems/tex/keytheorems.sty @@ -2,7 +2,7 @@ % Please report all issues and feature requests at https://github.com/mbertucci47/keytheorems % This work is licensed under the LPPL version 1.3c or later: https://www.latex-project.org/lppl.txt \NeedsTeXFormat{LaTeX2e}[2023-06-01] -\ProvidesExplPackage{keytheorems}{2024-09-16}{0.1.2}{l3keys interface to amsthm} +\ProvidesExplPackage{keytheorems}{2024-09-19}{0.1.3}{l3keys interface to amsthm} \IfFormatAtLeastTF { 2024-06-01 } { } { @@ -10,6 +10,7 @@ \cs_generate_variant:Nn \cs_set:Npn { Npe } \cs_generate_variant:Nn \iow_shipout:Nn { Ne } \cs_generate_variant:Nn \keys_set:nn { ne } + \cs_generate_variant:Nn \msg_warning:nnn { nne } \cs_generate_variant:Nn \tl_put_right:Nn { Ne } \ProvideDocumentCommand \IfPackageLoadedT { m m } { \IfPackageLoadedTF{#1}{#2}{ } } @@ -45,6 +46,25 @@ Try~compiling~again.~If~that~doesn't~work,~ check~the~spelling~of~'#1'. } +\msg_new:nnn { keytheorems } { no-prop-for-stored-theorem } + { + No~property~'#1'~found~for~stored~theorem~'#2'. + } +\msg_new:nnn { keytheorems } { store-reversed-not-got } + { + 'store*=#1'~only~makes~sense~if~you've~called~\protect\getkeytheorem{#1}.~ + Check~that~\protect\getkeytheorem{#1}~is~called~and~compile~again. + } +\msg_new:nnn { keytheorems } { restate-body-never-got } + { + With~'store*=#1',~\protect\getkeytheorem[body]{#1}~only~makes~sense~if~ + \protect\getkeytheorem{#1}~has~been~called.~ + Check~that~\protect\getkeytheorem{#1}~is~called~and~compile~again. + } +\msg_new:nnn { keytheorems } { store-reversed-called-twice } + { + With~'store*=#1',~\protect\getkeytheorem{#1}~can~be~called~only~once. + } \msg_new:nnn { keytheorems } { undefined-thm-hook } { No~theorem~hook~'#1'.~Check~the~spelling.~ @@ -116,6 +136,7 @@ \tl_new:N \l__keythms_thmstyle_rnotebrace_tl \tl_new:N \l__keythms_thmuse_envname_tl \tl_new:N \g__keythms_thmuse_temprestatedata_tl +\tl_new:N \g__keythms_thmuse_temprestatedatareversed_tl \newcounter{keythms_restate_dummyctr} \cs_gset:Npn \theHkeythms_restate_dummyctr @@ -133,19 +154,6 @@ \cs_generate_variant:Nn \hook_gput_code:nnn { nnV } \cs_generate_variant:Nn \keys_precompile:nnN { nv, nVc } -% for detecting AMS classes -\prg_new_conditional:Npnn \keythms_if_amsclass: { T, TF } - { - \IfClassLoadedTF { amsart } { \prg_return_true: } - { - \IfClassLoadedTF { amsbook } { \prg_return_true: } - { - \IfClassLoadedTF { amsproc } { \prg_return_true: } - { \prg_return_false: } - } - } - } - %%%%%%%%%%%%%% %%% Styles %%% %%%%%%%%%%%%%% @@ -187,6 +195,7 @@ break .value_forbidden:n = true, notefont .tl_set:N = \l__keythms_thmstyle_notefont_tl, notebraces .code:n = \exp_after:wN \__keythms_thmstyle_setbraces:nn #1, + noteseparator .tl_set:N = \l__keythms_thmstyle_noteseparator_tl, headstyle .choice:, headstyle / margin .code:n = { @@ -240,7 +249,8 @@ \cs_new:Npn \NOTE { \keythms_thmstyle_thmnote:n - { ~ \group_begin: % group so notefont doesn't affect headpunct + { \exp_not:V \l__keythms_thmstyle_noteseparator_tl + \group_begin: % group so notefont doesn't affect headpunct \exp_not:V \l__keythms_thmstyle_notefont_tl \l__keythms_thmstyle_lnotebrace_tl ##3 \l__keythms_thmstyle_rnotebrace_tl \group_end: @@ -250,11 +260,10 @@ \cs_new:Npn \keythms_thmstyle_headcmd_default:nnn #1#2#3 { \keythms_thmstyle_thmname:n { #1 } - \keythms_thmstyle_thmnumber:n - { \tl_if_empty:nF { #1 } { ~ } \exp_not:N \textup { #2 } } - % ^ this \tl_if_empty has no effect... + \keythms_thmstyle_thmnumber:n { ~ \textup { #2 } } \keythms_thmstyle_thmnote:n - { ~ \group_begin: % group so notefont doesn't affect headpunct + { \exp_not:V \l__keythms_thmstyle_noteseparator_tl + \group_begin: % group so notefont doesn't affect headpunct \exp_not:V \l__keythms_thmstyle_notefont_tl \l__keythms_thmstyle_lnotebrace_tl #3 \l__keythms_thmstyle_rnotebrace_tl \group_end: @@ -278,6 +287,7 @@ postheadspace = 5pt plus 1pt minus 1pt, notefont = \fontseries\mddefault\upshape, notebraces = {(}{)}, + noteseparator = {~}, headstyle = \keythms_thmstyle_headcmd_default:nnn{#1}{#2}{#3}, } @@ -824,6 +834,8 @@ %store .default:n = \q_no_value, % ={name} causes issues restate .meta:n = { store = #1 }, % ^ thmtools compatibility + store* .tl_set:N = \l__keythms_thmuse_storereversed_tl, + restate* .meta:n = { store* = #1 }, listhack .choice:, % need equals sign listhack / true .code:n = \bool_set_true:N \l__keythms_thmuse_listhack_bool, listhack / false .code:n = \bool_set_false:N \l__keythms_thmuse_listhack_bool, @@ -856,6 +868,68 @@ \__keythms_thm_postfoot_code:n { #1 } } {} + \DeclareDocumentEnvironment { keythms_grabreversed_#1 } { m O{} +b } + { % ##1 = keys, ##2 = note, ##3 = theorem body + \tl_if_exist:cTF + { c__keythms_storeatbegin_ \l__keythms_thmuse_storereversed_tl _restatecounters_tl } + { + \bool_set_true:N \l__keythms_thmuse_restating_bool + \exp_args:NNe \prop_set_from_keyval:Nn \l__keythms_restate_counters_prop + { \tl_use:c { c__keythms_storeatbegin_ \l__keythms_thmuse_storereversed_tl _restatecounters_tl } } + \prop_map_inline:Nn \l__keythms_restate_counters_prop + { + \tl_set:ce { l_keythms_restate_current_####1_tl } + { \the\value{####1} } + \setcounter { ####1 } { ####2 } + % ^ FIX: what if eq's numbered by section, theorem, etc.? The + % thmtools code is opaque.... Or maybe should be up to the + % user to say "restate-counters={section,chapter,...}". + \cs_set:cpn { theH ####1 } + { \use:c { the ####1 } . \theHkeythms_restate_dummyctr } + } + \tl_if_empty:cTF + { c__keythms_storeatbegin_ \l__keythms_thmuse_storereversed_tl _label_tl } + { \refstepcounter{keythms_restate_dummyctr} } % for unnumbered theorems + { + \cs_set:cpn { the #1 } + { \tl_use:c { c__keythms_storeatbegin_ \l__keythms_thmuse_storereversed_tl _label_tl } } + \cs_set_eq:cN { c@ #1 } \c@keythms_restate_dummyctr + \cs_set_eq:cN { theH #1 } \theHkeythms_restate_dummyctr + % ^ why are the last two lines here? We shouldn't be referencing + % restated theorems. Think it's a remnant of thmtools + % WRONG: needed to make numbering correct after restated theorem. + % not sure about theH. <- this is needed to prevent duplicate anchors + } + } + { + \msg_warning:nne { keytheorems } { store-reversed-not-got } + { \l__keythms_thmuse_storereversed_tl } + } + \renewcommand\label[2][]{} % disable \label (opt arg in case cleveref loaded) + \cs_set_eq:NN \ltx@label \use_none:n % disable \ltx@label + \cs_set_eq:NN \property_record:nn \use_none:nn % disable \RecordProperties + \cs_set_eq:NN \setuniqmark \use_none:n % work with numbered=unless-unique + % QUESTION: also disable \hyper@@anchor? \MakeLinkTarget? + \hook_use:n { keytheorems/#1/restated } + \hook_use:n { keytheorems/allthms/restated } + \__keythms_thm_prehead_code:n { #1 } + \begin{keythms_orig_#1}[{##2}] + \__keythms_thm_posthead_code:n { #1 } + % below needs to come after posthead so that correct \@currentHref + % is stored for tcolorbox theorems + \__keythms_thm_addstoredreverseddata:nnn { #1 } { ##1 } { ##3 } + \__keythms_thm_tempstorerestatedatareversed:nnn { #1 } { ##1 } { ##3 } + ##3 + \__keythms_thm_prefoot_code:n { #1 } + \end{keythms_orig_#1} + \__keythms_thm_postfoot_code:n { #1 } + \prop_map_inline:Nn \l__keythms_restate_counters_prop + { + \exp_args:Nnc \setcounter { ####1 } + { l_keythms_restate_current_####1_tl } + } + } + { } % NOTE: have to do a lot of shenanigans to make sure the begin/end of grabbed % theorem env captures only the body and no package code. % This is the price of on-the-fly redefining the env to grab body @@ -870,6 +944,14 @@ \cs_set_eq:NN \__keythms_withhooks_begin:nnV \__keythms_grab_begin:nnV \cs_set_eq:NN \__keythms_withhooks_end:n \__keythms_grab_end:n } + \tl_if_empty:NF \l__keythms_thmuse_storereversed_tl + { + \bool_gset_true:N \g__keythms_listof_writefile_bool + \cs_set_eq:NN \__keythms_withhooks_begin:nn \__keythms_grabreversed_begin:nn + \cs_set_eq:NN \__keythms_withhooks_begin:nnn \__keythms_grabreversed_begin:nnn + \cs_set_eq:NN \__keythms_withhooks_begin:nnV \__keythms_grabreversed_begin:nnV + \cs_set_eq:NN \__keythms_withhooks_end:n \__keythms_grabreversed_end:n + } \__keythms_thm_prehead_continues_code:n { #1 } \tl_if_empty:NTF \l__keythms_thmuse_note_tl { \__keythms_withhooks_begin:nn { #1 } { ##1 } } @@ -903,6 +985,26 @@ } } } + \tl_if_empty:NF \l__keythms_thmuse_storereversed_tl + { + \cs_if_exist:cF + { __keythms_getthm_ \l__keythms_thmuse_storereversed_tl _theorem } + { + \cs_new:cpe + { __keythms_getthm_ \l__keythms_thmuse_storereversed_tl _theorem } + { + \exp_not:N \__keythms_getthmreversed_theorem:nnn + \exp_not:o { \g__keythms_thmuse_temprestatedatareversed_tl } + } + \cs_new:cpn + { __keythms_getthm_ \l__keythms_thmuse_storereversed_tl _body } + { + \textbf{??} + \msg_warning:nnn { keytheorems } { restate-body-never-got } + { #1 } + } + } + } } } \cs_new:Npn \__keythms_use_iii_v_braced:nnnnn #1#2#3#4#5 { {#3}{#5} } @@ -941,6 +1043,18 @@ \cs_generate_variant:Nn \__keythms_grab_begin:nnn { nnV } \cs_new_protected:Npn \__keythms_grab_end:n #1 { \end{keythms_grab_#1} } +\cs_new_protected:Npn \__keythms_grabreversed_begin:nn #1#2 + { % #1 = theorem name, #2 = keys + \begin{keythms_grabreversed_#1}{#2} + } +\cs_new_protected:Npn \__keythms_grabreversed_begin:nnn #1#2#3 + { % #1 = theorem name, #2 = keys, #3 = note + \begin{keythms_grabreversed_#1}{#2}[{#3}] + } +\cs_generate_variant:Nn \__keythms_grabreversed_begin:nnn { nnV } +\cs_new_protected:Npn \__keythms_grabreversed_end:n #1 + { \end{keythms_grabreversed_#1} } + \cs_new_protected:Npn \__keythms_orig_begin:n #1 { \begin{keythms_orig_#1} } \cs_new_protected:Npn \__keythms_orig_begin:nn #1#2 { \begin{keythms_orig_#1}[{#2}] } @@ -1016,6 +1130,19 @@ } } } +\cs_new_protected:Npn \__keythms_thm_addstoredreverseddata:nnn #1#2#3 + { + \iow_shipout:Ne \@auxout + { + \exp_not:N \@writefile { thlist } + { + \KeyThmsSavedTheoremReversed { \l__keythms_thmuse_storereversed_tl } + { #1 } + { \exp_not:n { #2 } } + { \exp_not:n { #3 } } + } + } + } \cs_new_protected:Npn \__keythms_thm_tempstorerestatedata:nnn #1#2#3 { % #1 = theorem name, #2 = keys, #3 = body \tl_gset:Ne \g__keythms_thmuse_temprestatedata_tl % needs to be global to get out of env @@ -1027,18 +1154,29 @@ { \exp_not:n { #3 } } % with \text_expand:n ? } } - +\cs_new_protected:Npn \__keythms_thm_tempstorerestatedatareversed:nnn #1#2#3 + { + \tl_gset:Ne \g__keythms_thmuse_temprestatedatareversed_tl % needs to be global to get out of env + { + { #1 } + { \exp_not:n { #2 } } + { \exp_not:n { #3 } } + } + } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% Retrieving Theorem Data %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \cs_new_protected:Npn \KeyThmsSavedTheorem #1#2#3#4#5#6#7 % 7th arg is body { \use:c { __keythms_thmitem_#1:nnnnnn } {#2}{#3}{#4}{#5}{#6}{#7} } +\cs_new_protected:Npn \KeyThmsSavedTheoremReversed #1#2#3#4 { } % gobble by default \keys_define:nn { keytheorems/storeatbegin } { store .tl_set:N = \l__keythms_storeatbegin_store_tl, restate .meta:n = { store=#1 }, + store* .tl_set:N = \l__keythms_storeatbegin_storereversed_tl, + restate* .meta:n = { store*=#1 }, unknown .code:n = { } % do nothing with unknown keys } @@ -1085,8 +1223,39 @@ \__keythms_getthm_body:nn {#5}{#7} } } + \tl_if_empty:NF \l__keythms_storeatbegin_storereversed_tl + { + \tl_const:cn + { c__keythms_storeatbegin_ \l__keythms_storeatbegin_storereversed_tl _label_tl } + { #2 } + \tl_const:cn + { c__keythms_storeatbegin_ \l__keythms_storeatbegin_storereversed_tl _restatecounters_tl } + { #5 } + \cs_new_protected:cpn + { __keythms_getthm_ \l__keythms_storeatbegin_storereversed_tl _body } + { + \__keythms_getthm_body:nn {#5}{#7} + } + } \group_end: } + \cs_set_protected:Npn \KeyThmsSavedTheoremReversed #1#2#3#4 + { + \bool_new:c { g__keythms_restate_#1_called_bool } + \cs_gset:cpn { __keythms_getthm_ #1 _theorem } + { \__keythms_getthmreversed_theorem:nnn { #2 } { #3 } { #4 } } + \hook_gput_code:nnn { begindocument/end } { . } + { + \cs_if_exist:cF { __keythms_getthm_ #1 _body } + { + \cs_new_protected:cpn { __keythms_getthm_ #1 _body } + { + \textbf{??} + \msg_warning:nnn { keytheorems } { restate-body-never-got } { #1 } + } + } + } + } \file_if_exist_input:n { \c_sys_jobname_str.thlist } \group_end: } @@ -1098,6 +1267,8 @@ { \prg_return_false: } } \NewDocumentCommand \IfRestatingTF { } { \keythms_if_restating:TF } +\NewDocumentCommand \IfRestatingT { } { \keythms_if_restating:T } +\NewDocumentCommand \IfRestatingF { } { \keythms_if_restating:F } \cs_new_protected:Npn \__keythms_getthm_theorem:nnnnn #1#2#3#4#5 { % #1 = name, #2 = number, #3 = restate counters, #4 = keys, #5 = theorem body @@ -1111,7 +1282,8 @@ % ^ FIX: what if eq's numbered by section, theorem, etc.? The % thmtools code is opaque.... Or maybe should be up to the % user to say "restate-counters={section,chapter,...}". - \cs_set:cpn { theH ##1 } { \use:c { the ##1 } . \theHkeythms_restate_dummyctr } + \cs_set:cpn { theH ##1 } + { \use:c { the ##1 } . \theHkeythms_restate_dummyctr } } \tl_if_empty:nTF { #2 } { \refstepcounter{keythms_restate_dummyctr} } % for unnumbered theorems @@ -1162,7 +1334,8 @@ % ^ FIX: what if eq's numbered by section, theorem, etc.? The % thmtools code is opaque.... Or maybe should be up to the % user to say "restate-counters={section,chapter,...}". - \cs_set:cpn { theH ##1 } { \use:c { the ##1 } . \theHkeythms_restate_dummyctr } + \cs_set:cpn { theH ##1 } + { \use:c { the ##1 } . \theHkeythms_restate_dummyctr } } \refstepcounter{keythms_restate_dummyctr} \renewcommand\label[2][]{} % disable \label (opt arg in case cleveref loaded) @@ -1179,18 +1352,79 @@ \group_end: } +\cs_new_protected:Npn \__keythms_getthmreversed_theorem:nnn #1#2#3 + { % #1 = envname, #2 = keys, #3 = theorem body + \group_begin: + \bool_set_false:N \l__keythms_thmuse_restating_bool + \keys_set:nn { keytheorems/thmuse } { #2 } + \__keythms_thm_prehead_continues_code:n { #1 } + \__keythms_thm_prehead_code:n { #1 } + \tl_if_empty:NTF \l__keythms_thmuse_note_tl + { \__keythms_orig_begin:n { #1 } } + { \__keythms_orig_begin:nV { #1 } \l__keythms_thmuse_note_tl } + \clist_map_inline:Nn \g__keythms_restatecounters_clist + { + \prop_gput:Nne \g__keythms_thmuse_othercounters_prop { ##1 } + { \the\value{##1} } + } + \__keythms_thm_posthead_code:n { #1 } + \__keythms_thm_addcontentsdata:nnnn { #1 } + { \prop_to_keyval:N \g__keythms_thmuse_othercounters_prop } + { #2 } { #3 } + \__keythms_thm_tempstorerestatedata:nnn { #1 } { #2 } { #3 } % for defining getthm_body + #3 + \__keythms_thm_prefoot_code:n { #1 } + \__keythms_orig_end:n { #1 } + \__keythms_thm_postfoot_code:n { #1 } + % While we're here, define getthm_body + \cs_if_exist:cF + { __keythms_getthm_ \l__keythms_thmuse_storereversed_tl _body } + { + \cs_new:cpe + { __keythms_getthm_ \l__keythms_thmuse_storereversed_tl _body } + { + \exp_not:N \__keythms_getthm_body:nn + \exp_args:No \exp_not:o + { + \exp_after:wN \__keythms_use_iii_v_braced:nnnnn + \g__keythms_thmuse_temprestatedata_tl + } + } + } + \bool_gset_true:c + { g__keythms_restate_ \l__keythms_thmuse_storereversed_tl _called_bool } + \group_end: + } + % \getkeytheorem[<property>]{<tag>} -\NewDocumentCommand \getkeytheorem { o m } +\NewDocumentCommand \getkeytheorem { O{theorem} m } { - \cs_if_exist:cTF { __keythms_getthm_#2_theorem } + \cs_if_exist:cTF { __keythms_getthm_#2_#1 } { - \IfNoValueTF { #1 } - { \use:c { __keythms_getthm_#2_theorem } } + \bool_if_exist:cTF { g__keythms_restate_#2_called_bool } + { + \str_if_eq:nnTF { #1 } { theorem } + { + \bool_if:cTF + { g__keythms_restate_#2_called_bool } + { + \msg_error:nnn { keytheorems } + { store-reversed-called-twice } { #2 } + } + { \use:c { __keythms_getthm_#2_#1 } } + } + { \use:c { __keythms_getthm_#2_#1 } } + } { \use:c { __keythms_getthm_#2_#1 } } } { \textbf{??} - \msg_warning:nnn { keytheorems } { no-stored-theorem } { #2 } + \cs_if_exist:cTF { __keythms_getthm_#2_theorem } + { + \msg_warning:nnnn { keytheorems } { no-prop-for-stored-theorem } + { #1 } { #2 } % should this be an error? + } + { \msg_warning:nnn { keytheorems } { no-stored-theorem } { #2 } } } } @@ -1199,13 +1433,11 @@ %%%%%%%%%%%%%%%%%%%%% %%% \addtotheoremhook[<envname>]{<hook>}{<code>} -\NewDocumentCommand \addtotheoremhook { o m +m } +\NewDocumentCommand \addtotheoremhook { O{allthms} m +m } { \__hook_if_declared:nTF { keytheorems/allthms/#2 } { - \IfNoValueTF { #1 } - { \hook_gput_code:nnn { keytheorems/allthms/#2 } { . } { #3 } } - { \hook_gput_code:nnn { keytheorems/#1/#2 } { . } { #3 } } + \hook_gput_code:nnn { keytheorems/#1/#2 } { . } { #3 } } { \msg_error:nnn { keytheorems } { undefined-thm-hook } { #2 } @@ -1577,7 +1809,8 @@ { \cs_set_protected:Npn \keythms_listof_chaptervspacehack: { - \int_compare:nNnF { \value{chapter} } = { \g_keythms_listof_prevchapter_int } + \int_compare:nNnF + { \value{chapter} } = { \g_keythms_listof_prevchapter_int } { \addtocontents{ thlist } { @@ -1665,7 +1898,7 @@ \cs_new_protected:Npn \__keythms_overload_code: { - \RenewDocumentCommand { \newtheorem } { smomo } + \RenewDocumentCommand { \newtheorem } { s m o m o } { \IfBooleanTF { ##1 } { \keythms_thm_newkeythm:nn { ##2 } { name=##4, numbered=no } } @@ -1708,42 +1941,41 @@ } } \ProvideDocumentCommand { \listoftheorems } { } { \listofkeytheorems } - \ProvideDocumentCommand { \addtotheorempreheadhook } { o m } + \ProvideDocumentCommand { \addtotheorempreheadhook } { O{allthms} m } { - \IfNoValueTF { ##1 } - { \addtotheoremhook { prehead } { ##2 } } - { \addtotheoremhook [ ##1 ] { prehead } { ##2 } } + \addtotheoremhook [ ##1 ] { prehead } { ##2 } } - \ProvideDocumentCommand { \addtotheorempostheadhook } { o m } + \ProvideDocumentCommand { \addtotheorempostheadhook } { O{allthms} m } { - \IfNoValueTF { ##1 } - { \addtotheoremhook { posthead } { ##2 } } - { \addtotheoremhook [ ##1 ] { posthead } { ##2 } } + \addtotheoremhook [ ##1 ] { posthead } { ##2 } } - \ProvideDocumentCommand { \addtotheoremprefoothook } { o m } + \ProvideDocumentCommand { \addtotheoremprefoothook } { O{allthms} m } { - \IfNoValueTF { ##1 } - { \addtotheoremhook { prefoot } { ##2 } } - { \addtotheoremhook [ ##1 ] { prefoot } { ##2 } } + \addtotheoremhook [ ##1 ] { prefoot } { ##2 } } - \ProvideDocumentCommand { \addtotheorempostfoothook } { o m } + \ProvideDocumentCommand { \addtotheorempostfoothook } { O{allthms} m } { - \IfNoValueTF { ##1 } - { \addtotheoremhook { postfoot } { ##2 } } - { \addtotheoremhook [ ##1 ] { postfoot } { ##2 } } + \addtotheoremhook [ ##1 ] { postfoot } { ##2 } } \clist_new:N \l__keythms_tcbshaded_keys_clist \clist_new:N \l__keythms_tcbthmbox_keys_clist \keys_define:nn { keytheorems/thm/shaded } { - textwidth .code:n = \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { width=##1 }, - bgcolor .code:n = \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { colback=##1 }, - rulewidth .code:n = \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { boxrule=##1 }, - rulecolor .code:n = \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { colframe=##1 }, - margin .code:n = \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { boxsep=##1 }, + textwidth .code:n = + \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { width=##1 }, + bgcolor .code:n = + \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { colback=##1 }, + rulewidth .code:n = + \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { boxrule=##1 }, + rulecolor .code:n = + \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { colframe=##1 }, + margin .code:n = + \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { boxsep=##1 }, padding .meta:n = { margin=##1 }, - leftmargin .code:n = \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { left~skip=##1 }, - rightmargin .code:n = \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { right~skip=##1 }, + leftmargin .code:n = + \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { left~skip=##1 }, + rightmargin .code:n = + \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { right~skip=##1 }, } \keys_define:nn { keytheorems/thm/thmbox } { @@ -2013,6 +2245,11 @@ thmbox .default:n = M, mdframed .code:n = \msg_error:nn { keytheorems } { mdframed-undefined }, } + \keys_define:nn { keytheorems/thmstyle } + { + shaded .code:n = \keythms_thmstyle_savethmkey_optval:n { ##1 }, + thmbox .code:n = \keythms_thmstyle_savethmkey_optval:n { ##1 }, + } } \cs_new_protected:Npn \__keythms_storeall_code: @@ -2040,6 +2277,8 @@ \ProvideTranslation { Italian } { keythms_continues } { continua~da~p.\, } \ProvideTranslation { Spanish } { keythms_listof_title } { Lista~de~teoremas } \ProvideTranslation { Spanish } { keythms_continues } { continúa~de~la~p.\, } + \ProvideTranslation { Portuguese } { keythms_listof_title } { Lista~de~teoremas } + \ProvideTranslation { Portuguese } { keythms_continues } { continua~da~p.\, } } } diff --git a/macros/latex/contrib/univie-ling/README b/macros/latex/contrib/univie-ling/README index c73460f0b4..a2b324b8f4 100644 --- a/macros/latex/contrib/univie-ling/README +++ b/macros/latex/contrib/univie-ling/README @@ -97,14 +97,31 @@ also have a look at the example files. == CHANGES == +V. 2.8 (2024-09-20): + - univie-ling-thesis: + * Add class option titlepage. + * Adapt title page to recent design. This entails a change + of sans serif font from Arial to Source Sans Pro. + * Use TeX Gyre Pagella rather than Palatino with fonts=otf. + - univie-ling-wlg: + * Fix pagination issue with titlepage=specialprint. + * part pages are now empty (no pagination and heading). + - univie-ling-handout: + - univie-ling-expose: + - univie-ling-paper: + - univie-ling-poster: + - univie-ling-thesis: + - univie-ling-wlg: + * Add basic support for thebibliography environment. + * Update documentation on bibliography beyond biblatex. + V. 2.7 (2024-07-23): - univie-ling-wlg: Use proper spacing with covington's reflist environment. - - univie-ling-poster: add smallmargins option. - - univie-ling-thesis: fix running headers in twoside mode. - univie-ling-handout: - univie-ling-expose: - univie-ling-paper: + - univie-ling-poster: - univie-ling-thesis: - univie-ling-wlg: * Fix empty argument check in \weblink. diff --git a/macros/latex/contrib/univie-ling/biblatex-univie-ling/univie-ling.bbx b/macros/latex/contrib/univie-ling/biblatex-univie-ling/univie-ling.bbx index 985dc19f98..09c5bf009b 100644 --- a/macros/latex/contrib/univie-ling/biblatex-univie-ling/univie-ling.bbx +++ b/macros/latex/contrib/univie-ling/biblatex-univie-ling/univie-ling.bbx @@ -38,7 +38,7 @@ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ProvidesFile{univie-ling.bbx}[2024/07/23 v.2.7 biblatex bibliography style] +\ProvidesFile{univie-ling.bbx}[2024/09/20 v.2.8 biblatex bibliography style] % Load base style (authoryear-comp) \RequireBibliographyStyle{authoryear-comp} diff --git a/macros/latex/contrib/univie-ling/biblatex-univie-ling/univie-ling.cbx b/macros/latex/contrib/univie-ling/biblatex-univie-ling/univie-ling.cbx index 7600056940..ea242fdedd 100644 --- a/macros/latex/contrib/univie-ling/biblatex-univie-ling/univie-ling.cbx +++ b/macros/latex/contrib/univie-ling/biblatex-univie-ling/univie-ling.cbx @@ -36,7 +36,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ProvidesFile{univie-ling.cbx}[2024/07/23 v.2.7 biblatex citation style] +\ProvidesFile{univie-ling.cbx}[2024/09/20 v.2.8 biblatex citation style] \RequireCitationStyle{authoryear-comp} diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-expose-deutsch.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-expose-deutsch.pdf Binary files differindex 8652b32a5b..eba25fa8ce 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-expose-deutsch.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-expose-deutsch.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-expose-english.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-expose-english.pdf Binary files differindex a8ac59e821..60ed626727 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-expose-english.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-expose-english.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-handout-deutsch.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-handout-deutsch.pdf Binary files differindex 48b41cac87..7399e4a95e 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-handout-deutsch.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-handout-deutsch.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-handout-english.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-handout-english.pdf Binary files differindex 608e203154..8d6214950a 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-handout-english.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-handout-english.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-paper-deutsch.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-paper-deutsch.pdf Binary files differindex 5ac9aba1d1..ad736b011e 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-paper-deutsch.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-paper-deutsch.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-paper-english.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-paper-english.pdf Binary files differindex 49efca45fa..e1cc237c1d 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-paper-english.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-paper-english.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-poster-deutsch.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-poster-deutsch.pdf Binary files differindex f2260ffeb4..aa00c8d1c5 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-poster-deutsch.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-poster-deutsch.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-poster-english.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-poster-english.pdf Binary files differindex b16ccfe334..6f4e0382c3 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-poster-english.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-poster-english.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-thesis-deutsch.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-thesis-deutsch.pdf Binary files differindex 9673abfdb0..23ab30fb8f 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-thesis-deutsch.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-thesis-deutsch.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-thesis-english.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-thesis-english.pdf Binary files differindex 0d550fa286..08c5a4e700 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-thesis-english.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-thesis-english.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-wlg-article.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-wlg-article.pdf Binary files differindex 8a1d9155c6..7543dc9dbd 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-wlg-article.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-wlg-article.pdf diff --git a/macros/latex/contrib/univie-ling/doc/templates/template-wlg-review.pdf b/macros/latex/contrib/univie-ling/doc/templates/template-wlg-review.pdf Binary files differindex f811c049e4..2adf4091a0 100644 --- a/macros/latex/contrib/univie-ling/doc/templates/template-wlg-review.pdf +++ b/macros/latex/contrib/univie-ling/doc/templates/template-wlg-review.pdf diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-expose.pdf b/macros/latex/contrib/univie-ling/doc/univie-ling-expose.pdf Binary files differindex 7efd2c2f36..d23eff73f7 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-expose.pdf +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-expose.pdf diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-expose.tex b/macros/latex/contrib/univie-ling/doc/univie-ling-expose.tex index c3d1c66805..3e398c2170 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-expose.tex +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-expose.tex @@ -63,7 +63,7 @@ \author{\texorpdfstring{Jürgen Spitzmüller% \thanks{Please report issues via \protect\url{https://github.com/jspitz/univie-ling}.}}{Jürgen Spitzmüller}} -\date{Version 2.7, 2024/07/23} +\date{Version 2.8, 2024/09/20} \maketitle @@ -336,13 +336,31 @@ If you want to use APA/DGPs style, consider the following caveats. for details. \end{itemize} -\subsection{Using a different style}\label{sec:bib-different} +\subsection{Using a different style or not using biblatex}\label{sec:bib-different} If you do not want or are not supposed to use neither the default Unified nor the APA/DGPs style, you can disable automatic \textsf{biblatex} loading via the class option \joption{biblatex=false} (see sec.~\ref{packageloading}). In this case, you will need to load your own style manually, by entering the respective \textsf{biblatex} or Bib\TeX\ commands. One case where you need to do that is if you prefer classic Bib\TeX\ over \textsf{biblatex}. -If you want to follow the Applied Linguistics conventions, but prefer classic Bib\TeX\ over \textsf{biblatex}, a Bib\TeX\ style file \textsf{unified.bst} that implements the \emph{Unified Style Sheet for Linguistics} is available on the Internet.\footnote{\url{http://celxj.org/downloads/unified.bst}} Note, though, that this package does not have specific support for German, so it is only really suitable if you write in English. Thus, if you want to follow the Applied Linguistics conventions, it is strongly recommended that you use \textsf{biblatex} with the preloaded \textsf{univie-ling} style. +If you want to follow the Applied Linguistics conventions, but prefer classic Bib\TeX\ over \textsf{biblatex}, a (seemingly unmaintained) Bib\TeX\ style file \textsf{unified.bst} that implements the \emph{Unified Style Sheet for Linguistics} is available on the Internet.\footnote{A copy is at \url{https://raw.githubusercontent.com/jspitz/univie-ling/master/3rdparty/unified.bst}.} This style produces English output, a localized version for German, +\textsf{unified-de.bst}, is available as well.\footnote{See \url{https://raw.githubusercontent.com/jspitz/univie-ling/master/3rdparty/unified-de.bst}.} +Both styles require the \textsf{natbib} package to be loaded. +Note, though, that both styles provide only very rudimentary support for the Unified Style Sheet. Thus, if you want to follow the Applied Linguistics conventions +really strictly, it is strongly recommended that you use \textsf{biblatex} with the preloaded \textsf{univie-ling} style. + +It is also possible (though not recommended) to use the \texttt{thebibliography} environment if, +for some reason, you do not want to use \textsf{biblatex} nor Bib\TeX. Of course, in this case you are all responsible for the +proper formatting of the entries. If you decide for this, you must load the \textsf{natbib} package and use the +syntax documented in the natbib manual (\cite[sec.~1]{natbib}) for the proper setup of bibitems, e.\,g.,\footnote{% + Note the missing space before and after the parentheses that mark the year!} + +\begin{lstlisting}[language={[LaTeX]TeX},basicstyle={\small\ttfamily},frame=single,morekeywords={bibitem}] +\bibitem[Jones et al.(1990)Jones, Baker, & Williams]{jon90} + Jones, Baker, & Williams. 1990. ... +\end{lstlisting} +% +(Only) if \textsf{natbib} is loaded, \uvlt\ will take care that the spacing with the \texttt{thebibliography} environment +is correct. \section{Further instructions} @@ -370,6 +388,11 @@ Templates are provided as well: \section{Release History} \begin{itemize} + \item 2024/09/20 (v.\,2.8) + \begin{itemize} + \item Add basic support for \texttt{thebibliography} environment. + \item Update documentation on bibliography beyond \textsf{biblatex}. + \end{itemize} \item 2024/07/23 (v.\,2.7) \begin{itemize} \item Fix spacing after \jfcsmacro{weblink}. @@ -474,6 +497,10 @@ Templates are provided as well: \emph{The covington Package. Macros for Linguistics}. September 7, 2018. \url{http://www.ctan.org/pkg/covington}. +\bibitem{natbib} Daly, Patrick W.: +\emph{Natural Sciences Citations and References}. September 13, 2010. +\url{http://www.ctan.org/pkg/natbib}. + \bibitem{apabibltx} Kime, Philip: \emph{APA Bib\LaTeX\ style. Citation and References macros for Bib\LaTeX}. March 3, 2016. \url{http://www.ctan.org/pkg/biblatex-apa}. diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-handout.pdf b/macros/latex/contrib/univie-ling/doc/univie-ling-handout.pdf Binary files differindex a253d4003e..e3ddb8561c 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-handout.pdf +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-handout.pdf diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-handout.tex b/macros/latex/contrib/univie-ling/doc/univie-ling-handout.tex index bdd72da44e..8aef677870 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-handout.tex +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-handout.tex @@ -63,7 +63,7 @@ \author{\texorpdfstring{Jürgen Spitzmüller% \thanks{Please report issues via \protect\url{https://github.com/jspitz/univie-ling}.}}{Jürgen Spitzmüller}} -\date{Version 2.7, 2024/07/23} +\date{Version 2.8, 2024/09/20} \maketitle @@ -373,13 +373,31 @@ If you want to use APA/DGPs style, consider the following caveats. for details. \end{itemize} -\subsection{Using a different style}\label{sec:bib-different} +\subsection{Using a different style or not using biblatex}\label{sec:bib-different} If you do not want or are not supposed to use neither the default Unified nor the APA/DGPs style, you can disable automatic \textsf{biblatex} loading via the class option \joption{biblatex=false} (see sec.~\ref{packageloading}). In this case, you will need to load your own style manually, by entering the respective \textsf{biblatex} or Bib\TeX\ commands. One case where you need to do that is if you prefer classic Bib\TeX\ over \textsf{biblatex}. -If you want to follow the Applied Linguistics conventions, but prefer classic Bib\TeX\ over \textsf{biblatex}, a Bib\TeX\ style file \textsf{unified.bst} that implements the \emph{Unified Style Sheet for Linguistics} is available on the Internet.\footnote{\url{http://celxj.org/downloads/unified.bst}} Note, though, that this package does not have specific support for German, so it is only really suitable if you write in English. Thus, if you want to follow the Applied Linguistics conventions, it is strongly recommended that you use \textsf{biblatex} with the preloaded \textsf{univie-ling} style. +If you want to follow the Applied Linguistics conventions, but prefer classic Bib\TeX\ over \textsf{biblatex}, a (seemingly unmaintained) Bib\TeX\ style file \textsf{unified.bst} that implements the \emph{Unified Style Sheet for Linguistics} is available on the Internet.\footnote{A copy is at \url{https://raw.githubusercontent.com/jspitz/univie-ling/master/3rdparty/unified.bst}.} This style produces English output, a localized version for German, +\textsf{unified-de.bst}, is available as well.\footnote{See \url{https://raw.githubusercontent.com/jspitz/univie-ling/master/3rdparty/unified-de.bst}.} +Both styles require the \textsf{natbib} package to be loaded. +Note, though, that both styles provide only very rudimentary support for the Unified Style Sheet. Thus, if you want to follow the Applied Linguistics conventions +really strictly, it is strongly recommended that you use \textsf{biblatex} with the preloaded \textsf{univie-ling} style. + +It is also possible (though not recommended) to use the \texttt{thebibliography} environment if, +for some reason, you do not want to use \textsf{biblatex} nor Bib\TeX. Of course, in this case you are all responsible for the +proper formatting of the entries. If you decide for this, you must load the \textsf{natbib} package and use the +syntax documented in the natbib manual (\cite[sec.~1]{natbib}) for the proper setup of bibitems, e.\,g.,\footnote{% + Note the missing space before and after the parentheses that mark the year!} + +\begin{lstlisting}[language={[LaTeX]TeX},basicstyle={\small\ttfamily},frame=single,morekeywords={bibitem}] +\bibitem[Jones et al.(1990)Jones, Baker, & Williams]{jon90} + Jones, Baker, & Williams. 1990. ... +\end{lstlisting} +% +(Only) if \textsf{natbib} is loaded, \uvlt\ will take care that the spacing with the \texttt{thebibliography} environment +is correct. \subsection{Heading} @@ -415,6 +433,11 @@ Templates are provided as well: \section{Release History} \begin{description} + \item 2024/09/20 (v.\,2.8) + \begin{itemize} + \item Add basic support for \texttt{thebibliography} environment. + \item Update documentation on bibliography beyond \textsf{biblatex}. + \end{itemize} \item 2024/07/23 (v.\,2.7) \begin{itemize} \item Fix spacing after \jfcsmacro{weblink}. @@ -467,6 +490,10 @@ Templates are provided as well: \emph{The covington Package. Macros for Linguistics}. September 7, 2018. \url{http://www.ctan.org/pkg/covington}. +\bibitem{natbib} Daly, Patrick W.: +\emph{Natural Sciences Citations and References}. September 13, 2010. +\url{http://www.ctan.org/pkg/natbib}. + \bibitem{apabibltx} Kime, Philip: \emph{APA Bib\LaTeX\ style. Citation and References macros for Bib\LaTeX}. March 3, 2016. \url{http://www.ctan.org/pkg/biblatex-apa}. diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-paper.pdf b/macros/latex/contrib/univie-ling/doc/univie-ling-paper.pdf Binary files differindex e04efcd52f..f6b5cf49b9 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-paper.pdf +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-paper.pdf diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-paper.tex b/macros/latex/contrib/univie-ling/doc/univie-ling-paper.tex index d6f5293a89..1e8cd519f5 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-paper.tex +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-paper.tex @@ -63,7 +63,7 @@ \author{\texorpdfstring{Jürgen Spitzmüller% \thanks{Please report issues via \protect\url{https://github.com/jspitz/univie-ling}.}}{Jürgen Spitzmüller}} -\date{Version 2.7, 2024/07/23} +\date{Version 2.8, 2024/09/20} \maketitle @@ -376,13 +376,31 @@ If you want to use APA/DGPs style, consider the following caveats. for details. \end{itemize} -\subsection{Using a different style}\label{sec:bib-different} +\subsection{Using a different style or not using biblatex}\label{sec:bib-different} If you do not want or are not supposed to use neither the default Unified nor the APA/DGPs style, you can disable automatic \textsf{biblatex} loading via the class option \joption{biblatex=false} (see sec.~\ref{packageloading}). In this case, you will need to load your own style manually, by entering the respective \textsf{biblatex} or Bib\TeX\ commands. One case where you need to do that is if you prefer classic Bib\TeX\ over \textsf{biblatex}. -If you want to follow the Applied Linguistics conventions, but prefer classic Bib\TeX\ over \textsf{biblatex}, a Bib\TeX\ style file \textsf{unified.bst} that implements the \emph{Unified Style Sheet for Linguistics} is available on the Internet.\footnote{\url{http://celxj.org/downloads/unified.bst}} Note, though, that this package does not have specific support for German, so it is only really suitable if you write in English. Thus, if you want to follow the Applied Linguistics conventions, it is strongly recommended that you use \textsf{biblatex} with the preloaded \textsf{univie-ling} style. +If you want to follow the Applied Linguistics conventions, but prefer classic Bib\TeX\ over \textsf{biblatex}, a (seemingly unmaintained) Bib\TeX\ style file \textsf{unified.bst} that implements the \emph{Unified Style Sheet for Linguistics} is available on the Internet.\footnote{A copy is at \url{https://raw.githubusercontent.com/jspitz/univie-ling/master/3rdparty/unified.bst}.} This style produces English output, a localized version for German, +\textsf{unified-de.bst}, is available as well.\footnote{See \url{https://raw.githubusercontent.com/jspitz/univie-ling/master/3rdparty/unified-de.bst}.} +Both styles require the \textsf{natbib} package to be loaded. +Note, though, that both styles provide only very rudimentary support for the Unified Style Sheet. Thus, if you want to follow the Applied Linguistics conventions +really strictly, it is strongly recommended that you use \textsf{biblatex} with the preloaded \textsf{univie-ling} style. + +It is also possible (though not recommended) to use the \texttt{thebibliography} environment if, +for some reason, you do not want to use \textsf{biblatex} nor Bib\TeX. Of course, in this case you are all responsible for the +proper formatting of the entries. If you decide for this, you must load the \textsf{natbib} package and use the +syntax documented in the natbib manual (\cite[sec.~1]{natbib}) for the proper setup of bibitems, e.\,g.,\footnote{% + Note the missing space before and after the parentheses that mark the year!} + +\begin{lstlisting}[language={[LaTeX]TeX},basicstyle={\small\ttfamily},frame=single,morekeywords={bibitem}] +\bibitem[Jones et al.(1990)Jones, Baker, & Williams]{jon90} + Jones, Baker, & Williams. 1990. ... +\end{lstlisting} +% +(Only) if \textsf{natbib} is loaded, \uvlt\ will take care that the spacing with the \texttt{thebibliography} environment +is correct. \section{Further instructions} @@ -411,6 +429,11 @@ Templates are provided as well: \section{Release History} \begin{itemize} + \item 2024/09/20 (v.\,2.8) + \begin{itemize} + \item Add basic support for \texttt{thebibliography} environment. + \item Update documentation on bibliography beyond \textsf{biblatex}. + \end{itemize} \item 2024/07/23 (v.\,2.7) \begin{itemize} \item Fix spacing after \jfcsmacro{weblink}. @@ -520,6 +543,10 @@ Templates are provided as well: \emph{The covington Package. Macros for Linguistics}. September 7, 2018. \url{http://www.ctan.org/pkg/covington}. +\bibitem{natbib} Daly, Patrick W.: +\emph{Natural Sciences Citations and References}. September 13, 2010. +\url{http://www.ctan.org/pkg/natbib}. + \bibitem{apabibltx} Kime, Philip: \emph{APA Bib\LaTeX\ style. Citation and References macros for Bib\LaTeX}. March 3, 2016. \url{http://www.ctan.org/pkg/biblatex-apa}. diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-poster.pdf b/macros/latex/contrib/univie-ling/doc/univie-ling-poster.pdf Binary files differindex 06d64c7638..041fea3406 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-poster.pdf +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-poster.pdf diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-poster.tex b/macros/latex/contrib/univie-ling/doc/univie-ling-poster.tex index 1985658b78..0a0b5d213c 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-poster.tex +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-poster.tex @@ -65,7 +65,7 @@ \author{\texorpdfstring{Jürgen Spitzmüller% \thanks{Please report issues via \protect\url{https://github.com/jspitz/univie-ling}.}}{Jürgen Spitzmüller}} -\date{Version 2.7, 2024/07/23} +\date{Version 2.8, 2024/09/20} \maketitle diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-thesis.pdf b/macros/latex/contrib/univie-ling/doc/univie-ling-thesis.pdf Binary files differindex b77ad97265..dbef1fce8e 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-thesis.pdf +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-thesis.pdf diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-thesis.tex b/macros/latex/contrib/univie-ling/doc/univie-ling-thesis.tex index 2feb157bce..500e390c48 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-thesis.tex +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-thesis.tex @@ -59,7 +59,7 @@ \author{\texorpdfstring{Jürgen Spitzmüller% \thanks{Please report issues via \protect\url{https://github.com/jspitz/univie-ling}.}}{Jürgen Spitzmüller}} -\date{Version 2.7, 2024/07/23} +\date{Version 2.8, 2024/09/20} \maketitle @@ -107,7 +107,7 @@ The following packages are required for specific features and loaded by default. \begin{itemize} \setlength\itemsep{0pt} \item \textsf{mathptmx}: Default serif font (\emph{Palatino}). - \item \textsf{urw-arial} or \textsf{helvet}: Default sans serif font (\emph{Arial} or \emph{Helvetica}). + \item \textsf{sourcesanspro}: Default sans serif font (\emph{Source Sans Pro}). \item \textsf{sourcecodepro}: Default monospaced font (\emph{Source Code Pro}). \item \textsf{biblatex}: Contemporary bibliography support. \item \textsf{caption}: Caption layout adjustments. @@ -129,24 +129,18 @@ The following packages are required for optional features (not used by default): \section{Fonts}\label{fonts} -The class uses, by default, PostScript (a.\,k.\,a. Type\,1) fonts and thus requires classic (PDF)LaTeX. Optionally, however, you can also use OpenType fonts via the \textsf{fontspec} -package and the XeTeX or LuaTeX engine instead. In order to do this, use the class option \joption{fonts=otf} (see sec.~\ref{coptions} for details). +The class uses, by default, PostScript (a.\,k.\,a. Type\,1) fonts and thus requires classic (PDF)LaTeX. Optionally, however, you can also use OpenType fonts via the \textsf{fontspec} package and the XeTeX or LuaTeX engine instead. In order to do this, use the class option \joption{fonts=otf} (see sec.~\ref{coptions} for details). -In both cases, the class uses by default \emph{Palatino} as a serif font, \emph{Arial} (or, alternatively, \emph{Helvetica}) as a sans serif font, and \emph{Source Code Pro} -as a monospaced (typewriter) font. Note that \emph{Arial} (PostScript) font support is not -included in most \LaTeX\ distributions by default, due to license reasons. You can install it easily via the \textsf{getnonfreefonts} script.\footnote{\url{https://www.tug.org/fonts/getnonfreefonts} -<25.\,01.\,2017>.} -If \emph{Arial} is not installed, however, \emph{Helvetica} (which is part of the \LaTeX\ core packages) is used as a fallback. This is usually a suitable alternative, since \emph{Arial} and -\emph{Helvetica} only differ in subtle details. If you use \joption{fonts=otf}, you just have to make sure that you have the fonts \emph{Arial}, \emph{Palatino} -and \emph{Source Code Pro} installed on your operating system (with exactly these names, i.\,e., fonts named \emph{Arial Unicode MS} or \emph{Linotype Palatino} will not be recognized!). +In both cases, the class uses by default \emph{Palatino} as a serif font (or the clone \emph{TeX Gyre Pagella} with OpenType, for that matter), +\emph{Source Sans Pro} as a sans serif font, and \emph{Source Code Pro} as a monospaced (typewriter) font. -As to font selection: \emph{Arial} is used in the official title page template\footnote{See \url{https://ssc-philkultur.univie.ac.at/en/degree-programmes/doctoral-programme/doctoral-thesis/}.}, so I used that (with the mentioned fallback, \emph{Helvetica}). +As to font selection: \emph{Source Sans Pro} is used in the official title page template which is nowadays auto-generated by the theses server, +so I used that. A serif font recommendation is not given. The corporate design manual of the university suggests \emph{Source Serif Pro}, but this font is -too heavy for a thesis (and we cannot use the suggested sans, \emph{Source Sans Pro}, anyway). A somewhat standard for academic papers -and theses is \emph{Times New Roman}, but I think this runs too small for the text block size we have (as the name suggests, this font -has been developed for the small columns of newspapers), and it is also pretty overused. The selected font, \emph{Palatino}, in contrast, -suits well to wider text lines, it is well supported in \LaTeX, and it fits with \emph{Helvetica}. The monospaced font, \emph{Source Code Pro}, -is a good companion to this pair. +too heavy for a thesis. A somewhat standard for academic papers and theses is \emph{Times New Roman}, but I think this runs too small for +the text block size we have (as the name suggests, this font has been developed for the small columns of newspapers), and it is also pretty overused. +The selected font, \emph{Palatino}, in contrast, suits well to wider text lines, it is well supported in \LaTeX, and it fits with \emph{Source Sans Pro}. +The monospaced font, \emph{Source Code Pro}, is a good companion to this pair. If you (or your instructor) prefer(s) \emph{Times New Roman} over \emph{Palatino} nonetheless, write to your preamble \begin{lstlisting}[language={[LaTeX]TeX},basicstyle={\small\ttfamily},frame=single] @@ -190,7 +184,8 @@ The class provides the following option to set the font handling: \setlength\itemsep{0pt} \item{\joption{fonts=ps|otf|none}}: if \joption{ps} is selected, PostScript fonts are used (this is the default and the correct choice if you use LaTeX or PDFLaTeX); if \joption{otf} is selected, OpenType fonts are used, the class - loads the \textsf{fontspec} package, sets \emph{Palatino} as main font and \emph{Arial} as sans serif font (this is + loads the \textsf{fontspec} package, sets \emph{Palatino} as main font, \emph{Source Sans Pro} as sans serif font, + and \emph{Source Code Pro} as monospaced font (this is the correct choice if you use XeTeX or LuaTeX; make sure you have the respective fonts installed on your system); if \joption{none} is selected, finally, the class will not load any font package at all, and neither \textsf{fontenc} (this choice is useful if you want to control the font handling completely yourself). @@ -239,6 +234,14 @@ option (e.\,g., \joption{all=false,microtype=true} will switch off all packages The option \joption{draftmark=true|false|firstpage} allows you to mark your document as a draft, which is indicated by a watermark (including the current date). This might be useful when sharing preliminary versions with your supervisor. With \joption{draftmark=true}, this mark is printed on top of each page. With \joption{draftmark=firstpage}, the draft mark appears on the title page only. + +\subsection{Title page}\label{titlepage} + +As of 2024, MA and PhD theses must be submitted to the \textsf{u:space} platform without a title page (the title page will then be generated by the platform from the data +you fill in there). + +Use the option \joption{titlepage=false} to suppress the title page for this purpose. The pagination will remain the same as with titlepage (i.\,e., the document starts at page 2). + \subsection{Further options} \begin{description} @@ -378,13 +381,31 @@ If you want to use APA/DGPs style, consider the following caveats. for details. \end{itemize} -\subsection{Using a different style}\label{sec:bib-different} +\subsection{Using a different style or not using \textsf{biblatex}}\label{sec:bib-different} If you do not want or are not supposed to use neither the default Unified nor the APA/DGPs style, you can disable automatic \textsf{biblatex} loading via the class option \joption{biblatex=false} (see sec.~\ref{packageloading}). In this case, you will need to load your own style manually, by entering the respective \textsf{biblatex} or Bib\TeX\ commands. One case where you need to do that is if you prefer classic Bib\TeX\ over \textsf{biblatex}. -If you want to follow the Applied Linguistics conventions, but prefer classic Bib\TeX\ over \textsf{biblatex}, a Bib\TeX\ style file \textsf{unified.bst} that implements the \emph{Unified Style Sheet for Linguistics} is available on the Internet.\footnote{\url{http://celxj.org/downloads/unified.bst}} Note, though, that this package does not have specific support for German, so it is only really suitable if you write in English. Thus, if you want to follow the Applied Linguistics conventions, it is strongly recommended that you use \textsf{biblatex} with the preloaded \textsf{univie-ling} style. +If you want to follow the Applied Linguistics conventions, but prefer classic Bib\TeX\ over \textsf{biblatex}, a (seemingly unmaintained) Bib\TeX\ style file \textsf{unified.bst} that implements the \emph{Unified Style Sheet for Linguistics} is available on the Internet.\footnote{A copy is at \url{https://raw.githubusercontent.com/jspitz/univie-ling/master/3rdparty/unified.bst}.} This style produces English output, a localized version for German, +\textsf{unified-de.bst}, is available as well.\footnote{See \url{https://raw.githubusercontent.com/jspitz/univie-ling/master/3rdparty/unified-de.bst}.} +Both styles require the \textsf{natbib} package to be loaded. +Note, though, that both styles provide only very rudimentary support for the Unified Style Sheet. Thus, if you want to follow the Applied Linguistics conventions +really strictly, it is strongly recommended that you use \textsf{biblatex} with the preloaded \textsf{univie-ling} style. + +It is also possible (though not recommended) to use the \texttt{thebibliography} environment if, +for some reason, you do not want to use \textsf{biblatex} nor Bib\TeX. Of course, in this case you are all responsible for the +proper formatting of the entries. If you decide for this, you must load the \textsf{natbib} package and use the +syntax documented in the natbib manual (\cite[sec.~1]{natbib}) for the proper setup of bibitems, e.\,g.,\footnote{% + Note the missing space before and after the parentheses that mark the year!} + +\begin{lstlisting}[language={[LaTeX]TeX},basicstyle={\small\ttfamily},frame=single,morekeywords={bibitem}] +\bibitem[Jones et al.(1990)Jones, Baker, & Williams]{jon90} + Jones, Baker, & Williams. 1990. ... +\end{lstlisting} +% +(Only) if \textsf{natbib} is loaded, \uvlt\ will take care that the spacing with the \texttt{thebibliography} environment +is correct. \section{Further instructions} @@ -433,6 +454,15 @@ Templates are provided as well: \section{Release History} \begin{itemize} + \item 2024/09/20 (v.\,2.8) + \begin{itemize} + \item Add class option \joption{titlepage=true|false} (see sec.~\ref{titlepage}). + \item Adapt title page to recent design. This entails a change of sans serif font + from Arial to Source Sans Pro. + \item Use \emph{TeX Gyre Pagella} rather than \emph{Palatino} with \joption{fonts=otf}. + \item Add basic support for \texttt{thebibliography} environment. + \item Update documentation on bibliography beyond \textsf{biblatex}. + \end{itemize} \item 2024/07/23 (v.\,2.7) \begin{itemize} \item Fix spacing after \jfcsmacro{weblink}. @@ -555,6 +585,10 @@ Templates are provided as well: \emph{The covington Package. Macros for Linguistics}. September 7, 2018. \url{http://www.ctan.org/pkg/covington}. +\bibitem{natbib} Daly, Patrick W.: +\emph{Natural Sciences Citations and References}. September 13, 2010. +\url{http://www.ctan.org/pkg/natbib}. + \bibitem{apabibltx} Kime, Philip: \emph{APA Bib\LaTeX\ style. Citation and References macros for Bib\LaTeX}. March 3, 2016. \url{http://www.ctan.org/pkg/biblatex-apa}. diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-wlg.pdf b/macros/latex/contrib/univie-ling/doc/univie-ling-wlg.pdf Binary files differindex f2a5a48dc2..f850e74ed0 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-wlg.pdf +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-wlg.pdf diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling-wlg.tex b/macros/latex/contrib/univie-ling/doc/univie-ling-wlg.tex index 6ca75cc0ed..2f11bd8b0a 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling-wlg.tex +++ b/macros/latex/contrib/univie-ling/doc/univie-ling-wlg.tex @@ -59,7 +59,7 @@ \author{\texorpdfstring{Jürgen Spitzmüller% \thanks{Please report issues via \protect\url{https://github.com/jspitz/univie-ling}.}}{Jürgen Spitzmüller}} -\date{Version 2.7, 2024/07/23} +\date{Version 2.8, 2024/09/20} \maketitle @@ -259,13 +259,33 @@ Please refer to the \textsf{covington} manual \cite{covington} for details. \section{Bibliography}\label{bibliography} -If the class option \joption{biblatex=true} is set, the \uvlt\ class loads a bibliography style which matches journal style sheet. These conventions draw on the -\emph{Unified Style Sheet for Linguistics} of the LSA (\emph{Linguistic Society of America}). -In order to conform to this style, the \uvlt\ class uses the \textsf{biblatex} package with the \textsf{univie-ling} style that is included in the \textsf{univie-ling} bundle. +If the class option \joption{biblatex=true} is set, the \uvlt\ class loads a bibliography style which matches journal style sheet. +These conventions draw on the \emph{Unified Style Sheet for Linguistics} of the LSA (\emph{Linguistic Society of America}). +In order to conform to this style, the \uvlt\ class uses the \textsf{biblatex} package with the \textsf{univie-ling} +style that is included in the \textsf{univie-ling} bundle. -If, for some reason, you do not want to use \textsf{biblatex} and prefer to have a manually constituted bibliography\footnote{A reason might be that you transform -a paper submitted in a an office file format to \LaTeX.}, use the \texttt{reflist} environment -and separate each entry by a blank line. Since this environment is provided by \textsf{covington}, the \joption{covington} options must not be \joption{false}. +Since there is no Bib\TeX\ style file available that completely matches the journal's style guide, you cannot use +classic Bib\TeX\ for a paper in the WLG. + +It is also possible, however, (though not recommended) to use the \texttt{thebibliography} environment if, +for some reason, you do not want to use \textsf{biblatex}. Of course, in this case you are all responsible for the +proper formatting of the entries. If you decide for this, you must load the \textsf{natbib} package and use the +syntax documented in the natbib manual (\cite[sec.~1]{natbib}) for the proper setup of bibitems, e.\,g.,\footnote{% + Note the missing space before and after the parentheses that mark the year!} + +\begin{lstlisting}[language={[LaTeX]TeX},basicstyle={\small\ttfamily},frame=single,morekeywords={bibitem}] +\bibitem[Jones et al.(1990)Jones, Baker, & Williams]{jon90} + Jones, Baker, & Williams. 1990. ... +\end{lstlisting} +% +(Only) if \textsf{natbib} is loaded, \uvlt\ will take care that the spacing with the \texttt{thebibliography} environment +is correct. + +Finally, if you prefer to have a completely manually constituted bibliography with manually inserted citations% +\footnote{A reason might be that you transform a paper submitted in a an office file format to \LaTeX. In this case, +\texttt{reflist} is often more convenient than \texttt{bibliography}.}, +use the \texttt{reflist} environment and separate each entry by a blank line (see \cite[sec.~9]{covington}). +Since this environment is provided by \textsf{covington}, the \joption{covington} options must not be \joption{false}. \section{\LyX\ layouts and templates} @@ -278,6 +298,13 @@ A template is provided as well: \url{https://github.com/jspitz/univie-ling/raw/m \raggedright \begin{itemize} + \item 2024/09/20 (v.\,2.8) + \begin{itemize} + \item Add basic support for \texttt{thebibliography} environment. + \item Update documentation on bibliography beyond \textsf{biblatex}. + \item Fix pagination issue with \joption{titlepage=specialprint}. + \item Part pages are now empty (no pagination and heading). + \end{itemize} \item 2024/07/23 (v.\,2.7) \begin{itemize} \item Use proper spacing with \textsf{covington}'s \texttt{reflist} environment. @@ -354,9 +381,12 @@ A template is provided as well: \url{https://github.com/jspitz/univie-ling/raw/m \begin{thebibliography}{1} - \bibitem{covington} Covington, Michael A. and Spitzmüller, Jürgen: +\bibitem{covington} Covington, Michael A. and Spitzmüller, Jürgen: \emph{The covington Package. Macros for Linguistics}. September 7, 2018. \url{http://www.ctan.org/pkg/covington}. +\bibitem{natbib} Daly, Patrick W.: + \emph{Natural Sciences Citations and References}. September 13, 2010. + \url{http://www.ctan.org/pkg/natbib}. \end{thebibliography} diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling.pdf b/macros/latex/contrib/univie-ling/doc/univie-ling.pdf Binary files differindex 394cddb692..d767f38b6a 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling.pdf +++ b/macros/latex/contrib/univie-ling/doc/univie-ling.pdf diff --git a/macros/latex/contrib/univie-ling/doc/univie-ling.tex b/macros/latex/contrib/univie-ling/doc/univie-ling.tex index f88f1fcea4..0d6dd3e057 100644 --- a/macros/latex/contrib/univie-ling/doc/univie-ling.tex +++ b/macros/latex/contrib/univie-ling/doc/univie-ling.tex @@ -42,7 +42,7 @@ \author{\texorpdfstring{Jürgen Spitzmüller% \thanks{Please report issues via \protect\url{https://github.com/jspitz/univie-ling}.}}{Jürgen Spitzmüller}} -\date{Version 2.7, 2024/07/23} +\date{Version 2.8, 2024/09/20} \maketitle diff --git a/macros/latex/contrib/univie-ling/tex/univie-ling-expose.cls b/macros/latex/contrib/univie-ling/tex/univie-ling-expose.cls index f7ff0916f4..ba0ad8c101 100644 --- a/macros/latex/contrib/univie-ling/tex/univie-ling-expose.cls +++ b/macros/latex/contrib/univie-ling/tex/univie-ling-expose.cls @@ -33,7 +33,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \NeedsTeXFormat{LaTeX2e}[2022/06/01] -\ProvidesPackage{univie-ling-expose}[2024/07/23 v.2.7 Univie Linguistic Exposes (JSp)] +\ProvidesPackage{univie-ling-expose}[2024/09/20 v.2.8 Univie Linguistic Exposes (JSp)] %% ============================================================ @@ -687,7 +687,22 @@ % End of @uve@apa condition \fi -% End of @uve@biblatex condition +\else% @uvt@biblatex condition FALSE + +% Some support for legacy bibtex +\AtBeginDocument{% + \@ifundefined{bibhang}{}{% + \setlength{\bibhang}{\parindent}% + }% + \@ifundefined{bibfont}{}{% + \renewcommand{\bibfont}{\small}% + }% + \@ifundefined{bibsep}{}{% + \setlength\bibsep{0pt}% + }% +} + +% End of @uvt@biblatex condition \fi %% ============================================================= diff --git a/macros/latex/contrib/univie-ling/tex/univie-ling-handout.cls b/macros/latex/contrib/univie-ling/tex/univie-ling-handout.cls index 73c5a325da..3e4c59030e 100644 --- a/macros/latex/contrib/univie-ling/tex/univie-ling-handout.cls +++ b/macros/latex/contrib/univie-ling/tex/univie-ling-handout.cls @@ -35,7 +35,7 @@ \NeedsTeXFormat{LaTeX2e}[2022/06/01] -\ProvidesClass{univie-ling-handout}[2024/07/23 v.2.7 Univie Ling handout class (JSp)] +\ProvidesClass{univie-ling-handout}[2024/09/20 v.2.8 Univie Ling handout class (JSp)] %% ============================================================ %% CLASS OPTIONS @@ -867,7 +867,22 @@ \DeclarePrintbibliographyDefaults{title=\uvh@bibheading} -% End of @uvh@biblatex condition +\else% @uvt@biblatex condition FALSE + +% Some support for legacy bibtex +\AtBeginDocument{% + \@ifundefined{bibhang}{}{% + \setlength{\bibhang}{\parindent}% + }% + \@ifundefined{bibfont}{}{% + \renewcommand{\bibfont}{\small}% + }% + \@ifundefined{bibsep}{}{% + \setlength\bibsep{0pt}% + }% +} + +% End of @uvt@biblatex condition \fi % Smaller diff --git a/macros/latex/contrib/univie-ling/tex/univie-ling-paper.cls b/macros/latex/contrib/univie-ling/tex/univie-ling-paper.cls index eda1430345..c21a6d7938 100644 --- a/macros/latex/contrib/univie-ling/tex/univie-ling-paper.cls +++ b/macros/latex/contrib/univie-ling/tex/univie-ling-paper.cls @@ -32,7 +32,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \NeedsTeXFormat{LaTeX2e}[2022/06/01] -\ProvidesPackage{univie-ling-paper}[2024/07/23 v.2.7 Univie Linguistic Papers (JSp)] +\ProvidesPackage{univie-ling-paper}[2024/09/20 v.2.8 Univie Linguistic Papers (JSp)] %% ============================================================ @@ -845,7 +845,22 @@ This includes all drawings, sketches, graphics and internet sources.} % End of @uvp@apa condition \fi -% End of @uvp@biblatex condition +\else% @uvt@biblatex condition FALSE + +% Some support for legacy bibtex +\AtBeginDocument{% + \@ifundefined{bibhang}{}{% + \setlength{\bibhang}{\parindent}% + }% + \@ifundefined{bibfont}{}{% + \renewcommand{\bibfont}{\small}% + }% + \@ifundefined{bibsep}{}{% + \setlength\bibsep{0pt}% + }% +} + +% End of @uvt@biblatex condition \fi %% ============================================================= diff --git a/macros/latex/contrib/univie-ling/tex/univie-ling-poster.cls b/macros/latex/contrib/univie-ling/tex/univie-ling-poster.cls index 87f5092d4c..e905a9cac6 100644 --- a/macros/latex/contrib/univie-ling/tex/univie-ling-poster.cls +++ b/macros/latex/contrib/univie-ling/tex/univie-ling-poster.cls @@ -34,7 +34,7 @@ \NeedsTeXFormat{LaTeX2e}[2022/06/01] -\ProvidesClass{univie-ling-poster}[2024/07/23 v.2.7 Univie Ling poster class (JSp)] +\ProvidesClass{univie-ling-poster}[2024/09/20 v.2.8 Univie Ling poster class (JSp)] %% ============================================================ %% CLASS OPTIONS diff --git a/macros/latex/contrib/univie-ling/tex/univie-ling-thesis.cls b/macros/latex/contrib/univie-ling/tex/univie-ling-thesis.cls index 91d34276a0..4fee7f10c8 100644 --- a/macros/latex/contrib/univie-ling/tex/univie-ling-thesis.cls +++ b/macros/latex/contrib/univie-ling/tex/univie-ling-thesis.cls @@ -33,7 +33,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \NeedsTeXFormat{LaTeX2e}[2022/06/01] -\ProvidesPackage{univie-ling-thesis}[2024/07/23 v.2.7 Univie Linguistic Theses (JSp)] +\ProvidesPackage{univie-ling-thesis}[2024/09/20 v.2.8 Univie Linguistic Theses (JSp)] %% ============================================================ @@ -55,6 +55,7 @@ \newif\if@uvt@psfonts\@uvt@psfontstrue \newif\if@uvt@refsp\@uvt@refsptrue \newif\if@uvt@usefontenc\@uvt@usefontenctrue +\newif\if@uvt@titlepage\@uvt@titlepagetrue \def\uvt@fontenc{T1} % Define keys and values @@ -155,6 +156,10 @@ { \@uvt@draftmarktrue \@uvt@draftmarkfptrue }, + % titlepage=<true|false> + % Output titlepage + titlepage.legacy_if_set:n = @uvt@titlepage, + titlepage.usage:n = preamble, % no val equals to true draftmark .default:n = {true}, % fonts=<ps|otf|none> @@ -241,33 +246,36 @@ This includes all drawings, sketches, graphics and internet sources.} %% FONTS AND EMPHASIZING: %% ============================================================ +\def\uvt@titlesans{\sffamily} + \if@uvt@psfonts \RequirePackage[T1]{fontenc} \if@uvt@usefontenc \RequirePackage[\uvt@fontenc]{fontenc} \fi - - % Palatino + % Serif: Palatino \RequirePackage[osf]{mathpazo} - - % Arial or Helvetica - \IfFileExists{uarial.sty}{% - \RequirePackage{uarial} - }{% - \RequirePackage{helvet} - } - - % Source Code Pro (Courier) + % Sans: Source Sans Pro Light + \RequirePackage[semibold]{sourcesanspro} + % Mono: Source Code Pro \RequirePackage[scale=.93]{sourcecodepro} + % Lighter Sans for title page + \def\uvt@titlesans{\def\mdseries@sf{l}\sffamily} \fi \if@uvt@otffonts \RequirePackage{fontspec} - \setmainfont{Palatino} - \setsansfont{Arial} - \setmonofont{SourceCodePro} + \setmainfont{TeX Gyre Pagella} + % Sans: Source Sans Pro Light + \RequirePackage[semibold]{sourcesanspro} + % Mono: Source Code Pro + \RequirePackage[scale=.93]{sourcecodepro} + % Lighter Sans for title page + \def\uvt@titlesans{\sourcesansprolight} \fi + + % Hyperlinks \RequirePackage{url} \newcommand{\urlprefix}{} @@ -299,14 +307,14 @@ This includes all drawings, sketches, graphics and internet sources.} \def\slash{/\penalty\exhyphenpenalty\hskip\z@skip} % Font settings -\newkomafont{thesistype}{\fontsize{24}{26pt}\bfseries\sffamily} -\setkomafont{title}{\fontsize{18}{20pt}\sffamily} -\setkomafont{author}{\fontsize{18}{20pt}\large\sffamily} -\setkomafont{date}{\normalfont\fontsize{11}{13pt}\mdseries\sffamily} -\newkomafont{degree}{\fontsize{12}{14pt}\sffamily} -\newkomafont{baende}{\normalfont\fontsize{12}{14pt}\mdseries\sffamily} -\newkomafont{tpcaption}{\fontsize{11}{13pt}\sffamily} -\newkomafont{codes}{\fontsize{10}{12pt}\sffamily} +\newkomafont{thesistype}{\fontsize{24}{26pt}\bfseries\uvt@titlesans} +\setkomafont{title}{\fontsize{18}{20pt}\uvt@titlesans} +\setkomafont{author}{\fontsize{18}{20pt}\large\uvt@titlesans} +\setkomafont{date}{\normalfont\fontsize{11}{13pt}\mdseries\uvt@titlesans} +\newkomafont{degree}{\fontsize{12}{14pt}\uvt@titlesans} +\newkomafont{baende}{\normalfont\fontsize{12}{14pt}\mdseries\uvt@titlesans} +\newkomafont{tpcaption}{\fontsize{11}{13pt}\uvt@titlesans} +\newkomafont{codes}{\fontsize{10}{12pt}\uvt@titlesans} %% ============================================================ @@ -384,35 +392,35 @@ This includes all drawings, sketches, graphics and internet sources.} \def\thesistype@bachelor{Bachelorarbeit} \def\thesistype@bachelor@en{Bachelor's Thesis} \def\dirtype@bachelor{Studienrichtung} -\def\dirtype@bachelor@en{degree programme} +\def\dirtype@bachelor@en{Degree programme} \def\degree@bachelor{Bachelor of Arts (BA)} \def\degree@bachelor@f{\degree@bachelor} % master \def\thesistype@master{Masterarbeit} \def\thesistype@master@en{Master's Thesis} \def\dirtype@master{Studienrichtung} -\def\dirtype@master@en{degree programme} +\def\dirtype@master@en{Degree programme} \def\degree@master{Master of Arts (MA)} \def\degree@master@f{\degree@master} % magister \def\thesistype@magister{Magisterarbeit} \def\thesistype@magister@en{Magister Thesis} \def\dirtype@magister{Studienrichtung} -\def\dirtype@magister@en{degree programme} +\def\dirtype@magister@en{Degree programme} \def\degree@magister{Magister der Philosophie (Mag.\,Phil.)} \def\degree@magister@f{Magistra der Philosophie (Mag.\,Phil.)} % diplom \def\thesistype@diplom{Diplomarbeit} \def\thesistype@diplom@en{Diploma Thesis} \def\dirtype@diplom{Studienrichtung} -\def\dirtype@diplom@en{degree programme} +\def\dirtype@diplom@en{Degree programme} \def\degree@diplom{Magister der Philosophie (Mag.\,Phil.)} \def\degree@diplom@f{Magistra der Philosophie (Mag.\,Phil.)} % diss \def\thesistype@diss{Dissertation} \def\thesistype@diss@en{Doctoral Thesis} \def\dirtype@diss{Dissertationsgebiet} -\def\dirtype@diss@en{field of study} +\def\dirtype@diss@en{Field of study} \def\degree@diss{Doktor der Philosophie (Dr.\,phil.)} \def\degree@diss@f{Doktorin der Philosophie (Dr.\,phil.)} @@ -474,7 +482,10 @@ This includes all drawings, sketches, graphics and internet sources.} % We need graphicx for the logo \RequirePackage{graphicx} +\def\uvt@titlesep{\,|\,} + \renewcommand*\maketitle[1][1]{% + \if@uvt@titlepage \newgeometry{top=2cm,bottom=2.5cm,left=2.5cm,right=2cm} \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax \else @@ -527,27 +538,27 @@ This includes all drawings, sketches, graphics and internet sources.} \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}% \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative \begin{flushright} - \includegraphics[width=6cm]{univielogo-sw} + \includegraphics[width=6cm]{univielogo} \end{flushright} \vspace{2\baselineskip} \begin{center} - {\usekomafont{thesistype}\MakeUppercase{\@thesistype\,/\,\hskip\z@skip\mbox{\@thesistype@en}}\par} + {\usekomafont{thesistype}\MakeUppercase{\@thesistype\uvt@titlesep\hskip\z@skip\mbox{\@thesistype@en}}\par} \end{center} \vspace{2\baselineskip} \begin{center} - {\usekomafont{tpcaption}Titel der \@thesistype\,/\,Title of the \@thesistype@en\par} + {\usekomafont{tpcaption}Titel\uvt@titlesep Title\par} {\ifx\@title\@empty\else - \usekomafont{title}{\enquote{\@title% - \ifx\@subtitle\@empty\else\linebreak\@subtitle\fi}\par}% + \usekomafont{title}{\@title% + \ifx\@subtitle\@empty\else\linebreak\@subtitle\fi\par}% \fi }% {\ifx\@volume\@empty\else% - \vskip 1em\usekomafont{baende}{Band \@volume\ von \@volumes\ B\"anden\,/\,volume \@volume\ of \@volumes\ volumes}% + \vskip 1em\usekomafont{baende}{Band \@volume\ von \@volumes\ B\"anden\uvt@titlesep volume \@volume\ of \@volumes\ volumes}% \fi% }% \vskip 2em {% - {\usekomafont{tpcaption}verfasst von\,/\,submitted by\par} + {\usekomafont{tpcaption}verfasst von\,\uvt@titlesep\uvt@titlesep submitted by\par} \usekomafont{author}{% \lineskip 0.75em% \begin{tabular}[t]{c} @@ -556,21 +567,21 @@ This includes all drawings, sketches, graphics and internet sources.} }% }% \vskip 2em - {\usekomafont{tpcaption}angestrebter akademischer Grad\,/\,in partial fulfilment of the requirements for the degree of\par} + {\usekomafont{tpcaption}angestrebter akademischer Grad\uvt@titlesep in partial fulfilment of the requirements for the degree of\par} \usekomafont{degree}{\@degree} \end{center}\par \vfill - {\usekomafont{date}{Wien, \the\year\,/\,Vienna, \the\year\par}}% + {\usekomafont{date}{Wien, \the\year\uvt@titlesep Vienna, \the\year\par}}% \vskip 2em \usekomafont{codes}{% \begin{tabular}[t]{@{}>{\raggedright}p{0.4\columnwidth}>{\raggedright}p{0.1\columnwidth}>{\raggedright}p{0.4\columnwidth}} - Studienkennzahl lt. Studienblatt/\newline degree programme code as it appears on the student record sheet: & & \@studienkennzahl\tabularnewline + Studienkennzahl lt. Studienblatt\uvt@titlesep Degree programme code as it appears on the student record sheet: & & \@studienkennzahl\tabularnewline \noalign{\vskip6pt} - \@dirtype\ lt. Studienblatt\slash\newline \@dirtype@en\ as it appears on the student record sheet: & & \@studienrichtung\tabularnewline + \@dirtype\ lt. Studienblatt\uvt@titlesep\@dirtype@en\ as it appears on the student record sheet: & & \@studienrichtung\tabularnewline \noalign{\vskip6pt} - Betreut von\,/\,Supervisor: & & \@supervisor\tabularnewline% + Betreut von\uvt@titlesep Supervisor: & & \@supervisor\tabularnewline% \noalign{\vskip6pt} - \ifx\@cosupervisor\@empty\else Mitbetreut von\,/\,Co-Supervisor: & & \@cosupervisor\fi + \ifx\@cosupervisor\@empty\else Mitbetreut von\uvt@titlesep Co-Supervisor: & & \@cosupervisor\fi \end{tabular}\par } \par @@ -591,7 +602,10 @@ This includes all drawings, sketches, graphics and internet sources.} \cleardoubleemptypage \fi \ifx\titlepage@restore\relax\else\clearpage\titlepage@restore\fi - \end{titlepage} + \end{titlepage} + \else% \if@uvt@titlepage + \setcounter{page}{2}% + \fi \setcounter{footnote}{0}% \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax \let\thanks\relax @@ -822,6 +836,21 @@ This includes all drawings, sketches, graphics and internet sources.} % End of @uvt@apa condition \fi +\else% @uvt@biblatex condition FALSE + +% Some support for legacy bibtex +\AtBeginDocument{% + \@ifundefined{bibhang}{}{% + \setlength{\bibhang}{\parindent}% + }% + \@ifundefined{bibfont}{}{% + \renewcommand{\bibfont}{\small}% + }% + \@ifundefined{bibsep}{}{% + \setlength\bibsep{0pt}% + }% +} + % End of @uvt@biblatex condition \fi diff --git a/macros/latex/contrib/univie-ling/tex/univie-ling-wlg.cls b/macros/latex/contrib/univie-ling/tex/univie-ling-wlg.cls index 00deb089cc..775a99b75f 100644 --- a/macros/latex/contrib/univie-ling/tex/univie-ling-wlg.cls +++ b/macros/latex/contrib/univie-ling/tex/univie-ling-wlg.cls @@ -34,7 +34,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \NeedsTeXFormat{LaTeX2e}[2022/06/01] -\ProvidesPackage{univie-ling-wlg}[2024/07/23 v.2.7 Univie WLG journal layout (JSp)] +\ProvidesPackage{univie-ling-wlg}[2024/09/20 v.2.8 Univie WLG journal layout (JSp)] %% ============================================================ @@ -595,6 +595,7 @@ \fi \if@wlg@titlepage \@maketitlepage[#1]% + \pagenumbering{arabic} \fi \if@wlg@startpageset\else \setcounter{page}{\thestartpage} @@ -633,6 +634,7 @@ \thispagestyle{\titlepagestyle}\@thanks \endgroup \setcounter{footnote}{0}% + \setcounter{page}{\thestartpage}% \global\let\@cauthor\@empty \global\let\@thanks\@empty \gdef\@ccauthor{\translate{corrauthor}} @@ -986,6 +988,9 @@ % (serifs) \setkomafont{sectioning}{\normalfont\normalcolor\bfseries} +% empty part pages +\AddToHook{cmd/scr@startpart/before}{\thispagestyle{empty}} + % Abstract \renewenvironment{abstract}{% \addsec*{\hspace*{2.4em}Abstract} @@ -1085,8 +1090,13 @@ \AtBeginDocument{% \@ifundefined{bibhang}{}{% \setlength{\bibhang}{\parindent}% + }% + \@ifundefined{bibfont}{}{% \renewcommand{\bibfont}{\small}% }% + \@ifundefined{bibsep}{}{% + \setlength\bibsep{0pt}% + }% } %% ============================================================= |