org-protocol.el – Mac OS X setup doesn’t work anymore according to Issue #3 · neil-smithline-elisp/EmacsClient.app.
- Launch the Script Editor application and create a new document
- Copy-and-paste the following code into the new document
- Change “/usr/local/bin/emacsclient” to path to
emacsclient
on your system - Save it in Application (not the default Script) File Format as
org-protocol.app
on open location this_URL
do shell script "/Applications/Emacs.app/Contents/MacOS/bin-x86_64-10_14/emacsclient \"" & this_URL & "\""
tell application "Emacs" to activate
end open location
- Navigate to the application (i.e.,
org-protocol.app
) in the Finder, then right-click on it and selectShow Package Contents
. Now go into theContents
folder and openInfo.plist
- Add the following code to the file, making sure to keep all existing key/string pairs intact:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>org-protocol handler</string>
<key>CFBundleURLSchemes</key>
<array>
<string>org-protocol</string>
</array>
</dict>
</array>
See http://orgmode.org/worg/org-contrib/org-protocol.html#orgheadline8
I use graphical Emacs and start Emacs server from there, however after clicking some org-protocol link, Emacs doesn’t activate. I don’t know the cause. If you encounter the same issue AND don’t like it, you can try this instead
on open location this_URL
do shell script "/usr/local/bin/emacsclient \"" & this_URL & "\" && open -a Emacs"
end open location
On web browser, besides bookmarklets, you can also use User Script, for example, ./org-protocol.user.js binds two keys to Org: store-link and Org: capture.