Fastest way to take a quick note on MacOS or Windows? reddit / emacs ---------------------------------------------------------------------- Status-Detective-783 · 2022-02-20 18:08 Suppose I'm browsing in Chrome. I want to take a quick org-capture note. But I don't want to have to `⌘-TAB` (or `ALT-TAB` in Windows) over to emacs and then `C-c c` to org-capture. That takes too much time and breaks my flow. I just want to press some magic MacOS (or Windows) key that will automagically switch me to emacs AND do the org-capture command. Bonus points if doing the above can also automatically carry over the URL that I'm currently on. I assume I'd need to use some kind of "macro" software. ---------------------------------------------------------------------- radicalzephyr · 2022-02-20 19:17 This is more of a MacOS question than an emacs one because you want to automate the interactive with the OS. But you may want to look into [Automater](https://macosxautomation.com/automator/index.html) or [AppleScript](https://macosxautomation.com/applescript/index.html). ---------------------------------------------------------------------- orissus · 2022-02-20 20:23 Hammerspoon for automation, uses Lua script, pretty easy to add own functions. And Karabiner to bind CAPS as metas key. So when I want to capture to Org mode I invoke Caps+V and am greeted with hammerspoon prompt. It runs she’ll script that append to a file ( can be simple bash with >> or emacs capture). -edit autocorrect typos. ---------------------------------------------------------------------- trae · 2022-02-21 03:13 Similar to what I do. SUPER-F toggles an external org-capture window, so I never have to switch to emacs. SUPER-K captures the frontmost Safari window title & url to Inbox. Edit: The super key is driven by Karabiner. It's bound to Shift- Option-Control-Command OR my Cap lock key. ---------------------------------------------------------------------- NihilistDandy · 2022-02-21 07:17 You probably want `org-protocol`. https://github.com/xuchunyang/setup-org-protocol-on-mac https://orgmode.org/worg/org-contrib/org-protocol.html I have a bookmarklet that captures links of interest to my inbox for review later; my template includes the link, the page title, and any text I have selected on capture. ---------------------------------------------------------------------- BobKoss · 2022-02-21 15:42 [https://github.com/kuanyui/copy-as-org- mode](https://github.com/kuanyui/copy-as-org-mode) just ran across this this morning. Haven’t tried it yet. ---------------------------------------------------------------------- Status-Detective-783 · 2022-02-21 16:40 Thanks! Evidently, that's for Mozilla (Firefox). ---------------------------------------------------------------------- fragbot2 · 2022-02-22 06:27 I'm glad someone responded with org-protocol. I've set it up several times on various OSX machines. I had some good notes on it but the external application link is dead so I'll need to do it from memory. First, I created a script using Apple's script editor: on open location my_data do shell script "/usr/local/bin/emacsclient --no-wait '" & my_data & "'" end open location I'm pretty sure that after doing this I either created or edited the Info.plist file associated with the script: CFBundleIdentifier com.apple.ScriptEditor.id.OrgProtocol CFBundleName OrgProtocol CFBundleShortVersionString 1.0 WindowState bundleDividerCollapsed bundlePositionOfDivider 0.0 dividerCollapsed eventLogLevel 2 name ScriptWindowState positionOfDivider 443 savedFrame 1167 349 700 678 0 0 1920 1055 selectedTab description CFBundleURLTypes org-protocol CFBundleURLName org-protocol CFBundleURLSchemes org-protocol I then created two bookmarks--one that grabs links and the other that grabs a link + data: javascript:location.href='org-protocol://store-link?url=%27+encode URIComponent(location.href)+%27&title=%27+encodeURIComponent(document. title) javascript:location.href='org-protocol://capture?template=c%27+%27 &url=%27+encodeURIComponent(window.location.href)+%27&title=%27+encode URIComponent(document.title)+%27&body=%27+encodeURIComponent(window.ge tSelection()); While it's tricky to setup the first time, it works really well.