From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takaaki Ishikawa Subject: [PATCH] Add a custom list in org-mac-link.el Date: Sun, 11 Jun 2017 17:25:36 +0900 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="001a114d9d6a7561ed0551aaf22e" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:55940) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dJyBq-0006p2-3l for emacs-orgmode@gnu.org; Sun, 11 Jun 2017 04:25:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dJyBn-000325-RO for emacs-orgmode@gnu.org; Sun, 11 Jun 2017 04:25:42 -0400 Received: from mail-vk0-x22d.google.com ([2607:f8b0:400c:c05::22d]:33544) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dJyBn-00031X-IR for emacs-orgmode@gnu.org; Sun, 11 Jun 2017 04:25:39 -0400 Received: by mail-vk0-x22d.google.com with SMTP id p62so39712312vkp.0 for ; Sun, 11 Jun 2017 01:25:38 -0700 (PDT) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: "Emacs-orgmode" To: orgmode list --001a114d9d6a7561ed0551aaf22e Content-Type: multipart/alternative; boundary="001a114d9d6a7561e80551aaf22c" --001a114d9d6a7561e80551aaf22c Content-Type: text/plain; charset="UTF-8" Dear folks, The attached patch includes a change for adding a custom variable to easily extend link grabbing capabilities for masOS user. When someone wants to add an additional menu to call an external application, it will be possible by adding a setting to the proposed variable as follows: #+BEGIN_SRC emacs-lisp (add-to-list 'org-mac-link-descriptors `("P" "apers" org-mac-papers-insert-frontmost-paper-link ,org-mac-grab-Papers-app-p) t) #+END_SRC This example intends to handle Papers.app, not freeware[*1], in macOS. If `org-mac-papers-insert-frontmost-paper-link' and `mac-grab-Papers-app-p' are implemented by user correctly, an appropriate link will be inserted into an org buffer. I don't want put such codes to `org-mac-link.el' directly to avoid unnecessary increase of file size. This scenario can be applied to other applications. The inserted link can be opened by `C-c C-o' if the corresponding link type is configured by `org-link-set-parameters' like the following. #+BEGIN_SRC emacs-lisp (org-link-set-parameters "papers3" :follow (lambda (path) (let ((cmd (concat "open papers3:" path))) (shell-command-to-string cmd) (message "%s" cmd)))) #+END_SRC =================================================== * contrib/lisp/org-mac-link.el: Add a custom list for link descriptors `org-mac-link-descriptors' is added to extend link grabbing capabilities. Modified from a patch proposal by Takaaki Ishikawa. =================================================== Kind regards, Takaaki [*1] http://papersapp.com/mac/ -- Takaaki ISHIKAWA --001a114d9d6a7561e80551aaf22c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Dear folks,

The attached pat= ch includes a change for adding a custom variable to easily extend link gra= bbing capabilities for masOS user. When someone wants to add an additional = menu to call an external application, it will be possible by adding a setti= ng to the proposed variable as follows:

#+BEG= IN_SRC emacs-lisp
(add-to-list 'org-mac-link-descriptors
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0`("P"= ; "apers" org-mac-papers-insert-frontmost-paper-link ,org-mac-gra= b-Papers-app-p) t)
#+END_SRC

This = example intends to handle Papers.app, not freeware[*1], in macOS. If `org-m= ac-papers-insert-frontmost-paper-link' and `mac-grab-Papers-app-p' = are implemented by user correctly, an appropriate link will be inserted int= o an org buffer. I don't want put such codes to `org-mac-link.el' d= irectly to avoid unnecessary increase of file size. This scenario can be ap= plied to other applications.

The inserted link can= be opened by `C-c C-o' if the corresponding link type is configured by= `org-link-set-parameters' like the following.=C2=A0

#+BEGIN_SRC emacs-lisp
(org-link-set-parameters
=C2=A0 =C2=A0 =C2=A0 =C2=A0"papers3"
=C2=A0 = =C2=A0 =C2=A0 =C2=A0:follow (lambda (path)
=C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(let ((cmd (concat "open pape= rs3:" path)))
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0(shell-command-to-string cmd)
=C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(message "%= s" cmd))))
#+END_SRC

=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
* contrib/lisp/org-mac-link.el: Add a custom list for link = descriptors

`org-mac-link-descriptors' is adde= d to extend link grabbing capabilities.

Modified f= rom a patch proposal by Takaaki Ishikawa.
=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
<= br>
Kind regards,
Takaaki


--001a114d9d6a7561e80551aaf22c-- --001a114d9d6a7561ed0551aaf22e Content-Type: text/plain; charset="US-ASCII"; name="org-mac-link.diff" Content-Disposition: attachment; filename="org-mac-link.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_j3sejnwh0 ZGlmZiAtLWdpdCBhL2NvbnRyaWIvbGlzcC9vcmctbWFjLWxpbmsuZWwgYi9jb250cmliL2xpc3Av b3JnLW1hYy1saW5rLmVsCmluZGV4IDhiYTQ4NWQuLmZhNDI0ZTAgMTAwNjQ0Ci0tLSBhL2NvbnRy aWIvbGlzcC9vcmctbWFjLWxpbmsuZWwKKysrIGIvY29udHJpYi9saXNwL29yZy1tYWMtbGluay5l bApAQCAtMjE3LDYgKzIxNywyNiBAQAogICA6Z3JvdXAgJ29yZy1tYWMtbGluawogICA6dHlwZSAn c3RyaW5nKQogCisoZGVmY3VzdG9tIG9yZy1tYWMtbGluay1kZXNjcmlwdG9ycworICBgKCgiRiIg ImluZGVyIiBvcmctbWFjLWZpbmRlci1pbnNlcnQtc2VsZWN0ZWQgLG9yZy1tYWMtZ3JhYi1GaW5k ZXItYXBwLXApCisgICAgKCJtIiAiYWlsIiBvcmctbWFjLW1lc3NhZ2UtaW5zZXJ0LXNlbGVjdGVk ICxvcmctbWFjLWdyYWItTWFpbC1hcHAtcCkKKyAgICAoImQiICJFVk9OdGhpbmsgUHJvIE9mZmlj ZSIgb3JnLW1hYy1kZXZvbnRoaW5rLWl0ZW0taW5zZXJ0LXNlbGVjdGVkCisgICAgICxvcmctbWFj LWdyYWItZGV2b250aGluay1hcHAtcCkKKyAgICAoIm8iICJ1dGxvb2siIG9yZy1tYWMtb3V0bG9v ay1tZXNzYWdlLWluc2VydC1zZWxlY3RlZCAsb3JnLW1hYy1ncmFiLU91dGxvb2stYXBwLXApCisg ICAgKCJhIiAiZGRyZXNzYm9vayIgb3JnLW1hYy1hZGRyZXNzYm9vay1pbnNlcnQtc2VsZWN0ZWQg LG9yZy1tYWMtZ3JhYi1BZGRyZXNzYm9vay1hcHAtcCkKKyAgICAoInMiICJhZmFyaSIgb3JnLW1h Yy1zYWZhcmktaW5zZXJ0LWZyb250bW9zdC11cmwgLG9yZy1tYWMtZ3JhYi1TYWZhcmktYXBwLXAp CisgICAgKCJmIiAiaXJlZm94IiBvcmctbWFjLWZpcmVmb3gtaW5zZXJ0LWZyb250bW9zdC11cmwg LG9yZy1tYWMtZ3JhYi1GaXJlZm94LWFwcC1wKQorICAgICgidiIgImltcGVyYXRvciIgb3JnLW1h Yy12aW1wZXJhdG9yLWluc2VydC1mcm9udG1vc3QtdXJsICxvcmctbWFjLWdyYWItRmlyZWZveCtW aW1wZXJhdG9yLXApCisgICAgKCJjIiAiaHJvbWUiIG9yZy1tYWMtY2hyb21lLWluc2VydC1mcm9u dG1vc3QtdXJsICxvcmctbWFjLWdyYWItQ2hyb21lLWFwcC1wKQorICAgICgiZSIgImV2ZXJub3Rl IiBvcmctbWFjLWV2ZXJub3RlLW5vdGUtaW5zZXJ0LXNlbGVjdGVkICxvcmctbWFjLWdyYWItRXZl cm5vdGUtYXBwLXApCisgICAgKCJ0IiAib2dldGhlciIgb3JnLW1hYy10b2dldGhlci1pbnNlcnQt c2VsZWN0ZWQgLG9yZy1tYWMtZ3JhYi1Ub2dldGhlci1hcHAtcCkKKyAgICAoIlMiICJraW0iIG9y Zy1tYWMtc2tpbS1pbnNlcnQtcGFnZSAsb3JnLW1hYy1ncmFiLVNraW0tYXBwLXApCisgICAgKCJB IiAiY3JvYmF0IiBvcmctbWFjLWFjcm9iYXQtaW5zZXJ0LXBhZ2UgLG9yZy1tYWMtZ3JhYi1BY3Jv YmF0LWFwcC1wKSkKKyAgIkRlc2NyaXB0b3JzIHRvIHNlbGVjdCBhbiBhcHBsaWNhdGlvbi4iCisg IDp0YWcgIkEgbGlzdCBvZiBkZXNjcmlwdG9ycyIKKyAgOmdyb3VwICdvcmctbWFjLWxpbmsnCisg IDp0eXBlICdzeW1ib2wpCisKIAwKIDs7IEluIG1hYy5jLCByZW1vdmVkIGluIEVtYWNzIDIzLgog KGRlY2xhcmUtZnVuY3Rpb24gZG8tYXBwbGVzY3JpcHQgIm9yZy1tYWMtbWVzc2FnZSIgKHNjcmlw dCkpCkBAIC0yMzgsMjEgKzI1OCw3IEBACiAgICJQcm9tcHQgZm9yIGFuIGFwcGxpY2F0aW9uIHRv IGdyYWIgYSBsaW5rIGZyb20uCiBXaGVuIGRvbmUsIGdvIGdyYWIgdGhlIGxpbmssIGFuZCBpbnNl cnQgaXQgYXQgcG9pbnQuIgogICAoaW50ZXJhY3RpdmUpCi0gIChsZXQqICgoZGVzY3JpcHRvcnMK LQkgIGAoKCJGIiAiaW5kZXIiIG9yZy1tYWMtZmluZGVyLWluc2VydC1zZWxlY3RlZCAsb3JnLW1h Yy1ncmFiLUZpbmRlci1hcHAtcCkKLQkgICAgKCJtIiAiYWlsIiBvcmctbWFjLW1lc3NhZ2UtaW5z ZXJ0LXNlbGVjdGVkICxvcmctbWFjLWdyYWItTWFpbC1hcHAtcCkKLQkgICAgKCJkIiAiRVZPTnRo aW5rIFBybyBPZmZpY2UiIG9yZy1tYWMtZGV2b250aGluay1pdGVtLWluc2VydC1zZWxlY3RlZAot CSAgICAgLG9yZy1tYWMtZ3JhYi1kZXZvbnRoaW5rLWFwcC1wKQotCSAgICAoIm8iICJ1dGxvb2si IG9yZy1tYWMtb3V0bG9vay1tZXNzYWdlLWluc2VydC1zZWxlY3RlZCAsb3JnLW1hYy1ncmFiLU91 dGxvb2stYXBwLXApCi0JICAgICgiYSIgImRkcmVzc2Jvb2siIG9yZy1tYWMtYWRkcmVzc2Jvb2st aW5zZXJ0LXNlbGVjdGVkICxvcmctbWFjLWdyYWItQWRkcmVzc2Jvb2stYXBwLXApCi0JICAgICgi cyIgImFmYXJpIiBvcmctbWFjLXNhZmFyaS1pbnNlcnQtZnJvbnRtb3N0LXVybCAsb3JnLW1hYy1n cmFiLVNhZmFyaS1hcHAtcCkKLQkgICAgKCJmIiAiaXJlZm94IiBvcmctbWFjLWZpcmVmb3gtaW5z ZXJ0LWZyb250bW9zdC11cmwgLG9yZy1tYWMtZ3JhYi1GaXJlZm94LWFwcC1wKQotCSAgICAoInYi ICJpbXBlcmF0b3IiIG9yZy1tYWMtdmltcGVyYXRvci1pbnNlcnQtZnJvbnRtb3N0LXVybCAsb3Jn LW1hYy1ncmFiLUZpcmVmb3grVmltcGVyYXRvci1wKQotCSAgICAoImMiICJocm9tZSIgb3JnLW1h Yy1jaHJvbWUtaW5zZXJ0LWZyb250bW9zdC11cmwgLG9yZy1tYWMtZ3JhYi1DaHJvbWUtYXBwLXAp Ci0gICAgICAgICAgICAoImUiICJldmVybm90ZSIgb3JnLW1hYy1ldmVybm90ZS1ub3RlLWluc2Vy dC1zZWxlY3RlZCAsb3JnLW1hYy1ncmFiLUV2ZXJub3RlLWFwcC1wKQotCSAgICAoInQiICJvZ2V0 aGVyIiBvcmctbWFjLXRvZ2V0aGVyLWluc2VydC1zZWxlY3RlZCAsb3JnLW1hYy1ncmFiLVRvZ2V0 aGVyLWFwcC1wKQotCSAgICAoIlMiICJraW0iIG9yZy1tYWMtc2tpbS1pbnNlcnQtcGFnZSAsb3Jn LW1hYy1ncmFiLVNraW0tYXBwLXApCi0JICAgICgiQSIgImNyb2JhdCIgb3JnLW1hYy1hY3JvYmF0 LWluc2VydC1wYWdlICxvcmctbWFjLWdyYWItQWNyb2JhdC1hcHAtcCkpKQorICAobGV0KiAoKGRl c2NyaXB0b3JzIG9yZy1tYWMtbGluay1kZXNjcmlwdG9ycykKICAgICAgICAgIChtZW51LXN0cmlu ZyAobWFrZS1zdHJpbmcgMCA/eCkpCiAgICAgICAgICBpbnB1dCkKIAo= --001a114d9d6a7561ed0551aaf22e--