summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/biblatex-true-citepages-omit/biblatex-true-citepages-omit.sty
blob: 37d4760544d5daef526aafbbdcab5dd1dc4f311e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
%% Copyright 2013 Maïeul Rouquette
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
% of this license or (at your option) any later version.
% The latest version of this license is in
%   http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of LaTeX
% version 2005/12/01 or later.
%
% This work has the LPPL maintenance status `maintained'.
% 
% The Current Maintainer of this work is Maïeul Rouquette
%
% This work consists of the file biblatex-real-citepages-omit.sty

\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{biblatex-true-citepages-omit}[2014/03/25 v1.0.0 real run of citepages=omit for biblatex]
\RequirePackage{xstring}

\AtEveryCitekey{%
	\usebibmacro{real-citepages-omit}%
}{}{}

\newbibmacro{real-citepages-omit}{%
	\iffieldundef{postnote}{}{%
		\renewcommand{\do}[1]{%
			\global\csletcs{old##1}{##1}%
			\global\csletcs{##1}{relax}%
		}%
		\dolistloop{\realcitepagesomit@cmd}%
		\IfBeginWith{\csfield{postnote}}{\pno}{\clearfield{pages}}{%
		\IfBeginWith{\csfield{postnote}}{\ppno}{\clearfield{pages}}{}}%
		%
		\renewcommand{\do}[1]{%
			\global\csletcs{##1}{old##1}%
		}%
		\dolistloop{\realcitepagesomit@cmd}%
	}%
}%

\def\realcitepagesomit@cmd{}

\newcommand{\realcitepagesomitcmd}[1]{\listadd{\realcitepagesomit@cmd}{#1}}
\realcitepagesomitcmd{emph}
\realcitepagesomitcmd{textbf}



\endinput