Documentation des Macros de TXM

Les macros sont de petits utilitaires satellites de TXM échangeables et adaptables, ou bien des prototypes de futures fonctionnalités de TXM en cours de discussion et de finalisation, écrits en langage Groovy1). Ce sont des petits fichiers texte d'extension '.groovy' pouvant être édités et modifiés à tout instant avant leur exécution avec n'importe quel éditeur de texte, y compris l'éditeur de texte intégré de TXM (accès direct par la commande 'Éditer' du menu contextuel de chaque macro dans la vue Macro). Des scripts Groovy utilitaires arrivant à maturité sont régulièrement transformés en macros de TXM. Et des macros arrivant à maturité sont régulièrement intégrées sous forme de commandes de base dans TXM.

Les macros utilisent un protocole simple pour ouvrir une boite de dialogue de saisie de leurs paramètres au lancement. Elles sont appelées depuis la vue 'Macro'.

Cette page documente les macros livrées avec TXM. Les versions les plus récentes de ces macros sont téléchargeables directement depuis Sourceforge : http://sourceforge.net/projects/txm/files/software/TXM%20macros

Vous pouvez partager vos propres macros et leur documentation avec la communauté des utilisateurs de TXM par le biais de cette page (vous devez être inscrit à la liste de diffusion 'txm-users' pour cela).

Annotation de corpus

BuildWordPropTable, InjectWordPropTable

Macros d'assistance à la correction ou à l'ajout de propriétés de mots.

Utilisation

Voir le tutoriel de correction de mots.

Préparation des fichiers sources d'un corpus (Source Workbench)

ChangeEncoding

Traitement par lot de conversion d'encodage de caractères pour tous les fichiers d'un dossier.

Paramètres

  • inputDirectory : le dossier contenant les fichiers à ré-encoder. Attention : les fichiers sont modifiés sur place
  • inputEncoding : encodage actuel des caractères des fichiers. Si l'encodage n'est pas connu la valeur ”??” permet de lancer le devin d'encodage automatiquement fichier par fichier (marche pas à tous les coups)
  • outputEncoding : encodage des caractères souhaité des fichiers.

CharList

Dénombre tous les caractères d'un fichier Unicode UTF-8.

Paramètres

  • inputFile : le fichier à analyser.

SearchInDirectory

Affiche toutes les lignes des fichiers texte d'un répertoire contenant une expression régulière donnée.

Cette macro sert au réglage d'expressions régulières pour le traitement de sources.

Paramètres

  • inputDirectory : Répertoire des fichiers à chercher
  • regexp : l'expression régulière à chercher
  • characterEncoding : l'encodage des caractères utilisé par les fichiers (par défaut : UTF-8)

Remarque : FindMultiLineRegExp est une version permettant de chercher des expressions sur plusieurs lignes.

SearchReplaceInDirectory

Chercher/Remplacer par lot tous les fichiers d'un dossier.

Paramètres

  • inputDirectory : le dossier contenant les fichiers à traiter. Attention : les fichiers sont modifiés sur place
  • extension : l'extension des fichiers à traiter (par exemple '\.txt', '\.xml' ou '\.*' pour tous les fichiers2)
  • find : l'expression régulière3) à rechercher (Voir également la faq et le manuel pour la syntaxe des expressions régulières). L'usage préalable de la macro SearchInDirectory peut être utile pour procéder au réglage de cette expression de recherche (car elle ne fait que lister ce qui est trouvé, sans faire de remplacement).
  • replaceWith : la chaîne de remplacement (qui peut contenir des groupes mémorisés de l'expression recherchée : $1, $2, etc.)
  • encoding : l'encodage des caractères des fichiers à traiter (par exemple UTF-8, windows-1253, x-MacRoman, etc.)

Remarque : MultiLineSearchReplaceInDirectory est une version permettant de chercher et remplacer des expressions sur plusieurs lignes.

Text2TXT

Traitement par lot de conversion de format de tous les fichiers textes d'un dossier (.doc, .docx, .odt, .rtf, .html…) vers le format texte brut TXT. La transformation vers TXT est assurée par LibreOffice ou OpenOffice.

Paramètres

  • inputDirectory : le dossier qui contient les fichiers à traiter.
    Attention : les fichiers résultats TXT seront enregistrés dans ce même dossier
  • extension : extensions des fichiers à traiter

Prérequis

  • TXM version 0.7.5 et inférieure → LibreOffice ou OpenOffice 3.x
  • TXM version 0.7.6 et supérieure → LibreOffice ou OpenOffice toutes versions

Remarque : les fichiers TXT résultants peuvent être importés dans TXM en les déposant dans un nouveau répertoire et en indiquant ce répertoire comme source du module d'import TXT+CSV.

CSV2XML

Macro de transformation d'un tableau au format CSV, dont certains champs contiennent du texte, en un fichier XML importable dans TXM avec le module d'import XML/w+CSV pour une analyse textométrique. Cette macro est un premier prototype du futur module d'import de TXM de sources sous forme de tableau au format CSV, dans l'esprit du logiciel Dtm-Vic de Ludovic Lebart (cf Manuel d'Utilisation de Dtm-Vic, seconde édition (2013) section “IV. Importation, création et exportation des fichiers au format Dtm-Vic”) qui traite typiquement ce genre de sources.

Le fichier XML construit par la macro transcode le tableau d'entrée de la façon suivante :

  • il associe une unité de structure de base, ou unité textuelle, à chaque ligne du tableau d'entrée (considérée que les réponses d'un même répondant ou panéliste)
  • il associe à chacune de ces unités textuelles des propriétés, ou métadonnées, issues du contenu de certaines colonnes “catégorisants” la ligne correspondante dans le tableau d'origine (ces colonnes qualifient le répondant ou correspondent à des réponses à des questions fermées)
  • il ajoute à chacune de ces unités textuelles des sous unités de structures encodant le contenu des colonnes “textuelles” de la ligne d'origine (ces colonnes correspondent à des réponses à des questions ouvertes)

L'idée est de pouvoir comparer dans TXM les unités textuelles entre elles, soit les répondants, en s'appuyant sur leurs propriétés (issues de certaines colonnes de la ligne, ou caractéristiques du répondant) et sur les mots qu'ils utilisent dans leurs réponses (issues de certaines colonnes de la ligne, ou réponses textuelles à chaque question “textuelle” non fermée).

Paramètres

Les noms des paramètres sont encore susceptibles d'évoluer

  • Entrée
    • inputFile : fichier CSV en entrée
      Remarques
      • La première ligne contient les noms de colonnes
      • Les noms de colonnes ne doivent pas être composés de caractères spéciaux, de caractères accentués ou de ponctuation (espace, etc.)
      • Le nom du fichier résultat est construit à partir de celui du fichier d'entrée en remplaçant l'extension par '.xml'
    • metadataColumnList : liste des noms de colonnes encodant les propriétés des unités textuelles à construire - colonnes catégorisant le répondant, séparés par une virgule : (par exemple : 'identifiant,age,sexe')
      Les noms de ces colonnes seront utilisés pour nommer les propriétés correspondantes
    • textColumnList : liste des noms de colonnes encodant le contenu textuel - colonnes contenant les réponses aux questions ouvertes du répondant, séparés par une virgule : (par exemple : 'reponse1,reponse2'
      Les noms de ces colonnes seront utilisés pour nommer les balises qui délimiteront ces contenus textuels
    • columnSeparator : caractère séparateur de colonnes (par défaut : caractère 'Tabulation')
    • characterEncoding : système d'encodage des caractères (par défaut : Unicode UTF-8)
  • Sortie
    • rootTag : nom de la balise XML racine du document résultat (par exemple : 'corpus')
    • textTag : nom de la balise XML encodant les unités textuelles correspondant à chaque ligne du tableau d'entrée (par exemple : 'text')

Exemple de tableau d'entrée : sondage.csv

identifiant age sexe reponse1 reponse2
id1 23 F Réponse à la première question par le premier répondant. Réponse à la deuxième question par le premier répondant.
id2 24 H Réponse à la première question par le deuxième répondant. Réponse à la deuxième question par le deuxième répondant.
id3 25 H Réponse à la première question par le troisième répondant. Réponse à la deuxième question par le troisième répondant.

Fichier XML résultat : sondage.xml Avec les paramètres suivants :

  • rootTag : corpus
  • textTag : text
  • metadataColumnList : identifiant,age,sexe
  • textColumnList : reponse1,reponse2

 <corpus>
  <text identifiant="id1" age="23" sexe="F">
   <reponse1>
    Réponse à la première question par le premier répondant.
   </reponse1>
   <reponse2>
    Réponse à la deuxième question par le premier répondant.
   </reponse2>
  </text>
  <pb/>
  <text identifiant="id2" age="24" sexe="H">
   <reponse1>
    Réponse à la première question par le deuxième répondant.
   </reponse1>
   <reponse2>
    Réponse à la deuxième question par le deuxième répondant.
   </reponse2>
  </text>
  <pb/>
  <text identifiant="id3" age="25" sexe="H">
   <reponse1>
    Réponse à la première question par le troisième répondant.
   </reponse1>
   <reponse2>
    Réponse à la deuxième question par le troisième répondant.
   </reponse2>
  </text>
  <pb/>
 </corpus>

Le fichier XML résultat peut alors être importé dans TXM en le déposant dans un nouveau répertoire et en indiquant ce répertoire comme source de la commande 'Fichier / Importer / XML/w+CSV'.

On peut alors, par exemple, comparer les catégories de répondants entre elles en réalisant un calcul de spécificité du vocabulaire d'une partition sur la structure 'text' avec la propriété 'sexe'.

TXT2XML

Transforme tous les fichiers TXT d'un répertoire en fichiers XML. Les fichiers XML sont déposés dans un sous-répertoire résultat 'out'.

La macro transforme :

  • l'encodage initial des caractères
  • la présence initiale de caractères '&'
  • la présence initiale de caractères '<'
  • l'extension des fichiers résultats

Elle n'ajoute aucun encodage XML supplémentaire.

Paramètres

  • inputDirectory : répertoire des fichiers à transformer
  • characterEncoding : système d'encodage des caractères des fichiers texte (par défaut : Unicode UTF-8)
  • rootTag : nom de la balise XML racine des fichiers XML produits (par exemple : 'text')

Remarque : le répertoire résultat peut être importé dans TXM en l'indiquant comme répertoire source du module d'import XML/w+CSV.

TeiHeader2MetadataCSV

Récupère des informations dans les entêtes TEI de fichiers source pour construire un tableau de métadonnées “metadata.csv”.

Paramètres

  • inputDirectory : répertoire des fichiers source à analyser
  • propertiesFile : fichier de paramètres associant des noms de métadonnées à des requêtes XPath d'extraction des informations correspondantes au sein des fichiers source
  • CSVoutputFile : fichier de sortie “metadata.csv”
  • columnSeparator : caractère séparateur de colonnes pour le format CSV
  • columnSeparator : caractère séparateur de champs pour le format CSV

Remarque : n'importe quel format XML peut être utilisé pour réaliser des extractions. Les requêtes XPath n'ont pas à être liées à la TEI et ne sont pas limitées à des sous-élements de teiHeader.

Exemple

Exemple de fichier de paramètres “propertiesFile”, le fichier “est-republicain.properties” pour le corpus “Est républicain”4) :

date-edition-en-clair=/tei:TEI/tei:teiHeader/tei:fileDesc/tei:titleStmt/tei:title/tei:date/text()
date-edition-formatée=/tei:TEI/tei:teiHeader/tei:fileDesc/tei:titleStmt/tei:title/tei:date/@when

Glose :

  • la première requête extrait le contenu d'un élément date, pour créer la métadonnée date-edition-en-clair (dateeditionenclair dans TXM une fois normalisée par l'import)
  • la deuxième requête extrait la valeur de l'attribut @when d'un élément date, pour créer la métadonnée date-edition-formatée (dateeditionformatee dans TXM une fois normalisée par l'import)

Le fichier “metadata.csv” résultant pour l'année 1999 (répertoire de sources “Annee1999”) a la forme suivante :

id,date-edition-en-clair,date-edition-formatée
1999-06-09,"9 juin 1999","1999-06-09"
1999-07-04,"4 juillet 1999","1999-07-04"
1999-07-10,"10 juillet 1999","1999-07-10"
1999-07-29,"29 juillet 1999","1999-07-29"
1999-08-07,"7 août 1999","1999-08-07"
1999-05-29,"29 mai 1999","1999-05-29"
1999-07-07,"7 juillet 1999","1999-07-07"
1999-09-19,"19 septembre 1999","1999-09-19"
...

XMLStatistics

Calcul de la table des fréquences de toutes les balises et attributs XML utilisées dans les fichiers d'un dossier (utile pour une vue d'ensemble quantitative de l'usage des balises dans des documents dont on ne connait pas les principes d'encodage).

Paramètres

  • inputDirectory : le dossier qui contient les fichiers XML à analyser
  • tsvFile : le fichier TSV où les résultats seront sauvegardés
  • usePaths : dénombre tous les chemins d'éléments présents (exemple : /TEI/text/body/div/post/p, etc.)
  • useAttributes : inclut les différents noms d'attributs présents dans le dénombrement
  • useAttributeValues : inclut les différentes valeurs d'attributs utilisées dans le dénombrement

ExecXSL

Traitement par lot d'application d'une feuille de transformation XSLT sur tous les fichiers XML d'un dossier.

Paramètres

  • XSLFile : la feuille XSL à appliquer
  • inputDirectory : le dossier qui contient les fichiers à traiter
  • outputDirectory : le dossier qui contiendra le résultat

TextTranscription2TRS

Assistance à l'encodage et à la transformation de transcriptions en format texte (.doc, .odt, .rtf du logiciel Transana) vers le format XML du logiciel Transcriber pour l'import dans TXM avec le module d'import Transcriber+CSV.

Utilisation

Voir le tutoriel import de transcriptions d'enregistrements TXT-ODT-RTF-DOC dans TXM.

Paramètres

  • odtDir : le dossier qui contient les fichier documents (ODT, Word, RTF) à traiter
  • debug : pour afficher plus de messages dans la console si la macro échoue

EuroPresse2XML

Assistance à la récupération et à la transformation des exports HTML du portail EuroPresse pour l'import dans TXM avec le module d'import XML/w+CSV.

Utilisation

Voir le tutoriel Europresse.

Paramètres

  • rootDir : le répertoire qui contient le répertoire “orig” (qui lui même contient les fichiers HTML)
  • encoding: l'encodage des fichiers HTML. Sous Windows : iso-8859-1, Linux : UTF-8
  • debug : afficher plus de message en cas d'erreur

TXM2CoNLL2009

Exporte un corpus au format CoNLL2009.

Utilisation

Sélectionner le corpus à exporter dans la vue corpus, puis lancer la macro.

Paramètres

  • outputFile : fichier TSV contenant le résultat de l'export
  • encoding : encodage de sortie du fichier TSV, par défau “UTF-8”
  • sentenceProperty : propriété de structure représentant une phrase
  • posProperty : propriété de mot codant la morphosyntaxe du mot
  • lemmaProperty : propriété de mot codant le lemme du mot

PennTreebank2TIGER

Conversion par lot ou par fichier du format Penn Treebank au format TIGER-XML.

Paramètres

  • SourceFile: drives one file conversion process mode
  • SourceFolder: drives several files in a folder conversion process mode
    → fill only the field to be used
  • TargetFile: if SourceFile then use that target file
  • XMLTargetID: if SourceFile then use that target ID
  • TargetFolder: : if SourceFolder then use that target folder to save targets
    • target files are named from the source filename with the extension stripped and '.xml' added
    • target ID are named from the source filename with the extension stripped
  • MaximumNumberOfSentences: maximum number of sentences to convert per file (set to '0' to convert all sentences)

Réglage des éditions de texte

AddFacsAttribute, FacsEditionBuilder et EditionUpdater

Assistance au réglage des éditions de texte d'un corpus ayant des sources XML :

  • mise à jour des sources XML avec des liens vers les fichiers images de facsimilé dans l'attribut @facs des balises <pb/>
  • création de l'édition synoptique avec facsimilé
  • remplacement des éditions TXM d'origine (HTML)
  • utilisation de l'extension “Éditeur d'édition synoptique” pour la lecture de l'édition dans TXM pour bureau

Utilisation

Voir le tutoriel de construction d'éditions synoptiques.

Paramètres

AddFacsAttribute :

  • imageDirectory : le dossier contenant les images des facsimilés
  • outputDirectory : dossier ou le résultat de la macro sera enregistré
  • element (=“pb”): l'élément à surcharger.
  • attribut (=“n”) : l'attribut de numérotation des pages à ajouter.
  • prefix (=””) : préfixe pour les chemins des images

FacsEditionBuilder :

  • <corpus> : sélectionné depuis la vue Corpus
  • editionName (=“facs”) : nom de l'edition à remplacer ou à créer
  • tag (=“pb”) : l'élément de pagination
  • attribute (=“n”): l'attribut de numérotation des pages
  • debug (=false) : pour afficher les messages de debug (en cas de problème d'exécution de la macro)

EditionUpdater :

  • <corpus> : sélectionné depuis la vue Corpus
  • xslEdition (=“xxx”): XSL de construction des éditions
  • xslPages (=“yyy”) : XSL qui pagine l'édition après avoir produit les éditions HTML
  • editionName (=“default”) : nom de l'edition à remplacer ou à créer
  • useTokenizedDirectory (=false) : pour utiliser les fichiers XML du dossier “tokenized” au lieu de ceux du dossier “txm” du corpus binaire
  • debug (=false) : pour afficher les messages de debug (en cas de problème d'exécution de la macro)

Variantes de commandes TXM

NIndex

Installation de la macro

  1. télécharger la macro NIndexMacro.groovy
  2. copier le fichier dans <répertoire utilisateur>/TXM/scripts/macro/org/txm/macro/commands
  3. ouvrir la vue Macro
  4. accéder au répertoire 'commands'
  5. double-cliquer sur l'icone de la macro NIndex pour la lancer

Fonctionnement de la macro

La macro NIndex assiste le décompte de séquences de mots dans des corpus ou des sous-corpus. Elle généralise la commande Index de TXM 0.7.8 à N requêtes CQL. Les séquences sont fournies dans un fichier d'entrée (paramètre inputFile), au format général d'une séquence par ligne. Trois formats de séquences sont proposés :

  • séquences de formes de mots (ou de forme de lemme ou de forme de pos, etc.) comme par exemple des séquences déjà repérées par TXM ou par un autre logiciel, exemple :
    Cathédrale Notre-Dame
    rue de la Chanvrerie
    ...
  • séquences d'expressions régulières sur les formes de mots, exemple :
    Tour.*
    rue|avenue|boulevard de la [A-Z].*
    
  • requêtes CQL, exemple :
    "Cathédrale"%cd "Notre-Dame"%cd
    "rue|avenue|boulevard"%c "de"%c "la"%c [word="[A-Z].*"]
    ...

Dans les séquences de formes de mots et d'expressions régulières sur les formes de mots, les formes et les expressions régulières sont séparées par un caractère espace (pour chercher une forme contenant un espace il faut utiliser une expression régulière exprimant ce caractère Unicode).

Types de séquences

Le type de séquences interprété par NIndex est déterminé par le paramètre inputIsCQL. Si ce paramètre est sélectionné (vrai), les séquences sont interprétées comme des requêtes CQL ; sinon elles sont interprétées soit comme des formes soit comme des expressions régulières de formes en fonction du contenu de chaque ligne.

Le paramètre inputWordProperty permet de choisir la propriété de mot qui sera utilisée pour les recherches de séquences de formes ou de séquences d'expression régulière de forme. Par exemple :

  • avec la valeur 'word' (par défaut) ce seront les séquences de forme graphiques qui seront recherchées
  • avec la valeur 'frlemma' ce seront les séquences de formes de lemmes qui seront recherchées
  • avec la valeur 'frpos' ce seront les séquences d'étiquettes morphosyntaxiques qui seront recherchées
  • etc. en fonction de l'étiquetage des mots du corpus

Propriété de mot dénombrée

Le paramètre outputWordProperty permet de choisir quelle propriété de mot sera utilisée pour réaliser le dénombrement des séquences trouvées. Par exemple :

  • avec la valeur 'frlemma' ce seront les séquences de formes de lemmes qui seront dénombrées
  • avec la valeur 'word' (par défaut) ce seront les séquences de formes graphiques qui seront dénombrées
  • avec la valeur 'frpos' ce seront les séquences d'étiquettes morphosyntaxiques qui seront dénombrées
  • etc. en fonction de l'étiquetage des mots du corpus

Regroupement des décomptes par séquence

Quand les séquences sont des requêtes CQL ou des expressions régulières, il est possible de regrouper les décomptes de leurs réalisations en sélectionnant le paramètre groupByQuery. Dans ce cas il y a une fréquence par séquence dans le tableau de sortie.

Liste des corpus à interroger

Les corpus dans lesquels chercher sont soit sélectionnés dans la vue Corpus (avant de lancer la macro), soit fournis sous la forme d'une liste de noms de corpus à l'appel de la macro par une autre macro.

Format de sortie

La macro NIndex écrit son résultat dans un fichier de sortie (paramètre outputFile), deux formats sont proposés :

  • ODS : format tableur Calc de Libre Office (extension .ods)
  • TSV : format texte tabulé TSV (caractère tabulation pour séparer les colonnes)

dans TXM 0.7.8 ou inférieur, pour pouvoir écrire au format ODS il faut installer au préalable des bibliothèques Java complémentaires :

  1. télécharger l'archive office.zip
  2. copier dans <répertoire utilisateur>/TXM/scripts/lib les 7 fichiers qu'elle contient :
    • commons-validator-1.4.0.jar
    • java-rdfa-0.4.2.jar
    • jena-core-2.7.4.jar
    • jena-iri-0.9.4.jar
    • odfdom-java-0.8.10-incubating.jar
    • org.apache.xerces_2.9.0.v201101211617.jar
    • simple-odf-0.8.1-incubating.jar
  3. quitter puis relancer TXM
  4. la macro peut alors utiliser ces librairies

Quand le paramètre odsOutputFormat est sélectionné la sortie se fait au format ODS, sinon TSV.

Sortie au format ODS

La sortie au format tableur est composée de deux feuilles :

  • feuille principale (Sheet1) : contient le tableau des décomptes avec les colonnes suivantes :
    • corpus : nom du corpus, au format chaine
    • word query ou CQL : la requête de séquence, au format chaine
    • word values : les réalisations de la séquence, au format chaine (cette colonne n'est pas présente si le paramètre groupByQuery est sélectionné)
    • f : la fréquence des réalisations ou de la requête si groupByQuery est sélectionné, au format nombre entier
  • feuille de renseignement des résultats (properties), contient le tableau des paramètres du calcul avec les informations suivantes :
    • date : date de lancement de la macro
    • time : heure de lancement de la macro
    • machine : nom de la machine utilisée
    • user : identifiant de l'utilisateur ayant lancé le calcul
    • macro : nom de la macro
    • valeurs des paramètres : corpora, inputFile, inputIsCQL, inputWordProperty, outputFile, odsOutputFormat, outputWordProperty, groupByQuery

Appel répétitif de commandes TXM

CrossedPartitionBuilder

Construit une partition en croisant les différentes valeurs de plusieurs propriétés d'une même structure.

Utilisation

Sélectionner le corpus pour lequel produire la partition puis lancer la macro.

Paramètres

  • structuralUnit : nom de la structure à utiliser. Par exemple pour faire une partition sur les textes il faut saisir “text” ;
  • structuralUnitPropertiesList : liste des propriétés de la structure à combiner, séparer les noms par des virgules. Par exemple pour le corpus “DISCOURS” et la structure “text”, on peut saisir “loc,type” ;
  • debug : afficher les requêtes utilisées par TXM pour produire chaque partie sans créer la partition.

Appel de commandes CQP

CreateCQPList

Permet de définir une liste de mots (ou plus généralement de valeurs de propriétés) utilisable dans les requêtes CQL.

Utilisation

Un tutoriel complet d'utilisation est disponible Tutoriel des listes CQL

Paramètres

A éditer directement dans le fichier script.

ExecCQP

Permet de faire exécuter une ligne de commande au moteur CQP.

Utilisation

Les instructions d'utilisation se trouvent en commentaire au début du fichier script avec un rappel des commandes CQP utiles.

Paramètres

  • statement : une requête CQP. Attention à bien finir la requête par ”;”

SetMatchingStrategy

Permet de changer la stratégie de résolution des opérateurs ?, *, + sur les occurrences du langage de requêtes CQL au cours d'une session de travail. Par exemple, pour la requête5) :

[enpos="DET"]? [enpos="ADJ"]* [enpos="NN"] ([enpos="PREP"] [enpos="DET"]? [enpos="ADJ"]* [enpos="NN"])*

Avec le texte suivant à interroger :

    the old book on the table in the room

  • pour la stratégie 'shortest' le résultat est le suivant (3 matches)

r1=         book
r2=                     table
r3=                                  room

  • pour la stratégie 'longest'6) le résultat est le suivant (1 match)

r1= the old book on the table in the room

  • pour la stratégie 'standard'7) le résultat est le suivant (3 matches)

r1= the old book
r2=                 the table
r3=                              the room

  • pour la stratégie 'traditional' le résultat est le suivant (7 matches recouvrants)

r1= the old book
r2=     old book
r3=         book
r4=                 the table
r5=                     table
r6=                              the room
r7=                                  room

La stratégie de résolution par défault est 'standard'.

Paramètres

  • matchingStrategy : valeur à choisir parmi : shortest, standard, longest, traditional.

Appel de scripts R

ExecR

Dessine l'histogramme des fréquences d'un index dans un SVG et l'affiche dans une fenêtre de TXM.

Utilisation

Il faut sélectionner un index (de corpus ou de partition) dans la vue Corpus avant de lancer la macro. Il n'y a pas de filtrage d'affichage, il faut donc filtrer l'index en amont de la macro. L'ordre des barres est celui des lignes de résultat de l'index.

Paramètres

Aucun

PlotSpecif

Appel la fonction “specificities.distribution.plot” du package textometry pour afficher la courbe de densité du modèle statistique des spécificités.

Utilisation

Pour plus de détail sur la fonction “specificities.distribution.plot”, voir la documentation du package

Paramètres

  • f : fréquence de la forme dans la partie
  • F : fréquence totale de la forme dans le corpus
  • t : nombre d'occurrences de la partie
  • T : nombre total d'occurrences du corpus

Outils statistiques complémentaires

BasicVocabulary

Ce traitement implémente le concept textométrique de “forme(s) de base” et “vocabulaire de base” (on parle quelquefois aussi de “forme banale” et de “banalité”), cf. par ex. Lafon 1980 p. 152, ou Lebart & Salem 1994 p. 176 - les références bibliographiques complètes sont dans la rubrique Documents de référence du site Textométrie. Une forme (un mot) de base est un mot qui n'est spécifique dans aucune partie. En pratique, la macro BasicVocabulary exporte dans un fichier tous les mots de base automatiquement repérés dans un tableau de spécificités, en fonction d'un indice (ou score) de spécificité maximum. Le tableau produit reprend les colonnes du tableau initial de spécificités en insérant en plus, après la colonne F (fréquence totale du mot), une colonne “score_max”, donnant le maximum des indices de spécificité (en valeur absolue) sur la ligne (sorte d'amplitude maximale de la spécificité du mot sur l'ensemble de parties considéré).

Utilisation

Il faut sélectionner un tableau de spécificités dans la vue Corpus avant de lancer la macro. Pour le choix du scoreMax :

  • la communauté textométrique considère qu'un mot est spécifique d'une partie lorsque son indice de spécificité est d'au moins 3 (ou d'au moins 2 pour une approche moins restrictive), donc le scoreMax sera habituellement choisi avec une valeur inférieure à 3, généralement 2 ou moins.
  • on peut indiquer une valeur décimale, la partie décimale étant séparée de la partie entière par un point (notation à la manière anglosaxone), ex. 1.5.
  • plus le scoreMax est petit, plus il est sélectif, en revanche moins il permet de considérer les mots de haute fréquence, pour lesquels statistiquement les scores de spécificité “montent” beaucoup plus facilement. Il peut donc être intéressant de choisir un score pas trop restrictif, puis de dépouiller les résultats dans le tableur en les triant par F décroissant ou/et score_max croissant.

Paramètres

  • outputDirectory : répertoire dans lequel sera placé le fichier résultat créé. Le bouton à droite avec trois petits points permet de naviguer dans l'arborescence des répertoires de la machine (son utilisation est recommandée pour s'assurer d'avoir la bonne syntaxe d'écriture du chemin localisant le répertoire).
  • outputFile : nom du fichier résultat à créer. Ce fichier sera de type .tsv, exploitable dans les tableurs (comme Calc ou Excel) avec comme séparateur de colonne la tabulation.
  • scoreMax : le seuil appliqué aux scores de spécificité, exprimé comme un nombre entier ou décimal positif. Une ligne du tableau est sélectionnée pour être exportée dans le tableau résultat de la macro si et seulement si tous les scores de spécificité observés sur cette ligne sont inférieurs (en valeur absolue) au scoreMax. Habituellement, le scoreMax n'excède pas 3, voire 2.

Specif2Coin

[voir également la macro Specif2Throw plus récente et plus générale]

Affiche la probabilité a priori (avant de faire les lancés) d'obtenir N faces 'pile' consécutives en lançant une pièce au pile ou face, en regard avec la spécificité équivalente. On considère qu'une pièce a 50% de chances (1 chance sur 2) de tomber sur la face 'pile' à chaque lancé - la pièce n'est pas biaisée et les lancés sont indépendants.

Utilisation

Lancer la macro directement par double-clic.

Paramètres

La macro prend un seul paramètre et trois options :

  • nthrows : le nombre de lancés 'pile' consécutifs

La macro affiche - selon les options :

  • displayProba : toutes les probabilités de 1 à nthrows lancés en détaillant :
    • n : le nombre de 'pile' consécutifs
    • p : la probabilité correspondante
    • % : le pourcentage correspondant
    • pe : la probabilité exprimée en notation avec exposant en base 10
    • s : la spécificité équivalente (l'exposant de la probabilité, soit son logarithme en base 10)
  • onlyMainRanks : s'utilise avec l'option displayProba pour n'afficher que les probabilités des rangs décimaux principaux (1, 2…, 10, 20…, 100, 200…)
  • displayCoins : plutôt que le détail de la probabilité, liste pour une spécificité S- donnée, le nombre équivalent de lancés 'pile' consécutifs correspondants exprimé sous la forme d'un intervalle : nombre de lancés minimum - nombre de lancés maximum. Par exemple '-10 = 30-33' signifie : une spécificité S- de '-10' équivaut à entre 30 et 33 lancés 'pile' consécutifs.

Les limites du calcul sont celles de la machine. Une machine 64-bit peut typiquement calculer la probabilité de 1023 lancés consécutifs.

Cartographie

FranceMercatorIGNMap

Cette macro ouvre une carte de France interactive dans TXM, centrée sur une adresse donnée. Elle utilise les services web du Géoportail de l'IGN.

Installation de la macro

  1. télécharger la macro FranceMercatorIGNMapMacro.groovy
  2. copier le fichier dans <répertoire utilisateur>/TXM/scripts/macro/org/txm/macro/map
  3. télécharger l'archive de librairies Javascript leaflet.zip
  4. extraire l'archive dans <répertoire utilisateur>/TXM/results, ceci doit créer le répertoire 'leaflet' dans le répertoire 'results' (là où sera générée la page HTML de chaque carte produite)

Fonctionnement de la macro

Vous devez être connecté à Internet pour que la macro puisse fonctionner :

  1. ouvrir la vue Macro
  2. accéder au répertoire 'map'
  3. double-cliquer sur l'icone de la macro FranceMercatorIGNMap pour la lancer

La macro prend deux paramètres :

  • une adresse située en France, de type :
    rue de la Goutte-d'Or, Paris
    ou
    Lyon
  • une clé d'accès IGN : la clé s'obtient sur le site http://professionnels.ign.fr

Quand elle est lancée :

  • elle ouvre une carte de France sur le lieu de l'adresse demandée. Le lieu est calculé par le service Photon qui s'appuie lui-même sur OpenStreetMap
    • le lieu est indiqué par un marqueur libellé avec l'adresse du lieu
    • la zone approximative du lieu est entourée d'un rectangle bleu (un clic sur la carte fait disparaitre la zone)
  • le fond de carte est composé de cartes IGN
  • le zoom par molette ou bouton '+' et '-' change le type de cartes
  • on dispose en haut à droite d'un sélecteur de couches
    • ce sélecteur permet de masquer ou de faire afficher différentes couches
    • pour chaque couche il permet de choisir son niveau de transparence
    • il permet de choisir la place de chaque couche dans l'empilement en déplaçant le nom de la couche dans le menu
  • on peut chercher une nouvelle adresse avec le bouton chercher (ayant une icone de loupe) situé en haut à gauche
  • le bouton de position situé en bas à gauche permet de faire afficher les coordonnées de la souris dans la carte
  • le bouton 'plein écran' situé en bas à droite permet de faire utiliser tout l'écran à la carte (cela ne fonctionne complètement que quand on fait ouvrir le fichier HTML de la carte dans un navigateur externe. Dans TXM la fenêtre de la carte ne dépasse pas les autres fenêtres)
  • l'échelle courante est affichée en bas à gauche

Remarque : les services web du Géoportail de l'IGN proposent deux ensembles de couches : en projection Mercator et en projection Lambert93. Cette macro propose un jeu de couches pris dans l'ensemble Mercator. On peut choisir d'autres couches en changeant le code de la macro. Votre clé d'accès détermine si vous pouvez accéder à telle ou telle couche.

Remarque2 : la récupération des informations depuis les serveurs de l'IGN peut être assez lente, en dizaines de secondes.

Multimédia

refaireTRS

Cette macro met à jour l'édition d'une transcription importée avec le module d'import XML Transcriber+CSV pour pouvoir jouer le son de chaque énoncé depuis l'édition en cliquant dessus.

Installation de la macro

  1. télécharger la macro refaireTRSMacro.groovy
  2. copier le fichier dans <répertoire utilisateur>/TXM/scripts/macro/org/txm/macro/edition
  3. télécharger la feuille XSL refaireEditionTRS.xsl
  4. copier le fichier dans <répertoire utilisateur>/TXM/xsl

Fonctionnement de la macro

La macro prend deux paramètres :

  • un corpus sélectionné dans la vue Corpus qui contient les transcriptions dont il faut changer l'édition (le corpus doit être sélectionné avant l'appel de la macro)
  • le chemin du répertoire contenant les fichiers d'enregistrements son ou vidéo (le chemin est demandé dans la boite de dialogue de saisie des paramètres de la macro lors de son appel)

Lancement :

  1. ouvrir la vue Macro
  2. accéder au répertoire 'edition'
  3. double-cliquer sur l'icone de la macro refaireTRS pour la lancer

Fonctionnement des éditions après l'exécution de la macro

  • ouvrir une édition de transcription, directement ou par retour au texte depuis une concordance
  • cliquer sur les mots d'un énoncé pour commencer la lecture au début de l'énoncé
  • re-cliquer sur des mots de l'édition pour stopper la lecture
1) langage de script empruntant les meilleurs traits de langage à Python, Ruby et Perl, et dont la sémantique repose entièrement sur celle du langage de robustesse industrielle Java - tout script Groovy est compilé à la volée vers la machine virtuelle Java afin d'être exécuté. Ce langage donne donc accès à tous les composants Java de la plateforme TXM (toutes ses classes, ses commandes, ses modules d'import, ses éditeurs, etc.) ainsi qu'à tous ses composants interfacés par Java comme CQP et R.
2) le '\' est nécessaire car il s'agit d'expressions régulières
3) Voir la section “Summary of regular-expression constructs”
5) d'après The CQP Query Language Tutorial, (CWB version 2.2.b90), Stefan Evert, 10 July 2005
6) équivalent de la stratégie 'greedy' des expressions régulières - voir https://docs.oracle.com/javase/tutorial/essential/regex/quant.html
7) équivalent de la stratégie 'reluctant' des expressions régulières - voir https://docs.oracle.com/javase/tutorial/essential/regex/quant.html
public/macros.txt · Dernière modification: 2017/11/28 16:38 par slh@ens-lyon.fr