- alias auto-maj {
- var %i 1, %auto-maj1 $1, %auto-maj2 $2, %auto-maj3 $3, %auto-maj4 $3
- if !%auto-maj1 || !%auto-maj2 || !%auto-maj3 || !%auto-maj4 { echo -a 2Mauvaise Syntaxe ... Rappel : $chr(36) $+ auto-maj(signe_de_ponctuation_derrière_lesquel_il_y_aura_modification(MAJ),mots_à_ne_pas_modifier,phrase_à_traiter) | halt }
- while %i <= $numtok(%auto-maj1,32) { var %signe.temp = $gettok(%auto-maj1,%i,32), %ii 1
- while %ii <= $numtok(%auto-maj3,32) { var %mot.temp = $gettok(%auto-maj3,%ii,32), %iii 1
- while %iii <= $numtok(%auto-maj2,32) { var %exep.temp = $gettok(%auto-maj2,%iii,32)
- if %signe.temp == %mot.temp { var %mot.temp3 = $gettok(%auto-maj3, $calc(%ii + 1),32), %mot.temp4 $upper($left(%mot.temp3,1)) $+ $right(%mot.temp3, $calc($len(%mot.temp3) - 1)), %auto-maj3 = $replace(%auto-maj3,%mot.temp3,%mot.temp4) }
- elseif %signe.temp isin %mot.temp {
- if %signe.temp == $left(%mot.temp,1) { var %auto-maj3 = $replace(%auto-maj3,%mot.temp,%signe.temp $+ $upper($mid(%mot.temp,2,1)) $+ $right(%mot.temp, $calc($len(%mot.temp) - 2))) }
- elseif %signe.temp == $right(%mot.temp,1) { var %mot.temp3 = $gettok(%auto-maj3,$calc(%ii + 1),32), %mot.temp4 $upper($left(%mot.temp3,1)) $+ $right(%mot.temp3,$calc($len(%mot.temp3) - 1)), %auto-maj3 = $replace(%auto-maj3,%mot.temp3,%mot.temp4) }
- else { var %restlettre.p = $calc($len(%mot.temp) - $len($mid(%mot.temp, $pos(%mot.temp,%signe.temp,1), $len(%mot.temp)))), %restlettre.n $calc($len(%mot.temp) - %restlettre.p - 2), %mot.temp5 = $left(%mot.temp,%restlettre.p) $+ %signe.temp $+ $upper($mid(%mot.temp, $calc($pos(%mot.temp,%signe.temp,1) + 1),1)) $+ $right(%mot.temp,%restlettre.n), %auto-maj3 = $replace(%auto-maj3,%mot.temp,%mot.temp5) }
- }
- if %exep.temp == %mot.temp { %auto-maj3 = $replace(%auto-maj3,%mot.temp,%exep.temp) }
- elseif %exep.temp == %mot.temp3 { %auto-maj3 = $replace(%auto-maj3,%mot.temp3,%exep.temp) }
- inc %iii }
- inc %ii }
- inc %i }
- return %auto-maj3
- }
alias auto-maj {
var %i 1, %auto-maj1 $1, %auto-maj2 $2, %auto-maj3 $3, %auto-maj4 $3
if !%auto-maj1 || !%auto-maj2 || !%auto-maj3 || !%auto-maj4 { echo -a 2Mauvaise Syntaxe ... Rappel : $chr(36) $+ auto-maj(signe_de_ponctuation_derrière_lesquel_il_y_aura_modification(MAJ),mots_à_ne_pas_modifier,phrase_à_traiter) | halt }
while %i <= $numtok(%auto-maj1,32) { var %signe.temp = $gettok(%auto-maj1,%i,32), %ii 1
while %ii <= $numtok(%auto-maj3,32) { var %mot.temp = $gettok(%auto-maj3,%ii,32), %iii 1
while %iii <= $numtok(%auto-maj2,32) { var %exep.temp = $gettok(%auto-maj2,%iii,32)
if %signe.temp == %mot.temp { var %mot.temp3 = $gettok(%auto-maj3, $calc(%ii + 1),32), %mot.temp4 $upper($left(%mot.temp3,1)) $+ $right(%mot.temp3, $calc($len(%mot.temp3) - 1)), %auto-maj3 = $replace(%auto-maj3,%mot.temp3,%mot.temp4) }
elseif %signe.temp isin %mot.temp {
if %signe.temp == $left(%mot.temp,1) { var %auto-maj3 = $replace(%auto-maj3,%mot.temp,%signe.temp $+ $upper($mid(%mot.temp,2,1)) $+ $right(%mot.temp, $calc($len(%mot.temp) - 2))) }
elseif %signe.temp == $right(%mot.temp,1) { var %mot.temp3 = $gettok(%auto-maj3,$calc(%ii + 1),32), %mot.temp4 $upper($left(%mot.temp3,1)) $+ $right(%mot.temp3,$calc($len(%mot.temp3) - 1)), %auto-maj3 = $replace(%auto-maj3,%mot.temp3,%mot.temp4) }
else { var %restlettre.p = $calc($len(%mot.temp) - $len($mid(%mot.temp, $pos(%mot.temp,%signe.temp,1), $len(%mot.temp)))), %restlettre.n $calc($len(%mot.temp) - %restlettre.p - 2), %mot.temp5 = $left(%mot.temp,%restlettre.p) $+ %signe.temp $+ $upper($mid(%mot.temp, $calc($pos(%mot.temp,%signe.temp,1) + 1),1)) $+ $right(%mot.temp,%restlettre.n), %auto-maj3 = $replace(%auto-maj3,%mot.temp,%mot.temp5) }
}
if %exep.temp == %mot.temp { %auto-maj3 = $replace(%auto-maj3,%mot.temp,%exep.temp) }
elseif %exep.temp == %mot.temp3 { %auto-maj3 = $replace(%auto-maj3,%mot.temp3,%exep.temp) }
inc %iii }
inc %ii }
inc %i }
return %auto-maj3
}