Emacs

Używanie Lisp w Emacsie

Używanie Lisp w Emacsie
Szybki rozwój technologii sprawił, że różne narzędzia programistyczne stały się widoczne i znalazły się w centrum uwagi. Edytory tekstu są zawarte w takich narzędziach ze względu na ogromny rozwój zachodzący w branży technologicznej. Ich lekka natura, wraz z ich elastycznością w edycji i kompilacji plików oraz silną, niestandardową wydajnością, sprawiły, że edytory tekstu są dość lubiane przez społeczność. Zalety oferowane przez edytory tekstu często sprawiają, że programiści preferują te narzędzia w stosunku do innych podobnych narzędzi, takich jak IDE. Edytory tekstu stoją na czele pracy wykonywanej przez programistów, dlatego ważne jest, aby używać edytora, który zapewnia różnorodne funkcje zgodnie z Twoimi potrzebami.

Emacs jest jednym z takich przykładów edytora tekstu, który ze względu na swoją wszechstronność i konfigurowalny charakter zyskał sobie sławę wśród społeczności programistów. Jako jeden z najstarszych edytorów tekstu, Emacs jest znany ze swojej stabilności i spójności.

To, co sprawia, że ​​Emacs jest wyjątkowy, to nie tylko edytor tekstu, ale raczej pełnoprawna maszyna. Emacs można skonfigurować jako powłokę, klienta poczty e-mail, organizer i wiele więcej. Złożoność Emacsa wynika z samego rdzenia interpretera Lisp, który z kolei pozwala użytkownikom dostosować go za pomocą jeszcze większej liczby funkcji za pomocą języka Lisp.

Ten artykuł opisuje, jak używać Lispa za pomocą różnych metod konfiguracji i dostosowywania Emacsa.

Podstawy Lispu

Zanim zobaczymy, jak Lisp może być użyty do konfiguracji Emacsa, najpierw należy przyjrzeć się podstawom języka Lisp, aby lepiej zrozumieć tę funkcję.

W Lispie programy składają się z wyrażeń symbolicznych, skróconych do s-exps. Wyrażenia te mogą składać się tylko ze zmiennych lub zawierać również inne funkcje.

Funkcja jest zapisywana przez owinięcie tekstu w nawias. Na przykład do wywołania funkcji dodawania używana jest następująca składnia:

(+ 2 2)

Powyższe stwierdzenie mówi „dodaj 2 do 2.Zagnieżdżone s-expy będą wyglądać mniej więcej tak:

(+ 2 (+1 1))

Możesz także przechowywać wartości wewnątrz zmiennej za pomocą polecenia setq:

(setq moje-imię "Jan")

Funkcje można zdefiniować za pomocą definitywny słowo kluczowe. Na przykład funkcja obliczająca kwadrat liczby jest zapisana w następujący sposób:

(beznadziejny kwadrat (x)
(* x x))
(kwadrat 2)

Możesz oceniać funkcje zdefiniowane za pomocą klawiszy Ctrl + X śledzony przez Ctrl + E. Spowoduje to powstanie danych wyjściowych w minibuforze. Na przykład funkcja square będzie miała następujący wynik:

Uwaga: musisz ocenić zarówno segment defun, jak i segment kwadratowy.

To obejmuje podstawy. Poniższe sekcje pokażą, jak skonfigurować Emacsa za pomocą Lisp.

Plik inicjujący

Po uruchomieniu Emacsa pierwszym przetworzonym plikiem jest plik inicjujący lub plik init, który zawiera polecenia napisane w Lisp, które pozwalają użytkownikom skonfigurować Emacsa. Aby otworzyć plik inicjujący, naciśnij Ctrl + X, śledzony przez Ctrl + F, a następnie wejdź ~/.emacs. Wewnątrz tego wyrażenia możesz wstawić dodatkowy kod, aby dostosować Emacs.

1) Dodanie wsparcia dla pakietów

Lisp może być użyty do dodania wsparcia w Emacsie dla pakietów z różnych źródeł. Melpa jest jednym ze źródeł, z których użytkownicy mogą instalować te rozszerzenia. Aby dodać Melpę do Emacsa, dodaj następujące wiersze do pliku init:

(wymagaj 'pakietu)
(dodaj-do-listy 'archiwa-pakietów
'("melpa" . „http://melpa.org/pakiety/") t)
(zainicjuj pakiet)
(pakiet-odświeżanie-zawartość)

Ten kod dodaje archiwum Melpa do listy repozytoriów pakietów, daje uprawnienia Emacsowi do korzystania z tych pakietów, inicjalizuje te pakiety i odświeża zawartość, aby nastąpiły zmiany. Jeśli otworzysz listę pakietów, naciskając Alt + X i wejdź lista-pakietów-pakietów, możesz zobaczyć zainstalowane pakiety w archiwum Melpy.


-

2) Zmiana motywu Emacsa

Początkowo po załadowaniu Emacsa pojawi się ekran powitalny z Emacsem i oferujący różne opcje, takie jak samouczek Emacsa.

Jednak ta strona nie wygląda tak wspaniale. Lisp umożliwia zmianę motywu Emacsa i strony startowej zgodnie z własnymi preferencjami. Użytkownicy mogą ładować różne rodzaje motywów, zmieniać rozmiary czcionek, a nawet dodawać punktory liniowe.

Załóżmy na przykład, że chcesz zastąpić stronę startową buforem zarysowania, załadować motyw Materiał i dodać punktory liniowe. Można to zrobić, dodając następujące wiersze do pliku init:

(setq komunikat o wstrzymaniu uruchomienia t)
(załaduj temat 'materiał t)
(globalny-linum-tryb t)

Jak zdefiniowano powyżej, składnia setq sprawia, że ​​komunikat o zakazie uruchamiania jest prawdziwy, co usuwa początkową stronę początkową. Motyw ładowania ładuje motyw materiału. Składnia global-linum-mode jest po prostu funkcją, która jest ustawiona jako prawdziwa i jest wykonywana w celu uzyskania numerów linii. Tak powinien wyglądać Emacs po wprowadzeniu powyższych poleceń:

3) Powiąż skróty z powiązaniami klawiszy

Lisp może być również używany do wiązania poleceń lub skrótów z klawiszami. Dzięki temu użytkownicy mogą dostosowywać Emacsa zgodnie z ich preferencjami, a także uruchamiać niestandardowe funkcje utworzone przez użytkownika za pomocą jednego kliknięcia.

Załóżmy, że zdefiniowałeś funkcję, która po prostu tworzy znak odwrotnego ukośnika i chcesz przypisać go do klawiszy Ctrl + X śledzony przez Ctrl +. Można to zrobić, dodając następujące wiersze do pliku inicjującego:

(zdefiniuj insert_backslash ()
(interaktywny)
(wstaw "\"))
(global-set-key (kbd ""C-x C-o"")
'wstaw_odwrotny ukośnik)

Tutaj funkcja insert_backslash jest zdefiniowana, uczyniona interaktywną (pozwala to na wywołanie funkcji interaktywnie w znaczeniu z powiązaniem klawisza), a wyjściem jest odwrotny ukośnik. Następnie możesz powiązać funkcję z klawiszami podanymi powyżej, używając słowa kluczowego global-set-key.

Dlaczego warto używać Lisp?

Lisp jest integralną częścią Emacsa, ponieważ pozwala Emacsowi mieć większą moc i funkcjonalność. Lisp daje użytkownikom możliwość dostosowania Emacsa i przekształcenia go w coś, co odpowiada ich zainteresowaniom i potrzebom. Lisp sprawia, że ​​Emacs jest naprawdę potężny i wyjątkowy w porównaniu z innymi edytorami tekstu.

"
How to reverse Mouse and Touchpads scrolling direction in Windows 10
Mouse and Touchpads not only make computing easy but more efficient and less time-consuming. We cannot imagine a life without these devices, but still...
How to change Mouse pointer and cursor size, color & scheme on Windows 10
The mouse pointer and cursor in Windows 10 are very important aspects of the operating system. This can be said for other operating systems as well, s...
Gry Darmowe i otwarte silniki gier do tworzenia gier na Linuksa
Darmowe i otwarte silniki gier do tworzenia gier na Linuksa
Ten artykuł zawiera listę darmowych i otwartych silników gier, których można używać do tworzenia gier 2D i 3D w systemie Linux. Istnieje wiele takich ...