From d6643fcd618f4aad0c837fa8de4de16c2bff45df Mon Sep 17 00:00:00 2001 From: Thierry Volpiatto Date: Sun, 20 Apr 2014 08:24:54 +0200 Subject: Add keymap and help to imenu and semantic. * helm-config.el: * helm-help.el: * helm-imenu.el: * helm-semantic.el: --- helm-semantic.el | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'helm-semantic.el') diff --git a/helm-semantic.el b/helm-semantic.el index 5a51695a..9eeae673 100644 --- a/helm-semantic.el +++ b/helm-semantic.el @@ -28,6 +28,21 @@ (declare-function pulse-momentary-highlight-one-line "pulse.el" (point &optional face)) +(defcustom helm-semantic-lynx-style-map t + "Use Arrow keys to jump to occurences." + :group 'helm-imenu + :type 'boolean) + +;;; keymap +(defvar helm-semantic-map + (let ((map (make-sparse-keymap))) + (set-keymap-parent map helm-map) + (define-key map (kbd "C-c ?") 'helm-semantic-help) + (when helm-imenu-lynx-style-map + (define-key map (kbd "") 'helm-exit-minibuffer) + (define-key map (kbd "") 'helm-execute-persistent-action)) + (delq nil map))) + (defun helm-semantic-init-candidates (tags depth &optional class) "Write the contents of TAGS to the current buffer." (let ((class class) cur-type) @@ -79,7 +94,7 @@ (semantic-parse-tree-set-needs-update))))) (defvar helm-source-semantic - '((name . "Semantic Tags") + `((name . "Semantic Tags") (init . (lambda () (helm-semantic--maybe-set-needs-update) (let ((tags (semantic-fetch-tags))) @@ -92,6 +107,8 @@ (helm-semantic-default-action elm t) (helm-highlight-current-line))) (persistent-help . "Show this entry") + (keymap . ,helm-semantic-map) + (mode-line . helm-semantic-mode-line) (action . helm-semantic-default-action) "Source to search tags using Semantic from CEDET.")) -- cgit v1.2.3