Scrim

Org Protocol that works on macOS

Scrim is a utility to relay Org Protocol URL requests to Emacs on macOS.

Via the org‑protocol:// URL scheme, macOS apps are able to send web links and text clippings to Emacs.

Scrim is designed to work with macOS security policies. No need to use unnatural solutions that force you to relax macOS permissions.


Features

$ open "scrim://open?file=~/.profile"
$ open "scrim://info?node=(eshell) Top"

What is Org Protocol?

Org Protocol is a custom URL scheme devised by the developers of Org to let 3rd party apps share their content to an Org file.

For example, sharing a link would be a URL request that would look like this (in this case a link to the Org website):

org-protocol://store-link?url=https://orgmode.org&title=Org

Any 3rd party app could then issue this URL request which would result in a stored Org link in Emacs. (Use C-c M-l org-insert-last-stored-link to paste the link in an Org file.)


Why Scrim?

The initial implementation of Org Protocol relied on using emacsclient to do the work of issuing such a request. With recent macOS security policy changes, this is no longer tenable. Native apps by default are not allowed to call programs like emacsclient because it lives outside of their respective sandboxes.

Scrim resolves this by acting as a proxy for receiving an org‑protocol:// URL request and doing the work to transport it to Emacs in a way that conforms to macOS security policies.

In effect, Scrim is a macOS client app for Emacs server.


Works with Captee

Scrim complements the Captee app, a utility that let you share links and text clippings from the macOS Share Menu using Org Protocol.

The following sequence shows how Captee and Scrim work in concert to get content for other macOS apps into Emacs.

macOS App → Share Menu → Captee → Org Protocol → Scrim → Emacs


Buy Scrim

Scrim is now available on the Mac App Store.

Both Scrim and Captee are available as an App Bundle where they can be purchased together at a reduced price.


SupportPrivacy

Powered by Pelican