CNRS-LACITO / eastlingplayer

This is the official repository of the Eastling player. It is part of the Eastling suite: Easy Annotation and Synchronization Tool for linguists.
GNU General Public License v3.0
2 stars 0 forks source link

export LaTeX & PDF : d'une phrase (ou plusieurs phrases) à un corpus entier #63

Open alexis-michaud opened 3 years ago

alexis-michaud commented 3 years ago

LaTeX est utilisé dans divers lieux de publication en linguistique : la revue Glossa, la maison d'édition Language Science Press, et aussi pour les thèses. Le traitement de texte en mode bureautique 'standard', c'est assez infernal pour un objet éditorial compliqué comme une publication de linguistique.

L'export LaTeX d'une phrase (ou plusieurs phrases) de la collection Pangloss serait une fonctionnalité très bienvenue, pour le mode PRO.

Pour convertir le XML en code LaTeX qui puisse ensuite être recopié directement dans une publication, il faut tenir compte des outils existants et des recommandations de collègues qui connaissent très bien le domaine. Notamment Guillaume Jacques et Thomas Pellard @tpellard. Voir notamment : https://cipanglo.hypotheses.org/801 https://github.com/tpellard/typgloss

S'y grefferait la spécificité des DOI. Il y a maintenant des exemples d'intégration des DOI à des publications en LaTeX, qui fournissent un exemple, modifiable bien sûr, mais c'est une bonne base de départ. C'est un travail de Alexander Delaporte et Guillaume Jacques, mentionné ici. Le code est en ligne dans le dépôt qui contient tout le code LaTeX de la monographie pour laquelle le code a été créé.

Je crois qu'il y a déjà des outils de conversion, il faudrait un rapide état de l'art. @sguillaume et G. Jacques sauront ce qu'il en est.

m8nli9ht commented 3 years ago

formats d'export : LateX (PDF), tableau (Word, Excel)

alexis-michaud commented 3 years ago

Un exemple :

\begin{exe}
    \ex
    \label{ex:byLatami}
    \ipaex{lɑ˧tʰɑ˧mi˧=ɻ̍˧ ɳɯ˥}\\
    \gll lɑ˧tʰɑ˧mi˥\$       =ɻ̍˩        ɳɯ˧\\
    Latami~(family~name)    \textsc{associative}    \textsc{a}\\
    \glt ‘by the Latamis’ (Source: field notes.)
\end{exe}

En XML :

<W>
    <FORM>lɑ˧tʰɑ˧mi˧=ɻ̍˧ ɳɯ˥</FORM>         %% Correspond à : \ipaex, exemple en API. Pour de l'orthographe, la commande serait différente.
    <M> %% Les morphèmes : à concaténer, avec comme séparateur tabulateur ou exemple, pour constituer le niveau \gll
        <FORM>lɑ˧tʰɑ˧mi˥\$</FORM>
        <TRANSL>Latami (family name)</TRANSL>   %% Remplacer les espaces par des tildes pour que ça ne soit pas interprété comme des séparateurs.
    </M>
    <M>
        <FORM>=ɻ̍˩</FORM>
        <TRANSL>associative</TRANSL>   %% Comment encoder le fait que c'est une glose grammaticale (qui fait partie d'un vocabulaire fermé / semi-ouvert) ? Une info dans le XML doit permettre de savoir que c'est 1 terme technique, à mettre en petites capitales en LaTeX : \textsc{associative}. Certains mettent en majuscules. Dans les textes na, c'est un degré : °associative (critiqué par Thomas Pellard)
     </M>
    <M>
        <FORM>ɳɯ˧</FORM>
        <TRANSL>°a</TRANSL>   %% Ca c'est un ablatif.
     </M>
</W>
alexis-michaud commented 3 years ago

Formulation de Guillaume Jacques :

"le format LaTeX pour les exemples glosés est moins structuré. Les exemples sont de la forme:

\begin{exe}
\ex
\gll  XXXX \\
YYY \\
\glt `ZZZZ'
\end{exe}

où XXXX est la liste des mots en API, YYY leur glose, et ZZZZ leur traduction. L'alignement fonctionne à condition qu'il y ait le même nb de mots et de gloses. Si ce n'est pas le cas (par exemple s'il y a un mot non glosé), alors il faut rajouter une glose "vide" { }."

alexis-michaud commented 3 years ago

Autre fonctionnalité désirable : l'export d'un livret entier : tous les textes d'un corpus.

alexis-michaud commented 3 years ago

Autres liens, toujours de Thomas Pellard : https://cipanglo.hypotheses.org/1221 https://cipanglo.hypotheses.org/1236

m8nli9ht commented 3 years ago

Doit-on afficher autant de transcriptions et traductions que disponibles dans le fichier annotations ou en faut-il 1 seule de chaque ?

m8nli9ht commented 3 years ago

Je teste avec ce texte comme premier cas simple : https://pangloss.cnrs.fr/corpus/show?lang=fr&mode=normal&oai_primary=cocoon-b48c740d-59ad-3d91-9956-fdd3ea003ba0&oai_secondary=cocoon-1330a853-7d11-346b-97c2-cd52ec8b0231

Voilà ce que j'arrive à produire pour le moment (on part de cet export pour discuter des ajustements ) : https://eastling.huma-num.fr/player/export.php?oai_secondary=cocoon-1330a853-7d11-346b-97c2-cd52ec8b0231

m8nli9ht commented 3 years ago

Bonjour @BenjaminGalliot ! Je reprends la suite de ce ticket, j'en étais resté à un export de test que je voulais valider avec quelqu'un qui parle mieux LaTex que moi. Pourrais-tu jeter un oeil à cette extraction ? Merci d'avance

Je teste avec ce texte comme premier cas simple : https://pangloss.cnrs.fr/corpus/show?lang=fr&mode=normal&oai_primary=cocoon-b48c740d-59ad-3d91-9956-fdd3ea003ba0&oai_secondary=cocoon-1330a853-7d11-346b-97c2-cd52ec8b0231

* type TEXT

* un seul kindOf

* une seule langue de traduction

* pas de gestion des morphèmes pour l'instant

Voilà ce que j'arrive à produire pour le moment (on part de cet export pour discuter des ajustements ) : https://eastling.huma-num.fr/player/export.php?oai_secondary=cocoon-1330a853-7d11-346b-97c2-cd52ec8b0231

BenjaminGalliot commented 3 years ago

Salut @m8nli9ht,

Je ne sais pas d’où vient la commande ipaex mais elle n’est définie dans aucun des modules importés (d’où les multiples erreurs), aussi me suis-je permis de la définir juste après ces importations (avec la police adaptée, ici Charis SIL, qui doit être présente sur le système lors de la compilation).

Après ces ajouts, le début du fichier devrait être comme ceci :

% !TEX program = xelatex

\documentclass{article}
\usepackage{fontspec}
\usepackage{gb4e}

\newfontfamily{\ipa}{CharisSIL}
\DeclareTextFontCommand{\ipaex}{\ipa}

\title{TestsPangloss}
\author{Matthew DEO}
\date{March 2021}
sguillaume commented 2 years ago

Ca en est où l'export des annotations Pangloss en latex ? Plusieurs personnes seraient intéressées d'avoir (à partir de latex) un export pdf. Il faudrait que ça soit possible soit pour un texte entier soit pour une phrase en particulier.

m8nli9ht commented 2 years ago

Vu avec @sguillaume en visio ce jour :

alexis-michaud commented 1 year ago

@m8nli9ht je joins ce ticket à ceux de l'automne 2022, si tu veux bien ? En lien avec la question des livrets. Depuis la page de consultation d'une ressource, on choisit ce qu'on veut comme niveaux, avec le système de cases à cocher du lecteur Eastling. Ensuite on demande un export : LaTeX pour telle ou telle phrase, ou livret pour tout le document (en lien avec la fonctionnalité pour un corpus entier ; celle-là plutôt accessible depuis la page du corpus entier ?) Fuerza :heavy_plus_sign::heavy_plus_sign:

m8nli9ht commented 1 year ago

Je reprends ce ticket. Je suis en train de rajouter des cases à cocher devant les phrases pour les sélectionner pour export. La question qui vient ensuite est : où met-on le bouton "Export" ? A priori, s'agissant d'une action interne au player, je ne peux le mettre que dans la partie interface du player (à gauche) et pas dans l'encart à droite. Dans ce cas, le met-on dans le bloc "display options", ou dans un bloc à part sous ce dernier bloc ?

alexis-michaud commented 1 year ago

As-tu eu des éléments de réponse depuis ton dernier commentaire ? À discuter avec @EdouardSombie ?

m8nli9ht commented 1 year ago

@alexis-michaud oui on a échangé une première fois, on va tester ça en DEV dans un premier temps. J'attendais d'apporter les corrections de Benjamin avant de resolliciter Edouard. En principe, je livrerai en dev jeudi ou vendredi !

sguillaume commented 1 year ago

Il faudra que l'on parle de la manière d'intégrer l'option d'export (visuellement parlant). Il ne faudrait pas, par exemple, que les cases à cocher soient constamment visibles car ça charge trop la page. Bref, on en reparle !

m8nli9ht commented 1 year ago

Oui je suis d'accord, une autre solution serait de laisser le bouton en haut à sa place, mais de prévoir un autre bouton pour remonter tout en haut de la page lorsqu'on a beaucoup de phrases, ça serait utile pour éviter de trop avoir à scroller vers le haut pour y arriver!