Ouvrir le menu principal
Idées et projets
    Légende des icônes : état d’avancement des projets et des portails
   00%.svg   En projet     25%.png   Commencé     50%.png   En cours     75%.png   Avancé     Relu et corrigé   Terminé  







Projet n° 13 -- Macro de mise en forme

Liste des actions à réaliser[1]Modifier

MacroModifier
  1. Ponctuation, remise à zéro : remplacer tout (=!/!) ; (=?/?) ; (=;/;) ; (=:/:) - NB : Le signe / sépare ce qu'il faut remplacer de ce par quoi il faut le remplacer. Ainsi =:/: se lira Remplacer espace suivie de deux points par deux points tout court. Le signe = représente ici l'espace normale. (Oui, espace en ce sens est du féminin). [2]
  2. Ponctuation, remise à zéro : remplacer tout (=!/!) ; (=?/?) ; (=;/;) ; (=:/:) - NB : Le signe = représente ici l'espace (ou demi-espace ?) insécable.
  3. Ponctuation : remplacer tout (!/=!=) ; (?/=?=) ; (;/=;=) ; (:/=:=).
  4. Guillemets français : remplacer tout («/«=) ; (»/=»).
  5. Apostrophes : 1. remplacer tout ('/’) ; 2. remplacer tout (’’’/''') ; 3. remplacer tout (’’/'')
  6. Underscore : remplacer tout (_/italiques).
  7. Tirets : remplacer tout (--/—=) (Ne pas oublier l'espace).
  8. Ligatures : remplacer tout oeu/œu, OEU/ŒU.
  9. Modernisation : remplacer tout très-/très=.
  10. Supprimer espaces en début de ligne (qui induisent un préformatage du texte)
À la main à chaque foisModifier
  1. Guillemets indifférenciés, sauf si quelqu'un fournit une macro pour cela, mais en existe-t-il ? [3]
  2. Rechercher deux apostrophes courbes, remettre italiques et gras en place avec des apostrophes droites
  3. Rechercher : E + casse respectée -> É au cas par cas
  4. Rechercher : oe -> remplacement par œ au cas par cas. Même chose pour OE -> Œ.
  5. Rechercher : A + mot entier + casse respectée -> À
  6. Rechercher : O + mot entier + casse respectée -> Ô
  7. Rechercher : o + mot entier -> ô


À la main (une fois pour toutes)Modifier
  1. Assigner une touche inutilisée à l'apostrophe courbe (caractères spéciaux)



Voir aussiModifier

Actions des BotsModifier

Voir ici et ici le travail d'Adrienne et celui de Bigon. YannBot et ThomasBot traitent des ensembles de pages dépendants d'une page titre ; ProBot, le robot de Drake, a remplacé les apostrophes droites par des apostrophes courbes dans toutes les pages du Dictionnaire raisonné de l’architecture française du XIe au XVIe siècle ; BigonBot :


  • Début de citation :

En gros le robot gère déjà les points 1, 2, 3, 4 et 5 de "Macro" et les points 1 et 2 de "A la main", à l'aide d'expressions régulières :

  1. Modifier les caractères spéciaux :
    1. ([^'])'(?!') => \1’ : permet de remplacer tous les (') qui ne sont ni suivis ni précédés d'un autre (') par un ’ (ignore donc les textes en italique ou gras, mais aussi les italiques "collés")
    2. oe => œ
    3. O[Ee] => Œ : cela veut dire qu'à la fois Oe et OE seront remplacés.
    4. "([^"]*)" => «\1» (sans espaces) : permet de gérer les guillemets indifférenciés en les repérant par couples encadrants des caractères.
  2. Gérer les espaces insécables :
    1. (\s*)«(\s*) =>  «  : remplace toute série de caractères "blancs" (à savoir espaces, quel qu'ils soient, tabulations, retours à la ligne...), ou absence de ces caractères, avant et après les «, par une espace normale avant et une espace insécable après. Idem pour » mais dans l'autre sens (insécable avant, normale après).
    2. (\s*)!(\s*) =>  !  : toute série ou absence de caractères "blancs" remplacées par (espace insécable-!-espace normale). Idem pour (?) et (;). Pour (:) je fais pareil, mais sans éliminer les retours à la ligne précédant le signe car cela peut être volontaire (: pour indentation en début de ligne)
    3. (\s*)’(\s*) =>  : enlève les caractères "blancs" avant et après les ’.
  • Fin de citation

--Zephyrus 23 juillet 2007 à 19:46 (UTC)

Il semble que l'utilisation de \s supprime le formatage d'un texte ; \t paraît plus approprié. Marc 28 juillet 2007 à 10:36 (UTC)

WordModifier

Open OfficeModifier

VimModifier

VBAModifier


Source : Wikisource:Scriptorium/Février 2008

A titre indicatif, voici la très longue liste de ce que nous vérifions dans notre macro de recherche d'erreurs: c'est du language VBA, mais facilement compréhensible. Comme l'a souligné Sapcal22, même sans utiliser Word, il faut un moteur de recherche capable, entre autres, de différencier les majuscules. Peut-être que cela pourra inspirer les informaticiens de Wikisource. --Coolmicro 8 février 2008 à 02:10 (UTC)

       Call xSignaleErreur("[!abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZâàçéèêëïîñœôùûüÂÀÇÉÊÈÎԌ٠\-’,;:.°«»…0123456789^l\?\!\)\(^=^0013^s^0002]", RespectCasseNon, MotCompletNon, CaracGeneriqueOui) 'Les autres caractères sont a priori interdits
       Call xSignaleErreur("^0013^0013[!0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZÂÀÇÉÊÈÎÔŒÙ^=«»…]", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)     ' Minuscule en début de paragraphe
       Call xSignaleErreur("^0013^=[^s ][a-z]", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)     ' Minuscule en début de dialogue
       Call xSignaleErreur("[.,;:…\!\?»\)][a-z]", RespectCasseNon, MotCompletNon, CaracGeneriqueOui) '   .,;:…!?») suivis d'une minuscule
       Call xSignaleErreur("[.,;:…\!\?»\)][A-Z]", RespectCasseNon, MotCompletNon, CaracGeneriqueOui) '   .,;:…!?») suivis d'une majuscule
       Call xSignaleErreur("[.,;:…\!\?»\)][0-9]", RespectCasseNon, MotCompletNon, CaracGeneriqueOui) '   .,;:…!?») suivis d'un chiffre
       Call xSignaleErreur("[!^0013^0011:.\!\?…»]^0013", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)    ' marque de paragraphe non précédée d'une marque de paragraphe, saut de ligne ou de :.;!?…»
       Call xSignaleErreur("[0-9][!0123456789) ,.…^s]", RespectCasseNon, MotCompletNon, CaracGeneriqueOui) '   chiffre non suivi d'un e ou è ou point ou virgule ou espace ou chiffre ou points de suspension
       Call xSignaleErreur("^$^s»^p", RespectCasseNon, MotCompletNon, CaracGeneriqueNon) '   » précédé d'un espace insécable, suivi d'une marque de paragraphe et sans ponctuation avant
       Call xSignaleErreur(";^s»^p", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)  '   » suivi d'une marque de paragraphe avec point virgule et espace incécable avant
       Call xSignaleErreur(",^s»^p", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)  '   » suivi d'une marque de paragraphe avec virgule et espace incécable avant
       Call xSignaleErreur("- ", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)      '   - suivi d'un espace
       Call xSignaleErreur(" -", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)      '   - précédé d'un espace
       Call xSignaleErreur(", ,", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)     '   Deux virgules
       Call xSignaleErreur("..", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)      '   Deux points
       Call xSignaleErreur("^-", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)      '   trait d'union conditionnel (courant en sortie ocr)
       Call xSignaleErreur(".,", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)
       Call xSignaleErreur(",.", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)
       Call xSignaleErreur("[!cçdjlmnstuCÇDJLMNST]’", RespectCasseNon, MotCompletNon, CaracGeneriqueOui) ' apostrophe douteuse
       Call xSignaleErreur(",,", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)
       Call xSignaleErreur(". [a-z]", RespectCasseOui, MotCompletNon, CaracGeneriqueOui) '   Point suivi par espace et une minuscule
       Call xSignaleErreur("<[!aàyMÀÔY]>[!\-'^0011^0013…]", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)  '  recherche lettres seules et chiffres (sauf a y et Y et M)
       Call xSignaleErreur("^", RespectCasseOui, MotCompletNon, CaracGeneriqueNon)       '   Circonflexe seul
       Call xSignaleErreur("comme,", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' virgule douteuse
       Call xSignaleErreur("<de,", RespectCasseNon, MotCompletOui, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("<des,", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("<du,", RespectCasseNon, MotCompletOui, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("[!-]<en,", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("[!-]<la,", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)    ' virgule douteuse
       Call xSignaleErreur("[!-]<le,", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("[!-]<les,", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("[!-]<leur,", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("<ne,", RespectCasseNon, MotCompletOui, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("par,", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)     ' virgule douteuse
       Call xSignaleErreur("pour,", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' virgule douteuse
       Call xSignaleErreur("<se,", RespectCasseNon, MotCompletOui, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("<sur,", RespectCasseNon, MotCompletOui, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("<un,", RespectCasseNon, MotCompletOui, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("<une,", RespectCasseNon, MotCompletOui, CaracGeneriqueOui)     ' virgule douteuse
       Call xSignaleErreur("Â", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' Â â mot seul
       Call xSignaleErreur("acre", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' âcre
       Call xSignaleErreur("acres", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' âcres
       Call xSignaleErreur("age", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' âge
       Call xSignaleErreur("ages", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     'âges
       Call xSignaleErreur("ali", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' ah, Ah
       Call xSignaleErreur("ail", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' ait
       Call xSignaleErreur("altitude", RespectCasseNon, MotCompletNon, CaracGeneriqueNon) ' attitude
       Call xSignaleErreur("an", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' un
       Call xSignaleErreur("antre", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' autre
       Call xSignaleErreur("antres", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' autres
       Call xSignaleErreur("arec", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' avec
       Call xSignaleErreur("<bâte", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)     ' hâter....
       Call xSignaleErreur("Bordeaux", RespectCasseOui, MotCompletOui, CaracGeneriqueNon) ' du bordeaux (vin)
       Call xSignaleErreur("botte", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'boite
       Call xSignaleErreur("bottes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'boites
       Call xSignaleErreur("Bourgogne", RespectCasseOui, MotCompletOui, CaracGeneriqueNon) ' du bourgogne (vin)
       Call xSignaleErreur("c'a", RespectCasseNon, MotCompletNon, CaracGeneriqueNon) 'ç'a
       Call xSignaleErreur("ca", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)   'ça
       Call xSignaleErreur("carie", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'carte
       Call xSignaleErreur("caries", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'cartes
       Call xSignaleErreur("celte", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'cette
       Call xSignaleErreur("Champagne", RespectCasseOui, MotCompletOui, CaracGeneriqueNon) 'champagne si vin, Champagne si région, Ex: du champagne, du vin de Champagne
       Call xSignaleErreur("cl", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'et
       Call xSignaleErreur("clans", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'dans
       Call xSignaleErreur("Cognac", RespectCasseOui, MotCompletOui, CaracGeneriqueNon) 'cognac si alcool, Cognac si ville
       Call xSignaleErreur("cola", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'cela
       Call xSignaleErreur("comparait", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'comparer à l'imparfait ou comparaître au présent
       Call xSignaleErreur("connue", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'comme
       Call xSignaleErreur("cotte", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'cette
       Call xSignaleErreur("cote", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'côte
       Call xSignaleErreur("cotes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'côtes
       Call xSignaleErreur("coté", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'côté
       Call xSignaleErreur("cotés", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'côtés
       Call xSignaleErreur("da", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'de ou dà
       Call xSignaleErreur("daine", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'dame
       Call xSignaleErreur("daines", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'dames
       Call xSignaleErreur("dé", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)   'de
       Call xSignaleErreur("dés", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'dès
       Call xSignaleErreur("dît", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' dit
       Call xSignaleErreur("dîtes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' dites
       Call xSignaleErreur("do", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  ' de
       Call xSignaleErreur("dos", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'des
       Call xSignaleErreur("dune", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'd une
       Call xSignaleErreur("écoul", RespectCasseNon, MotCompletNon, CaracGeneriqueOui)     ' écouter...
       Call xSignaleErreur("échiné", RespectCasseNon, MotCompletOui, CaracGeneriqueOui)     ' échine
       Call xSignaleErreur("el", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'et
       Call xSignaleErreur("éliez", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' étiez
       Call xSignaleErreur("élude", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' étude
       Call xSignaleErreur("éludes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' études
       Call xSignaleErreur("entant", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' enfant
       Call xSignaleErreur("étal", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' état
       Call xSignaleErreur("fa", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' la
       Call xSignaleErreur("fat", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     'fut
       Call xSignaleErreur("faîte", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     'faite
       Call xSignaleErreur("fil", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' fit
       Call xSignaleErreur("fît", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' fit
       Call xSignaleErreur("foire", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' faire
       Call xSignaleErreur("fols", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) ' fois
       Call xSignaleErreur("foret", RespectCasseNon, MotCompletNon, CaracGeneriqueNon) ' forêt
       Call xSignaleErreur("Gap", RespectCasseOui, MotCompletOui, CaracGeneriqueNon) 'Cap
       Call xSignaleErreur("gela", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'cela
       Call xSignaleErreur("gène", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'gêne
       Call xSignaleErreur("gènes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'gênes
       Call xSignaleErreur("gomme", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'comme
       Call xSignaleErreur("gomment", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'Comment
       Call xSignaleErreur("gui", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' gui au lieu de qui
       Call xSignaleErreur("Hais", RespectCasseOui, MotCompletOui, CaracGeneriqueNon)     ' Mais
       Call xSignaleErreur("II", RespectCasseOui, MotCompletOui, CaracGeneriqueNon)    'Il
       Call xSignaleErreur("ll", RespectCasseOui, MotCompletOui, CaracGeneriqueNon)    'Il
       Call xSignaleErreur("inonde", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'monde
       Call xSignaleErreur("inondes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'mondes
       Call xSignaleErreur("I'", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)     ' I' au lieu de l'
       Call xSignaleErreur("jo'", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' je
       Call xSignaleErreur("lai", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' lui
       Call xSignaleErreur("lard", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' tard
       Call xSignaleErreur("lé", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     '
       Call xSignaleErreur("lés", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     '
       Call xSignaleErreur("liens", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' tiens
       Call xSignaleErreur("ligure", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' figure
       Call xSignaleErreur("ligures", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' figures
       Call xSignaleErreur("maïs", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' mais
       Call xSignaleErreur("mats", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' mais
       Call xSignaleErreur("mil", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'mit
       Call xSignaleErreur("mimes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)   'mîmes
       Call xSignaleErreur("mît", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' mit
       Call xSignaleErreur("mol", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)    'mot
       Call xSignaleErreur("mor", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)    'mon
       Call xSignaleErreur("môme", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)   'même
       Call xSignaleErreur("mômes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'mêmes
       Call xSignaleErreur("mou", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)    'mon
       Call xSignaleErreur("moyeu", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)    'moyen
       Call xSignaleErreur("nia", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)    'ma
       Call xSignaleErreur("niais", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'mais
       Call xSignaleErreur("nie", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)   'me
       Call xSignaleErreur("nies", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)   'mes
       Call xSignaleErreur("no", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  ' ne
       Call xSignaleErreur("nomme", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  ' homme
       Call xSignaleErreur("nommes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  ' hommes
       Call xSignaleErreur("noua", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'nous
       Call xSignaleErreur("onde", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)
       Call xSignaleErreur("OU", RespectCasseOui, MotCompletOui, CaracGeneriqueNon)      '   Mot OU majuscule
       Call xSignaleErreur("paf", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'par
       Call xSignaleErreur("pale", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'pâle
       Call xSignaleErreur("pales", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'pâles
       Call xSignaleErreur("parait", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'parer à l'imparfait ou paraître au présent
       Call xSignaleErreur("<([Pp]ari[!s])", RespectCasseNon, MotCompletNon, CaracGeneriqueOui) 'parle
       Call xSignaleErreur("pardessus", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'par-dessus
       Call xSignaleErreur("perle", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' porte
       Call xSignaleErreur("perles", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' portes
       Call xSignaleErreur("pins", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'plus
       Call xSignaleErreur("porto", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' porte
       Call xSignaleErreur("portos", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' portes
       Call xSignaleErreur("pou", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)   'peu
       Call xSignaleErreur("pouf", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'pour
       Call xSignaleErreur("prés", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'près
       Call xSignaleErreur("pur", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'par
       Call xSignaleErreur("qu ", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)     ' qu sans apostrophe
       Call xSignaleErreur("quo", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' que
       Call xSignaleErreur("rais", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' vais
       Call xSignaleErreur("rie", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' ne
       Call xSignaleErreur("rosé", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'rose
       Call xSignaleErreur("rosés", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'roses
       Call xSignaleErreur("silène", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'sirène
       Call xSignaleErreur("sombré", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'sombre
       Call xSignaleErreur("sou", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'son
       Call xSignaleErreur("ternie", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' terme
       Call xSignaleErreur("ternies", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' termes
       Call xSignaleErreur("tète", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' tête
       Call xSignaleErreur("tètes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' têtes
       Call xSignaleErreur("tille", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'fille
       Call xSignaleErreur("tilles", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'filles
       Call xSignaleErreur("tin", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'fin
       Call xSignaleErreur("tins", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'fins
       Call xSignaleErreur("toisé", RespectCasseNon, MotCompletNon, CaracGeneriqueNon) 'toise
       Call xSignaleErreur("tonte", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'toute
       Call xSignaleErreur("tontes", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'toutes
       Call xSignaleErreur("toul", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'tout
       Call xSignaleErreur("tune", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'l'une
       Call xSignaleErreur("Us", RespectCasseOui, MotCompletOui, CaracGeneriqueNon)     ' Ils
       Call xSignaleErreur("Ut", RespectCasseOui, MotCompletOui, CaracGeneriqueNon)     ' lit
       Call xSignaleErreur("vêlement", RespectCasseNon, MotCompletNon, CaracGeneriqueNon)     ' vêtement
       Call xSignaleErreur("vile", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' vite
       Call xSignaleErreur("voila", RespectCasseNon, MotCompletOui, CaracGeneriqueNon) 'voilà
       Call xSignaleErreur("voire", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)     ' votre
       Call xSignaleErreur("voua", RespectCasseNon, MotCompletOui, CaracGeneriqueNon)  'vous
       Call xSignaleErreur("11", RespectCasseOui, MotCompletOui, CaracGeneriqueNon) ' il ou Il



  1. Après discussions François, Yann, Zephyrus, Philippe, Sapcal22, Pyb, BigonL, Marc, Grondin, Coolmicro, Enmerkar, Kipmaster… autant dire que cela fait une vraie demande et un vrai consensus.
  2. Voir aussi (entre autres) Mise en forme et espaces ; Tiret cadratin
  3. Remplacer tous les " par« ; ensuite rechercher les« un par un dans le texte et les remplacer par» quand c'est nécessaire (une fois sur deux, mais ce n'est pas automatique, et il faut comprendre le texte, donc le bot ne peut pas le faire). Puis remettre les " dans les balises html, comme <div class= "text">.