Thank your for taking up this quick posting. While writing up the attached 'Exemple Complet Minimal', the parsing turned out to work well.
Now only the :help-echo, not being triggered by an abbreviated link, remains still an issue as demonstrated by the ECM below. I shall consider your suggestion. However, I like the application-link feature for its convenience not being forced to duplicate quite some code in the :follow and :store functions. Best, mc
Demonstrate parsing of an abbreviated link:
Define the link
#+begin_src emacs-lisp
(org-link-set-parameters "file+my-lengthy-application-link"
:help-echo "help-echo not showing, if mouse is on abbreviated link!")
#+end_src
#+RESULTS:
Set some abbreviations
#+begin_src emacs-lisp
(setq org-link-abbrev-alist
'(
("_" . "file+my-lengthy-application-link:::%s")
("__" . "file+my-lengthy-application-link:%s")
))
#+end_src
#+RESULTS:
: ((_ . file+my-lengthy-application-link:::%s) (__ . file+my-lengthy-application-link:%s))
* in-buffer links
the plain link: [[file+my-lengthy-application-link:::goto_in_buffer_target]]
=check :help-echo by mouse roll-over=
the abbreviated link: [[_:goto_in_buffer_target]]
* links with a relative path
to ~./someFile.org~
the plain link: [[file+my-lengthy-application-link:./someFile.org::goto_target]]
=check :help-echo by mouse roll-over=
the abbreviated link: [[__:./someFile.org::goto_target]]
* goto_in_buffer_target
a link target
* parse the links in this buffer
#+begin_src emacs-lisp :results verbatim
(org-element-map (org-element-parse-buffer) 'link
(lambda (el)
;; (message "link: %s" (org-element-type el))
(let* ((link (org-element-context el))
(path (org-link-unescape (org-element-property :path link)))
(option (org-element-property :search-option link)))
(message "path: %s \noption: %s \n\n" path option)
)))
#+end_src
#+RESULTS:
#+begin_example
("path:
option: goto_in_buffer_target
" "path:
option: goto_in_buffer_target
" "path: ./someFile.org
option: goto_target
" "path: ./someFile.org
option: goto_target
")
#+end_example
* goto_target another link target
On 2016-08-21 Sun 09:32, Nicolas Goaziou wrote: > Hello, > > mc <[email protected]> writes: > >> As we talk about link abbreviations, another issue might add some useful >> information: >> >> links of link-type "file" (e.g. "file+new-link"), if follow via an >> abbreviation, is not parsed correctly: > > I suggest to avoid using so called "application" links, i.e., > type+application syntax as it may be ditched at some point. You can > define a new link type instead, e.g., "newlink" or "applink". > > In any case, could you provide an ECM? > > Thank you. > > Regards, -- Fetch my gnupg key: gpg --keyserver pgp.mit.edu --recv-keys 7E3CA33F
smime.p7s
Description: S/MIME cryptographic signature
