IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Comment faire un traitement de texte très simple ?


Sujet :

Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Architecte technique
    Inscrit en
    Mars 2013
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2013
    Messages : 18
    Points : 14
    Points
    14
    Par défaut Comment faire un traitement de texte très simple ?
    Bonjour,

    Ma tante a bien des difficultés à faire des lettres avec tous les traitements de texte (elle a 90 ans et n'a jamais fait d’informatique). Elle utilise très, très peu de fonctions d'un traitement de texte et se perd facilement des menus. Wordpad est trop complexe avec sa mise en page, sa police... Il faut toujours lire et enregistrer les fichiers dans le même répertoire .... Or, je n'arrive rien à trouver de très simple. Je suis à la recherche d'un moyen pour faire ce programme. J’apprécierai un moyen très simple (python déjà trop complexe ?). Si vous avez des idées ...

    J'ai fait cette demande dans la rubrique Python ne sachant pas où la mettre ...

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur banc de test
    Inscrit en
    Mai 2014
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur banc de test
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2014
    Messages : 199
    Points : 482
    Points
    482
    Par défaut
    Bonjour,

    plutôt que d'essayer de réécrire tout un éditeur de texte, pourquoi ne pas plutôt en rechercher un existant, adapté à votre besoin ?
    Je suis sûr qu'il en existe des très simples, accessibles et avec des fonctions lisibles et claires.

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur banc de test
    Inscrit en
    Mai 2014
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur banc de test
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2014
    Messages : 199
    Points : 482
    Points
    482
    Par défaut
    Un exemple rapide qui me revient, que j'utilisais dans les année 2000, c'est AbiWord, qui est gratuit.

    Il est très léger, les boutons sont gros, simples et lisibles, et je suppose qu'il est possible de nettoyer la barre d'outils pour ne garder que les fonctions utiles.



    Mais on se rapproche de ce que sait faire WordPad.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Architecte technique
    Inscrit en
    Mars 2013
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2013
    Messages : 18
    Points : 14
    Points
    14
    Par défaut
    Il faut un traitement de texte plus simple que wordpad. Un Wordpad permet de changer d'imprimante, de police ... Il faut imaginer une personne de 90 ans, qui n'a jamais fait d'informatique, ancienne secrétaire à la recherche de fonctionnalité proche d'une machine à écrire. Il ne faut pas plus que quatre fonctions. Je n'ai pas réussi à brider abiword ou wordpad. Le seul logiciel pour enfants que j'ai trouvé comporte des pièges comme la mise en page.

    Si vous avez des idées ...

  5. #5
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 300
    Points : 6 780
    Points
    6 780
    Par défaut
    Salut,

    Avec PyQt5 tu pourras certainement faire ce que tu cherches.

    Comme je ne connais pas ton niveau, voici un exemple minimaliste (style bloc-note)
    http://bazaar.launchpad.net/~vincent...:/logeditor.py

    Et un autre plus sophistiqué (utilisant QScintilla) mais qui n'est pas à jour pour Qt5:
    http://bazaar.launchpad.net/~vincent...ktopHandler.py

  6. #6
    Membre confirmé
    Avatar de Captain'Flam
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 273
    Points : 455
    Points
    455
    Billets dans le blog
    1
    Par défaut
    Tu peux utiliser Tkinter.Text
    C'est un widget de Tkinter qui n'est rien moins qu'un mini éditeur de texte !
    Son usage n'est très compliqué mais pas trivial non plus...
    Voici ma bible : http://effbot.org/tkinterbook/text.htm
    Et voici en cadeau, un bout de code de mon cru
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    import Tkinter
     
    def SimpleEditor ( textio ) :
     
        def onSave():
            text = self.editor.get( '1.0',Tkinter.END )[:-1]
            if self.original != text :
                textio.write( text )
            self.quit()
     
        def onCopy():
            text = self.editor.get( Tkinter.SEL_FIRST,Tkinter.SEL_LAST )
            self.clipboard_clear()
            self.clipboard_append( text )
     
        def onCut():
            text = self.editor.get( Tkinter.SEL_FIRST,Tkinter.SEL_LAST )
            self.editor.delete( Tkinter.SEL_FIRST,Tkinter.SEL_LAST )
            self.clipboard_clear()
            self.clipboard_append( text )
     
        def onPaste():
            try    : self.editor.insert( Tkinter.INSERT,self.selection_get( selection='CLIPBOARD' ))
            except : pass
     
        def selectAll ():
            self.editor.tag_remove( Tkinter.SEL,'1.0',Tkinter.END )
            self.editor.tag_add( Tkinter.SEL,'1.0',Tkinter.END )
     
        def SetText ():
            text = textio.read()
            self.original = text[:]
            self.editor.focus_force()
            self.editor.insert('1.0',unicode( text ))
            self.editor.mark_set( Tkinter.INSERT,'1.0' )
     
        font_name,font_size = 'lucida console',10
        self = Tkinter.Tk()
        self.title( 'simple editor' )
        self.protocol("WM_DELETE_WINDOW",self.quit )
        menubar = Tkinter.Frame( self )
        menubar.pack( fill=Tkinter.X )
        Tkinter.Button( menubar,text='Copy'           ,command=onCopy   ).pack(side=Tkinter.LEFT)
        Tkinter.Button( menubar,text='Cut'            ,command=onCut    ).pack(side=Tkinter.LEFT)
        Tkinter.Button( menubar,text='Paste'          ,command=onPaste  ).pack(side=Tkinter.LEFT)
        Tkinter.Button( menubar,text='Quit w/o saving',command=self.quit).pack(side=Tkinter.LEFT)
        Tkinter.Button( menubar,text='Save & Quit'    ,command=onSave   ).pack(expand=Tkinter.YES,fill=Tkinter.BOTH)
        self.bind('<Escape>'       ,lambda e : onSave())
        self.bind('<Control-Enter>',lambda e : onSave())
        self.bind('<Control-a>'    ,lambda e : selectAll())
        self.bind('<Control-A>'    ,lambda e : selectAll())
        self.editor = Tkinter.Text( self,relief=Tkinter.SUNKEN )
        sbar = Tkinter.Scrollbar( self )
        sbar.config( command = self.editor.yview )
        sbar.pack( side=Tkinter.RIGHT,fill=Tkinter.Y )
        self.editor.config( font=(font_name,font_size,'normal' ),width=124,heigh=60,takefocus=True,yscrollcommand=sbar.set )
        self.editor.pack( side=Tkinter.LEFT, expand=Tkinter.YES, fill=Tkinter.BOTH )
        self.after( 200,SetText )
        self.mainloop()
        self.destroy()
     
    class FileIO :
        def __init__(self,filename) : self.filename = filename
        def read    (self)          : return open( self.filename,'rb' ).read()
        def write   (self,text)     : open( self.filename,'wb' ).write( text )
     
    SimpleEditor( FileIO('test.txt'))
    Il vaut ce qu'il vaut...
    Dans cette version simplissime : pas de mise en forme, ni couleur, ni choix de police !
    On est assez proche de la machine à écrire.
    Bon courage.
    Captain'Flam
    anciennement Sopsag, aka Hadrien
    Win seven x64 & Win 10 / Visual 2017 / Python 2.7 / Eclipse

  7. #7
    Futur Membre du Club
    Homme Profil pro
    programmeur
    Inscrit en
    Décembre 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : programmeur

    Informations forums :
    Inscription : Décembre 2017
    Messages : 6
    Points : 6
    Points
    6
    Par défaut Simple texteur disponible
    Permettez-moi d'annoncer dans cet auguste forum l'heureux avènement d'Eddie v2.0, un texteur UTF-8 minimaliste développé en Python 3.5 sous Tkinter.

    Plus qu'un simple éditeur, il accepte tous les styles dans diverses fontes pour toutes les langues supportées par la norme UTF-8, et il permet l'insertion de tous les caractères reconnus par celle-ci. De plus, il est pourvu d'un vérificateur orthographique multitâche utilisant son propre dictionnaire français, d'un dialogue de recherche et remplacement avancé et d'une passerelle html qui permet de transférer ses sorties dans Word, Open Office ou n'importe quel fureteur Web. Toutes ses fonctionnalités sont bien documentées.

    Ce qu'il ne fait pas : il n'imprime pas, il n'accepte pas la couleur et il ne fait ni tableaux, ni mise en page. Il peut toutefois centrer un titre et simuler des notes en bas de page. Pour le reste, il faut utiliser le tabulateur.

    Le développement des traitements de textes est un domaine qui ne passionne pas les foule, c'est le moins qu'on puisse en dire... En fait, ce programme est le fruit d'un projet personnel dont le but principal était d'apprendre la programmation orientée objet sous Python. Si cela intéresse quelqu'un, mes sources sont disponibles.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 73
    Points : 63
    Points
    63
    Par défaut Eddie v2.0 sources
    Citation Envoyé par quillard Voir le message
    Permettez-moi d'annoncer dans cet auguste forum l'heureux avènement d'Eddie v2.0, un texteur UTF-8 minimaliste développé en Python 3.5 sous Tkinter.

    Plus qu'un simple éditeur, il accepte tous les styles dans diverses fontes pour toutes les langues supportées par la norme UTF-8, et il permet l'insertion de tous les caractères reconnus par celle-ci. De plus, il est pourvu d'un vérificateur orthographique multitâche utilisant son propre dictionnaire français, d'un dialogue de recherche et remplacement avancé et d'une passerelle html qui permet de transférer ses sorties dans Word, Open Office ou n'importe quel fureteur Web. Toutes ses fonctionnalités sont bien documentées.

    Ce qu'il ne fait pas : il n'imprime pas, il n'accepte pas la couleur et il ne fait ni tableaux, ni mise en page. Il peut toutefois centrer un titre et simuler des notes en bas de page. Pour le reste, il faut utiliser le tabulateur.

    Le développement des traitements de textes est un domaine qui ne passionne pas les foule, c'est le moins qu'on puisse en dire... En fait, ce programme est le fruit d'un projet personnel dont le but principal était d'apprendre la programmation orientée objet sous Python. Si cela intéresse quelqu'un, mes sources sont disponibles.
    Bonjour, je serais bien intéressé par les sources si c'est possible

  9. #9
    Futur Membre du Club
    Homme Profil pro
    programmeur
    Inscrit en
    Décembre 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : programmeur

    Informations forums :
    Inscription : Décembre 2017
    Messages : 6
    Points : 6
    Points
    6
    Par défaut Texteur - sources
    Bonjour Sverdo,

    Je suis maintenant en voyage de sports d'hiver à Québec pour le weekend.

    Les sources seront disponibles quand je serai de retour à la maison lundi.

    Eddie est maintenant en bêta testing. Il a évolué depuis août dernier; j'y ai rajouté diverses fonctionnalités, notamment un algorithme de codage/décodage, ainsi qu'une fonction de recherche multioccurrence, multifichier et multirépertoires de type grep.

    En attendant, je peux vous envoyer les docs en pièce jointe si vous voulez plus de précisions.

    M.

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 73
    Points : 63
    Points
    63
    Par défaut A propos d'Eddie....
    Citation Envoyé par quillard Voir le message
    Bonjour Sverdo,

    Je suis maintenant en voyage de sports d'hiver à Québec pour le weekend.

    Les sources seront disponibles quand je serai de retour à la maison lundi.

    Eddie est maintenant en bêta testing. Il a évolué depuis août dernier; j'y ai rajouté diverses fonctionnalités, notamment un algorithme de codage/décodage, ainsi qu'une fonction de recherche multioccurrence, multifichier et multirépertoires de type grep.

    En attendant, je peux vous envoyer les docs en pièce jointe si vous voulez plus de précisions.

    M.
    onjour et merci de votre réponse
    Je veux bien la doc proposée en PJ!
    Et j'attend donc avec impatience votre code la semaine prochaine!
    En attendant bonne fin de sports d'hiver.

  11. #11
    Futur Membre du Club
    Homme Profil pro
    programmeur
    Inscrit en
    Décembre 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : programmeur

    Informations forums :
    Inscription : Décembre 2017
    Messages : 6
    Points : 6
    Points
    6
    Par défaut Documentation Eddie
    Voici les deux principaux fichiers doc, convertis en html pour préserver le formatage.
    Il y a un souci : l'implémentation des tabulations de Tkinter est particulière, pour ne
    pas dire boguée, alors je les ai remplacées par des espaces.

    Les sources pèsent 20 mo, trop gros pour les envoyer ensemble, je vais donc les zipper en
    plusieurs paquets. Je peux les envoyer sur ce forum ou directement à votre adresse courriel
    si vous me l'envoyez. Quelle est votre préférence?
    M.


    Citation Envoyé par sverdo Voir le message
    onjour et merci de votre réponse
    Je veux bien la doc proposée en PJ!
    Et j'attend donc avec impatience votre code la semaine prochaine!
    En attendant bonne fin de sports d'hiver.
    Fichiers attachés Fichiers attachés

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 73
    Points : 63
    Points
    63
    Par défaut Sources....
    Citation Envoyé par quillard Voir le message
    Voici les deux principaux fichiers doc, convertis en html pour préserver le formatage.
    Il y a un souci : l'implémentation des tabulations de Tkinter est particulière, pour ne
    pas dire boguée, alors je les ai remplacées par des espaces.

    Les sources pèsent 20 mo, trop gros pour les envoyer ensemble, je vais donc les zipper en
    plusieurs paquets. Je peux les envoyer sur ce forum ou directement à votre adresse courriel
    si vous me l'envoyez. Quelle est votre préférence?
    M.
    Vous pouvez me l'envoyer sur ma boite mail, vous trouverez mon adresse en regardant vos messages privés, je vous en ai envoyé un il y a deux jours !
    Merci à vous!

  13. #13
    Futur Membre du Club
    Homme Profil pro
    programmeur
    Inscrit en
    Décembre 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : programmeur

    Informations forums :
    Inscription : Décembre 2017
    Messages : 6
    Points : 6
    Points
    6
    Par défaut messages privés
    Désolé, l'adresse mail de tous vos messages est celle de developpez.com.
    Sauf erreur, ce forum ne divulgue pas les coordonnées des utilisateurs.
    Le plus simple serait de m'envoyer un court message à mlibrt=à=yahoo.com.
    (partie centrale à remplacer par l'arobase).
    M.

    Citation Envoyé par sverdo Voir le message
    Vous pouvez me l'envoyer sur ma boite mail, vous trouverez mon adresse en regardant vos messages privés, je vous en ai envoyé un il y a deux jours !
    Merci à vous!

  14. #14
    Futur Membre du Club
    Homme Profil pro
    programmeur
    Inscrit en
    Décembre 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : programmeur

    Informations forums :
    Inscription : Décembre 2017
    Messages : 6
    Points : 6
    Points
    6
    Par défaut Eddie dist
    Rebonjour Sverdo. Il y a un petit trombone ici, alors voici eddie20dist.rar en pièce jointe.
    M.

    Citation Envoyé par sverdo Voir le message
    Vous pouvez me l'envoyer sur ma boite mail, vous trouverez mon adresse en regardant vos messages privés, je vous en ai envoyé un il y a deux jours !
    Merci à vous!
    Fichiers attachés Fichiers attachés

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 73
    Points : 63
    Points
    63
    Par défaut
    Citation Envoyé par quillard Voir le message
    Rebonjour Sverdo. Il y a un petit trombone ici, alors voici eddie20dist.rar en pièce jointe.
    M.
    Bonjour,
    Et merci pour le fichier joint, en ce moment je ne suis pas chez moi, je l'ai téléchargé et regarderais ça dès mon retour !

    Merci encore!

Discussions similaires

  1. Comment faire du traitement d'images avec C?
    Par The-msx dans le forum C
    Réponses: 5
    Dernier message: 07/07/2008, 10h05
  2. [FPDF] Comment faire une zone de text délimité
    Par HwRZxLc4 dans le forum Bibliothèques et frameworks
    Réponses: 16
    Dernier message: 20/05/2007, 10h30
  3. Comment faire une balise <html:text> avec valeur dynamique
    Par chriscoolletoubibe dans le forum Struts 1
    Réponses: 13
    Dernier message: 14/05/2007, 22h13
  4. Comment faire des zones de texte sur image
    Par Myogtha dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 12/03/2007, 15h27
  5. Comment faire un scroll de texte...
    Par pointer dans le forum Langage
    Réponses: 17
    Dernier message: 17/02/2006, 11h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo