immer wieder: IDE mit debugger

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
oliver1974
User
Beiträge: 97
Registriert: Donnerstag 26. Oktober 2006, 15:01

Witzig.. Hatte ich das noch nicht erwähnt? JEdit ist mein absoluter Lieblingseditor!!

Jammerschade, dass die Weiterentwicklung so ins stocken geraten ist, die 4.3er Version ist ja gefühlt schon "ewig" im pre-Status stecken geblieben... verglichen mit früher tut sich da nicht mehr viel. Was wirklich, wirklich schade ist.. Ich komme immer wieder auf JEdit zurück, es ist für mich DER Editor...

Ich weine immer bitterliche Tränen dass ich die Editor-Komponente von JEdit nicht auch in anderen IDEs haben kann.... Alleine schon die Hervorhebung von Klammern über mehrere Zeilen ist dermaßen genial.... (schade, dass nicht auch die Python-Blockstrukturen so angezeigt werden können).

Welche Plugins verwendest du für die Python/Jython Entwicklung in JEdit?
ProjectViewer, einer von den Buffer Selector Plugins und Console ist ja klar...
was noch?

Console ist ja leider irgendwie gepufffert und nicht so wirklich komplett zu gebrauchen (meintest du das mit "ungepuffert auszugeben"?)

JEdit wäre für kleinere Geschichten immer noch erste Wahl für mich.

In PyDev kämpfe ich noch mit der Einbindung von Ant als make-tool herum, um auch die PyDocs komfortabel erstellen zu können, das will irgendwie noch nicht so richtig.

Siehe den interessanten Artikel hier:
http://www-128.ibm.com/developerworks/o ... /os-ecant/
sape
User
Beiträge: 1157
Registriert: Sonntag 3. September 2006, 12:52

oliver1974 hat geschrieben: Welche Plugins verwendest du für die Python/Jython Entwicklung in JEdit?
ProjectViewer, einer von den Buffer Selector Plugins und Console ist ja klar...
was noch?
Naja, entwickeln tue ich weiterhin mit Eclipse+PyDev, da mich diese ungepuffert auszugeben von meinem Macro stört. Ich mache hauptsächlich ein par Tools für mich die ich in wxPython schreibe, und da ist es lästig erst die ("Debug"-)Ausgaben, die an stdout/sdterr geschickt werden, erst zu sehen wenn das Programm beendet ist. In Eclipse ist das bequemer. Dort wird alles ungepuffert angezeigt :D

Aber folgende PIs hatte ich mir damals installiert:
-- BufferTabs
-- Console
-- JPyDebug
-- Jython
-- Project Viewer
-- SideKick
-- PythonClient (Das leider nicht geht :/ -- Hab jEdit 4.3pre8)
-- TaskList

oliver1974 hat geschrieben: Console ist ja leider irgendwie gepufffert und nicht so wirklich komplett zu gebrauchen (meintest du das mit "ungepuffert auszugeben"?)
Jepp. Da kann man das gut beobachten was ich meine. Und diese Phänomen zieht sich durch alle PIs durch...Daher frage ich mich wie genau Eclipse das macht. Fakt ist, das Eclipse irgendwie der zu startenden Anwendung suggeriert, dass es sich um eine "Console" handelt, was ja zu führt das alle ausgaben immer direkt ausgegeben werden und nicht erst nach Script-/Programmende. Ich hatte damals die ganze Java API durchsucht und hatte vieles ausprobiert, aber es scheint da nichts zu geben womit man einen Prozess starten kann, der stdout/stderr ungepuffert ausgibt. Auch Recherchen@Google haben zu nichts geführt.
oliver1974 hat geschrieben: In PyDev kämpfe ich noch mit der Einbindung von Ant als make-tool herum, um auch die PyDocs komfortabel erstellen zu können, das will irgendwie noch nicht so richtig.
Ant? Das ist doch ein "make" für das "Kompilieren" von Java-Anwendungen? Wie soll man damit PyDocs erstellen?
Siehe den interessanten Artikel hier:
http://www-128.ibm.com/developerworks/o ... /os-ecant/
Da kommt bei mir eine Seite in der steht: "The page you requested cannot be displayed" €: Nun geht die Page.
oliver1974
User
Beiträge: 97
Registriert: Donnerstag 26. Oktober 2006, 15:01

Ant? Das ist doch ein "make" für das "Kompilieren" von Java-Anwendungen? Wie soll man damit PyDocs erstellen?
Steht in dem Artikel. Ant ist eigentlich ziemlich genial, da gut zu erweitern.. und der Knabe hat eben eine Erweiterung geschrieben, mit der man
targets im Ant-File hat, die sich auf Python beziehen, unter anderem pydoc.

Leider ist das Beispiel irgendwie unglücklich, und das herunterladbare Binary File hat imho ne Macke, da die properties - Datei fehlt, die aber benötigt wird, zumindest wenn man sich die build.xml wie im Beispiel baut.

Man findet diese aber in den Sourcen der dort besprochenen Ant-PyDev Erweiterung, also das Jar entpacken und die properties Datei hinzufügen, dann jar neu erstellen... oder einfach als Verzeichnis lassen und anstatt als "Add External Jar" einfach den "Add Folder" Dialog in den Ant-Voreinstellungen der Preferences nehmen.

Funzt! Mir baut er schon fleissig hier pydocs !!

Cool... wird immer besser... Ich glaube, Eclipse und PyDev ist "meine" Lösung.. zumindest für Projekte, die etwas größer sind...

(Und über Run External Tools kann man noch alles mögliche andere einbinden.. ich hab da gerade den NSI-Compiler für Install - Skripts
für die Setup.exe Generierung für die Windows-Varianten meiner Programme eingebunden..)
sape
User
Beiträge: 1157
Registriert: Sonntag 3. September 2006, 12:52

Cool werde ich auch mal testen. Vielleicht krieg ich das hin das mit Epydoc zu verbinden, da ich mir meine Docs immer mit Epydocs generieren lasse.
oliver1974
User
Beiträge: 97
Registriert: Donnerstag 26. Oktober 2006, 15:01

Ich vermute mal, für Epydoc müsste man jetzt des Ant-Plugin noch erweitern... Irgendwie sicherlich möglich, muss man halt mal wieder Java-Programmierung betreiben... aber wenn man schon eine in Java geschriebene IDE und ein Java-basiertes Buildsystem für seine Python - Projekte einsetzt, oder wahlweise auch einen in Java geschriebenen Editor (Jedit) darf man nicht wählerisch sein ;-)

Was sind denn die Vorteile von Epydoc?

Hmm, mit AnyEdit bin ich jetzt noch nicht so zufrieden.. zwar kann ich eine recht subtile Hervorhebung der Spaces einstellen, aber schöner wäre es im Endeffekt, wenn ich wie bei JEdit einfach eine Zeilenende - Markierung hätte.. Die habe ich immer benutzt um mir meine Schachtelung (Einrückung) der Python Blöcke zu visualisieren, insbesondere jetzt bei den Leerzeilen zwischen den Blöcken. Das scheint aber nirgendwo zu gehen, oder?
oliver1974
User
Beiträge: 97
Registriert: Donnerstag 26. Oktober 2006, 15:01

..Nebenbei vermisse ich bei Eclipse + PyDev noch das Feature, schnell aus einer markierten Klasse/Methode in deren Definition bzw. Source File zu springen..

Hmm.

In Java Quellcode ist das kein Problem, aber PyDev scheint das nicht zu bieten.... oder?

Okay, so langsam ist es Luxus, aber man wird halt immer verwöhnter je mehr man kriegt.

Hier..
http://www.python-forum.de/topic-9863.html

haben wir mittlerweile eine ähnliche Diskussion laufen.
sape
User
Beiträge: 1157
Registriert: Sonntag 3. September 2006, 12:52

oliver1974 hat geschrieben: Was sind denn die Vorteile von Epydoc?
Shau dir einfach mal die API-Docu von Pocoo an. Die wurde mit Epydoc generiert. Pocoo benutzt übrigens reSTR für das schreiben der Docstrings.

http://api.pocoo.org/

Epydoc gibt es hier: http://epydoc.sourceforge.net/

IMHO mit einer der besten Tools, für Python Sourcecodes, auf diesen Gebiet :)
..Nebenbei vermisse ich bei Eclipse + PyDev noch das Feature, schnell aus einer markierten Klasse/Methode in deren Definition bzw. Source File zu springen..
Doch das geht. Du musst STRG gedrückt halten und dann mit der Maus auf einen Namen daraufklicken. Dann wird das Sourcefile geöffnet und zur Definition gesprungen. Das benutze ich immer für meine eigenen Sources im Projekt. Sollte auch für die Sources in Python/Lib gehen. EDIT: Ups, das geht nur für Module die sich in deinem Aktuellen Projektordner befinden :/
oliver1974
User
Beiträge: 97
Registriert: Donnerstag 26. Oktober 2006, 15:01

Doch das geht. Du musst STRG gedrückt halten und dann mit der Maus auf einen Namen daraufklicken.
Genial! Warum wird sowas aber nicht auch ins Kontextmenü
reingelegt? Wäre dann offensichtlicher...
Ups, das geht nur für Module die sich in deinem Aktuellen Projektordner befinden :/
Nicht unbedingt, zumindest springt er bei mir auch in die Sourcen von wx.Python... Und der Kram liegt ganz woanders!

So lässt es sich schon ganz gut leben (* vergnügt pfeif *)
sape
User
Beiträge: 1157
Registriert: Sonntag 3. September 2006, 12:52

oliver1974 hat geschrieben: Nicht unbedingt, zumindest springt er bei mir auch in die Sourcen von wx.Python... Und der Kram liegt ganz woanders!
Hi, danke für den Tipp. Hab gerade gesehen das ich mist gebaut habe in der Config. Nun geht es auch mit wx :D
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

oliver1974 hat geschrieben:..Nebenbei vermisse ich bei Eclipse + PyDev noch das Feature, schnell aus einer markierten Klasse/Methode in deren Definition bzw. Source File zu springen..
Jep, das fehlt mir auch... Wobei ich diese Funktion bisher auch bei keinem anderen Editor hatte... Welcher kann das denn überhaupt?

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
oliver1974
User
Beiträge: 97
Registriert: Donnerstag 26. Oktober 2006, 15:01

jens hat geschrieben:
oliver1974 hat geschrieben:..Nebenbei vermisse ich bei Eclipse + PyDev noch das Feature, schnell aus einer markierten Klasse/Methode in deren Definition bzw. Source File zu springen..
Jep, das fehlt mir auch... Wobei ich diese Funktion bisher auch bei keinem anderen Editor hatte... Welcher kann das denn überhaupt?
Die Antworten oben nicht mehr gelesen? Es geht doch.. zumindest wenn die Sourcen im Pfad erreichbar sind. Dazu STRG + Linke Maustaste und Klick auf das gewünschte Element.. erst mal drauf kommen!
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Ne, das hab ich nicht gelesen... Bin ich blind, oder steht das auch nicht in der Liste: http://www.fabioz.com/pydev/manual_adv_keybindings.html (Die habe ich mir extra ausgedruckt ;)
Das ganze funktioniert bei mir aber spontan nur sehr schlecht. Ich denke das liegt daran, das er nicht vom root des Projektes aus sucht, oder?

Was anderes: PyLint kann man ja auch benutzten. Soll angeblich mit Ctrl+B einen Durchlauf machen. So stehts zumindest hier: http://pydev.sourceforge.net/pylint.html Tut's bei mir nicht. Den Pfad zu pylint.py hab ich aber gesetzt...

EDIT: Ha! Man kann die Ergebnisse von der STRG + Linke Maustaste Funktion
wesentlich verbessern, wenn man den "Project Source Folder" richtig setzt!

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
oliver1974
User
Beiträge: 97
Registriert: Donnerstag 26. Oktober 2006, 15:01

PyLint habe ich bisher noch nicht eingesetzt... Muss ich irgendwann mal checken....
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Also bei mir läuft Pylint nun... Ich musste per Hand die Dependencies installieren, siehe: http://www.logilab.org/view?rql=Any%20X ... 0eid%20870

Aber so richtig brauchbar ist das ganze noch nicht... Ich hab z.B. bei meinem Projekt-Ordner auch django und flup dabei. Das überprüft pylint aber auch, was keinen Sinn macht. Ich hab es schon mit "--ignore=django --ignore=flup" versucht, bringt aber nix :(

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
Helex
User
Beiträge: 33
Registriert: Mittwoch 21. Februar 2007, 09:52
Wohnort: Dessau, Sachsen-Anhalt
Kontaktdaten:

Mal ne Frage,

warum benutzt denn keiner IDLE? ich finde die Umgebung ganz okay und das debuggen klappt auch!
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

schau mal hier: [wiki]IDLE[/wiki]

EDIT: Mich würde eigentlich mal interessieren, was im Professionellen Umfeld so eingesetzt wird. Welchen Editor nutzt GvR?

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
sape
User
Beiträge: 1157
Registriert: Sonntag 3. September 2006, 12:52

jens hat geschrieben:Ne, das hab ich nicht gelesen... Bin ich blind, oder steht das auch nicht in der Liste: http://www.fabioz.com/pydev/manual_adv_keybindings.html (Die habe ich mir extra ausgedruckt ;)
Das ganze funktioniert bei mir aber spontan nur sehr schlecht. Ich denke das liegt daran, das er nicht vom root des Projektes aus sucht, oder?
Hi Jens.

Also wie gesagt mit STRG+Linksklick auf einen Namen.

Ein Beispiel mit wxPython:
Um z.B. nun in die Definition in Sources von wx zu Springen, muss du wx in den PyDev Pfad direkt hinzufügen (Ja da ist noch Verbesserung von den Entwicklern erwünscht.)

1. Fenster -> Benutzervorgaben -> PyDev -> Interpreter - Python
2. Nun bei Interpreter - Python in der Sektion System PYTHONPATH auf New Floder und dann dein_pfad_zupython/Lib/site-packages/wx-2.8-msw-unicode hinzufügen.
3. Danach funktioniert die Autocodevervollständigung (ACV) auch bei den wxPython Packages und auch das Springen zu den Definitionen von Klassen/Funktionen/etc.

EDIT: Da gilt aber nur für Packages/Module außerhalb vom Projektverzeichnis. Alles im Projektverzeichnis erkennt PyDev selbständig btw: siehe unten
jens hat geschrieben: EDIT: Ha! Man kann die Ergebnisse von der STRG + Linke Maustaste Funktion
wesentlich verbessern, wenn man den "Project Source Folder" richtig setzt!
Deine Packages innerhalb des PSF werden nur erkannt wenn einen __init__.py drinnen ist. Jeder Ordner der innerhalb des PSF Sources hat, aber keine __init__.py, wird von PyDev nicht als Package erkannt und somit funktioniert die ACV auch nicht und das Springen zur Definition auch nicht. Ich mache es immer so das jeder Ordner im PSF eine __init__.py bekommt und habe dann null Stress :D

BTW: Der PSF braucht selber keine __init_.py, da schaft es PyDev irgendwie :roll:
sape
User
Beiträge: 1157
Registriert: Sonntag 3. September 2006, 12:52

jens hat geschrieben:Welchen Editor nutzt GvR?
Mal geraten: vim oder emacs?
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

sape hat geschrieben:
jens hat geschrieben:Welchen Editor nutzt GvR?
Mal geraten: vim oder emacs?
Ich tippe auf Emacs - der scheint unter Python-Devs populärer zu sein.

Übrigens ist PSF hier in der Regel die Python Software Foundation. Wenn man diese Abkürzung in einem anderen Kontext verwendet, dann wirds verwirrend.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Ich benutze ja bisher bevorzugt VIM... hab mir mal Emacs angeschaut und muss zugeben, nicht damit klargekomme zu sein :oops: ...naja, ich hab mal gehoert, es gibt irgendwie nen VIM-Mode fuer Emacs? Ehm... kann mir das mal einer erklaeren... so vom installieren, bis zum starten und allem... so dass ich Emacs vernuenftig verwenden kann (irgendwie ohne diese Menues und so o.O )?

Ansonsten bin ich irgendwie bisher recht ungluecklich mit grafischen Editoren fuer Python. Mir hat zwar pydev fuer Eclipse recht gut gefallen (da ich ja Eclipse im allgemeinen toll finde), aber ich vermisse da die Keybindings von VIM viel zu sehr ^^
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
Antworten