Writer : Comment créer/modifier une table de remplacement ?

Bonjour à toute la communauté.

Dans Writer, je cherche un moyen de faire du remplacement de mots pour des corrections orthographiques, mais de manière automatique et en très très grand nombre.

Je vous donne un exemple :

  • En Norvège :norway:, il existe principalement deux standards d’écriture pour la langue. Le bokmål, qui est la version issue de l’ancien danois royal (la Norvège était anciennement régie par le Danemark), principalement écrit à l’est du pays ; et le landsmål (souvent aussi appelé nynorsk, mais le terme est ambivalent), qui est une graphie plus “populaire” usitée à l’ouest.

  • Admettons que j’écrive des livres de plusieurs centaines de pages dans l’une des deux graphies, et que je souhaite publier en ligne dans l’autre graphie également, pour ne pas me priver de lecteurs…

  • Je ne me vois pas ré-écrire l’intégralité de chaque livre dans une graphie que je maîtrise mal, voire très très peu.
    La machine numérique peut certainement faire ça à ma place, non ?

Comment pourrais-je mettre Writer au travail pour qu’il fasse cela tout seul pendant que je vais boire un café ?

  • Sachant que je possède des dictionnaires numériques des deux graphies dont je pourrais copier/coller les entrées.

J’imagine qu’il faudrait créer/éditer une table, mais de quelle forme ? Une feuille de calcul ? Sous quelle extension ? Comment ? Etc…

Pour l’instant je n’ai réussi à faire que du mot par mot depuis l’interface “Rechercher et remplacer”.

J’ai essayé de farfouiller les options de remplacement dans “Outils>Options d’autocorrection”, mais point de succès ; en revanche, dans l’onglet “options” je vois en 1ère ligne l’item cochable “utiliser la table de remplacement”.

Ce qui me fait penser que l’on peut peut-être éditer une table nous-même ?

J’ai essayé d’aller chercher de l’inspiration sur ces pages, mais cela ne m’a pas mené bien loin :
https://help.libreoffice.org/4.2/Common/Replace/fr
https://help.libreoffice.org/3.3/Common/Edit_Dictionary/fr

Est-ce que quelqu’un aurait la solution ?

Je vous remercie beaucoup !

La table de remplacement de l’autocorrection n’est active que pendant la saisie du texte, donc ce n’est pas de ce côté qu’il faut chercher.

Je ne pense pas que Writer soit le bon outil pour des substitutions en masse.

Si le problème est uniquement une question de graphie et qu’il n’y a pas de subtilités grammaticales (ajout ou retrait de prépositions, inversions de mots, déplacement d’adverbe, …), je traiterais le problème avec un macro générateur ou un petit utilitaire en Perl.

Cependant, il y a d’autres conditions liées au formatage: les mots doivent être homogènes, c’est-à-dire il ne doit pas y avoir de variation stylistique en plein milieu. Pas question d’avoir une syllabe en gras si les reste est en maigre (ou un changement de police, de couleur, ou de quoi que ce soit que vous puissiez imaginer pour faire “joli”).

Dans ce cas, dans le fichier exporté en .fodt, les lettres composant les mots restent connexes et le début et la fin sont bien caractérisés par des espaces, ponctuations ou délimiteurs de balise XML.

Vous préparez alors un fichier d’équivalence bokmål <=> bokmål avec une paire de mots par ligne. Avec ma définition simpliste du “mot”, vous serez obligé de noter explicitement toutes les flexions du mot (nombre, genre, conjugaison, …). Example en français pour un participe passé: chanté chantée chantés chantées.

Le programme (macro-générateur ou Perl) balaye le fichier à la recherche de mot de sa liste. Ce qui ne s’y trouve pas est recopié verbatim. Quand un mot est trouvé, il est remplacé par son homologue de la paire. Normalement, une seule liste couvre les besoins dans les deux sens s’il y a correspondance 1:1.

Une fois la conversion faite, le fichier résultant .fodt est ouvert dans Writer pour vérification. Il peut être sauvegardé à nouveau en .odt pour gagner de l’espace disque (.odt est comprimé alors que .fodt ne l’est pas).

Bon courage.

Les outils disponibles variant avec les OS, merci de mentionner dans un commentaire le vôtre (ure curiosité de ma part). Toujours curiosité, faites part de la piste dans laquelle vous vous engagez.

Pour montrer à la communauté que la question a trouvé sa réponse, cliquez sur ✓ à côté de la “bonne” réponse, et “votez” en cliquant sur la flèche ^ de toute réponse utile. Ce sont les mécanismes utilisés pour communiquer la qualité des questions et réponses sur ce site. Merci!

Pour tout complément d’information, éditez votre question ou faites un commentaire. N’utilisez pas une réponse.

(la mise à jour ne fait que corriger une erreur de formatage; rien de nouveau sur le fond)

Bonjour,
Tu pourrais aussi utiliser LibreOffice avec un dictionnaire actif de l’une des graphies (les deux graphies existent au niveau des versions, à vérifier si les deux existent au niveau des dictionnaires), ouvrir ton fichier écrit dans l’autre graphie et lancer la correction orthographique. Mais je ne sais pas si par macro on peut automatiser complètement l’opération… sinon, la tendinite du clic te menace !

Sinon, un logiciel libre comme OmegaT, compatible avec LibreOffice, a peut-être cette fonctionnalité.

Cordialement,

Tout d’abord merci beaucoup à tous les deux de vos réponses.

@Pioulo : si je comprends bien ce que tu dis, tu pars du principe que les dictionnaires dans les deux “langues” (on va appeler la variante orthographique comme ça, pour que ce soit plus clair :wink: ) existent déjà.
Le souci, c’est que j’ai pris un exemple fictif, et que la langue pour laquelle je souhaite le faire, je sais qu’il n’en existe pas de dictionnaire déjà disponible sur les bases de données Libreoffice pour la graphie qui m’intéresse ^^’ Une oui, mais pas la deuxième.
J’aurais donc à le créer. Je vais jeter un œil du côté d’Omega-T, que je ne connaissais pas ; je vais voir si ça donne quelque chose :slight_smile:

@Ajlittoz : Oui, il ne s’agit bel et bien que de graphie. Ni la syntaxe, ni la grammaire ne rentrent en compte. Je te (je peux te tutoyer ?) donne un exemple fictif avec le mot oiseau : je voudrais que quand le logiciel rencontre oiseau, il le remplace par wazo. Ça s’arrête là :wink: Par extension : “Il est beau, le oiseau” → “Ille ai bo leuh wazo” xD Désolé, l’exemple est nul, mais c’est dur d’expliquer à partir du français, qui n’admet qu’une graphie ^^’

Pour le formatage, à priori, pas de problème de ce côté-là : si je reprends l’exemple que tu donnes, il n’y aura pas de mot du style “lu mi ère” (dsl, je n’arrive pas à attacher toutes les syllabes du mot avec la variation de gras dans cet éditeur), comme si je voulais mettre une syllabe en valeur.
En revanche, il y aurait des mots (entiers), voire des paragraphes en italique ou en gras (mais toujours en entier), comme des poésies incorporées au texte par exemple. Cela serait-il problématique ?

Alors du coup, je ne m’y connais pas du tout en “macro-générateur” ni en "perl :confused: Je ne sais pas du tout ce que c’est. Peux-tu m’éclairer ?
Je ne suis pas certain d’avoir compris dans les détails le coup du .fodt, mais je pense que j’ai compris l’idée générale.
Si c’est bien ce que je crois, c’est cette démarche que j’envisageais au départ.
Mais peux-tu détailler le processus, s’il-te-plaît ? Pour la création de ce fichier… Je le crée sous quoi ?

Merci beaucoup à vous deux.

P.S: OSX + LibreOffice 6.4.1.2

Regarde quand même du côté des extensions les outils de langage si tu ne l’as pas fait et, notamment, Anaphraseus.

  • fodt: Fichier>Enregistrer sous, dans Filtre:, sélectionner “Flat XML ODF Text Document (.fodt)”

    L’intérêt est que le fichier résultant est du texte (au lieu de binaire compressé) et peut donc être lu par n’importe quel éditeur/programme. Il est donc possible de travailler sur le contenu sans être embêté par le codage (dans certaines limites toutefois, car on peut aussi endommager la sauce XML qui lie le tout).

    Dans mon Fedora Linux, un double-clic sur le fichier l’ouvre dans un éditeur de texte. Pour l’ouvrir dans Writer, il faut passer par un clic-droit. Attention, ce peut être inversé dans d’autres systèmes.

  • formatage: à partir du moment où l’intégrité des mots est respectée, leurs lettres restent contigues dans le .fodt. Une approche pas subtile du tout fonctionnera parfaitement. Un mot est alors défini comme commençant par une lettre (attention à cette catégorie!) et se terminant à la première non-lettre.

  • macro-générateur: programme utilitaire transformant un fichier texte selon des directives fournies par l’utilisateur

    il en existe des tonnes. Le plus connu dans les *NIX est m4, mais je ne pense pas qu’il convienne ici à cause du lexique à créer

  • perl: langage de transformation à base d’expressions régulières (gère remarquablement l’Unicode), un peu l’équivalent de bash (peut faire la même chose) mais vraiment orienté sur la détection de motifs dans le texte et leur remplacement.

    Généralement installé sur les *NIX car beaucoup de commandes sytèmes sont des scripts Perl. Pour en avoir le cœur net, tape dans un terminal command -v perl ou bien perl -v. La seconde commande donne la version de l’interpréteur perl.

    Tel que je vois la question, le script Perl ne serait pas très gros: lecture du lexique et mémoire (mémoires importantes de nos jours, en plus mémoire virtuelle sur le disque) puis boucle d’acquisition des mots et remplacement. ~40-50 lignes?

Si tu décides de poursuivre (le problème m’intéresse), contacte-moi via ajlittoz (at) users (point) sourceforge (point) net. Je t’indiquerai alors une adresse courriel pour communiquer.