Pytania oznaczone «elisp»

na pytania dotyczące Emacsa Lispa jako języka w porównaniu do innych języków, w szczególności w porównaniu do innych dialektów Lisp. To jest, jeśli chodzi o pytania * dotyczące samego języka *. * NIE UŻYWAJ * w przypadku pytań dotyczących * używania * Emacs Lisp. Emacs Lisp jest językiem skryptowym i programistycznym, na którym zbudowany jest edytor Emacs.

41
Jak zapisać makro klawiatury jako funkcję Lisp?

Bardzo często musiałbym wykonać zestaw kroków wymagających wielu naciśnięć klawiszy. W tej samej sesji kroki te można zapisać w makrze klawiatury. Przykładem jest zapisanie często wykonywanej operacji wyszukiwania / zamiany jako makra klawiatury. Ale to makro jest tracone, kiedy wychodzę z...

40
Dlaczego elisp nie ma przestrzeni nazw?

P: Dlaczego elisp nie ma przestrzeni nazw i jak możemy je zdobyć? Elisp nie ma przestrzeni nazw innych niż globalna, co doprowadziło do konwencji kodowania polegającej na prefiksowaniu wszystkich globalnych funkcji, zmiennych i stałych unikalnym prefiksem. Oprócz czynnika irytacji, wydaje mi się...

39
Jak mogę rozpocząć naukę Emacsa Lispa?

Tło: Jestem głównie użytkownikiem vi i przechodzę na Emacsa. Przekroczyłem podstawy i teraz używam go do pisania kodu w C i niektórych Pythonach, planując również konwersję R. Pisałem (Common) LISP przez lata ponad dwie dekady temu, kiedy byłem w szkole, ale teraz poważnie się skończyłem (mogę...

36
Jak zastąpić element listy?

Mam to domyślnie w moim auto-mode-alist: ("\\.js\\'" . javascript-mode) (nawet z emacs -Q). Chciałbym podstawić js2-modeza javascript-mode. Oczywiście, mogę używać assq-delete-all, a następnie add-to-listponownie, ale zastanawiam się, czy nie ma lepszego sposobu. Edycja: wyraźnie nie chcę...

30
Kiedy zacytować wyrażenie lambda?

P: Kiedy, jeśli w ogóle, użyteczne jest precyzyjne zacytowanie a lambda, a kiedy, jeśli w ogóle, nie powinniśmy ostro zacytować a lambda? Ludzie używają lambdas na trzy sposoby: Równina: (lambda (x) x) zacytowany: '(lambda (x) x) ostre cytaty: #'(lambda (x) x) Ten wątek SO omawia trzy typy,...

29
Jak korzystać z nadvice?

Moja konfiguracja jest pełna porad i wciąż słyszę o nowym błyszczącym minimalistycznym nadvice.elpakiecie. Przeszukałem podręczniki i przeczytałem źródło , ale otwarcie przyznaję: wciąż nie mam pojęcia, jak go właściwie używać. Czy ktoś tutaj może wskazać mi przewodnik lub powiedzieć, jak zacząć...

28
exec-path i $ PATH

Widziałem przykłady online, w których ludzie dodają ścieżki do domyślnej ścieżki w Emacsie za pomocą: (add-to-list 'exec-path "/usr/local/bin/") Jestem nowy w Elisp i myślę, że rozumiem, co robi powyższe stwierdzenie, ale mam kilka pytań: W jakiej kolejności Emacs przeszukuje ścieżki...

26
Opcjonalne wartości domyślne parametrów

Emacs Lisp nie ma wsparcia syntaktycznego dla domyślnych parametrów opcjonalnych innych niż zero. Jaki jest zalecany idiom do dostarczania tych parametrów? Aby wyjaśnić moją kwestię, oto jeden nadmiernie wyraźny sposób na zrobienie tego. (defun command (a &optional supplied-b) (let ((b (or...

26
Dlaczego wyrażenia regularne utworzone za pomocą konstruktora wyrażeń regularnych używają składni innej niż interaktywne wyrażenia regularne?

Tak więc, używając konstruktora wyrażeń regularnych (re-builder Mx), znajdowanie linii kończących się na \ wymaga „\\ $”, podczas gdy wyszukiwanie i zamiana na wyrażenie regularne zajmuje tylko „\ $”. Oczekiwałem, że konstruktor wyrażeń regularnych będzie budował wyrażenia bezpośrednio użyteczne,...

25
Czy funkcje mogą uzyskać dostęp do swojej nazwy?

W C znajduje się zmienna magiczna, __func__która przechowuje aktualną nazwę funkcji. W Bash znajduje się tablica FUNCNAMEzawierająca nazwy wszystkich funkcji na stosie wywołującym !!! Czy w Emacs Lisp jest coś podobnego? Lub jakikolwiek prosty sposób, aby funkcja miała dostęp do jej nazwy? Nie...