[SciTE] Eigene Menüleiste

  • Hallöle.

    Wie kann ich den Editor SciTE nach meinen Wünschen anpassen. Ich möchte meine eigene Menüleiste in SciTe haben, um ein externes Programm mit unterschiedlichen Parametern aufrufen zu können.

    Danke im Voraus für Eure Antworten.

    Einmal editiert, zuletzt von ineedhelp (13. Dezember 2010 um 06:47)

  • Was heißt blos afaik =0 =D

    Doch es ist möglich, aber recht schwierig.
    Zuerst einmal brauchst du ordentlich C / C++ Kentnisse.
    Dann könntest du eine Injectbare DLL machen (Tutorials mithilfe von Google.de), in der du einen zusätzlichen Menüpunkt für SciTE hinzufügst.
    Jetzt muss in der DLL lediglich noch der ganze Kram-Code stehen und PENG & TADAAA das Meisterwerk ist fertig.

    PS: Ich helfe dir dabei nicht weil ich auf dem Thema WINAPI eine 0 bin =)

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Hallo matthias,

    Afaik = As far as i know. Ich wollte damit auch nur ausdrücken, dass es mit Scite egenen Mitteln meines Wissens nach nicht funktioniert. Zu solchen Keulen wie du vorschlägst muss man als AutoIt'ler wohl nicht greifen, wofür gibts die AnyGui-UDF?

    mfg autoBert

  • Sorry wenn ich auf dem Schlauch stehe, aber wie meinst du dass mit AnyGUI UDF ?
    Jedenfalls als C++'ler kann man es tun =D

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Das reicht mir völlig, wenn ich einen Eintrag unter den Menüpunkt Tools erstelle. Leider ist Doku von SciTE etwas unübersichtlich und auf Englisch.

    Ein Fräge an das Translatorteam. Soll die Hilfe von SciTE eigentlich auch ins Deutsche übersetzt werden?

  • Hallo.

    Danke bereits für Eure Hilfe. Ich bekomme es hin, dass jetzt ein externes Programm beim Anklicken des Menüpunktes ausgeführt wird. Aber ich würde gerne, dass nacheinander mehrere Programm ausgeführt werden, weil diese aufeinander aufbauen.

    Das funktioniert leider nicht.
    command.name.1.*=Tu etwas

    command.1.*=<Pfad zur exe>

    command.1.*=<Pfad zur exe>


    Ich würde gerne darauf verzichten, dass zusätzlich ein Skript aufgerufen wird, welches dann die Programme abarbeitet.


    Ich würde auch gerne Parameter übergeben. Diese funktioniert leider auch nicht:
    command.1.*=<Pfad zur exe> "$(1)\n" $(FileNameExt)

    Muss es unbedingt in der SciTEUser.properties stehen. Ich habe die Einstellungen alle in SciTEGLOBAL.properties gespeichert. SciTE und AutoIt benutze ich ausschließlich portable.

    Danke im Voraus.

  • Scheinbar weiß niemand Rat. Ich habe auch schon versucht, dem Menüpunkt eine LUA-Funktion zu zuweisen. Die Funktion im SciteStartup-Skript geschrieben. Leider auch ohne Erfolg. SciTE meckert, er könne die Datei nicht finden!

  • Warum willst du auf ein Skript zur Abarbeitung der Befehle verzichten?

    Code
    #startet bla.exe mit dem Parameter param
    command.45.*="c:\bla.exe" "param"
    command.name.45.*=irgendwas


    Eigene Anweisungen sollte man nach Möglichkeit in die User.properties schreiben.

  • Ganz einfach. Weil die Lösung mit dem zusätzlichen Skript eine Krücke und unsaubere Lösung ist. Ich würde am Liebsten ohne Hilfsmittel gehen können. Außerdem muss ich doch irgendwie sicher, dass das Skript vorhanden ist. Die Programme, die ausgeführt werden sollen, befinden sich auf jeder Windowsinstallation. Bei evtl. Aktualisierungen muss nur die SciTE.properties angepasst werden.

    Mit den Parametern meinte ich, dass der Benutzer, bevor das Kommando ausgeführt, einen Dialog angezeigt bekommt, hier seine Angaben macht und dann das Programm mit Parametern gestartet wird.

  • Ganz einfach. Weil die Lösung mit dem zusätzlichen Skript eine Krücke und unsaubere Lösung ist.


    Entschuldige, aber das ist Blödsinn.

    Zitat

    Außerdem muss ich doch irgendwie sicher, dass das Skript vorhanden ist. Die Programme, die ausgeführt werden sollen, befinden sich auf jeder Windowsinstallation. Bei evtl. Aktualisierungen muss nur die SciTE.properties angepasst werden.


    Das Skript kann doch im SciTE Home liegen.

    Zitat

    Mit den Parametern meinte ich, dass der Benutzer, bevor das Kommando ausgeführt, einen Dialog angezeigt bekommt, hier seine Angaben macht und dann das Programm mit Parametern gestartet wird.


    Und genau diesen Dialog musst du doch erzeugen. Das sind ein paar Zeilen AutoIt für die GUI und ein ShellExecute().

  • Entschuldige, aber das ist Blödsinn.

    Ich denke nicht, dass Du es so in dem Raum stehen lassen kannst. Sondern erklären, warum es nach Deiner Meinung Blödsinn ist. Ich kann davon doch nur lernen!


    Und genau diesen Dialog musst du doch erzeugen. Das sind ein paar Zeilen AutoIt für die GUI und ein ShellExecute().

    Lt. dem Kapitel "Command parameters and prompting" auf http://www.scintilla.org/SciTEDoc.html hat SciTE bereits diesen Paramter-Dialog. Ich muss nicht den Umweg über ein Skript gehen.

  • Blödsinn ist die AUssage einfach deshalb, weil du irgendwo in deinen Beiträgen schreibst, du möchtest mehrere Programmaufrufe hintereinander abarbeiten. Ausserdem besteht das gesammte SciTE4Autoit aus einer Sammlung von Skripten.

    Der SciTE Parameter Dialog öffnet sich, wenn du vor deinen Dateipfad einen * setzt.

    Code
    command.45.*=*"c:\bla.exe"
  • Danke i2c für die Hilfe. Um so mehr ich mich mit der Materie, um so sehr freunde ich mich doch mit Lösung an, es über ein externes Skript an.

    1. Ich brauche mich nicht mit Lua auseinander setzen.
    2. Ich kann mir 'ne hübsche GUI zusammenbasteln und die Rückgabewerde der Programme hier anzeigen lassen.