Как я получаю список шепелявости Emacs неинтерактивные функции?

Если вы хотите, чтобы выполнялся новый код C ++, его сначала нужно скомпилировать. Я не думаю, что вы можете избежать этого. Однако вы можете попытаться сократить время, необходимое для компиляции, с помощью различных методов, таких как использование средств защиты заголовков и выборочный подход к заголовкам.

13
задан Singletoned 4 March 2009 в 09:31
поделиться

6 ответов

Вот основная идея - см. руководство Lisp Emacs для любых неясных понятий.

(flet ((first-line (text)
         (if text
             (substring text 0 (string-match "\n" text))
           "")))
  (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?
          (insert (symbol-name x) " - " (first-line (documentation x)) "\n")))))
15
ответ дан 1 December 2019 в 22:40
поделиться

Вы могли проверить содержание obarray, хотя это содержит все символы, а не "все функции".

С другой стороны, следующее может добиться цели (вытянет в частях пакета совместимости CL):

(уменьшите (лямбда (до сих пор затем) (если (fboundp затем) (подставляет затем до сих пор) до сих пор)), obarray: ноль начального значения)
1
ответ дан 1 December 2019 в 22:40
поделиться

Вы могли сделать хуже, чем взгляд на веб-сайт

0
ответ дан 1 December 2019 в 22:40
поделиться

Попробуйте кстати команда с пустым входом.

0
ответ дан 1 December 2019 в 22:40
поделиться

Nevermind. Оказывается, что C-h f (описывают функцию) действительно включает неинтерактивные функции, хотя я все еще интересовался бы нахождением способа просматривать/искать только неинтерактивные (особенно только созданный в).

0
ответ дан 1 December 2019 в 22:40
поделиться

Попробуйте apropos вместо apropos-command . Это даст вам все функции, а не только интерактивные. Ch a по умолчанию привязан ко второму, но если вы много занимаетесь взломом elisp, я рекомендую привязать его к первому.

5
ответ дан 1 December 2019 в 22:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: