Zastanawiam się, jak to jest, że niektóre interaktywne polecenia w emacs stanowią domyślną wartość, a inne nie. Na przykład, gdy jestem w pliku C, a kursor jest ustawiony na printf
, uruchomienie manual-entry
zasugeruje domyślne wyświetlenie strony podręcznika dla printf
. Chciałbym tworzyć własne interaktywne polecenia z wartością domyślną. W jaki sposób? Wygląda na to, że dobry punkt jest dobrym kierunkiem, ale w jaki sposób mogę łączyć rzeczy i interakcje razem?interaktywne polecenia emacs z wartością domyślną
21
A
Odpowiedz
23
Masz już dobre punkty wyjścia do badania własnego rozwiązania.
thing-at-point
jest prawdopodobnie przydatny w tym kontekście. Niedawno otrzymałem answered pytanie, w którym wyjaśniłem, jak rozwiązać ten problem, badając bazę kodu Emacs .
Oto przybliżona funkcja zabawki, którą wymyśliłem.
(defun say-word (word)
(interactive (list
(read-string (format "word (%s): " (thing-at-point 'word))
nil nil (thing-at-point 'word))))
(message "The word is %s" word))
Kluczową rzeczą jest, aby zrozumieć, jak działa formularz interactive
. Przeczytałbym odpowiedni uważnie manual section.
To wydaje się dokładnie to, czego szukałem. Wielkie dzięki! –