From: Hugo Villeneuve Date: Fri, 6 May 2022 02:12:38 +0000 (-0400) Subject: Correction erreurs si uppercase n'est pas spécifié X-Git-Url: http://gitweb.hugovil.com/?a=commitdiff_plain;h=8be8e4c6fecf7b1a2284a79dfc999428188f9d53;p=musique%2Fhvguitartex.git Correction erreurs si uppercase n'est pas spécifié --- diff --git a/gtx2tex.pl b/gtx2tex.pl index e505932..847cfed 100644 --- a/gtx2tex.pl +++ b/gtx2tex.pl @@ -226,6 +226,11 @@ sub crdpro { # Bearbeitung der Zeile aus der Eingabedatei if ( $uppercase ) { $_ = uc($_); # Toutes les lettres en majuscule (incluant les accords). } + else { + # Seulement les accords en majuscule + # .*? -> shortest match (non-greedy) + $_ =~ s/(\[.*?\])/${\(uc $1)}/g; + } s/\s/$space/g; # Remplace une séquence de plusieurs espaces par un seul s/(\^)(.*?)(\])/\\\(^\{\2\}\\\)\]/g; # Place le texte suivant '^' en exposant @@ -241,39 +246,38 @@ sub crdpro { # Bearbeitung der Zeile aus der Eingabedatei $verbose && print " Étape1: $_\n"; - if ( $uppercase ) { - # Accord Majeur7 - s/(gtxchord\{[A-G][B#]?)MAJ7/\1$majeur_sept/g; + # Accord Majeur7 + s/(gtxchord\{[A-G][B#]?)MAJ7/\1$majeur_sept/g; - # Accord suivi d'un bémol ou dièse optionel, suivi de 'sus' + 1 chiffre. - s/(gtxchord\{[A-G][B#]?[0-9]?)SUS([0-9]+)/\1\$^{sus\2}\$/g; + # Accord suivi d'un bémol ou dièse optionel, suivi de 'sus' + 1 chiffre. + s/(gtxchord\{[A-G][B#]?[0-9]?)SUS([0-9]+)/\1\$^{sus\2}\$/g; - # Accord demi-diminué - # Accord, suivi d'un bémol ou dièse optionel, suivi de 'm7b5'. - s/(gtxchord\{[A-G][B#]?)M7B5/\1$half_diminished/g; + # Accord demi-diminué + # Accord, suivi d'un bémol ou dièse optionel, suivi de 'm7b5'. + s/(gtxchord\{[A-G][B#]?)M7B5/\1$half_diminished/g; - # Accords diminués - # On recherche le nom de l'accord, suivi d'un bémol ou dièse optionel, suivi de 'mb5'. - s/(gtxchord\{[A-G][B#]?)MB5/\1$diminished/g; - s/(gtxchord\{[A-G][B#]?)DIM7/\1$diminished7/g; - s/(gtxchord\{[A-G][B#]?)DIM/\1$diminished/g; + # Accords diminués + # On recherche le nom de l'accord, suivi d'un bémol ou dièse optionel, suivi de 'mb5'. + s/(gtxchord\{[A-G][B#]?)MB5/\1$diminished/g; + s/(gtxchord\{[A-G][B#]?)DIM7/\1$diminished7/g; + s/(gtxchord\{[A-G][B#]?)DIM/\1$diminished/g; - # Accords mineurs - s/(gtxchord\{[A-G][B#]?)M7/\1$mineur7/g; - s/(gtxchord\{[A-G][B#]?)M/\1$mineur/g; + # Accords mineurs + s/(gtxchord\{[A-G][B#]?)M7/\1$mineur7/g; # Cm7 + s/(gtxchord\{[A-G][B#]?)M([0-9]+)/\1$mineur\$^{\2}\$/g; # Cm13 + s/(gtxchord\{[A-G][B#]?)M/\1$mineur/g; # Cm (doit être en dernier) - # Accord A7b5 - s/(gtxchord\{[A-G][B#]?)([0-9])B([0-9])/\1\$^{\2\\flat\3}\$/g; + # Accord A7b5 + s/(gtxchord\{[A-G][B#]?)([0-9])B([0-9])/\1\$^{\2\\flat\3}\$/g; - # Accord A7 ou A6 ou Ab6 - s/(gtxchord\{[A-G][B#]?)([0-9]?)/\1\$^{\2}\$/g; + # Accord A7 ou A6 ou Ab6 + s/(gtxchord\{[A-G][B#]?)([0-9]?)/\1\$^{\2}\$/g; - s/(gtxchord\{[A-G])B/\1b/g; # Remplace 'gtxchord{AB' par 'gtxchord{Ab' - s/(\/[A-G])B/\1b/g; # Remplace '/AB' par '/Ab' - } + s/(gtxchord\{[A-G])B/\1$flat/g; # Remplace 'gtxchord{AB' par 'gtxchord{Ab' + + s/(\/[A-G])B/\1$flat/g; # Remplace '/AB' par '/Ab' s/#/$sharp/g; # Remplace le symbole '#' par le symbole diese - s/b/$flat/g; # Remplace le 'b' dans l'accord par le symbole bemol if ( $italian ) { s/gtxchord\{D/gtxchord{Re/g;