Login: password:

Emacs w odcinkach

Na początku był chaos. Potem RMS wymyślił GNU.

Strony: początek koniec następna

Odcinek 0: Czym jest Emacs i czy jest mi potrzebny?

2006-04-10, 22:19:58

Czym jest Emacs i czy jest mi potrzebny?

  • GNU Emacs to edytor tekstu napisany przez Richarda Stallmana na platformę PDP-10
  • GNU Emacs to potężne środowisko edycyjno-developerskie dla Unixa i jego klonów, MS Windows, Mac OS i innych
  • GNU Emacs to nakładka na system operacyjny
  • GNU Emacs to filozofia i styl życia
  • GNU Emacs to religia

Ok, zaczniemy jeszcze raz.

(więcej w »Odcinek 0: Czym jest Emacs i czy jest mi potrzebny?«)

Odcinek 1: Kilka chwytów na gitarę klasyczną

2006-04-21, 11:34:14

Ramka, bufor, skróty klawiszowe, podstawowe funkcje edycyjne.

(więcej w »Odcinek 1: Kilka chwytów na gitarę klasyczną«)

Odcinek 2: Ain't got no food to eat, ain't got no money to spend

2006-05-11, 14:39:21

Wszystkie dotychczasowe odcinki (jak i te, które — mam nadzieję — powstaną) nie miały (i nie będą miały) na celu wyczerpująco omówić wszystkich wypunktowanych zagadnień. Moim głównym celem było zwrócenie uwagi na możliwości i dostępną funkcjonalność.

Przede wszystkim, nie sposób używać wszystkich funkcji emacsowych podczas codziennej pracy. Nie sposób nawet poznać tych funkcji w rozsądnym czasie. Staram się pisać o tym, z czego korzystam na co dzień. Obecnie jestem w trakcie dłubania poprawek do silnika tej strony, które pozwolą na lepsze zarządzanie komentarzami. Wtedy będzie już prosto: jeśli zapomnę o czymś napisać, z pewnością ktoś spostrzegawczy mnie (i Was przede wszystkim) o tym poinformuje.

(więcej w »Odcinek 2: Ain't got no food to eat, ain't got no money to spend«)

Odcinek 3: Seek & Destroy

2006-07-05, 22:00:35

Każdy szanujący się edytor tekstu umożliwia wyszukiwanie i zastępowanie tekstu, interaktywne bądź automatyczne. Edytory z górnej półki potrafią dodatkowo operować wyrażeniami regularnymi. Edytor z najwyższej półki — Emacs — radzi sobie z tymi funkcjami znakomicie i na wiele sposobów.

(więcej w »Odcinek 3: Seek & Destroy«)

Odcinek 4: List do cioci

2006-07-19, 00:12:42

Edytor Numer Jeden może być wykorzystany do pisania tekstów dowolnych: opowiadań, raportów, listów i podobnych. Dość często zależy na sprawdzeniu pisowni, zwłaszcza, gdy taki tekst jest bardziej urzędowy lub zostanie upubliczniony. Do Emacsa dorobiono więc obsługę programu ispell, popularnego spell-checkera. Sposób działania i możliwości przypominają odpowiedniki z popularnych graficznych procesorów tekstu.

(więcej w »Odcinek 4: List do cioci«)

Odcinek 5: Wszystko po swojemu

2006-07-20, 23:37:20

Najlepszy z Edytorów jest programem dość skomplikowanym i rozbudowanym, nie ma co do tego żadnych wątpliwości. Próba skonfigurowania w tradycyjny sposób (okienko dialogowe z setką zakładek i milionem opcji) przyprawiałaby o ból głowy. Mnóstwo cudzego kodu w lispie uczyniłoby pewnie skonfigurowanie Emacsa niewykonalnym. Na szczęście znalazł się odważny człowiek i napisał przydatne narzędzie.

(więcej w »Odcinek 5: Wszystko po swojemu«)

Odcinek 6: Nie taki diabeł straszny

2006-09-20, 22:48:11

Wyniki działania Customize zapisywane są do pliku konfiguracyjnego jako wywołania kolejnych funkcji lispowych. Można wyręczyć Customize i zrobić te wpisy na własną rękę. Czasami to nawet konieczne.

Emacs domyślnie szuka pliku, który będzie interpretowany przy starcie w katalogu domowym użytkownika. Plik powinien nazywać się .emacs (kropka na początku obowiązkowa i celowa), natomiast katalog domowy... hm.

(więcej w »Odcinek 6: Nie taki diabeł straszny«)

Odcinek 7: Kodowanie

2006-11-18, 11:07:45

Czasami zachodzi potrzeba otwarcia pliku w innym kodowaniu niż aktualnie używane. Niekiedy trzeba zapisać plik w innym kodowaniu. Sytuacje takie zdarzają się często, chociażby podczas pracy grupowej. Emacs radzi sobie z takimi przypadkami znakomicie, udostępniając przy okazji kilka przydatnych udogodnień.

(więcej w »Odcinek 7: Kodowanie«)

Odcinek 8: Uruchomić coś?

2007-01-28, 16:48:00

Podczas pracy ze zwykłym edytorem tekstu często trzeba sięgać do terminala, aby wykonać jakieś operacje na plikach i katalogach, uruchomić jakiś program lub też skompilować pisane przez siebie źródła. Emacsowcy mają ten komfort, że odpowiednie narzędzia zostały już wbudowane w ich ulubiony program.

(więcej w »Odcinek 8: Uruchomić coś?«)

Odcinek 9: Katalog dla każdego

2007-01-28, 23:35:06

Odwiedzać można zarówno pliki, jak i katalogi. W tym drugim przypadku katalog otwierany jest przez narzędzie zwane Dired, które jest znakomitym menedżerem plików.

Dired może zostać wywołany zarówno poprzez odwiedzenie katalogu, jak i użycie funkcji M-x dired (Emacs następnie spyta o nazwę katalogu do otwarcia)

(więcej w »Odcinek 9: Katalog dla każdego«)

Odcinek 10: Harry Potter i komnata czarownic

2007-03-15, 22:19:44

Zakładki

Pracując często z dużą ilością tekstu irytującym staje się wyszukiwanie konkretnego wystąpienia jakiegoś wzorca, zwłaszcza w wielu buforach.

Z pomocą przychodzą zakładki (bookmarks): można oznaczyć podane miejsce w tekście, a później łatwo do niego skoczyć, niezależnie od tego, który bufor jest aktualnie aktywny. Co ciekawe, zakładki są zachowywane wraz z otaczającym je tekstem (tzw. kontekst) tak, aby dana zakładka potrafiła się dynamicznie dostosować do zmian w pliku (dodanie bądź usunięcie linii przed zakładką spowodowałoby — w przypadku zakładek statycznych — eleganckie „rozjechanie się'' zakładki i miejsca w tekście, które faktycznie oznaczono)

(więcej w »Odcinek 10: Harry Potter i komnata czarownic«)

Odcinek 11: Umysł jak brzytwa

2007-04-12, 10:03:03

Powtarzanie w kółko tych samych czynności podczas pracy z tekstem (lub wieloma tekstami) jest bardzo nużące: czy to wpisywanie tego samego tekstu, czy wywoływanie w kółko tego samego zestawu funkcji, potrafi irytować, a i pomylić się można bardzo łatwo. Na szczęście można sobie pomóc makrami, które grupują w jedną całość naciśnięte klawisze (tekst pisany, jak i wywoływane interaktywnie funkcje wraz z potrzebnymi danymi)

(więcej w »Odcinek 11: Umysł jak brzytwa«)

Odcinek 12: prof. dr hab. inż. prez.

2007-04-16, 13:09:01

Rozwijanie skrótów w czasie pisania jest szalenie fajną możliwością. Zastępuje niewygodne znajdź-zastąp dla regularnie powtarzających się tasiemców, o którym łatwo zapomnieć. A pieczołowite wklepywanie długiego tekstu jest męczące i łatwo o pomyłkę.

Rozwijanie skrótów jest dostępne tylko w abbrev-mode, więc trzeba go włączyć odpowiednio wcześniej (M-x abbrev-mode)

(więcej w »Odcinek 12: prof. dr hab. inż. prez.«)

Odcinek 13: Tryby nie tylko zębate

2007-05-15, 10:42:40

Uniwersalny edytor tekstu edytuje wszystko, co tylko jest w stanie otworzyć, oferując w sumie niewiele funkcji. Specjalizowany edytor tekstu potrafi edytować niewielki wycinek plików, oferując ogromne możliwości tylko dla tych określonych typów (języki programowania, dokumenty o określonej strukturze); cóż jednak mają te wszystkie programy do zaoferowania programiście piszącemu w sześciu językach, dodatkowo rozwijając dokumentację w LaTeXu i dłubiąc od czasu do czasu jakąś stronę www? Niewiele. Zmuszanie do instalowania osobnych IDE do każdego języka jest bez sensu.

Emacs oferuje dla każdego rodzaju pliku tzw. „tryb'' (ang. mode); krótko mówiąc, tryb jest zbiorem konkretnych funkcji i ustawień, widocznych (dostępnych) podczas edycji plików określonego typu.

(Trybów emacsowych nie należy mylić z trybami u konkurencji, które służą do czegoś zgoła innego)

(więcej w »Odcinek 13: Tryby nie tylko zębate«)

Odcinek 14: Kopie zapasowe

2008-05-22, 12:00:20

Domyślnie Emacs tworzy kopie plików podczas zapisywania ich nowych wersji. Do nazwy pliku (ok, myśląc po dosowemu/windowsowemu: do rozszerzenia) dokładana jest tylda; zawartością tego pliku jest poprzednia wersja aktualnego bufora.

Emacs byłby zbyt prostym edytorem, gdyby nie umożliwiał przechowywania dowolnej liczby wersji pliku wstecz i konfigurowania całego tego mechanizmu.

(więcej w »Odcinek 14: Kopie zapasowe«)

Odcinek 15: Emacs i bramy raju

2008-07-07, 10:58:02

Typowy programista (choć nie tylko) styka się codziennie w swojej pracy z takim bądź innym systemem kontroli wersji: póki co, nie wymyślono lepszego sposobu na wspólne składowanie danych wraz z dostępem do wszystkich poprzednich wersji.

Łatwo się domyślić, że Najlepszy Z Edytorów obsługuje różne systemy kontroli wersji (wszystkie bardziej znane i mnóstwo mniej znanych); obsługuje, czyli oferuje te same funkcje, co dedykowany klient VC, dodatkowo czyniąc wszystkie operacje łatwiejszymi (a wyniki wszystkich operacji są pokazywane użytkownikowi w o wiele strawniejszej formie niż suchy tekst w terminalu)

(więcej w »Odcinek 15: Emacs i bramy raju«)

Odcinek 16: Porównaj mi, mamo.

2008-07-12, 14:06:32

Jedną z wielu czynności wykonywanych podczas pracy z plikami tekstowymi jest ich porównywanie — czy to dwóch różnych plików, czy też różnych wersji tego samego pliku (choćby po to, aby dowiedzieć się, kto wprowadził zmiany i kiedy)
Wraz z Emacsem dostarczany jest Ediff — całkiem niezłe narzędzie do porównywania plików oraz katalogów.

(więcej w »Odcinek 16: Porównaj mi, mamo.«)

Odcinek 17: Kto czyta, nie błądzi

2008-07-22, 10:55:58

man (podręcznik) jest szeroko respektowanym standardem w świecie uniksowym — każdy szanujący się projekt dostarcza pliki podręcznika w tym formacie. Drugim popularnym formatem, bardziej jednak znanym i stosowanym w świecie GNU, jest texinfo — hierarchiczny i ściścle ze sobą powiązany system dokumentacji.

Można domniemywać, że skoro Emacs jest dystrybuowany wraz z kompletem dokumentacji w formacie texinfo i elegancką jej przeglądarką, to potrafi także czytać inne strony texinfo niż swoje. A biorąc pod uwagę fakt, że wcześniej czy później Emacs dorobi się obsługi każdego przydatnego narzędzia, które tylko można jakoś oskryptować, to należy przypuszczać, że i obsługa uniksowych manuali jest już w Emacsa wbudowana.

Oba przypuszczenia są słuszne.

(więcej w »Odcinek 17: Kto czyta, nie błądzi«)

Odcinek 18: Lasciate mi cantare

2008-09-08, 22:33:42

Każdy szanujący się artykuł wprowadzający w świat Emacsa wspomina, że Najlepszy Z Edytorów składa się z solidnych fundamentów, napisanych w języku C i nadbudówki w Lispie. A ponieważ rozwój Emacsa trwa cały czas (nocami i w święta państwowe też) należy przypuszczać, iż dla tych dwóch języków opracowano jakieś specjalne udogodnienia (raczej nie należy sądzić, że kod źródłowy Emacsa będzie powstawał w vi bądź Visual Studio...)

Dla języków C, C++ a także Javy i kilku innych opracowano tryb CC Mode — absolutnego faworyta w swojej klasie.

(więcej w »Odcinek 18: Lasciate mi cantare«)

Odcinek 19: Budujemy nowy dom

2008-09-15, 12:46:18

Narzędzie make jest niepisanym standardem w systemach uniksopodobnych, sporą popularnością cieszy się również w środowisku Windows. Edycję plików Makefile w Emacsie wspomaga makefile-mode, który oferuje szereg wartych wzmianki udogodnień.

Oprócz wsparcia dla Makefile Emacs umożliwia także zbudowanie całego programu i obsługę błędów kompilacji.

(więcej w »Odcinek 19: Budujemy nowy dom«)

Odcinek 20: Już witał się z gąską

2009-02-04, 22:06:20

Edycja zdalnych plików? Można to zrobić dwojako: zalogować się na zdalnej maszynie i uruchomić na niej edytor albo uruchomić swój ulubiony edytor na lokalnej maszynie i w automagiczny sposób wyedytować zdalne pliki.

Pierwsza opcja nie wymaga w zasadzie komentarza poza takim, iż nie jest to specjalnie wygodne (lagi; a i zdalny edytor może nie być tym ulubionym); druga jest — w odniesieniu do Emacsa — znacznie bardziej ciekawsza (zwłaszcza, że większość edytorów w tej konkurencji odpada po prostu w przedbiegach)

(więcej w »Odcinek 20: Już witał się z gąską«)

Odcinek 21: Rozdział cokolwiek TeXniczny

2009-03-04, 22:42:01

Nikogo nie trzeba przekonywać, że TeX i LaTeX nadają się do profesjonalnego składu tekstu jak żaden inny system. Ba, w kręgach akademickich są pewnym standardem; bywa, że wydawnictwa naukowe nie chcą przyjmować publikacji w innym formacie.

Standardowa dystrybucja TeXa dostarcza komplet narzędzi obsługiwanych głównie wsadowo — pozwala to na dowolne przetwarzanie dokumentów, w zależności od potrzeby lub fantazji autora. Nie istnieje żaden oficjalny edytor dedykowany ani środowisko zintegrowane do pisana i przetwarzania dokumentów (La)TeXowych. Ba, żaden z dedykowanych edytorów firm trzecich lub rozwijanych hobbystycznie nie zdobył większej (niż śladowa) popularności.

Dla najpopularniejszych edytorów tekstu napisano już odpowiednie dodatki, które niwelują brak wyspecjalizowanych narzędzi.

Dodatki dla Najlepszego z Edytorów są klasą samą dla siebie. Redagując dokumenty (La)TeXowe w Emacsie łatwo obalić pogląd, iż jest to trudne, pracochłonne, czasochłonne, wymagające specjalistycznej wiedzy (niepotrzebne skreślić)

(więcej w »Odcinek 21: Rozdział cokolwiek TeXniczny«)

Strony: początek koniec następna