Jak uzyskać pełną listę nieinteraktywnych funkcji, których mogę używać w Emacs Lisp?Jak uzyskać listę nieinteraktywnych funkcji Empsa?
Te interaktywne są dość łatwe do znalezienia w systemie pomocy, ale chcę uzyskać pełną listę wszystkich innych funkcji, których mogę użyć. Na przykład: concat
, car
, cdr
itd. (Najlepiej z dokumentacją).
Dzięki
Ed
EDIT: Odpowiedź dzięki Jouni. I bawił się jego odpowiedź nieco i dostał go do sortowania wyników (z wykorzystaniem wyników swojego kodu, aby pomóc mi znaleźć właściwą funkcję sortowania!)
(flet ((first-line (text)
(if text
(substring text 0 (string-match "\n" text))
"")))
(let ((funclist (list)))
(mapatoms
(lambda (x)
(and (fboundp x) ; does x name a function?
(not (commandp (symbol-function x))) ; is it non-interactive?
(subrp (symbol-function x)) ; is it built-in?
(add-to-list 'funclist
(concat (symbol-name x) " - " (first-line (documentation x))
"\n")))))
(dolist (item (sort funclist 'string<))
(insert item))))
Dzięki za pytanie i odpowiedź. Bardzo przydatne przy nauce seplingu emacs. – aartist