In that case: #+BEGIN_SRC emacs-lisp (defun file-description (start end path bracketp) (put-text-property start end 'display (shell-command-to-string (format "file %s" path)))) (org-link-set-parameters "file" :activate-func 'file-description) #+END_SRC With this, you have to have a way to insert links that isn't typing them in by hand; as soon as emacs recognizes the link, it changes the display which makes it hard to type. The shell command puts a long string, so you might replace that with something that has the output you wanted above. John ----------------------------------- Professor John Kitchin Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 @johnkitchin http://kitchingroup.cheme.cmu.edu On Sat, Feb 22, 2020 at 11:55 PM stardiviner wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA256 > > > John Kitchin writes: > > > I think you are looking for the :activate-func property of a link. What > > you want is somewhat tricky though, how would you edit the link? > > > > There is an example at > > > https://kitchingroup.cheme.cmu.edu/blog/2016/11/04/New-link-features-in-org-9/#org069cbfa > > Thanks for your tips. Helpful!! > > > > > that might give you some ideas. You can use a 'display text property to > > change the appearance, but you need some way to remove this if you want > > to edit or see the original version. > > I usually edit link with =[C-c C-l]= to edit link URL and description, not > literally. > > > > > stardiviner writes: > > > >> -----BEGIN PGP SIGNED MESSAGE----- > >> Hash: SHA256 > >> > >> > >> I have a requirement, I want to display file: link's file type info on > the link. > >> > >> For example, an Org file: link > >> > >> #+begin_src org > >> [[file:~/Org/logo.png][logo]] > >> [[file:~/Org/document.pdf][document]] > >> [[file:~/Org/book.epub][book]] > >> #+end_src > >> > >> I want to display link as: > >> > >> #+begin_src org > >> logo (image: png) > >> document (document: pdf) > >> book (ebook: epub) > >> #+end_src > >> > >> I'm inspired by this code snippet: > >> > >> #+begin_src emacs-lisp > >> (org-link-set-parameters > >> "file+sys" > >> :complete 'org-file-complete-link > >> :face (lambda (path) (if (file-exists-p path) 'org-link 'org-warning))) > >> #+end_src > >> > >> Is it possible to display those info between parentheses with an > overlay or > >> propertied text? > >> > >> If someone have any idea or how to implement this, please help me. > Thanks in advanced. > >> > >> - -- > >> [ stardiviner ] > >> I try to make every word tell the meaning what I want to express. > >> > >> Blog: https://stardiviner.github.io/ > >> IRC(freenode): stardiviner, Matrix: stardiviner > >> GPG: F09F650D7D674819892591401B5DF1C95AE89AC3 > >> > >> -----BEGIN PGP SIGNATURE----- > >> > >> iQFIBAEBCAAyFiEE8J9lDX1nSBmJJZFAG13xyVromsMFAl5OrLYUHG51bWJjaGls > >> ZEBnbWFpbC5jb20ACgkQG13xyVromsPElQf/W71U1JQ9ZeFjCWCxICs0q87016Iq > >> 8FQ5Fr3lSmRb6NRLqzqAAbY6b14roxtixxmllvArJgd7bz280xTZs3NGgYMm/HMf > >> sZ+vtkpiHgJk31KXxAk/LT1OcgzYOrSv7g6c8Y3Gg8G5eSDmKGu+tMwqFzYtVmk2 > >> 6G0/wz9ezsdYAFLlNrX/FhcVaxCUSSdG08z0Ip/Op1I4iqh3Y86N7LalPVZWNa9H > >> eZSFsf3Z8NqfVnCmTvmyJon4x1SGvJ8Iaf4QUiE7huNeizJK2+CSIhjSu8yDBGr4 > >> 2oMPrkAm1XkJDLMQh0FLjIrIJUoTLzLonEYtlmg3thvFEMqFuF8ziYaGdw== > >> =sZhk > >> -----END PGP SIGNATURE----- > > > - -- > [ stardiviner ] > I try to make every word tell the meaning what I want to express. > > Blog: https://stardiviner.github.io/ > IRC(freenode): stardiviner, Matrix: stardiviner > GPG: F09F650D7D674819892591401B5DF1C95AE89AC3 > > -----BEGIN PGP SIGNATURE----- > > iQFIBAEBCAAyFiEE8J9lDX1nSBmJJZFAG13xyVromsMFAl5SBYsUHG51bWJjaGls > ZEBnbWFpbC5jb20ACgkQG13xyVromsOSOAgAmtN0JBgMB//D8EC7tQhrSwVX7spb > NLH2EQbdDmzOyf2y+gwrvzGBojQ7TBLmM/dzm+IfPNsbyY4IMlLBvyrJST7D0uDC > SXA8Ugi88qKkyS5H+Hw5jSNcOaPxwXLq5kxu3BXmtBpdNiIShL0qnTD4itNRHpG8 > v0NWFQwTcMI15OcsTKoGSG9PNw7qeJEt5vpYLL/oljAxMW0VsCnS061XjWda8w5u > U2KWYLCeVAh3kXtas5pywar50F+ELAoutpr3USqJDtFPtRkyVYAmEKBHknFJ2R4u > 8nTIchXoctS5JpINhwq4wfdmSRSjjcz1DYb9Y9LSMFjDbvzAKqcSk6eX4g== > =xhBz > -----END PGP SIGNATURE----- > >