Ich hab eine häufig gesuchte Funktion mittels AutoIt realisiert:
suchen mit regex, und ersetzen mit einem dabei (hoch)zählenden Counter
Der Nachteil ist, daß das über nppExec aufgerufen werden muß, dabei den Pfad der aktuellen Datei übergeben bekommt (also kein Wechsel zu einem anderen Tab ohne Neuaufruf des Plugins möglich ist), und daß das Ergebnis erst nach Schließen des Plugin-Fensters angezeigt wird.
Für mich sind das akzeptable Einschränkungen, aber eleganter wäre ein "richtiges" Plugin (dll) natürlich schon.
Ich hab mal Lazarus als Delphi-IDE, und ein Delphi-Template runtergeladen in der Hoffnung, daß ich das mit Programiererfahrung in anderen Sprachen, aber ohne Delphi-Kenntnisse hinbekomme, aber nach Ansehen des Templates muß ich zugeben, das bekomm ich nicht alleine hin.
Deshalb möchte ich fragen, ob das in der AutoIt-Version akzeptabel wäre, so daß es auf der Homepage mit angeboten wird, oder ob evtl. jemand mit C++/Delphi/...-Kenntnissen bereit wäre, das umzusetzen ("mir zu helfen" wäre falsch formuliert, da ich kaum etwas beitragen könnte). Vielleicht könnte man da ja sogar direkt in NPP einfügen?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Vielleicht solltest du dir das Python-Script-Plugin mal ansehen, damit müsste man das auch umsetzen können, ohne gleich ein komplettes Plugin zu bauen. Möglicherweise gibt es sogar schon ähnliche Scripts, die man als Vorlage nehmen könnte.
Edit: In der Hilfe zum Python-Plugin (Methode editor.rereplace) ist bereits etwas derartiges beschrieben.
Last edit: GerdB 2015-04-24
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Das Python-Plugin bietet auch keine native Möglichkeit, eine GUI zu bauen. Es existiert zwar eine Lösung in Python, die aber nur per Prompt zur zeilenweisen Eingabe von Such- und Ersetzausdruck auffordert. Weitere Parameter (Case/Caseless, Dot matches Newline, "in Markierung suchen", etc.) würden das ohne Gui dann sehr fehleranfällig und unkomfortabel machen.
Ein Plugin für ein Plugin bedeutet eine unötig lange Kette von möglichen Fehlerquellen (durch Programmänderungen z.B.).
Ich hab inzwischen zwar so etwas basierend auf NPPExec lauffähig, bin damit aber nicht zufrieden, weshalb ich jetzt gerade die direkte Komunikation mit dem Scintilla-Conctrol zu realisieren versuche. Dabei gelingt es mir bisher nicht, Scintilla-Funktionen, die die Werteübergabe per DLL-Struct umsetzen, mit AutoIt funktionsfähig zu implementieren. Werte, die per Return übergeben werden, kann ich lesen (sind aber nur Integerwerte), aber Strings per Struct gehen nicht. Ich vermute, daß das was mit den getrennten Speicherbereichen verschiedener Prozesse zu tun hat.
Last edit: fakeraol 2015-05-09
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Ich hab eine häufig gesuchte Funktion mittels AutoIt realisiert:
suchen mit regex, und ersetzen mit einem dabei (hoch)zählenden Counter
Der Nachteil ist, daß das über nppExec aufgerufen werden muß, dabei den Pfad der aktuellen Datei übergeben bekommt (also kein Wechsel zu einem anderen Tab ohne Neuaufruf des Plugins möglich ist), und daß das Ergebnis erst nach Schließen des Plugin-Fensters angezeigt wird.
Für mich sind das akzeptable Einschränkungen, aber eleganter wäre ein "richtiges" Plugin (dll) natürlich schon.
Ich hab mal Lazarus als Delphi-IDE, und ein Delphi-Template runtergeladen in der Hoffnung, daß ich das mit Programiererfahrung in anderen Sprachen, aber ohne Delphi-Kenntnisse hinbekomme, aber nach Ansehen des Templates muß ich zugeben, das bekomm ich nicht alleine hin.
Deshalb möchte ich fragen, ob das in der AutoIt-Version akzeptabel wäre, so daß es auf der Homepage mit angeboten wird, oder ob evtl. jemand mit C++/Delphi/...-Kenntnissen bereit wäre, das umzusetzen ("mir zu helfen" wäre falsch formuliert, da ich kaum etwas beitragen könnte). Vielleicht könnte man da ja sogar direkt in NPP einfügen?
Vielleicht solltest du dir das Python-Script-Plugin mal ansehen, damit müsste man das auch umsetzen können, ohne gleich ein komplettes Plugin zu bauen. Möglicherweise gibt es sogar schon ähnliche Scripts, die man als Vorlage nehmen könnte.
Edit: In der Hilfe zum Python-Plugin (Methode editor.rereplace) ist bereits etwas derartiges beschrieben.
Last edit: GerdB 2015-04-24
Ich hab inzwischen zwar so etwas basierend auf NPPExec lauffähig, bin damit aber nicht zufrieden, weshalb ich jetzt gerade die direkte Komunikation mit dem Scintilla-Conctrol zu realisieren versuche. Dabei gelingt es mir bisher nicht, Scintilla-Funktionen, die die Werteübergabe per DLL-Struct umsetzen, mit AutoIt funktionsfähig zu implementieren. Werte, die per Return übergeben werden, kann ich lesen (sind aber nur Integerwerte), aber Strings per Struct gehen nicht. Ich vermute, daß das was mit den getrennten Speicherbereichen verschiedener Prozesse zu tun hat.
Last edit: fakeraol 2015-05-09