Seite 1 von 1

UliEdit 1.2 - Ein ressourcenschonender Texteditor

Verfasst: Freitag 23. September 2011, 20:24
von ulrich1992
UliEdit ist ein ressourcenschonender Texteditor für Microsoft Windows.
Der Text ist durch die kontrastreiche Farbgebung gut lesbar.
Die üblichen Funktionen wie Suchen, Ersetzen und Rückgängig stehen zur Verfügung.
In der Fußzeile werden die Zeilennummer, Spaltennummer und die Offset-Position des Cursors angezeigt.

Genutzt wurden Python 2.7.2, wxWidgets. Als Compiler diente py2exe.

Das Programm steht unter einer BSD-Lizenz.

Link:
http://www.deruli.de/seite/uliedit_-_ei ... ft_windows



Bild

Re: UliEdit 1.2 - Ein ressourcenschonender Texteditor

Verfasst: Mittwoch 28. September 2011, 00:09
von Dauerbaustelle
Kann das zwar nicht testen, aber hier mal etwas Feedback zum Code:
  • PEP 8 angucken und anwenden.
  • Niemals ein pures `except:` verwenden, sondern immer angeben, welche Exception erwartet wird.
  • Das Arbeitsverzeichnis wechseln finde ich übrigens etwas unhöflich von dem Programm; nachher biste irgendwo anders und wolltest da gar nicht sein. Lieber also nicht machen.
  • Zeile 127: String Formatting verwenden anstatt Strings von Hand zusammenzusetzen.
  • Zeile 227/229: ein Vergleich mit `True` ist nutzlos -- das Ergebnis davon ist ja wieder True oder False, also müsstest du das quasi wieder mit True vergleichen und so fort... stattdessen schreibt man

    Code: Alles auswählen

    if ...:
    bzw.

    Code: Alles auswählen

    if not ...:
  • Die GUI-Callbacks würde ich vielleicht noch prefixen, z.b. mit `on_` oder suffixen mit `_cb`:

    Code: Alles auswählen

    def on_button_pressed
    ist deutlich verständlicher als

    Code: Alles auswählen

    def button_press
Das wars erstmal. Hoffe das hilft und viel Spaß beim Verbessern :)

Re: UliEdit 1.2 - Ein ressourcenschonender Texteditor

Verfasst: Mittwoch 28. September 2011, 00:33
von ulrich1992
Dauerbaustelle hat geschrieben: Das Arbeitsverzeichnis wechseln finde ich übrigens etwas unhöflich von dem Programm; nachher biste irgendwo anders und wolltest da gar nicht sein. Lieber also nicht machen.
In wie fern sollte das ein Problem sein, wenn man das Programm über einen Doppelklick via GUI startet?

Soll ich stattdessen lieber ellenlange Pfade zusammensetzen?

Wie soll ich dann bei einem Programm, das aus mehreren Klassen besteht eine Klasse importieren?
Ein import mit Pfadangabe wird ja wahrscheinlich nicht funktionieren.

Re: UliEdit 1.2 - Ein ressourcenschonender Texteditor

Verfasst: Mittwoch 28. September 2011, 00:41
von deets
Was hat denn das working-directory mit importen zu tun?

Und ja, "ellenlange" Pfade sind schon ok - musst du ja nicht eintippen, sondern statt cwd os.path.join machen.

Re: UliEdit 1.2 - Ein ressourcenschonender Texteditor

Verfasst: Mittwoch 28. September 2011, 01:03
von ulrich1992
deets hat geschrieben:Was hat denn das working-directory mit importen zu tun?
Wenn ein Projekt aus mehreren .py-Dateien besteht und ich z.B. die Datei klassenname.py via

Code: Alles auswählen

import klassenname
einbinden möchte.

include() oder require() wie bei PHP gibts ja so weit ich weiß nicht in Python.

Re: UliEdit 1.2 - Ein ressourcenschonender Texteditor

Verfasst: Mittwoch 28. September 2011, 06:27
von BlackJack
@ulrich1992: Falls sich die Module nicht in einem Pfad befinden, in dem Python danach sucht, dann fügt man den Pfad dort hin eben zu den Pfaden hinzu, in denen Python nach Modulen sucht. Also einmal einen „ellenlangen” Pfad zusammensetzen und bei `sys.path` anhängen, statt das Arbeitsverzeichnis für den gesamten Prozess zu wechseln.

Re: UliEdit 1.2 - Ein ressourcenschonender Texteditor

Verfasst: Mittwoch 28. September 2011, 10:06
von deets
@ulrich1992

Das hoert sich fuer mich alles sehr bosselig an. Python verfuegt doch mit Packages ueber einen guten Mechanismus, Sourcen hierarchisch zu organisieren, und davon importieren zu koennen. Warum nutzt du den nicht?

Re: UliEdit 1.2 - Ein ressourcenschonender Texteditor

Verfasst: Donnerstag 29. September 2011, 13:24
von lunar