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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
%%
%% This is file `bibcop.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% bibcop.dtx (with options: `package')
%% (The MIT License)
%%
%% Copyright (c) 2022-2024 Yegor Bugayenko
%%
%% Permission is hereby granted, free of charge, to any person obtaining a copy
%% of this software and associated documentation files (the 'Software'), to deal
%% in the Software without restriction, including without limitation the rights
%% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
%% copies of the Software, and to permit persons to whom the Software is
%% furnished to do so, subject to the following conditions:
%%
%% The above copyright notice and this permission notice shall be included in all
%% copies or substantial portions of the Software.
%%
%% THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
%% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
%% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
%% AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
%% LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
%% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
%% SOFTWARE.
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{bibcop}
[2024-01-17 0.0.19 Style Checker of Bibliography Files]
\RequirePackage{iexec}
\RequirePackage{pgfopts}
\pgfkeys{
/bibcop/.cd,
notags/.store in=\bibcop@notags,
noorg/.store in=\bibcop@noorg,
noinproc/.store in=\bibcop@noinproc,
nocaps/.store in=\bibcop@nocaps,
nodoi/.store in=\bibcop@nodoi,
nowraps/.store in=\bibcop@nowraps,
verbose/.store in=\bibcop@verbose,
script/.store in = \bibcop@script,
}
\ProcessPgfPackageOptions{/bibcop}
\makeatletter
\ifdefined\bibcop@script\else
\IfFileExists{bibcop.pl}
{\gdef\bibcop@script{perl ./bibcop.pl}}
{\gdef\bibcop@script{bibcop}}
\fi
\message{bibcop: The Perl script is at '\bibcop@script'^^J}%
\makeatother
\RequirePackage{shellesc}
\makeatletter
\newcommand\bibcop@exec[1]{
\iexec[maybe]{\bibcop@script\space
\ifdefined\bibcop@verbose--verbose\fi\space
\ifdefined\bibcop@notags--no:tags\fi\space
\ifdefined\bibcop@noinproc--no:org\fi\space
\ifdefined\bibcop@noinproc--no:inproc\fi\space
\ifdefined\bibcop@nodoi--no:doi\fi\space
\ifdefined\bibcop@nocaps--no:caps\fi\space
\ifdefined\bibcop@nowraps--no:wraps\fi\space
--latex '#1'}%
\message{bibcop: style checking finished for #1^^J}%
}
\makeatother
\makeatletter
\ifdefined\bibliography
\let\bibcop@oldbibliography\bibliography
\renewcommand\bibliography[1]{%
\bibcop@exec{#1.bib}%
\bibcop@oldbibliography{#1}%
}
\fi
\makeatother
\makeatletter
\ifdefined\addbibresource
\let\bibcop@oldaddbibresource\addbibresource
\renewcommand\addbibresource[1]{%
\bibcop@exec{#1}%
\bibcop@oldaddbibresource{#1}%
}
\fi
\makeatother
\endinput
%%
%% End of file `bibcop.sty'.
|