Lisp: Add "mode", "command" and "parenscript" to Imenu.
parent
98388b0fe7
commit
e838dc80ee
|
@ -3,6 +3,22 @@
|
|||
(require 'init-lispy)
|
||||
(require 'init-rainbow)
|
||||
|
||||
(defun ambrevar/enhance-imenu-lisp (&rest keywords)
|
||||
"Add define-KEYWORD to `lisp-imenu-generic-expression'."
|
||||
(dolist (keyword keywords)
|
||||
(add-to-list
|
||||
'lisp-imenu-generic-expression
|
||||
(list (purecopy (concat (capitalize keyword) "s"))
|
||||
(purecopy (concat "^\\s-*("
|
||||
(eval-when-compile
|
||||
(regexp-opt
|
||||
(list (concat "define-" keyword))
|
||||
t))
|
||||
"\\s-+\\(" lisp-mode-symbol-regexp "\\)"))
|
||||
2))))
|
||||
;; Following defines are common, e.g. in Next.
|
||||
(ambrevar/enhance-imenu-lisp "mode" "command" "parenscript")
|
||||
|
||||
(add-hook 'lisp-mode-hook 'ambrevar/turn-on-prettify-before-save)
|
||||
(add-hook 'lisp-mode-hook 'ambrevar/turn-on-complete-filename)
|
||||
(add-hook 'lisp-mode-hook 'ambrevar/turn-on-tab-width-to-8) ; Because some existing code uses tabs.
|
||||
|
|
Loading…
Reference in New Issue