ol-man.el: Enable completion
* lisp/ol-man.el (org-man-complete): New function implementing completion for man pages using `Man-completion-table'. Set this function as the `:complete' property of "man" links. Ihor Radchenko. Re: Completion of links to man pages. Sat, 09 Dec 2023 11:32:39 +0000. <https://list.orgmode.org/877clnsjag.fsf@localhost>
This commit is contained in:
parent
d6c392b020
commit
7c9a5216bb
|
@ -729,6 +729,12 @@ respected.
|
||||||
Images dropped also respect the value of ~org-yank-image-save-method~
|
Images dropped also respect the value of ~org-yank-image-save-method~
|
||||||
when ~org-yank-dnd-method~ is =attach=.
|
when ~org-yank-dnd-method~ is =attach=.
|
||||||
|
|
||||||
|
*** Add completion for links to man pages
|
||||||
|
|
||||||
|
Completion is enabled for links to man pages added using ~org-insert-link~:
|
||||||
|
=C-c C-l man RET emacscl TAB= to get =emacsclient=. Of course, the ~ol-man~
|
||||||
|
library should be loaded first.
|
||||||
|
|
||||||
** New functions and changes in function arguments
|
** New functions and changes in function arguments
|
||||||
*** ~org-fold-hide-drawer-all~ is now interactive
|
*** ~org-fold-hide-drawer-all~ is now interactive
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,7 @@
|
||||||
(require 'ol)
|
(require 'ol)
|
||||||
|
|
||||||
(org-link-set-parameters "man"
|
(org-link-set-parameters "man"
|
||||||
|
:complete #'org-man-complete
|
||||||
:follow #'org-man-open
|
:follow #'org-man-open
|
||||||
:export #'org-man-export
|
:export #'org-man-export
|
||||||
:store #'org-man-store-link)
|
:store #'org-man-store-link)
|
||||||
|
@ -99,6 +100,17 @@ BACKEND is the current export backend."
|
||||||
((eq backend 'md) (format "[%s](%s)" desc path))
|
((eq backend 'md) (format "[%s](%s)" desc path))
|
||||||
(t path))))
|
(t path))))
|
||||||
|
|
||||||
|
(defun org-man-complete (&optional _arg)
|
||||||
|
"Complete man pages for `org-insert-link'."
|
||||||
|
(require 'man)
|
||||||
|
(concat
|
||||||
|
"man:"
|
||||||
|
(let ((completion-ignore-case t) ; See `man' comments.
|
||||||
|
(Man-completion-cache)) ; See `man' implementation.
|
||||||
|
(completing-read
|
||||||
|
"Manual entry: "
|
||||||
|
'Man-completion-table))))
|
||||||
|
|
||||||
(provide 'ol-man)
|
(provide 'ol-man)
|
||||||
|
|
||||||
;;; ol-man.el ends here
|
;;; ol-man.el ends here
|
||||||
|
|
Loading…
Reference in New Issue