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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    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
    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 chevronné
    Homme Profil pro
    Développeur banc de test
    Inscrit en
    Mai 2014
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    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
    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 chevronné
    Homme Profil pro
    Développeur banc de test
    Inscrit en
    Mai 2014
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    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
    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 averti
    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
    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 confirmé

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

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    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 éclairé
    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
    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.

  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
    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.

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