summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--divers/renommage-labels.pl19
1 files changed, 19 insertions, 0 deletions
diff --git a/divers/renommage-labels.pl b/divers/renommage-labels.pl
new file mode 100644
index 0000000..034531b
--- /dev/null
+++ b/divers/renommage-labels.pl
@@ -0,0 +1,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)\{(.*?)\}/sprintf("\\%s{%s}",$1,changeul($2))/ge;
+ print;
+}