summaryrefslogtreecommitdiffstats
path: root/divers/renommage-labels.pl
blob: 8d4d9c04223284a83a57386f51dd375053ee355e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#! /usr/local/bin/perl

# Retire certains caractèrs (souligné, circonflexe) des labels en les
# remplaçant par des tirets.  À utiliser avec un fichier .tex en
# argument, et le résultat sort sur la sortie standard
# (donc typiquement faire:
# ./renommage-labels.pl truc.tex > truc.tex.new && mv truc.tex.new truc.tex
# ).

sub changeul {
    my $s = shift;
    $s =~ s/[\_\^\:]/\-/g;
    return $s;
}

while (<>) {
    s/\\(label|ref|refext\{.*?\})\{(.*?)\}/sprintf("\\%s{%s}",$1,changeul($2))/ge;
    print;
}