Wtyczki#

Wstęp#

Wtyczki (zwane często dodatkami, rozszerzeniami, pluginami, etc.) to podstawa wolnego oprogramowania. Zawsze znajdą się jacyś zapaleńcy by rozszerzać pierwotne możliwości programu. Tak samo jest w przypadku Notepad++, który mechanizm wtyczek wprowadził 2005.07.17 wraz z premierą Notepad++ 3.1 (info1 z webarchive, info2 z webarchive).

Wtyczek jest wiele, dokładne opisy znajdują się na specjalnie przygotowanych stronach:

Proponuję samemu prześledzić listę i wybrać odpowiednie dodatki, ewentualnie zapoznać się z opisem rozszerzeń, które sam stosuje.

Z uwagi na częste zmiany strony domowej i dokumentacji (bez uprzedniego przeniesienia całej utworzonej do tej pory treści w nowe miejsce) sporo adresów bezpowrotnie przepada. Dzięki projektowi web.archive.org jest szansa, że część z nich została zarchiwizowana i wciąż pozostaje dostępna.

Instalacja#

Począwszy od Notepada++ 7.6 wydanego 2018.11.13 (info z webarchive) zmienił się sposób zarządzania wtyczkami. Od tej pory pliki wtyczek należy umieszczać w odpowiednich folderach, a sam NPP wreszcie dorobił się własnego mechanizmu do ich kontroli, tj. okna Zarządzanie wtyczkami. W przeszłości rolę tę spełniał osobny dodatek Plugin Manager, ale w aktualnych wersjach NPP działa nieprawidłowo i stał się zbędny. W dalszej części skupię się tylko na opisywaniu aktualnych rozwiązań.

Struktura folderów#

Niezależnie od sposobu instalacji wszystkie wtyczki umieszczane są w katalogu NPP\plugins. Można szybko przejść w to miejsce wybierając u góry na Pasku menu kolejno Wtyczki >> Otwórz folder z wtyczkami...

Każda wtyczka składa się z głównego pliku DLL #, dla przykładu niech to będzie plik wtyczka.dll, umieszczanego w katalogu o tej samej nazwie zwanym katalogiem wtyczki #, czyli w naszym przykładzie ścieżka do pliku ma postać NPP\plugins\wtyczka\wtyczka.dll. Wszystkie dodatkowe pliki muszą znajdować się bezpośrednio w katalogu wtyczki lub kolejnych jego podkatalogach. Takie są wymagania wbudowanego mechanizmu zarządzania wtyczkami.

W przypadku większości wtyczek (szczególnie tych starszych) okazuje się, że całość działa prawidłowo kiedy wszystkie dodatkowe pliki umieszcza się w kolejnym katalogu o tej samej nazwie, co katalog wtyczki, czyli dla naszego przypadku w NPP\plugins\wtyczka\wtyczka\reszta_plikow. Nie jest to regułą i czasami trzeba samemu pokombinować z prawidłowym rozlokowaniem plików (jak w przypadku wtyczki HTMLTag).

Oprócz swojego głównego folderu wtyczki mają do dyspozycji także dwa dodatkowe (współdzielone z innymi wtyczkami) foldery:

Co jakiś czas warto zrobić sobie kopie powyższych folderów, a w szczególności konfiguracji, by potem - w razie ewentualnych kłopotów - nie tracić czasu na ponowne ustawianie wszystkiego.

Sposoby instalacji#

Instalację wtyczek można wykonać na jeden z trzech sposobów:

Największą kontrolę zapewnia ręczna instalacja i tę opcję polecam każdemu. Dla leniwych przewidziano opcję drugą, a trzecia to typowa egzotyka o ograniczonych możliwościach (np. kłopotliwa dla wtyczek zawierających wiele plików).

Dobór odpowiedniej wtyczki#

Wspomniałem już nieco wcześniej, że wtyczki muszą być tworzone osobno dla wersji 32- jak i 64-bitowej. Nie ma trybu emulacji (znanej chociażby z systemów Windows), zatem w programie 64-bitowym nie można uruchomić wtyczek 32-bitowych. Dla danej architektury NPP należy instalować odpowiednie wersje wtyczek.

Warto przypomnieć, że starsze wydania wtyczek i samego programu występowały w wersji ANSI lub Unicode. Obecnie Notepad++ udostępniany jest tylko i wyłącznie w postaci Unicode, zatem nie będzie już w stanie obsługiwać wtyczek napisanych pod ANSI. W razie konieczności można postawić sobie osobną wersję programu, która obsłuży przestarzałe wtyczki.

Zarządzanie wtyczkami#

Okno Zarządzanie wtyczkami przywołujemy wybierając u góry na Pasku menu kolejno Wtyczki >> Zarządzaj wtyczkami... Wyświetla ono listę wszystkich dostępnych wtyczek dla danej architektury NPP, listę aktualnie zainstalowanych wtyczek, pozwala także szybko aktualizować i usuwać poszczególne wtyczki.

Notepad++ - okno Zarządzanie wtyczkami

Rysunek. Notepad++ - okno Zarządzanie wtyczkami

Nie wszystkie wtyczki będą widoczne w oknie Zarządzanie wtyczkami. Decyduje o tym specjalna lista nppPluginList, na której budowę składają się osobne pliki pl.x86.json i pl.x64.json. Nowa wersja listy zostaje udostępniona wraz z kolejnym wydaniem programu w postaci pliku nppPluginList.dll, który znajduje się w folderze NPP\plugins\Config. Użycie binarnego pliku .dll zwiększa bezpieczeństwo gdyż listę taką można podpisać certyfikatem. W przypadku braku jakiejś wtyczki na liście jej instalację najlepiej wykonać ręcznie.

Nadmiarowe pliki#

Trzeba wyraźnie zaznaczyć, że instalowanie wtyczek za pośrednictwem okna Zarządzanie wtyczkami może zapisywać nadmiarowe pliki, tj. ściągać obie wersje plików dla architektury 32- i 64-bitowej, niezależnie od wersji aktualnie używanego Notepada++. Wszystko zależy od sposobu dystrybuowania danej wtyczki, która może występować pod postacią jednej wspólnej paczki ZIP zawierającej obie wersje lub występować w formie dwóch osobnych paczek ZIP dla każdej z wersji.

W paczkach mogą znajdować się także inne pliki, które z perspektywy działania samej wtyczki są zbędne (np. pliki licencji, instrukcji czy ostatnich zmian). Przy ręcznej instalacji wszystkie te pliki można pominąć lub przenieść w inne miejsce, np. do folderu NPP\plugins\doc.

Aktualizacja#

Aktualizacja wtyczek jest tożsama z ich ponowną instalacją. Odbywa się ona zasadzie nadpisania starszych wersji plików ich nowszymi odpowiednikami. Można to przeprowadzić ręcznie lub za pośrednictwem okna Zarządzanie wtyczkami.

Menu wtyczki#

Każda wtyczka posiada własne menu, które w standardowym/preferowanym podejściu umieszcza się u góry na Pasku menu pod pozycją Wtyczki. W menu wtyczki znajdują się wszystkie jej polecenia, które odpowiadają za wykonanie konkretnych akcji, otworzenie dodatkowych okien dialogowych czy wyświetlenie informacji o samej wtyczce i jej autorze. Z racji tego, że menu wtyczki jest dynamiczne, to z biegiem czasu mogą pojawić się tam dodatkowe wpisy. Niektóre elementy w menu wtyczki mają dwustanowy charakter, tj. mogą być włączone (i oznaczone niebieskim symbolem fajki) lub wyłączone (bez tego znaku). Oprócz bezpośrednich poleceń menu wtyczki może zawierać kolejne pozagnieżdżane rozwijalne pozycje (tzw. submenu/podmenu) ze swoimi poleceniami (np. DSpellCheck).

Niektóre wtyczki tworzą swoje menu w niestandardowy/przestarzały sposób i umieszczają je bezpośrednio na Pasku menu (np. TextFX lub Emmet w wersji JS). Nie jest to zbyt popularne, ale się zdarza i ma pewne negatywne konsekwencje. Pierwsza z nich to zaśmiecanie głównego Paska menu; przemieszanie wpisów pochodzących bezpośrednio z programu i kolejnych wtyczek jest niepraktyczne. Druga, i z mojego punktu widzenia gorsza przypadłość, to niemożność tworzeniu odwołań do poleceń z takiego menu (np. w menu kontekstowym Obszaru edycji lub własnym przycisku). Większość standardowych rozwiązań nie zadziała, a ewentualne obejścia do najprzyjemniejszy nie należą.

Problemy ze skrótami klawiszowymi#

Jeśli jakaś opcja wtyczki nie działa (stosując skróty klawiszowe) pewnie gryzie się ze skrótami samego programu lub innego dodatku. Czasami należy zmienić domyślne skróty wybierając u góry na Pasku menu kolejno Ustawienia >> Skróty klawiszowe... W przypadku braku pozycji odpowiedzialnej za problematyczny skrót w danym dodatku należy wyedytować plik konfiguracyjny rozszerzenia i dokonać korekty (jeśli w ogóle taki plik istnieje i wtyczka umożliwia modyfikację swoich skrótów).

Pasek społecznościowy

SPIS TREŚCI AKTUALNEJ STRONY

Wtyczki (H1) Wstęp (H2) Instalacja (H2) Struktura folderów (H3) Sposoby instalacji (H3) Dobór odpowiedniej wtyczki (H3) Zarządzanie wtyczkami (H3) Nadmiarowe pliki (H4) Aktualizacja (H2) Menu wtyczki (H2) Problemy ze skrótami klawiszowymi (H2)