summaryrefslogtreecommitdiff
path: root/biblio
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2024-01-13 03:01:12 +0000
committerNorbert Preining <norbert@preining.info>2024-01-13 03:01:12 +0000
commit65fecaf48c4ed6505cb45447a2d7cf1b9d933e3a (patch)
treec56b603d6058668578165093bb5ff98e735e0fe8 /biblio
parent1748d1e662c9618cc16f80d5e67669e9e9d6d4be (diff)
CTAN sync 202401130301
Diffstat (limited to 'biblio')
-rw-r--r--biblio/bibtex/utils/bibcop/bibcop.12
-rw-r--r--biblio/bibtex/utils/bibcop/bibcop.dtx2
-rw-r--r--biblio/bibtex/utils/bibcop/bibcop.pdfbin348056 -> 348056 bytes
-rwxr-xr-xbiblio/bibtex/utils/bibcop/bibcop.pl98
-rw-r--r--biblio/ctan-bibdata/ctan.bib92
5 files changed, 121 insertions, 73 deletions
diff --git a/biblio/bibtex/utils/bibcop/bibcop.1 b/biblio/bibtex/utils/bibcop/bibcop.1
index 64b5bd3b69..744ca010c2 100644
--- a/biblio/bibtex/utils/bibcop/bibcop.1
+++ b/biblio/bibtex/utils/bibcop/bibcop.1
@@ -1,4 +1,4 @@
-.TH bibcop 1 "2024-01-11"
+.TH bibcop 1 "2024-01-12"
.SH NAME
bibcop \- Style Checker and Fixer of BibTeX Files (.bib)
.SH SYNOPSIS
diff --git a/biblio/bibtex/utils/bibcop/bibcop.dtx b/biblio/bibtex/utils/bibcop/bibcop.dtx
index 0e078c298a..191279353d 100644
--- a/biblio/bibtex/utils/bibcop/bibcop.dtx
+++ b/biblio/bibtex/utils/bibcop/bibcop.dtx
@@ -50,7 +50,7 @@
%<package>\NeedsTeXFormat{LaTeX2e}
%<package>\ProvidesPackage{bibcop}
%<*package>
-[2024-01-11 0.0.16 Style Checker of Bibliography Files]
+[2024-01-12 0.0.17 Style Checker of Bibliography Files]
%</package>
%<*driver>
\documentclass{ltxdoc}
diff --git a/biblio/bibtex/utils/bibcop/bibcop.pdf b/biblio/bibtex/utils/bibcop/bibcop.pdf
index c81908a5b0..1ea78dc701 100644
--- a/biblio/bibtex/utils/bibcop/bibcop.pdf
+++ b/biblio/bibtex/utils/bibcop/bibcop.pdf
Binary files differ
diff --git a/biblio/bibtex/utils/bibcop/bibcop.pl b/biblio/bibtex/utils/bibcop/bibcop.pl
index 081ac6bbdf..2b44f2d571 100755
--- a/biblio/bibtex/utils/bibcop/bibcop.pl
+++ b/biblio/bibtex/utils/bibcop/bibcop.pl
@@ -21,11 +21,12 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
-# 2024-01-11 0.0.16
+# 2024-01-12 0.0.17
package bibcop;
use warnings;
use strict;
+use File::Basename;
# Hash of incoming command line arguments.
my %args = map { $_ => 1 } @ARGV;
@@ -301,7 +302,7 @@ sub check_typography {
}
}
foreach my $s (@space_before) {
- if ($value =~ /^.*[^\{\s]\Q$s\E.*$/) {
+ if ($value =~ /^.*[^\{\s\\]\Q$s\E.*$/) {
return "In the '$tag', put a space before the $symbols{$s}"
}
}
@@ -513,6 +514,52 @@ sub process_entry {
return @errors;
}
+# Fix one entry.
+sub entry_fix {
+ my (%entry) = @_;
+ if (not exists $entry{':type'}) {
+ error("I don't know what to do with an entry without a type");
+ }
+ my $type = $entry{':type'};
+ if (not exists $blessed{$type}) {
+ error("I don't know what to do with \@$type type of BibTeX entry");
+ }
+ if (not exists $entry{':name'}) {
+ error("I don't know what to do with an entry without a name");
+ }
+ my $tags = $blessed{$type};
+ my %allowed = map { $_ => 1 } @$tags;
+ my @lines;
+ foreach my $tag (keys %entry) {
+ if ($tag =~ /^:/) {
+ next;
+ }
+ if (not exists $allowed{$tag} and not exists $allowed{$tag . '?'}) {
+ next;
+ }
+ my $value = clean_tex($entry{$tag});
+ my $fixer = "fix_$tag";
+ my $fixed = $value;
+ if (defined &{$fixer}) {
+ no strict 'refs';
+ $value = $fixer->($value);
+ }
+ if ($tag =~ /title|booktitle|journal/) {
+ $value = '{' . $value . '}';
+ }
+ if (not $value eq '') {
+ push(@lines, " $tag = {$value},");
+ }
+ }
+ my $fixed = "\@$type\{$entry{':name'},\n";
+ my @sorted = sort @lines;
+ foreach my $line (@sorted) {
+ $fixed = $fixed . $line . "\n";
+ }
+ $fixed = $fixed . "}\n\n";
+ return $fixed;
+}
+
sub fix_author {
my ($value) = @_;
my @authors = split(/\s+and\s+/, $value);
@@ -566,10 +613,15 @@ sub fix_pages {
if ($value =~ /^[1-9][0-9]*$/) {
return $value;
}
+ if ($value eq '') {
+ return $value;
+ }
my ($left, $right) = split(/---|--|-|–|—|\s/, $value);
+ $left //= $right;
if ($left eq '') {
$left = $right;
}
+ $right //= $left;
if ($right eq '') {
$right = $left;
}
@@ -841,6 +893,10 @@ sub fail {
}
}
+if (not basename($0) eq 'bibcop.pl') {
+ return 1;
+}
+
if (@ARGV+0 eq 0 or exists $args{'--help'} or exists $args{'-?'}) {
info("Bibcop is a Style Checker of BibTeX Files\n\n" .
"Usage:\n" .
@@ -861,7 +917,7 @@ if (@ARGV+0 eq 0 or exists $args{'--help'} or exists $args{'-?'}) {
" --latex Report errors in LaTeX format using \\PackageWarningNoLine command\n\n" .
"If any issues, report to GitHub: https://github.com/yegor256/bibcop");
} elsif (exists $args{'--version'} or exists $args{'-v'}) {
- info('0.0.16 2024-01-11');
+ info('0.0.17 2024-01-12');
} else {
my ($file) = grep { not($_ =~ /^-.*$/) } @ARGV;
if (not $file) {
@@ -874,41 +930,7 @@ if (@ARGV+0 eq 0 or exists $args{'--help'} or exists $args{'-?'}) {
my $fixed = '';
for my $i (0..(@entries+0 - 1)) {
my %entry = %{ $entries[$i] };
- my $type = $entry{':type'};
- if (not exists $blessed{$type}) {
- error("I don't know what to do with \@$type type of BibTeX entry");
- }
- if (not exists $entry{':name'}) {
- error("I don't know what to do with an entry without a name");
- }
- my $tags = $blessed{$entry{':type'}};
- my %allowed = map { $_ => 1 } @$tags;
- my @lines;
- foreach my $tag (keys %entry) {
- if ($tag =~ /^:/) {
- next;
- }
- if (not exists $allowed{$tag} and not exists $allowed{$tag . '?'}) {
- next;
- }
- my $value = clean_tex($entry{$tag});
- my $fixer = "fix_$tag";
- my $fixed = $value;
- if (defined &{$fixer}) {
- no strict 'refs';
- $value = $fixer->($value);
- }
- if ($tag =~ /title|booktitle|journal/) {
- $value = '{' . $value . '}';
- }
- push(@lines, " $tag = {$value},");
- }
- $fixed = $fixed . "\@$type\{$entry{':name'},\n";
- my @sorted = sort @lines;
- foreach my $line (@sorted) {
- $fixed = $fixed . $line . "\n";
- }
- $fixed = $fixed . "}\n\n";
+ $fixed = $fixed . entry_fix(%entry);
}
if (exists $args{'-i'} or exists $args{'--in-place'}) {
open(my $out, '>', $file) or error('Cannot open file for writing: ' . $file);
diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib
index a26b8cfc86..ef848012c7 100644
--- a/biblio/ctan-bibdata/ctan.bib
+++ b/biblio/ctan-bibdata/ctan.bib
@@ -1,7 +1,7 @@
%% bib file of all CTAN packages
%% (C) Herbert Voß
%%
-%% created at 11-01-2024, 02:00:04
+%% created at 12-01-2024, 02:00:03
%%
%% This file is provided under the terms of the LPPL v1.3 or
@@ -6877,8 +6877,8 @@
title = {The \texttt{bibcop} package},
subtitle = {Style checker for .bib files},
author = {Yegor Bugayenko},
- date = {2023-09-03},
- version = {0.0.15},
+ date = {2024-01-11},
+ version = {0.0.16},
license = {mit},
mirror = {https://mirror.ctan.org/biblio/bibtex/utils/bibcop},
url = {https://ctan.org/pkg/bibcop},
@@ -20466,8 +20466,8 @@
title = {The \texttt{dvisvgm} package},
subtitle = {Convert DVI, EPS, and PDF files to Scalable Vector Graphics format (SVG)},
author = {Martin Gieseking},
- date = {2023-11-15},
- version = {3.1.2},
+ date = {2024-01-11},
+ version = {3.2},
license = {gpl3+},
mirror = {https://mirror.ctan.org/dviware/dvisvgm},
url = {https://ctan.org/pkg/dvisvgm},
@@ -22409,8 +22409,8 @@
title = {The \texttt{eolang} package},
subtitle = {Formulas and graphs for the EO programming language},
author = {Yegor Bugayenko},
- date = {2024-01-02},
- version = {0.17.1},
+ date = {2024-01-11},
+ version = {0.18.0},
license = {mit},
mirror = {https://mirror.ctan.org/macros/latex/contrib/eolang},
url = {https://ctan.org/pkg/eolang},
@@ -25202,13 +25202,13 @@
title = {The \texttt{ffcode} package},
subtitle = {Fixed-font code blocks formatted nicely},
author = {Yegor Bugayenko},
- date = {2024-01-10},
- version = {0.9.0},
+ date = {2024-01-11},
+ version = {0.9.1},
license = {mit},
mirror = {https://mirror.ctan.org/macros/latex/contrib/ffcode},
url = {https://ctan.org/pkg/ffcode},
annotation = {This \LaTeX{} package helps you write source code in your
- academic papers and make it looks neat.
+ academic papers and make it looks neat.
It uses
and
,
@@ -27016,8 +27016,8 @@
title = {The \texttt{fontsetup} package},
subtitle = {A front-end to fontspec, for selected fonts with math support},
author = {Antonis Tsolomitis},
- date = {2023-12-26},
- version = {2.02},
+ date = {2024-01-11},
+ version = {2.1.0},
license = {gpl3},
mirror = {https://mirror.ctan.org/macros/unicodetex/latex/fontsetup},
url = {https://ctan.org/pkg/fontsetup},
@@ -42565,8 +42565,8 @@
title = {The \texttt{lwarp} package},
subtitle = {Converts \LaTeX{} to HTML},
author = {Brian Dunn},
- date = {2024-01-05},
- version = {0.913},
+ date = {2024-01-11},
+ version = {0.914},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/lwarp},
url = {https://ctan.org/pkg/lwarp},
@@ -44547,6 +44547,21 @@
url = {https://ctan.org/pkg/media9},
}
+@manual{ctan-medmath,
+ title = {The \texttt{medmath} package},
+ subtitle = {Fix mediummath option in nccmath package},
+ author = {Jianrui Lyu},
+ date = {2024-01-11},
+ version = {2024B},
+ license = {lppl1.3c},
+ mirror = {https://mirror.ctan.org/macros/latex/contrib/medmath},
+ url = {https://ctan.org/pkg/medmath},
+ annotation = {This package fixes and improves the mediummath option
+ in the package.
+ This concerns sizes of operators and infinite loops
+ caused by definite integrals.},
+}
+
@manual{ctan-medstarbeamer,
title = {The \texttt{medstarbeamer} package},
subtitle = {Beamer document class for MedStar Health Research Institute},
@@ -48275,7 +48290,7 @@
title = {The \texttt{nccmath} package},
subtitle = {Extended mathematics capabilities},
author = {Alexander I. Rozhenko},
- date = {2018-07-03},
+ date = {2024-01-11},
version = {1.2},
license = {lppl},
mirror = {https://mirror.ctan.org/macros/latex/contrib/ncctools},
@@ -48360,7 +48375,7 @@
title = {The \texttt{ncctools} package},
subtitle = {A collection of general packages for \LaTeX{}},
author = {Alexander I. Rozhenko},
- date = {2019-08-03},
+ date = {2024-01-11},
version = {3.5.3},
license = {lppl},
mirror = {https://mirror.ctan.org/macros/latex/contrib/ncctools},
@@ -48586,8 +48601,8 @@
title = {The \texttt{NewComputerModern} package},
subtitle = {Computer Modern fonts including matching non-latin alphabets},
author = {Antonis Tsolomitis},
- date = {2024-01-09},
- version = {5.02},
+ date = {2024-01-11},
+ version = {5.1},
license = {gfl},
mirror = {https://mirror.ctan.org/fonts/newcomputermodern},
url = {https://ctan.org/pkg/newcomputermodern},
@@ -48685,8 +48700,8 @@
title = {The \texttt{newpx} package},
subtitle = {Alternative uses of the PX fonts, with improved metrics},
author = {Michael Sharpe},
- date = {2023-11-14},
- version = {1.534},
+ date = {2024-01-11},
+ version = {1.535},
license = {lppl,gfl},
mirror = {https://mirror.ctan.org/fonts/newpx},
url = {https://ctan.org/pkg/newpx},
@@ -48731,8 +48746,8 @@
title = {The \texttt{newtx} package},
subtitle = {Alternative uses of the TX fonts, with improved metrics},
author = {Michael Sharpe},
- date = {2023-12-20},
- version = {1.736},
+ date = {2024-01-11},
+ version = {1.737},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/fonts/newtx},
url = {https://ctan.org/pkg/newtx},
@@ -53052,8 +53067,8 @@
title = {The \texttt{pgfkeysearch} package},
subtitle = {This package offers a way to find keys in a given path 'recursively', unlike pgfkeysvalueof},
author = {Alceu Frigeri},
- date = {2024-01-08},
- version = {1.1},
+ date = {2024-01-11},
+ version = {1.2},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/pgfkeysearch},
url = {https://ctan.org/pkg/pgfkeysearch},
@@ -55368,8 +55383,8 @@
title = {The \texttt{ProfLycee} package},
subtitle = {A \LaTeX{} package for French maths teachers in high school},
author = {Cédric Pierquet},
- date = {2024-01-06},
- version = {3.01c},
+ date = {2024-01-11},
+ version = {3.01e},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/proflycee},
url = {https://ctan.org/pkg/proflycee},
@@ -65947,10 +65962,10 @@
title = {The \texttt{superiors} package},
subtitle = {Attach superior figures to a font family},
author = {Michael Sharpe},
- date = {2019-08-19},
- version = {1.06},
+ date = {2024-01-11},
+ version = {2.0},
license = {lppl},
- mirror = {https://mirror.ctan.org/fonts/superiors},
+ mirror = {https://mirror.ctan.org/macros/latex/contrib/superiors},
url = {https://ctan.org/pkg/superiors},
}
@@ -70629,8 +70644,8 @@
title = {The \texttt{tikzdotncross} package},
subtitle = {Small set of macros for defining/marking coordinates and crossing (jumps) paths},
author = {Alceu Frigeri},
- date = {2024-01-08},
- version = {1.0},
+ date = {2024-01-11},
+ version = {1.1},
license = {lppl1.3c,gpl3+},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/tikzdotncross},
url = {https://ctan.org/pkg/tikzdotncross},
@@ -70808,8 +70823,8 @@
title = {The \texttt{tikzquests} package},
subtitle = {A parametric questions’ repositories framework},
author = {Alceu Frigeri},
- date = {2024-01-08},
- version = {1.0},
+ date = {2024-01-11},
+ version = {1.1},
license = {lppl1.3c,gpl3+},
mirror = {https://mirror.ctan.org/macros/latex/contrib/tikzquests},
url = {https://ctan.org/pkg/tikzquests},
@@ -75649,6 +75664,17 @@
url = {https://ctan.org/pkg/verifiche},
}
+@manual{ctan-verifycommand,
+ title = {The \texttt{verifycommand} package},
+ subtitle = {Verifies definitions are unchanged, such as before patching},
+ author = {Brian Dunn},
+ date = {2024-01-11},
+ version = {1.00},
+ license = {lppl1.3c},
+ mirror = {https://mirror.ctan.org/macros/latex/contrib/verifycommand},
+ url = {https://ctan.org/pkg/verifycommand},
+}
+
@manual{ctan-verse,
title = {The \texttt{verse} package},
subtitle = {Aids for typesetting simple verse},