Edytor joe

W tym artykule zajmiemy się edytorem tekstu w trybie terminalowym - joe.

W wielu artykułach czy poradach dotyczących Linuksa można spotkać przykłady wykorzystania edytorów z rodziny Vi/Vim. W nowszych przykładach często pojawia się edytor nano. Rzadziej można spotkać inne edytory. Jednym z nich jest joe

JOE - Joe's Own Editor

joe to wielofunkcyjny terminalowy edytor tekstowy. Powstał w latach '80 XX wieku i szybko stał się obecny w wielu dystrybucjach Linuksa i systemach Unix. joe jest wzorowany na istniejących wcześniej procesorach tesktu WordStar oraz Emacs, ale nie dzieli ich kodu. Oprócza działania jako podstawowa komenda joe, edytor ten może też być uruchamiany w trybie emulacji "zaprzyjaźnionych" edytorów odowiednio komendami jmacs, jstar, albo jpico

Cechy i funkcje

Programem steruje się za pomocą skrótów klawiszowych, najczęśćie inicjonaych sekwencją Ctrl+K po której następuje klawisz danej funkcji, np. Ctrl+K H - wyświetlenie okienka pomocy.

joe-windows

joe-search

Instalacja

joe jest dostępny jako pakiet w głównych dystrybucjach Linuksa, moża go łatwo zainstalować poleceniami do instalacji pakietów: np.

Debian/Ubuntu:

$ sudo apt install joe

RedHat/Fedora/Rocky/Alma:

$ sudo dnf install joe

Jeśli nie działa sprawdzanie pisowni warto doinstalować polski słownik

$ sudo apt install aspell-pl

Proste użycie

joe uruchamiamy wpisując w terminalu polecenie joe:

$ joe

Działanie programu

Wdycję nowego lub isniejącego pliku rozpoczynamy poleceniem

$ joe  plik.txt

joe używa często skrótów klawiszowych opartych na dwóch znakach. Zapis Ctrl+K F (zapisywane też ^KF) oznacza przytrzymanie klawisza Control, wciśnięcie klawisza K, puszczenie ich i w krótkim czasie wciśnięcie klawisza F. Kilka najważniejszych skrótów to:

Skróty można podejrzeć w pomocy programu wywoływane kombinacją Ctrl+K H:

joe-help

Nawigacja po pomocy odbywa się za pomocą skrótów Esc . i Esc , ("escape kropa", "escape przecinek")

Po wywołaniu w edytorze akcji wymagającej interakcji użytkownika, np. wprowadzenie wyszukiwanego tekstu, program wyświetla u dołu terminala zapytanie i pole do wpisania żądanej informacji.

Akcje jak i całe działania programu można przerwać kombinacją Ctrl+C, co staj się intuicyjne dla osób pracujących w terminalu Linuksa, gdzie również działanie programów przerywa się przez Ctrl+C.

Oprócz zestawu skrótów klawiszowych z podstawowymi funkcjami edycji, joe ma zestaw poleceń dostępnych najczęściej za pomocą kombinacji Ctrl+T i dodatkowej litery, lub z menu wywoływanego przez Ctrl+T. Są to komendy służące do np. wyboru typu pliku i rodzaju podświetlania skłdni, przełączenia nadpisywania, przełączania i ustawień wcięć automatycznych. Jedną z ciekawszych funkcji jest tryb blokowy pozwalającyh zaznaczać prostokątny obszar tekstu w poprzek wierszy. Tryb ten przełącza się kombinacją Ctrl+T X. Można go użyć np. do przestawiania kolumn w tekstowym pliku z danymi naukowymi.

Przydatne informacje

Aby wkleić do joe coś ze schowka systemowego, co normalnie robi się z pomocą kombinacji Ctrl+V, możemy użyć kombinacji Ctrl+Shift+V

Analogicznie działa kopiowanie.

Plik konfiguracyjny

W joe, podobnie jak w wiele programach w Linuksie globalne opcje zmienia się za pomocą plików konfiguracyjnych. Dla joe są to dwa pliki: globalny /etc/joe/joerc oraz lokalny plik użytkownika ~/.joerc. Po świeżej instalacji plik globalny zawiera domyślne ustawienia dla wszystkich użytkowników i może być zmieniany przez administratora systemu. Nim nie będziemy się zajmować w tym artykule.

Natomiast plik ~/.joerc zazwyczaj nie istniej i trzeba go stworzyć samemu. Zobaczmy to na przykładzie.

joe domyślnie tworzy kopie plików z dołączonym na końcu znakiem ~, np.

$ ls 

salatka-przepis.txt salatka-przepis.txt~

Można uniknąć tworzenia tych plików zmieniając konfigurację programu na swoim koncie.

W tym celu należy wpisać do pliku ~/.joerc linię o treści:

-nobackups

Warto przed tym zaimportować domyślną konfigurację systemową z pliku /etc/joe/joerc. Jeśli plik .joerc wcześniej nie istniał jego zawartość powinna wyglądać tak:

:include /etc/joe/joerc
-nobackups

Pliki DEADJOE

Czasami kiedy joe nie zostanie poprawnie zamknięty, to w bieżącym katalogu pojawia się plik DEADJOE. Jest to zapis stanu edytora z chwili błędnego zakończenia. Jest to plik tekstowy, można go podejrzeć za pomocą samego joe. Jeśli nie widzimy w nim żadnej istotnej treści, można go bezpiecznie usunąć. Tworzenie plików DEADJOE również można zablokować w pliku ~/.joerc dodając linię:

-nodeadjoe

Podsumowanie

joe to praktyczny edytor tekstowy do zastosowań terminalowych np. do pracy z plikami konfiguracyjnymi, pisania niewielkich artykułów, prowadzenia notatek, poprawek kodu i pisania skryptów. Edytor ten bardzo dobrze zachowuje się różnych emulatorach terminali, również w pracy zdalnej.

Ten artykuł powstał z użyciem edytora joe.

joe-cover

Linki

edytor terminal