branch: externals/idlwave commit 7d07b1947c491b5c3813dbdc9a4229fc9c7f06f3 Author: JD Smith <jdtsm...@gmail.com> Commit: JD Smith <jdtsm...@gmail.com>
Implement new "idl.htm#path/to/file" method of linking --- idlw-help.el | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/idlw-help.el b/idlw-help.el index 29b1ab6cdb..061767b11f 100644 --- a/idlw-help.el +++ b/idlw-help.el @@ -568,19 +568,23 @@ see if a link is set for it. Try extra help functions if necessary." (defun idlwave-help-html-link (link) "Get html help on a given LINK." - (let ((browse-url-browser-function idlwave-help-browser-function) - (browse-url-generic-program idlwave-help-browser-generic-program) - ;(browse-url-generic-args idlwave-help-browser-generic-args) - (help-loc (idlwave-html-help-location)) - full-link) - + (let* ((browse-url-browser-function idlwave-help-browser-function) + (browse-url-generic-program idlwave-help-browser-generic-program) + (help-loc (idlwave-html-help-location)) + (alternate (expand-file-name "idl.htm" (file-name-directory help-loc))) + full-link) + ;; Just a regular file name (+ anchor name) (unless (or idlwave-help-use-eclipse-help (and (stringp help-loc) (file-directory-p help-loc))) (error "Invalid help request")) - (setq full-link (browse-url-file-url (expand-file-name link help-loc))) + ;; If possible, subsume as anchor under idl.htm + (if (file-exists-p alternate) + (setq help-loc (concat alternate "#"))) + + (setq full-link (browse-url-file-url (concat help-loc link))) ;; Select the browser (cond