From f62fe2ebde840da0bcef4899840c594b7b7d9169 Mon Sep 17 00:00:00 2001 From: Philip Kaludercic Date: Fri, 31 Dec 2021 12:45:52 +0100 Subject: Implement context-menu-mode support for hi-lock * hi-lock.el (hi-lock-symbol-at-mouse): Add new command (hi-lock-context-menu): Add new function --- lisp/hi-lock.el | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'lisp/hi-lock.el') diff --git a/lisp/hi-lock.el b/lisp/hi-lock.el index fbd698e234a..d7d98c78f86 100644 --- a/lisp/hi-lock.el +++ b/lisp/hi-lock.el @@ -854,6 +854,25 @@ SPACES-REGEXP is a regexp to substitute spaces in font-lock search." ;; continue standard unloading nil) +;;; Mouse support +(defun hi-lock-symbol-at-mouse (event) + "Highlight symbol at mouse click EVENT." + (interactive "e") + (save-excursion + (mouse-set-point event) + (highlight-symbol-at-point))) + +(defun hi-lock-context-menu (menu click) + "Populate MENU with a menu item to highlight symbol at CLICK." + (save-excursion + (mouse-set-point click) + (when (symbol-at-point) + (define-key-after menu [highlight-search-separator] menu-bar-separator) + (define-key-after menu [highlight-search-mouse] + '(menu-item "Highlight Symbol" highlight-symbol-at-mouse + :help "Highlight symbol at point")))) + menu) + (provide 'hi-lock) ;;; hi-lock.el ends here -- cgit v1.2.1