scripting

Du hast eine Idee für ein Projekt?
lichtkind

hallo ihr programmierer!

ich schreib grad einen editor den man unter anderen als scripting ide nutzen können soll. deswegen frag ich euch nach dingen die euch dabei wichtig währen(auch ausgefallenes und sonderwünsche). standartsachen wie hypersearch, snippetlib, autovervollständigung, datei und projektmanager und sowas ist natürlich schon mal angedacht. was mich auch besonders interessiert wäre was python spezifisch ist denn ich hab keine erfahrung mit dieser sprache. (nicht steinigen aber ich nehm nun mal perl)

danke
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Hast du nicht auch das gleiche in der Python Mailing Liste gefregt???

Ich bin mit SciTE super zufreiden, jedoch hätte ich gern eine Kontext-Hilfe. Diese sollte also Information, zu dem gerade unter dem Cursor befindlichen Befehl, anzeigen... Dazu könnte man evtl. die Python Referenzen parsen und in eine Datenbank paken, wenn es sowas nicht schon geben sollte...
lichtkind

danke,
ich vermute in der mailliste war jemand anders, wenn dann sicher vor langem. was du vorschlägst ist auch eines der sachen die unbedingt kommen sollen. weil eines der stärken von meinem editor soll auch sien das man programmier know how horten und austauschen kann. mit scite möcht ich ja nicht konkurieren sondern eher umfangreiche hilfe geben.
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Naja, dann könnest du ja ein Plugin für SciTE schreiben??? Oder ein Ableger, der speziell für Python zugeschnitten ist backen...


Aber komplett von NULL anfangen? Warum das Rad neu erfinden?
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Hi,

ich hab für gvim ein Plugin für die Pythonhilfe, da brauch ich nur F5 drücken wenn der Cursor auf einem Pythondingens steht und schon wird eine Hilfe dazu angezeigt.


Gruß

Dookie
[code]#!/usr/bin/env python
import this[/code]
lichtkind

das problem ist doch das das rad noch gar nicht erfunden ist, denn was es an editoren gibt ist mir noch zu unrund, ausserdem hab ich wie scite auch scintilla drin und macht bereit jetzt einige sachen schon besser als scite
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Ach, da fällt mir ein, was an SciTE wirklich verbesserungswürdig ist, ist die Konfiguration!
Schließlich muß man ja da noch alles von Hand machen :(
fs111
User
Beiträge: 170
Registriert: Samstag 15. November 2003, 11:42
Kontaktdaten:

Dookie hat geschrieben:Hi,

ich hab für gvim ein Plugin für die Pythonhilfe, da brauch ich nur F5 drücken wenn der Cursor auf einem Pythondingens steht und schon wird eine Hilfe dazu angezeigt.


Gruß

Dookie
Ich habe auch sowas, siehe Signatur

fs111
Pydoc-Integration in vim - Feedback willkommen: http://www.vim.org/scripts/script.php?script_id=910
Gast

jens hat geschrieben:Ach, da fällt mir ein, was an SciTE wirklich verbesserungswürdig ist, ist die Konfiguration!
Schließlich muß man ja da noch alles von Hand machen :(
ja der config dialog ist schon angefangen, weitere vorschläge?
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Einfache Reg.Exp. bei Suche/Ersetzte:
\n - neue Zeile
\t - Tabulator
u.ä.

Also die Python gültige Syntax...
lichtkind

einfache regex sind schon drin weil es scintilla (also auch scite) kann, siehe http://proton-ce.sourceforge.net/site/e ... tml#search

da python soweit P5CRE hat und ich eh im geplanten hypersearch modul volle perl 5 re nehmen wollte hätt ich das auch abgedeckt

hab ihr noch spezielle python spezifische wünsche?
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Ach, mir fällt da noch was ein... Ich weiß nicht ob es evtl. SciTE schon kann und wenn, würde ich es gern jetzt sofort wissen, könnte es gerade gebrauchen :(

Eine Textauswahl durch ein Rahmen... Damit es möglich ist, Tabelllarisch Struckturen Spaltenweise zu markieren.

Bsp.:
eins weihfwoieghwegoi
zwei weoivneroignerog
drei roigheroigheor

Markiere mal schnell "eins", "zwei", "drei" *zusammen* ohne den Müll dahinter ;)
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

ob SciTE das kann weiß ich nicht, Vim kanns :)


Dookie
[code]#!/usr/bin/env python
import this[/code]
joe

Dookie hat geschrieben:ob SciTE das kann weiß ich nicht, Vim kanns :)
Das ist denke ich pflichtprogramm jedes editors. Der Scite kann es auf jeden fall.

Was Scite nciht kann (aber andere editoren) und ich gern hätte, ist daß mir der editor sagt, daß eine aktuell geladene datei außerhalb des editors geändert wurde mit der anschließenden frage, ob die datei neu geladen werden soll. Ich lasse mir häufig parallel zu einem python-script auch dessen ausgabedatei im editor anzeigen und da wäre sowas schon sehr praktisch.
joe
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

joe hat geschrieben:Der Scite kann es auf jeden fall.
Aber wie geht es???
joe

jens hat geschrieben:
joe hat geschrieben:Der Scite kann es auf jeden fall.
Aber wie geht es???
Bei gedrückter alt-taste mit der maus den bereich markieren. Wobei ich mir jetzt nicht sicher bin, ob du das meinst. Denn bei deinem beispiel wäre ja nicht "eins", "zwei", "drei" markiert, sondern "eins", "zwei<leerzeichen>", "drei". Spalten, die durch spaces oder tab definiert sind aber ansonsten unterschiedlich lange zeilen haben können, kann scite nicht markieren.
joe
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Das fuktioniert... Allerdings ein wenig komisch...

Bsp.:

Code: Alles auswählen

        0 - ID              ('NUMBER', 11, 10, 0, 0, 1)     PathWalkID - Nummer auch für Dateien!
        1 - parent          ('NUMBER', 11, 10, 0, 0, 1)     ID-Nr. des nächst höheren Verzeichnisses
        2 - name            ('STRING', 255, 255, 0, 0, 1)
        3 - size            ('NUMBER', 11, 10, 0, 0, 1)
        4 - description     ('STRING', 255, 255, 0, 0, 1)
        5 - attrib          ('STRING', 10, 10, 0, 0, 1)
        6 - createdate      ('DATE', 19, 19, 0, 0, 1)
        7 - lastdate        ('DATE', 19, 19, 0, 0, 1)
        8 - moddate         ('DATE', 19, 19, 0, 0, 1)
        9 - depth           ('NUMBER', 6, 5, 0, 0, 1)
versuch mal nur den eingeklammerten Text zu markieren... Da diese unterschiedlich lang sind wird nur folgender Teil markiert:

Code: Alles auswählen

('NUMBER', 11, 10, 0, 0, 
('NUMBER', 11, 10, 0, 0, 
('STRING', 255, 255, 0, 0
('NUMBER', 11, 10, 0, 0, 
('STRING', 255, 255, 0, 0
('STRING', 10, 10, 0, 0, 
('DATE', 19, 19, 0, 0, 1)
('DATE', 19, 19, 0, 0, 1)
('DATE', 19, 19, 0, 0, 1)
('NUMBER', 6, 5, 0, 0, 1)
Die längeren teile sind abgeschnitten... Naja, wenigstens etwas! Das ist echt eine super Funktion, wenn man Tabellarische Text-Daten bearbeiten will...
Francesco

joe hat geschrieben: Das ist denke ich pflichtprogramm jedes editors. Der Scite kann es auf jeden fall.

Was Scite nciht kann (aber andere editoren) und ich gern hätte, ist daß mir der editor sagt, daß eine aktuell geladene datei außerhalb des editors geändert wurde mit der anschließenden frage, ob die datei neu geladen werden soll. Ich lasse mir häufig parallel zu einem python-script auch dessen ausgabedatei im editor anzeigen und da wäre sowas schon sehr praktisch.
joe
Ja, das habe ich auch bei (unserem) SF DrPython Projekt einmal vorgeschlagen,
und es ist jetzt als Option vorhanden ("AutoReload").
Der Editor selbst ist in Python, wxPython und dem StyledTextControl
implementiert.
Es gibt auch noch andere interessante Funktionen, Plugins und Scripts.
Darüberhinaus ist er sehr leicht erweiterbar durch integrieren von eigenen
Plugins und scripts.

Francesco
Gast

jens hat geschrieben:Das fuktioniert... Allerdings ein wenig komisch...

Bsp.:

Code: Alles auswählen

        0 - ID              ('NUMBER', 11, 10, 0, 0, 1)     PathWalkID - Nummer auch für Dateien!
        1 - parent          ('NUMBER', 11, 10, 0, 0, 1)     ID-Nr. des nächst höheren Verzeichnisses
        2 - name            ('STRING', 255, 255, 0, 0, 1)
        3 - size            ('NUMBER', 11, 10, 0, 0, 1)
        4 - description     ('STRING', 255, 255, 0, 0, 1)
        5 - attrib          ('STRING', 10, 10, 0, 0, 1)
        6 - createdate      ('DATE', 19, 19, 0, 0, 1)
        7 - lastdate        ('DATE', 19, 19, 0, 0, 1)
        8 - moddate         ('DATE', 19, 19, 0, 0, 1)
        9 - depth           ('NUMBER', 6, 5, 0, 0, 1)
versuch mal nur den eingeklammerten Text zu markieren... Da diese unterschiedlich lang sind wird nur folgender Teil markiert:

Code: Alles auswählen

('NUMBER', 11, 10, 0, 0, 
('NUMBER', 11, 10, 0, 0, 
('STRING', 255, 255, 0, 0
('NUMBER', 11, 10, 0, 0, 
('STRING', 255, 255, 0, 0
('STRING', 10, 10, 0, 0, 
('DATE', 19, 19, 0, 0, 1)
('DATE', 19, 19, 0, 0, 1)
('DATE', 19, 19, 0, 0, 1)
('NUMBER', 6, 5, 0, 0, 1)
Die längeren teile sind abgeschnitten... Naja, wenigstens etwas! Das ist echt eine super Funktion, wenn man Tabellarische Text-Daten bearbeiten will...
Das ist deswegen, weil das Scintilla TextControl keine "virtual spaces"
unterstützt, was mich persönlich auch schon immer stört;
das heisst, der cursor kann nicht weiter rechts als das letzte Zeichen
in der Zeile plaziert werden.
BTW: Man kann auch mit alt-shift cursor-keys eine rechteckige Auswahl ("rectangular selection") durchführen.

Francesco
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

lichtkind hat geschrieben:ich schreib grad einen editor....
Wie sieht es denn so aus???





Hab mit mal DrPython angeschaut und gleich einen fehler gefunden...

Der Pfad zum Browser ist wohl hardcoded, was??? Es wird nicht der StandartBrowser genommen, sondern immer "c:/Program Files/Internet Explorer/iexplore.exe"

Somit funktioniert die Hilfe erstmal nicht...



Wenn ich in den Preferences, bei DrScript den Default-Pfad mit Browser ändern will, passiert nix... d.h. ich gehe auf ein anderes Verzeichnis und sag OK, aber es bleibt beim alten Verzeichnis :(

Das gleiche unter General/Default-Directory geht allerdings!



Ich kann auch keine Dateien speichern... Der Dialog kommt nicht... Erst wenn ich in den Preferences bei "File Dialog" "Use wx.FileDialog" einschalte, geht's...



Gibt's keinen Shortcut für das ausführen des aktuellen Progs??? Bei SciTE war es F5...
Außerdem wird das Programm nicht alleine beendet... Obwohl es nur eine print Ausgabe ist...
Bei SciTE wurden die Ausgaben auch etwas Farbig hervorgehoben... Bsp. Zeilen mit einem ">" wurden blau usw....



Was sehr schön gemacht ist, ist die automatische Plugin-Download/Installation!!! Nur, mir ist nicht ganz klar, wie ich ein Plugin ansprechen kann... Hab ein paar installiert, aber nur "Code Completion" ist unter "Options/Plugins Preferences" zu sehen...

"DocumentationBookmarksMenu" verursacht einen Traceback beim laden von DrPython :(


Also ich weiß ja nicht, aber mit scheint DrPython wenig ausgereift...
Antworten