aboutsummaryrefslogtreecommitdiff
path: root/firefox/extensions
diff options
context:
space:
mode:
authorYuchen Pei <id@ypei.org>2023-08-26 18:16:09 +1000
committerYuchen Pei <id@ypei.org>2023-08-26 18:16:09 +1000
commit9e004a40faba221f9179a96df6cceaeaba2d8c68 (patch)
treec198240e7c22b50695cdb13e4c70c074efc80521 /firefox/extensions
parentb35a2376ce6f17468a3502313f931bdc40b536b8 (diff)
Firefox x org-protocol
A greasemonkey userscript with keybindings for org-protocol. A webpage to activate org-protocol in firefox, which requires network.protocol-handler.expose.org-protocol to be false Some org-protocol bookmarklet in case the keys don't work
Diffstat (limited to 'firefox/extensions')
-rw-r--r--firefox/extensions/org-protocol.user.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/firefox/extensions/org-protocol.user.js b/firefox/extensions/org-protocol.user.js
new file mode 100644
index 0000000..196a473
--- /dev/null
+++ b/firefox/extensions/org-protocol.user.js
@@ -0,0 +1,32 @@
+// ==UserScript==
+// @name org-protocol
+// @version 2
+// @grant none
+// ==/UserScript==
+window.addEventListener("keydown", function (event) {
+ if (event.defaultPrevented) {
+ return; // Do nothing if the event was already processed
+ }
+
+ if (event.key === "l" && event.ctrlKey) {
+ event.preventDefault();
+ location.href = 'org-protocol://store-link?url=' +
+ encodeURIComponent(location.href) +
+ '&title=' + document.title;
+ }
+
+ if (event.key === ";" && event.ctrlKey) {
+ event.preventDefault();
+ location.href = 'org-protocol://capture?template=t' +
+ '&url=' + encodeURIComponent(window.location.href) +
+ '&title=' + document.title +
+ '&body=' + window.getSelection();
+ }
+
+ if (event.key === "'" && event.ctrlKey) {
+ event.preventDefault();
+ location.href = 'org-protocol://grok?url=' +
+ encodeURIComponent(location.href);
+ }
+
+}, true);