Obszar roboczy#
Począwszy od Notepada++ 6.9 wydanego 2016-02-22 (info z nowości, info z pobierania) program oferuje własne dokowalne okno z rzeczywistym podglądem zawartości dowolnego folderu lub folderów. Samodzielne okno lub panel osadzony w kontenerze aktywujemy wybierając u góry na Pasku menu kolejno Widok >> Obszar roboczy
lub klikając przycisk na Pasku narzędzi.
Rysunek. Notepad++ - panel Obszar roboczy w lewym kontenerze z przykładową zawartością i po rozwinięciu wszystkich folderów
Obszar roboczy może posłużyć jako dodatkowy wariant nawigacji po plikach lub nawigacji po kodzie. Wyświetla on zawartość dowolnego folderu lub folderów, które sobie do niego dodamy. Do Obszaru roboczego zwykle dodaje się jeden folder konkretnego projektu, ale nic nie stoi na przeszkodzie aby dodać też foldery innych projektów (ilość dowolna). Istotne jest to, że widok w Obszarze roboczym jest automatycznie synchronizowany z zawartością dodawanych głównych folderów, dlatego każda zmiana w tych folderach zostanie natychmiast odzwierciedlona w Obszarze roboczym.
Opisowa grafika#
Dla uproszczenia wszystkie charakterystyczne elementy w oknie Obszar roboczy można zobrazować za pomocą opisowej grafiki #:
Rysunek. Notepad++ - okno Obszar roboczy z przykładową zawartością i po rozwinięciu wszystkich folderów
Można zmieniać położenie i rozmiar okna Obszar roboczy poprzez standardowe przeciąganie jego krawędzi lub rogów, i po ponownym uruchomieniu programu Notepad++ nowe wartości są zapamiętywane.
Belka tytułowa#
Belka tytułowa znajduje się na samej górze okna Obszar roboczy (patrz opisowa grafika). Wyświetla ona nazwę okna "Obszar roboczy"
oraz czerwony przycisk X
służący do jego zamknięcia.
Przyciski szybkiego dostępu#
Okno Obszar roboczy pod swoją belką tytułową udostępnia trzy przycisków dla najczęściej wykonywanych operacji (patrz opisowa grafika).
Rysunek. Notepad++ - przyciski szybkiego dostępu dla okna Obszar roboczy
Poniżej zamieszczam opis każdego przycisku szybkiego dostępu zgodnie z kolejnością występowania w oknie Obszar roboczy:
Unfold All
# - w drzewiastej liście zasobów zwija wszystkie główne foldery i podfoldery, które mają jakąś zawartość.Fold All
# - w drzewiastej liście zasobów rozwija wszystkie główne foldery i podfoldery, które mają jakąś zawartość.Select Item
# - jeśli aktualnie wybrany plik na Pasku kart znajduje się w drzewiastej liście zasobów to zostanie on wybrany na tej liście (z ewentualnym rozwinięciem wszystkich nadrzędnych folderów, które plik ten zawierają).
Cały pasek narzędzi, na którym znajdują się przyciski szybkiego dostępu posiada własne menu kontekstowe # (identyczne z menu kontekstowym pustej przestrzeni w drzewiastej liście zasobów) z dwoma poleceniami:
Rysunek. Notepad++ - menu kontekstowe dla całego paska narzędzi z przyciskami szybkiego dostępu w oknie Obszar roboczy
Drzewiasta lista zasobów#
Drzewiasta lista zasobów znajduje się pod przyciskami szybkiego dostępu w oknie Obszar roboczy (patrz opisowa grafika). Lista wyświetla rzeczywistą zawartość głównych folderów dodanych do okna Obszar roboczy w sposób hierarchiczny (drzewiasty), co oznacza, że możemy zwijać/rozwijać wszystkie foldery, które posiadają jakąś zawartość.
Rysunek. Notepad++ - drzewiasta lista zasobów w oknie Obszar roboczy ze wszystkimi kluczowymi elementami
Kluczowe elementy#
W drzewiastej liście zasobów rozróżniamy cztery kluczowe elementy # z własnym menu kontekstowym:
Pusta przestrzeń # - znajduje się za ostatnim głównym folderem dodanym do Obszaru roboczego lub stanowi całą jego przestrzeń jeśli nie ma żadnego głównego folderu. Pusta przestrzeń posiada własne menu kontekstowe # z dwoma poleceniami:
Rysunek. Notepad++ - menu kontekstowe dla pustej przestrzeni z drzewiastej listy zasobów w oknie Obszar roboczy
To samo menu kontekstowe posiada cały pasek narzędzi, na którym znajdują się przyciski szybkiego dostępu.
Główny folder # - folder znajdujący się na samym szczycie drzewiastej listy zasobów, który można dodawać na trzy sposoby (ilość dowolna). Główny folder posiada własne menu kontekstowe # z pięcioma poleceniami:
Rysunek. Notepad++ - menu kontekstowe dla głównego folderu z drzewiastej listy zasobów w oknie Obszar roboczy
Po najechaniu kursorem myszy nad główny folder pojawi się dymek z jego pełną ścieżką (postać absolutna).
Podfolder # - folder znajdujący się w głównym folderze na dowolnym poziomie zagnieżdżenia (ilość dowolna). Podfolderu nie można dodawać do Obszaru roboczego bo jeden z jego folderów nadrzędnych jest już głównym folderem. Podfolder posiada własne menu kontekstowe # z czterema poleceniami:
Rysunek. Notepad++ - menu kontekstowe dla podfolderu z drzewiastej listy zasobów w oknie Obszar roboczy
Plik # - plik znajdujący się bezpośrednio w głównym folderze lub którymś podfolderze (ilość dowolna). Plik posiada własne menu kontekstowe # z czterema poleceniami:
Rysunek. Notepad++ - menu kontekstowe dla pliku z drzewiastej listy zasobów w oknie Obszar roboczy
Po najechaniu kursorem myszy nad plik pojawi się dymek z jego pełną ścieżką (postać absolutna).
Dodawanie głównych folderów#
Przy pierwszej aktywacji Obszaru roboczego jego drzewiasta lista zasobów jest pusta. Można do niej dodawać dowolną liczbę głównych folderów na trzy sposoby #:
Przeciągając konkretny folder do głównego okna programu. Specjalne potraktowanie przeciąganego folderu dla Obszaru roboczego zadziała tylko wtedy, kiedy w oknie
Preferencje >> Domyślna ścieżka
opcjaNie traktuj przenoszonego folderu jako obszaru roboczego, tylko ładuj wszystkie jego pliki
pozostanie wyłączona.Rysunek. Notepad++ - okno Preferencje z zaznaczoną opcją pozwalająca na specjalne potraktowanie przeciąganego folderu dla Obszaru roboczego
Obsługa przeciągania folderu zadziała nawet przy wyłączonym oknie Obszar roboczy (zostanie ono automatycznie włączone).
Wskazując na konkretny folder w systemowym oknie
Przeglądanie w poszukiwaniu folderu
, które przywołamy poleceniemDodaj
dostępnym w menu kontekstowym pustej przestrzeni lub menu kontekstowym paska narzędzi z przyciskami szybkiego dostępu.- Wskazując na folder, w którym znajduje się aktualnie wybrany pliku, co można szybko osiągnąć poprzez wybranie u góry na Pasku menu kolejno
Pliki >> Otwórz folder zawierający >> W obszarze roboczym
lub wybierając z menu kontekstowego karty polecenieOtwórz folder zawierający w obszarze roboczym
. - Uruchamiając program Notepad++ z argumentem
-openFoldersAsWorkspace
.
Trzeba wyraźnie zaznaczyć, że nie jest możliwe dodanie jakiegoś folderu, który już jest zawarty w jednym z głównych folderów. Próba taka spowoduje jedynie wybranie takiego folderu w drzewiastej liście zasobów.
Kolejność występowania głównych folderów w drzewiastej liście zasobów jest zgodna z kolejnością ich dodania do drzewiastej listy zasobów. Nie ma możliwości automatycznego posortowania głównych folderów bezpośrednio w Obszarze roboczym.
Nawigacja myszą lub klawiaturą#
Przy użyciu myszy lub klawiatury możemy przeglądać strukturę głównych folderów w drzewiastej liście zasobów. Oto kilka możliwych wariantów nawigacyjnych:
- Lewy klik na danym folderze lub pliku - zmienia aktualnie wybrany folder lub plik.
- Lewy dwuklik na danym folderze - rozwija/zwija ten folder. Nie dotyczy pustych folderów. Alternatywnie można skorzystać z identycznie działającego klawisza Enter.
- Lewy dwuklik na danym pliku - przywołuje ten plik w głównym oknie programu, tj. otwiera go jeśli nie był otwarty i umieszcza kursor na początku Obszaru edycji lub robi aktywnym jeśli był otwarty, ale nie był aktualnie wybrany i zachowuje oryginalne położenie kursora w Obszarze edycji. Alternatywnie można skorzystać z identycznie działającego klawisza Enter lub polecenia
Otwórz
dostępnego w menu kontekstowym pliku. - Lewy klik na kontrolce [+]/[-] danego folderu - rozwija/zwija ten folder. Puste foldery nie posiadają tych dwóch kontrolek.
- Klawisz prawo - jeśli aktualnie wybrany folder nie jest rozwinięty to go rozwija, a jeśli jest rozwinięty to przechodzi na pierwszy zawarty w nim folder lub plik.
- Klawisz lewo - jeśli aktualnie wybrany folder jest rozwinięty to go zwija, a jeśli jest zwinięty lub jest to plik to przechodzi na zawierający go folder.
- Klawisz Backspace - przechodzi z aktualnie wybranego folderu lub pliku na zawierający go folder. Bardzo podobne zachowanie do klawisza lewo, ale nie zwija folderów.
- Klawisz góra/dół - zmienia aktualnie wybrany folder lub plik na poprzedni/kolejny widoczny folder lub plik.
- Klawisz Home/End - wybiera pierwszy/ostatni widoczny folder lub plik w całym Obszarze roboczym.
- Klawisz PageUp/PageDown - wybiera pierwszy/ostatni widoczny folder lub plik z bieżącego widoku Obszaru roboczego. Wielokrotne wciśnięcie tych klawiszy w końcu wybierze pierwszy/ostatni widoczny folder lub plik w całym Obszarze roboczym, a ilość potrzebnych do tego wciśnięć jest zależna od liczby wszystkich widocznych folderów i plików oraz od pionowego rozmiaru okna Obszar roboczy.
- Klawisz Delete - jeśli aktualnie wybranym elementem w drzewiastej liście zasobów jest główny folder to zostanie on z niej usunięty (bez żadnego dodatkowego komunikatu potwierdzającego tę operację).
Kółko myszy - przewija w górę lub w dół drzewiastą listę zasobów jeśli posiada ona pionowy pasek przewijania i spełniony zostanie jeden z dwóch następujących warunków:
- Obszar roboczy jest aktywny. W tym przypadku położenie wskaźnika myszy nie ma znaczenia i może być w dowolnym miejscu ekranu (nawet poza Obszarem roboczym).
- Obszar roboczy nie jest aktywny, ale wskaźnik myszy znajduje się nad drzewiastą listą zasobów.
Zapamiętanie bieżącego stanu#
Bieżący stan w drzewiastej liście zasobów zostaje zapamiętany bezpośrednio w pliku konfiguracyjnym NPP\config.xml
dopiero przy prawidłowym zamknięciu programu Notepad++. Obejmuje to tylko i wyłącznie pełne ścieżki do głównych folderów oraz ostatnio wybrany element w drzewiastej liście zasobów. Fragment kodu opisujący bieżący stan drzewiastej listy zasobów w przykładzie z opisowej grafiki jest następujący:
<FileBrowser latestSelectedItem="D:\NPP\test\folderAB">
<root foldername="D:\NPP\test\folderA" />
<root foldername="D:\NPP\test\folderB" />
<root foldername="D:\NPP\test\folderC" />
</FileBrowser>
Po ponownym uruchomieniu programu Notepad++ drzewiasta lista zasobów w Obszarze roboczym zostanie automatycznie wypełniona zapamiętanymi głównymi folderami, po czym nastąpi ich automatycznie rozwinięcie (nie dotyczy podfolderów) oraz wybranie ostatnio zapamiętanego elementu (z atrybutu latestSelectedItem
).
Rysunek. Notepad++ - okno Obszar roboczy z przykładową zawartością i po ponownym uruchomieniu programu Notepad++
Dodatkowe uwagi#
Z poziomu okna Obszar roboczy można usuwać tylko i wyłącznie główne foldery poprzez ich menu kontekstowe. Oczywiście usunięcie w tym przypadku nie oznacza fizycznego wykasowania folderu z dysku twardego, a jedynie pozbycie się go z drzewiastej listy zasobów. Nie ma możliwości wybiórczego ukrywania poszczególnych podfolderów czy plików poprzez okno Obszar roboczy, chyba że zrobimy to wprost z poziomu systemu operacyjnego (np. kasując/przenosząc konkretne pliki/foldery w inne miejsce lub ukrywając konkretne foldery).
Drzewiasta lista zasobów jest automatycznie synchronizowana # z rzeczywistą zawartością dodanych do niej głównych folderów. Dzięki temu każda zmiana w głównym folderze (dodanie/usunięcie/zmiana nazwy w jego plikach/podfolderach) zostanie od razu odzwierciedlona w drzewiastej liście zasobów. Wyjątkiem będzie modyfikacja samego głównego folderu (np. poprzez zmianę jego nazwy), która spowoduje pominięcie tego folderu dopiero po ponownym uruchomieniu programu Notepad++ (tj. nastąpi korekcja bieżącego stanu dla drzewiastej listy zasobów.
W większości przypadków drzewiasta lista zasobów nie wyświetla ukrytych podfolderów. Jest to minimalna forma filtracji # omijająca wszystkie niechciane podfoldery (np. katalogi bibliotek czy repozytoriów). Drobnym wyjątkiem od tej reguły będzie ręczne utworzenie z poziomu systemu operacyjnego podfolderu z atrybutem Ukryty
, który będzie widoczny w drzewiastej liście zasobów do chwili, kiedy ponownie nie dodamy do drzewiastej list zasobów zawierającego go głównego folderu lub uruchomimy program Notepad++ raz jeszcze.
Alternatywa#
Obszar roboczy oferowany przez program Notepad++ to bardzo podstawowe narzędzie do zarządzania projektem. Ma ono spore ograniczenia, do których można zaliczyć:
- Brak pola filtrującego zawartość drzewiastej listy zasobów (bug 4939).
- Brak zapamiętywania stanu zwinięć/rozwinięć poszczególnych folderów po ponownym uruchomieniu programu NPP (bug 4057, bug 5979).
- Brak wybiórczego ukrywania/ignorowania poszczególnych plików/folderów (bug 1530, bug 6282).
- Brak różnych wariantów sortowania dla folderów lub ich zawartości.
- Brak zwijania/rozwijania wszystkich podfolderów w aktualnie wybranym folderze.
- Brak możliwości szybkiego otworzenia wszystkich plików z aktualnie wybranego folderu, z ewentualnym uwzględnieniem plików ze wszystkich jego podfolderów (bug 3515).
- Brak opcji zapamiętywania bieżącego stanu do pliku sesji (bug 8005).
Ogólnie rzecz biorąc to Obszar roboczy świetnie sprawdza się przy szybkich korektach w danym projekcie, ale przy dłuższej pracy nad projektem warto go sobie pooznaczać skrótami do najważniejszych zasobów, co można wykonać wbudowanym rozwiązaniem Projekt lub zewnętrzną wtyczką Explorer.