diff options
author | Karl Berry <karl@freefriends.org> | 2012-01-12 23:37:29 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-01-12 23:37:29 +0000 |
commit | 35df93b49f61d7b18f92c6d22c130e495c20fbcc (patch) | |
tree | 3791fb5bba4419c009a44835e7a1bf5d577b2da7 /Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx | |
parent | 8396993efe0f38c32868c954f8e7147cd66b3aaf (diff) |
biblatex-luh-ipw (10jan12)
git-svn-id: svn://tug.org/texlive/trunk@25093 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx')
3 files changed, 331 insertions, 5 deletions
diff --git a/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/authoryear-luh-ipw.cbx b/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/authoryear-luh-ipw.cbx index 610c414067d..f63c92514f1 100644 --- a/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/authoryear-luh-ipw.cbx +++ b/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/authoryear-luh-ipw.cbx @@ -1,8 +1,308 @@ -% authoryear-ipol.cbx, Oliver Heins (heins@sopos.org) 2011 +% authoryear-luh-ipol.cbx, Oliver Heins (heins@sopos.org) 2012 -\ProvidesFile{authoryear-ipol.cbx}[2011/11/01 v0.1 biblatex citation style for use with biblatex 1.x] +\ProvidesFile{authoryear-luh-ipol.cbx}[2012/01/09 v0.2 biblatex citation style for use with biblatex 1.x] -\RequireCitationStyle{authoryear} +\RequireCitationStyle{authoryear-icomp} +\RequireCitationStyle{standard-luh-ipw} + + +\newtoggle{cbx:cquote} +\DeclareBibliographyOption{cquote}[true]{% + \settoggle{cbx:cquote}{#1}% + \ifstrequal{#1}{true} + {\luh@info{option cquote: patching package\MessageBreak + csquotes (experimental)}}% + {}} + + +\newif\ifluh@csquotes@loaded@ + +\@ifpackageloaded{csquotes} % Ist csquotes geladen? + {\luh@csquotes@loaded@true} + {\luh@csquotes@loaded@false} + +\AtEndPreamble{% +\iftoggle{cbx:cquote}{% + + \ifluh@csquotes@loaded@ % Mindestens v5.1d + \@ifpackagelater{csquotes}{2011/10/22} + {} + {\PackageError{biblatex-luh-ipw} + {Outdated 'csquotes' package} + {Upgrade to csquotes v5.1d (2011/10/22) or later.\MessageBreak + I found: '\csuse{ver@csquotes.sty}'.\MessageBreak + This is a fatal error. I'm aborting now.}% + \endinput}% + \fi + + \@ifpackageloaded{csquotes}{% csquotes ist geladen -- und neu genug + \luh@info{csquotes loaded}% + + \let\luh@textcquote@orig\textcquote + \let\luh@blockcquote@orig\blockcquote + + \newif\ifluh@blockcquotecmd@ + + \newcommand{\luh@textcquote}{% + \luh@blockcquotecmd@false + \let\luh@next\luh@textcquote@orig\luh@scancquote}% + + \newcommand{\luh@blockcquote}{% + \luh@blockcquotecmd@true + \let\luh@next\luh@blockcquote@orig\luh@scancquote}% + + \newcommand{\luh@scancquote}{% + \luh@scancite}% + + % scancite: [<pre>][<post>]{<key>}[<punct>] + % scantext: {<text>} + + \newtoks\luh@citet + + \def\luh@scancite{% + \@ifnextchar[%] + {\luh@scancite@i} + {\luh@scancite@ii[][]}}% + + \long\def\luh@scancite@i[#1]{% + \@ifnextchar[%] + {\luh@scancite@ii[#1]} + {\luh@scancite@ii[][#1]}}% + + \long\def\luh@scancite@ii[#1][#2]#3{% + \@ifnextchar[%] + {\luh@scancite@iii{#1}{#2}{#3}} + {\luh@scancite@iii{#1}{#2}{#3}[]}}% + + \long\def\luh@scancite@iii#1#2#3[#4]{% + \luh@citet={[#1][#2]{#3}[#4]}% + \luh@scantext}% + + \def\luh@defargs[#1][#2]#3[#4]{% + \edef\luh@prenote{#1}% + \edef\luh@postnote{#2}% + \edef\luh@citekey{#3}% + \edef\luh@punct{#4}}% + + \newif\ifluh@capitalizeCite@ + \newif\ifluh@testsepunct@ + \newif\ifluh@sepunct@ + + \newtoks\luh@text + \long\def\luh@scantext#1{% + \luh@lastchar{#1}% finde den letzten Buchstaben des Textes + % Testbedingungen: <prenote>: empty + % <punct>: empty oder SentPunct + % <text>: endet mit SentPunct + {\luh@debug{\the\luh@citet}}% + \expandafter\luh@defargs\the\luh@citet + \luh@blockquote@false + \let\luh@actual@mkxquote\mktextquote% Standard: scanne mktextquote + \ifluh@blockcquotecmd@% jedoch: wird gerade blockcquote benutzt? + % schaue, ob inline oder outer gesetzt wird + \luh@bquote@i{\luh@prenote}{\luh@postnote}{\luh@citekey}{}{#1}% + \fi + \ifluh@blockquote@% wenn outer gesetzt wird, scanne mkblockquote + \let\luh@actual@mkxquote\mkblockquote + \fi + \luh@capitalizeCite@true + \luh@testsepunct@false + \ifx\luh@prenote\@empty + \luh@testsepunct@true + \else\luh@capitalizeCite@false\fi + \ifluh@testsepunct@ + \expandafter\expandafter\expandafter\luh@mktextquote\expandafter{\meaning\luh@actual@mkxquote}% + \expandafter\expandafter\expandafter\luh@scanpunctinquotes\expandafter{\the\luh@mktextquote}% + \luh@sepunct@false + \ifluh@fourinquotes@ + \luh@testinnerpunct + \fi + \luh@testpunct + \ifluh@sepunct@\luh@debug{GROSS}% + \else\luh@debug{klein}\fi + \fi + \expandafter\luh@next\the\luh@citet{#1}}% + + \long\def\luh@testpunct{% + \let\luh@tempc\luh@tempb% Das letzte Zeichen + \expandafter\luh@testpunct@i{\luh@sepunct}}% + + \def\luh@testinnerpunct{% + \let\luh@tempc\luh@punct% Der gesetzte innerpunct + \expandafter\luh@testpunct@i{\luh@sepunct}}% + + \def\luh@testpunct@i#1{% + \@for\luh@sign:=#1\do{\luh@debug{\luh@sign}% + \ifx\luh@tempc\luh@sign \luh@sepunct@true\fi}}% + + % Schreibe das letzte Zeichen nach \luh@tempb + \long\def\luh@lastchar#1{\luh@lastchar@i#1\luh@end}% + + \long\def\luh@lastchar@i#1{% + \ifx#1\luh@end \let\luhatnext=\relax + \else + \let\luhatnext=\luh@lastchar@i + \luh@text={#1}% + \edef\luh@tempb{\the\luh@text}% + \fi + \luhatnext}% + + % Einiges an foo-Zauber, um festzustellen, ob mktextquote + % bzw. mkblockquote evtl. ein Satzendezeichen setzen. + \newif\luh@isinquotes + + \newif\ifluh@sixfound@ + \newif\ifluh@fourinquotes@ + \newif\ifluh@hyphenfound@ + \def\luh@scanpunctinquotes#1{% + \luh@sixfound@false + \luh@fourinquotes@false + \luh@hyphenfound@false + \luh@debug{#1}% + \luh@scanpunctinquotes@i#1\printbibliography + \ifluh@fourinquotes@ \luh@debug{Drinnen}\else\luh@debug{Draussen}\fi}% + + \def\luh@six{6}% + \def\luh@four{4}% + \def\luh@hyphen{-}% + \def\luh@scanpunctinquotes@i#1{% + \edef\luh@number{#1}% + \luh@debug{#1}% + \ifx#1\printbibliography \let\luh@next@i\relax + \else + \let\luh@next@i\luh@scanpunctinquotes@i + \ifluh@hyphenfound@ + \ifx\luh@number\luh@six \luh@sixfound@true \luh@debug{6 found}\fi + \ifx\luh@number\luh@four + \luh@debug{4 found}% + \ifluh@sixfound@ \else \luh@fourinquotes@true \fi + \fi + \fi + \ifx\luh@number\luh@hyphen \luh@hyphenfound@true \fi + \fi + \luh@next@i}% + + \newtoks\luh@mktextquote + + \def\luh@scanpunct{% + \expandafter\expandafter\expandafter\luh@mktextquote\expandafter{\meaning\luh@actual@mkxquote}% + \expandafter\expandafter\expandafter\luh@scanpunctinquotes\expandafter{\the\luh@mktextquote}% + }% + + % Kommando \DeclareSentenceEndPunct (Liste der Satzendezeichen) + % (Die Liste muss in eine kommaseparierte gewandelt werden, deshalb + % der ganze Zauber) + \newrobustcmd*{\DeclareSentenceEndPunct}[1]{% + \ifblank{#1} + {\def\luh@sepunct{}} + {\luh@addsepunct{#1}}}% + + \long\def\luh@addsepunct#1{% + \let\luh@sepunct\relax% + \expandafter\luh@addsepunct@i#1\@end}% + + \def\luh@addsepunct@i#1{% + \ifx#1\@end\let\luh@next=\relax% + \else% + \ifx\luh@sepunct\relax + \edef\luh@sepunct{#1}% + \else + \edef\luh@sepunct{\luh@sepunct,#1}% + \fi + \let\luh@next\luh@addsepunct@i% + \fi% + \luh@next}% + + \DeclareSentenceEndPunct{.!?}% + + \let\textcquote\luh@textcquote + \let\blockcquote\luh@blockcquote + + \newcommand{\luh@parencite}{% + \ifluh@sepunct@\let\luh@citecmd\Parencite + \else\let\luh@citecmd\parencite\fi + \luh@citecmd}% + + \SetCiteCommand{\luh@parencite}% + + %%%% + \newif\ifluh@blockquote@\luh@blockquote@false + \long\def\luh@bquote@i#1#2#3#4#5#6{% + \begingroup + \blockquote@prehook + \togglefalse{csq@tempsw}% + \setbox\@tempboxa=\vbox{% + \csuse{csq@bcount@\csq@thresholdtype}% + \parindent\z@ + \blockquote@parsehook + #1#6#5#2\endgraf\expandafter}\expandafter + \@tempcnta\number\prevgraf\relax + \iftoggle{csq@tempsw} + {\luh@debug{% + \@backslashchar blockquote has \number\@tempcnta\space + \csq@thresholdtype\space and manual breaks.\MessageBreak + Setting as display}} + {\ifnumgreater\@tempcnta\csq@tshold + {\toggletrue{csq@tempsw}} + {}% + \luh@debug{% + \@backslashchar blockquote has \number\@tempcnta\space + \csq@thresholdtype. Threshold is \number\csq@tshold.\MessageBreak + Setting \iftoggle{csq@tempsw}{as display}{inline}}}% + \blockquote@posthook + \iftoggle{csq@tempsw} + {\aftergroup\@firstoftwo} + {\aftergroup\@secondoftwo}% + \endgroup + \luh@blockquote@true\luh@blockquote@false}% + +% Das ist die originale Definition des obigen Makros aus +% csquotes.sty,v 5.1d 2011/10/22 19:17:39 lehman stable +% Diese wird mit der aktuellen verglichen, und ggf. eine Fehlermeldung +% ausgegeben, da bei Aenderung u. U. falsch berechnet wird. +\long\def\luh@csq@bquote@i#1#2#3#4#5#6{% + \begingroup + \blockquote@prehook + \togglefalse{csq@tempsw}% + \setbox\@tempboxa=\vbox{% + \csuse{csq@bcount@\csq@thresholdtype}% + \parindent\z@ + \blockquote@parsehook + #1#6#5#2\endgraf\expandafter}\expandafter + \@tempcnta\number\prevgraf\relax + \iftoggle{csq@tempsw} + {\csq@debug{% + \@backslashchar blockquote has \number\@tempcnta\space + \csq@thresholdtype\space and manual breaks.\MessageBreak + Setting as display}} + {\ifnumgreater\@tempcnta\csq@tshold + {\toggletrue{csq@tempsw}} + {}% + \csq@debug{% + \@backslashchar blockquote has \number\@tempcnta\space + \csq@thresholdtype. Threshold is \number\csq@tshold.\MessageBreak + Setting \iftoggle{csq@tempsw}{as display}{inline}}}% + \blockquote@posthook + \iftoggle{csq@tempsw} + {\aftergroup\@firstoftwo} + {\aftergroup\@secondoftwo}% + \endgroup + \csq@bquote@iii\csq@bquote@ii{#1}{#2}{#3}{#4}{#5}{#6}}% + + \ifx\csq@bquote@i\luh@csq@bquote@i + %% alles ist gut, keine Aenderung + \else\luh@warning{% Uhhh ohhh :( + Package csquotes has changed, and \MessageBreak + biblatex-luh-ipw is not yet aware\MessageBreak + of the changes. Sadly, this might\MessageBreak + break biblatex-luh-ipw. Please\MessageBreak + drop me (heins@sopos.org) a mail,\MessageBreak + if this message keeps beeing thrown\MessageBreak + out for longer than a week or so.^^J}% + \fi + } + {\luh@warning{Package csquotes not loaded. \MessageBreak + Not defining additional macros^^J}}}} \endinput diff --git a/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/standard-luh-ipw.cbx b/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/standard-luh-ipw.cbx new file mode 100644 index 00000000000..30da256634b --- /dev/null +++ b/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/standard-luh-ipw.cbx @@ -0,0 +1,26 @@ +% standard-luh-ipw.cbx, Oliver Heins (heins@sopos.org) 2012 + +\ProvidesFile{standard-luh-ipw.cbx}[2012/01/09 v0.2 citation style for use with biblatex 1.x] + +% Allgemeine Kommandos +\protected\def\luh@error#1#2{% + \PackageError{biblatex-luh-ipw}{#1}{#2.}} + +\protected\def\luh@warning#1{% + \PackageWarning{biblatex-luh-ipw}{#1}} + +\protected\def\luh@info#1{% + \PackageInfo{biblatex-luh-ipw}{#1}} + +\protected\def\luh@logdebug#1{% + \begingroup + \def\MessageBreak{^^J(biblatex-luh-ipw) \@spaces\@spaces\@spaces\space}% + \set@display@protect + \immediate\write\m@ne{Package biblatex-luh-ipw Debug: #1\on@line.}% + \endgroup} + +\let\luh@debug\@gobble +%\let\luh@debug\luh@logdebug + + +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/verbose-inote-luh-ipw.cbx b/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/verbose-inote-luh-ipw.cbx index 06b24c8a265..55014e11eb6 100644 --- a/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/verbose-inote-luh-ipw.cbx +++ b/Master/texmf-dist/tex/latex/biblatex-luh-ipw/cbx/verbose-inote-luh-ipw.cbx @@ -1,6 +1,6 @@ -% authoryear-luh-ipw.cbx, Oliver Heins (heins@sopos.org) 2011 +% authoryear-luh-ipw.cbx, Oliver Heins (heins@sopos.org) 2012 -\ProvidesFile{verbose-inote-luh-ipw.cbx}[2011/11/01 v0.1 biblatex citation style for use with biblatex 1.x] +\ProvidesFile{verbose-inote-luh-ipw.cbx}[2012/01/09 v0.2 biblatex citation style for use with biblatex 1.x] \RequireCitationStyle{verbose-inote} |