The latest version : v5.0.3

 


Warning: main(./onlineHelpMenu.php): failed to open stream: No such file or directory in /home/groups/n/no/notepad-plus/htdocs/de/plugins-HOWTO.php on line 17

Warning: main(): Failed opening './onlineHelpMenu.php' for inclusion (include_path='.:/usr/local/share/pear') in /home/groups/n/no/notepad-plus/htdocs/de/plugins-HOWTO.php on line 17

Plugins HOWTO

Wie installiert man ein Plugin

Das Plugin (als DLL) sollte in den Notepad++\plugins Verzeichnis gestellt werden. Ist das Plugin einmal installiert, können Sie es via “Plugins”-Menü benutzen und konfigurieren.

 

Wie erstelle ich ein Plugin

Das Windows Message System wird benutzt um Overhead zu vermeiden. Dies bedeutet, dass das Plugins system einige Notepad++ Handles verfügbar macht, um dem Plugin-Programmierer mehr Flexibilität und Möglichkeiten zu bieten. Es gibt aktuell 3 verfügbare Window-Handles: das Notepad++ Hauptwindow-Handles und 2 Scintilla Window-Handles.

Mit diesen 3 Window-Handles, kann fast alles gemacht werden. Senden Sie nur die zweckmässige Windows-Meldung an das richtige Handle um das gewünschte Resultat zu erhalten.

Hier sind 2 Beispiel Plugin-Projekte :

Das Dev-C++ & Code::Blocks Version Package (entwickelt von Chris Severance) unterstützt die folgenden IDE/Compiler sowohl in C wie auch C++ :

  • Dev-C++ / GCC (MingW)
  • Code::Blocks / GCC (MingW)
  • Code::Blocks / MSVC++
  • Code::Blocks / Digital Mars
  • Code::Blocks / Borland C++ 5.5
  • Code::Blocks / Open Watcom

Die Header Datei des Plugin ist in C für C und C++ Programmierer entwickelt. Wenn Sie es für eine andere Programmiersprache anpassen, dann lassen Sie es mich bitte wissen. Ich werde es gerne der aktuellen Liste hinzufügen.

Notepad++ Windows-Meldungen :

  • WM_GETCURRENTSCINTILLA

    wParam
    lParam
    0
    [out] int * currentEdit

    currentEdit bezeichnet die aktuelle Scintilla view : 0 ist die Hauptview von Scintilla 1 ist die zweite Scintilla View.

  • WM_GETCURRENTLANGTYPE

    wParam
    lParam
    0
    [out] int * langType

    langType bezeichnet den Sprachtyp des aktuellen Scintilla View Dokuments : sehen Sie bitte den enum LangType in "PluginInterface.h" für alle möglichen Werte.

  • WM_SETCURRENTLANGTYPE

    wParam
    lParam
    0
    [in] int langTypeToSet

    langTypeToSet wird benutzt um den Sprachtyp des aktuellen Scintilla View Dokuments zu setzen : sehen Sie bitte den enum LangType in "PluginInterface.h" für alle möglichen Werte.

  • WM_GET_FULLCURRENTPATH

    wParam
    lParam
    0
    [out] char * fullPath

    fullPath erhält den absoluten Pfad des aktuellen Scintilla View Dokuments. Der Benutzer ist verwantwortlich, einen Buffer zu allozieren, oder eine automatische Variable mit ausreichender Grüsse zu verwenden. Es wird empfohlen MAX_PATH zu benutzen.

  • WM_GET_CURRENTDIRECTORY

    wParam
    lParam
    0
    [out] char * directoryPath

    directoryPath erhält den Verzeichnispfad des aktuellen Scintilla View Dokuments. Der Benutzer ist verwantwortlich, einen Buffer zu allozieren, oder eine automatische Variable mit ausreichender Grüsse zu verwenden. Es wird empfohlen MAX_PATH zu benutzen.

  • WM_GET_FILENAME

    wParam
    lParam
    0
    [out] char * fileName

    fileName erhält den Dateinamen des aktuellen Scintilla View Dokuments. Der Benutzer ist verwantwortlich, einen Buffer zu allozieren, oder eine automatische Variable mit ausreichender Grüsse zu verwenden. Es wird empfohlen MAX_PATH zu benutzen.

  • WM_NBOPENFILES

    wParam
    lParam
    0
    0

    The return value is the total number of files opened in Notepad++.

  • WM_GETOPENFILENAMES

    wParam
    lParam
    [in] int nbFile
    [out] char ** fileNames

    • nbFile ist die Grösse des fileNames Array. Der Wert sollte mittels WM_NBOPENFILES Meldung ermittelt werden. Danach das fileNames Array in der Grösse dieses Wertes allozieren.
    • fileNames erhält die absoluten Pfade aller in Notepad++ geöffneten Dateien. Der Benutzer ist verantwortlich, für das fileNames Array genügend Platz zu allozieren.
    • Der Rückgabewert ist die Anzahl der Pfadnamen, welche in das fileNames Array kopiert wurden.

  • WM_DOOPEN

    wParam
    lParam
    0
    [in] char * fullPathName2Open

    • fullPathName2Open bezeichnet den absoluten Verzeichnispfad der zu öffnenden Datei.
    • Der Rückgabewert ist TRUE (1) wenn die Operation erfolgreich war, sonst FALSE (0).

Scintilla Meldungen :

Hier finden Sie ein Dokument mit allen Meldungen von Scintilla.