Bonjour @manoub1,
Edition du 16/10/2020 : Voir en bas de réponse.
Merci de préciser les versions de LO et du système d’exploitation.
Avez-vous vu la partie de l’aide sur les Autotext, plus particulièrement la section Import ?
Editez le corps de votre question pour ajouter des informations… N’utiliser une réponse que pour apporter une réelle réponse à votre problème.
Ajout
Les Autotextes sont conservés, par défaut, à l’installation, dans deux répertoires :
répertoire d'installation de LO
/share
/autotext
/
répertoire du profile LO de l'utilisateur
/autotext
/ Par exemple, dans un environnement Ubuntu 18.04 et pour LO 6.4.6, ce dernier répertoire est $/.config/libreoffice/4/user/autotext/
Ces répertoires comportent des fichiers .bau qui correspondent aux différentes catégories d’autotextes.
Ces fichiers .bau sont des archives qui s’ouvrent par un outil de décompression et comportent chacun une liste de répertoire dont chacun correspond à un autotexte, un fichier BlockList.xml qui liste les différents autotextes avec leur répertoire associé, leur texte de présentation, le raccourci associé et éventuellement le besoin de formatage.
Il est possible d’importer de nouveaux fichiers bau pour faire un import en masse. Mais je bloque sur la structure fine d’un de ces fichiers. J’ai essayé de faire le fichier Ajout_en_masse.bau en remplaçant l’extension .zip par .bau d’un répertoire compressé, ce répertoire comportant un fichier BlockList.xml avec une seule entrée, un répertoire Toto qui contient le fichier Toto.xml prévu pour remplacer le raccourci Toto
par Toto, c'est le plus beau
et un fichier atevent.xml.
Contenu du fichier Toto.xml:
<office:document xmlns:block-list="http://openoffice.org/2001/block-list" xmlns:text="http://openoffice.org/2000/text" xmlns:office="http://openoffice.org/2000/office" block-list:list-name="Standard">
<office:body>
<text:p>Toto, c'est le plus beau.</text:p>
</office:body>
</office:document>
Contenu du fichier atevent.xml :
<office:auto-text-events xmlns:office="http://openoffice.org/2000/office" xmlns:text="http://openoffice.org/2000/text" xmlns:script="http://openoffice.org/2000/script" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:ooo="http://openoffice.org/2004/office" xmlns:xlink="http://www.w3.org/1999/xlink">
<office:events>
<script:event script:language="StarBasic" script:event-name="on-insert-done" script:macro-name="Template.Autotext.Main" script:location="application" script:library="application"/>
</office:events>
</office:auto-text-events>
Ma difficulté est que la boîte de dialogue d’import ne reconnaît pas ce fichier bau. Je vais poser la question sur le forum anglo-saxon.
2e Ajout
L’import concerne les Autotextes intégrés à un document MS Word, ce qui expliquent qu’il ne permet pas l’intégration d’un fichier .bau.
Par l’ajout d’un Autotexte, dans la catégorie Mes Autotextes
, il apparaît que la même structure est utilisée dans le fichier <répertoire du profile LO de l’utilisateur>/autotext/mytexts.bau, sans fichier atevent.xml mais avec un complément : un répertoire METAT-INF est utilisé qui comporte un fichier manifest.xml qui contient le code suivant :
<?xml version="1.0" encoding="UTF-8"?>
<manifest:manifest>
<manifest:file-entry manifest:full-path="/" manifest:media-type=""/>
<manifest:file-entry manifest:full-path="BlockList.xml" manifest:media-type="text/xml"/>
<manifest:file-entry manifest:full-path="TOTO/TOTO.xml" manifest:media-type="text/xml"/>
</manifest:manifest>
Donc pour ajouter le nouvel Autotexte ‘Titi, c’est le plus joli’, sans format (= texte seul), il “suffit” d’ajouter un répertoire TITI qui contient le fichier TITI.xml, construit comme le fichier TOTO.xml ci-dessus, d’ajouter une ligne au fichier META-INF/manifest.xml au sujet du fichier “TITI/TITI.xml” et enfin d’ajouter une ligne au fichier BlocList.xml.
Ces modifications sont pérennes. Tant que le pofil de l’utilisateur n’est as réinitialisé.
Ceci étant établi, il ne reste “plus” qu’à écrire une macro qui ira lire un tableau contenant trois colonnes : les noms des autotextes, leurs raccourcis et les contenus, puis qui créera les répertoires ad hoc et complétera les fichiers BlockList.xml et manifest.xml. N’étant pas à l’aise avec les macros, je laisse ma place à un autre bénévole pour ce faire. Mais il existe de nombreux exemples sur ce forum ou sur le wiki.
Il sera donc utile de conserver et la sauvegarde de la macro et le tableau qui l’accompagne pour réinitaliser le profil après réinitialisation d’icelui.
La structure du fichier mytexts.bau est à affiner si une mise en forme des Autotextes est à préserver.
Ajout du 26/10/2020
En l’absence de compétence en macro, il est possible de réaliser le travail avec une feuille de calcul. Voir le modèle ci-joint qui permet de réaliser très facilement les fichiers manifest.xml et BlockList.xml et fournit le contenu des fichiers de données qu’il est possible de créer manuellement avec un éditeur de texte.
Récupérer le fichier modèle ci-dessus.
Remplacer les valeurs d’essai dans le bloc B18:Ennn, en tenant bien compte de l’ordre des données entre Nom du fichier et du répertoire, raccourci qui sera tapé dans le texte, nom du raccourci qui explicite l’autotexte quand ce dernier devra être recherché dans la liste des raccourcis et enfin le contenu de l’autotexte.
Etendre les formules de G22:N22 à Gnnn:Nnnn
Le contenu du fichier manifest.xml se trouvera en Hnnn.
Celui de BlockList.xml sera en Knnn.
Et le contenu de chaque fichier de données se trouve dans la colonne N, avec son nom en colonne M.
Créer l’ensemble de ces fichiers et les compresser dans un fichier mytexts.zip.
Renommer ce dernier en mytexts.bau et le placer dans le répertoire répertoire du profile LO de l'utilisateur
/autotext
/
Cordialement, Michel