RE: [CBLX] A la recherche d'une librairie d'edition de texte Was: Quelques questions sur Emacs et Speechd-el ?

[ Thread Index | Date Index | More lists.tuxfamily.org/carrefourblinux Archives ]


Bonjour Sam,

J'ai jamais développé avec mais NCurses devrait répondre à tes attentes je pense, non? Les spécialistes infirmeront ou confirmeront .
http://fr.wikipedia.org/wiki/Ncurses

Cordialement,

Guillaume

-----Message d'origine-----
De : Listengine [mailto:listengine@xxxxxxxxxxxxxxxxx] De la part de coolbrother@xxxxxxxxxx
Envoyé : mardi 23 mars 2010 13:26
À : carrefourblinux@xxxxxxxxxxxxxxxxxxx
Objet : [CBLX] A la recherche d'une librairie d'edition de texte Was: Quelques questions sur Emacs et Speechd-el ?


En fait je viens d'avoir une idée !
Pour implémenter le lecteur de texte accessible,
il me faudrait une petite api qui permettrait d'afficher du texte, de
circuler à travers ce texte,
de récupérer la position du curseur, le numero de ligne, etc ...
des choses très basiques.
Une librairie qui permettrait de faire un editeur de texte aussi simple
que nano.
A partir de là , il me suffirait juste d'ajouter les commandes pour la
synthese vocale.
Ah! si j'avais cette librairie, je programmerais le jour,
je programmerais la nuit, j'y mettrais tout mon coeur,
je ferais des lecteurs de texte pour mon père, ma mère, mes frères et
mes soeurs,
ce serait le bonheur.

Si vous en connaissez une, je suis prenneur.

Merci.
A bientôt:
Sam



>
>
> Tu peux essayer de voir ce que tu peux faire avec ibmtts, puis
> ensuite avec festival, puis quand même aussi un peu avec cicero
> ! Ohhh Sam ! Ce n'est pas sérieux ! La première chose à
> regarder c'est si on peu faire quelque chose avec
> speech-dispatcher ! Il est là pour ça ! Pour que les choses
> soient indépendantes de la synthèse. Fais attention ! Quand tu
> auras voulu implémenter ton lecteur pour 5 ou 6 synthèses
> différentes, tu te diras qu'un protocole commun serait
> quand-même le bienvenu, et tu réinventera ... la roue .... non
> ssip !
>
> Pierre
>
>
>
>   From: coolbrother@xxxxxxxxxx Subject: Re: [CBLX]
> Quelques questions sur Emacs et Speechd-el ?  Date: Tue, 23 Mar
> 2010 03:37:18 +0100 (CET)
>
>> Salut Tarik, merci pour ton script.
>> C'est génial de pouvoir faire tout ça en si peu de lignes.
>> Non, vraiment astucieux !
>> J'ai ajouté une ligne pour afficher la ligne texte avant qu'elle soit
>> dite par la synthèse.
>> C'est bien pratique pour se repérer et vérifier certaines
>> orthographes.
>> Mais pour l'instant je ne peux pas l'utiliser en grandeur nature à
>> cause
>> de la synthèse.
>> J'ai beau essayé de ne pas y faire attention, mais espeak me donne
>> mal au
>> crâne au bout de 5 à 6 pages lues.
>> ça vient aussi du fait que je sois habitué à tout lire avec
>> ibmtts.
>> Mais qui est quand même beaucoup plus reposant à écouter que
>> Espeak.
>> Avec Espeak, il faut tellement se concentrer sur la voix que le contenu
>> du
>> texte nous échappe.
>> Je vais essayé de voir s'il est possible de contrôler ibmtts en
>> ligne de
>> commande,
>> tout en contrôlant la vitesse de la voix, le volume etc ...
>> Je doute que ça soit possible, en tout cas j'en ai aucune idée
>> comment
>> faire ça.
>>
>> Pour finir, je verrais bien deux petites options sympas à ton script
>> :
>> -l n : pour lire à partir d'un numéro de ligne en absolu.
>> -L n : pour lire à partir d'un numéro de ligne en relatif, par
>> rapport
>> à la position courante.
>>
>>
>> Tout ça me ramène bien à mon idée de départ :
>> Il faut faire un programme propre à la lecture de texte pour les
>> deficients visuels.
>> Mais j'y pense que lorsque je suis dans l'urgence, c'est-à-dire quand
>> je
>> n'ai pas le temps de le faire.
>>
>> A bientôt:
>> Sam
>>
>>> Pierre,
>> :wq
>>>
>>> Si je triche ? bien sûr que oui. Si la triche est dans le sens
>>> trouver
>>> une solution astucieuse et faire bosser le PC à ta place. En
>>> l'occurence, au lieu d'insérer des repères à la
>>> main, on adopte
>> une
>>> granularité plus forte : la ligne, mais qui est acceptable sur
>>> un
>>> bouquin de 500 pages. Puis on fait travailler bash, espeak, wc et tail.
>>>
>>> Pour la question de bufferisation j'avais en effet cette
>>> appréhension.
>>> D'ailleurs un premier bug dans le script a fait dérouler le
>>> compteur
>>> trop vite et j'ai cru que c'était un problème de
>>> bufferisation. En
>> fait,
>>> il n'en est rien. En mode ligne de commande espeak reste bloqué
>> jusqu'à
>>> ce que le dernier phonème soit prononcé. Donc mon
>>> tracking par
>> ligne est
>>> bien réél. Test réél à l'appui.
>>>
>>> Pour ce qui est de la lecture hachée, oui c'est vrai quand une
>>> phrase
>>> est coupée au milieu ce n'est pas très propre. On peut
>>> palier à
>> cela en
>>> envoyant des phrases au lieu de lignes tout en gardant la trace de la
>>> ligne contenant la dernière phrase. Mais cela compliquera le
>>> script et
>>> ce n'est pas le but recherché, qui est de trouver une solution
>>> "quick &
>>> dirty".
>>>
>>> Sinon j'ai bien essayé le script sur un fichier texte :
>>> ça marche
>>> vraiment bien, au problème de cassure en fin de ligne
>>> près. Mais la
>>> lecture reste très fluide et compréhensible. J'avais
>>> aussi des
>>> appréhensions par rapport au temps de chargement de
>>> l'exécutable
>> espeak
>>> et des librairies dynamiques dont il a besoin. En fait, il n'en est
>>> rien, espeak en mode ligne de commande est vraiment très rapide.
>>> En plus
>>> il y a plein d'options permettant de personnalier la synthèse :
>>> langue
>>> de synthèse, vitesse d'élocution, pitch, prononcer ou pas
>>> la
>>> ponctuation, etc.
>>>
>>> J'aimerais connaître le point de vue de Sam, si son besoin est
>>> toujours
>>> d'actualité et si le script lui a été utile ou
>>> pas.
>>>
>>> Cordialement
>>> Tarik
>>>
>>>
>>> Le lundi 22 mars 2010 à 21:17 +0100, Pierre Lorenzon a
>>> écrit :
>>>> From: Tarik FDIL <tfdil@xxxxxxxx>
>>>> Subject: Re: [CBLX] Quelques questions sur Emacs et Speechd-el ?
>>>> Date: Mon, 22 Mar 2010 19:52:29 +0000
>>>>
>>>> > Bonjour,
>>>> >
>>>> > Je pense que le script bash ci-joint peut faire simplement ce que
>>>> > demande Sam. L'idée du script est simple : utiliser espeak
>>>> pour lire
>>>> le
>>>> > fichier ligne par ligne et réaliser le tracking par le script
>>>> shell
>>>> qui
>>>>
>>>>   Tu triches ! si c'est du tracking ligne à ligne même
>>>> balise à
>>>>   balise pour n'importe quelle balise identifiée ! Bien
>>>> sûr !
>>>>   En bash en lisp et même en perl je veux bien c'est dire ....
>>>>
>>>>
>>>> > commande espeak.
>>>> >
>>>> > Plus précisément le script lit le fichier texte ligne
>>>> par ligne et
>>>> les
>>>> > envoie à espeak pour synthèse vocale. Avant d'envoyer
>>>> une ligne
>> à
>>>> espeak
>>>>
>>>>   Ca veut dire pas de buffering côté espeak ? Autrement
>>>> dit,
>>>>   espeak n'accepte une nouvelle séquence que lorsque la
>>>>   précédente est prononcée ? Prononcée
>>>> veut dire, dans ce cas
>>>>   passé à un play ou sox ou équivalent. Donc on
>>>> n'accepte pas
>>>>   d'input tant qu'on n'a pas reçu le signal de sortie de play
>>>>   ou sox ? Sans quoi rien ne te dit que le dernier numéro
>>>>   enregistré est celui de la séquence qui est en train
>>>> d'être
>>>>   lue (je veux dire prononcée, celle que tu as dans les
>>>>   oreilles quoi.) C'est une manière de faire du tracking
>>>>   (triviale à réaliser d'ailleur inside emacs) mais
>>>> ça doit
>>>>   donner une lecture très hachée. C'est pour
>>>> éviter ce genre de
>>>>   trucs que ssip et speech-dispatcher ont été
>>>> développés.
>>>>
>>>>   Pierre
>>>> > il stocke son numéro dans un fichier texte portant le
>>>> même nom que
>>>> le
>>>> > fichier lu et ayant l'extension .pos. Quand on veut arrêter
>>>> la
>>>> lecture,
>>>> > il suffit de faire un ctrl-c pour arrêter le script. Ensuite
>>>> quand on
>>>> > veut reprendre il suffit de relancer le script avec le nom du
>>>> fichier
>>>> à
>>>> > lire et évidemment le script commence par consulter le
>>>> numéro
>> de la
>>>> > dernière ligne lue stocké dans le fichier position et
>>>> utilise les
>>>> > commandes wc puis tail pour lire juste les lignes restantes.
>>>> >
>>>> > Cordialement
>>>> > Tarik
>>>> >
>>>> > Le lundi 22 mars 2010 à 19:34 +0100, Pierre Lorenzon a
>>>> écrit :
>>>> >> Mais Gilles, moi je ne lis jamais un texte à la file comme
>>>> le
>>>> >> lit Sam. Moi je lis phrase à phrase voir ligne à
>>>> ligne donc à
>>>> >> ce point c'est clair que le mapping est maintenu à la main
>>>> >> puisque la synthèse est commandé par le
>>>> déplacement du
>>>> >> curseur. Donc tu sais toujours où tu en es évidemment
>>>> ! Mais
>>>> >> Sam veut lancer le défilement un peu comme un
>>>> magnétophone et
>>>> >> arrêter et se repérer dans le texte. Et là,
>>>> à moins que
>> je sois
>>>> >> devenu idiot, il faut un mapping/tracking automatique. Je
>>>> >> comprends ton point de vue : il y a des balises naturelles dans
>>>> >> le texte, (phrases, lignes, paragraphes, pages) selon ce qui
>>>> >> est le plus pertinent et il faut découper la lecture en
>>>> >> fonction d'icelles. C'est évidemment comme ça que je
>>>> fais, en
>>>> >> utilisant les flèches ou les pg-up pg-down. Mais bis
>>>> repetita,
>>>> >> Sam ne voulait, du moins à l'origine pas procéder
>>>> ainsi.
>>>> >>
>>>> >> Pierre
>>>> >>
>>>> >>
>>>> >> From: touze <gilles.touze@xxxxxxxxxxx>
>>>> >> Subject: Re: [CBLX] Quelques questions sur Emacs et Speechd-el ?
>>>> >> Date: Sun, 21 Mar 2010 18:45:51 +0100
>>>> >>
>>>> >> > Pierre Lorenzon a écrit :
>>>> >> >> From: Gilles Touzé <gilles.touze@xxxxxxxxxxx>
>>>> >> >> Subject: Re: [CBLX] Quelques questions sur Emacs et Speechd-el
>>>> >> >> ?
>>>> >> >> Date: Sat, 20 Mar 2010 07:43:06 +0100
>>>> >> >>
>>>> >> >>
>>>> >> >>> coolbrother@xxxxxxxxxx a écrit :
>>>> >> >>>
>>>> >> >>>> Merci beaucoup Pierre pour toutes ces réponses.
>>>> >> >>>> Pour le tracking, comme je dois lire rapidement ce bouquin, on
>>>> >> >>>> va laisser
>>>> >> >>>> ça de côté.
>>>> >> >>>> Je n'ai qu'Ã  faire attention quand je stoppe la
>>>> lecture, et
>>>> >> >>>> rechercher les
>>>> >> >>>> derniers mots prononcés, et ça
>>>> ira très
>>>> bien comme
>>>> >> >>>> ça.
>>>> >> >>>>
>>>> >> >>> Aldo, si tu lis au format txt, tu peux toujours placer une
>>>> >> >>> chaine de caractère
>>>> caractéristique (chez nous,
>>>> c'est
>>>> >> >>> "qqq"),
>>>> >> >>> qui marquera l'emplacement de ta fin de lecture ; plus de
>>>> >> >>> risque d'oublier les derniers mots. En pdf, ce n'est pas
>>>> >> >>> possible, bien sûr.
>>>> >> >>>
>>>> >> >>
>>>> >> >>   Comprends pas Gilles ! "tu peux toujours placer" : ça
>>>> c'est
>>>> >> >>   du tracking ou je ne m'y connais pas. Placer où ?
>>>> >> > A l'endroit où l'on souhaite reprendre la lecture
>>>> >> > ultérieurement.
>>>> >> >> Dans le
>>>> >> >>   buffer, dans le fichier ?
>>>> >> > Dans le fichier.
>>>> >> >> Qui place ?
>>>> >> > La personne qui lit le fichier, en mode lecture/écriture
>>>> >> >> Non le vrai problème
>>>> >> >>   qui se pose c'est d'initier et de maintenir
>>>> >> > Ben, ma solution, elle maintient : aucune complication
>>>> >> > technique, "seulement" une gestion rigoureuse à la main des
>>>> >> > marques que je fais poser. Il faut bien sûr penser Ã
>>>> retirer
>>>> >> > la marque une fois son utilité passée.
>>>> >> >> un mapping
>>>> >> >>   (tracking) entre la donnée textuelle et le flux sonore.
>>>> Sauf
>>>> >> >>   que ça comme je l'ai effleuré dans mon mail
>>>> précédent, ça
>>>> >> >>   pose de vrais questions théoriques, et qu'il y a
>>>> même de
>>>> >> >>   vrais obstacles théoriques !
>>>> >> >>
>>>> >> > On ne veut pas un tracking au caractère près. Au
>>>> paragraphe
>>>> >> > près (valeur approchée par défaut, c'est
>>>> Ã  dire au
>>>> début
>>>> >> > du paragraphe en cours de lecture ou fin du paragraphe
>>>> >> > précédent), cela serait déjà pas mal.
>>>> Mais laisse moi te
>>>> >> > dire qu'un revue d'écran qui ne permet pas de lire un
>>>> texte en
>>>> >> > plusieurs fois n'est pas digne de ce nom. Ou pour le formuler
>>>> >> > autrement, comment te débrouilles-tu, toi, n'es-tu jamais
>>>> >> > confronté à ce problème qui me semble tout de
>>>> même
>>>> >> > extrêmement basique ?
>>>> >> >
>>>> >> > A ce sujet, c'est ce problème-ci qui m'a fait renoncer
>>>> Ã
>>>> >> > recommander Orca à ma moitié, et pourtant, Orca tente
>>>> de
>>>> >> > suivre à l'écran ce qu'il dit à la
>>>> synthèse. Mais on ne
>>>> >> > peut pas l'arrêter suivant des critères
>>>> suffisamment
>>>> >> > variés. L'arrêt au paragraphe est semble-t-il la
>>>> bonne
>>>> unité
>>>> >> > de lecture pour un texte de genre "littéraire". Je pensais
>>>> que
>>>> >> > emacsspeak était plus évolué. Il semblerait
>>>> que cela soit
>>>> >> > considéré comme un problème secondaire, et
>>>> pas encore
>>>> >> > implémenté, donc ?
>>>> >> >
>>>> >> > Excuse mon ton un peu provocateur, mais je prend la discussion
>>>> >> > en cours, et je n'ai pas encore en tête tous les faits,
>>>> >> > seulement des certitudes pas toujours justifiées.
>>>> >> >>   Pierre
>>>> >> >>
>>>> >> >>
>>>> >> > Gilles
>>>> >> >
>>>> >> >
>>>> >> >
>>>> >> > ---
>>>> >> > --
>>>> >> >   CarrefourBLinuX MailingListe Pour obtenir de l'aide, envoyez le
>>>> >> >   sujet help à: carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
>>>> >> >   Archives:
>>>> >> >   http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux
>>>> >> >
>>>> >>
>>>> >>
>>>> >>
>>>> >> ---
>>>> >
>>>>
>>>>
>>>>
>>>> ---
>>>
>>>
>>>
>>> ---
>>> --
>>>    CarrefourBLinuX MailingListe
>>>    Pour obtenir de l'aide, envoyez le sujet  help  :
>>>    carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
>>>    Archives:
>>>    http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux
>>>
>>>
>>
>>
>>
>> ---
>> --
>>    CarrefourBLinuX MailingListe
>>    Pour obtenir de l'aide, envoyez le sujet  help  Ã :
>>    carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
>>    Archives:
>>    http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux
>>
>
>
>
> ---
> --
>    CarrefourBLinuX MailingListe
>    Pour obtenir de l'aide, envoyez le sujet  help  :
>    carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
>    Archives:
>    http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux
>
>



---
-- 
   CarrefourBLinuX MailingListe 
   Pour obtenir de l'aide, envoyez le sujet  help  à: 
   carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
   Archives: 
   http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux







This message contains information that may be privileged or confidential and is the property of the Capgemini Group. It is 
intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to 
read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message 
in error, please notify the sender immediately and delete all copies of this message.


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/