diff --git a/README.md b/README.md index 33b0f691e..e7a527cb5 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,19 @@ # Trilium Web Clipper +Trilium Web Clipper is a web browser extension which allows user to clip text, screenshots, whole pages and short notes and save them directly to [Trilium Notes](https://github.com/zadam/trilium). -See details on [wiki page](https://github.com/zadam/trilium/wiki/Web-clipper). +For more details, see the [wiki page](https://github.com/zadam/trilium/wiki/Web-clipper). -Some parts of the code are based on the [Joplin Notes](https://github.com/laurent22/joplin/tree/master/Clipper). +## Keyboard shortcuts +Keyboard shortcuts are available for most functions: +* Save selected text: `Ctrl+Shift+S` (Mac: `Cmd+Shift+S`) +* Save whole page: `Alt+Shift+S` (Mac: `Opt+Shift+S`) +* Save screenshot: `Ctrl+Shift+E` (Mac: `Cmd+Shift+E`) + +To set custom shortcuts, follow the directions for your browser. + +**Firefox**: `about:addons` > Gear icon ⚙️ > Manage extension shortcuts + +**Chrome**: `chrome://extensions/shortcuts` + +## Credits +Some parts of the code are based on the [Joplin Notes browser extension](https://github.com/laurent22/joplin/tree/master/Clipper). diff --git a/background.js b/background.js index 241498c6b..034a2a8e0 100644 --- a/background.js +++ b/background.js @@ -1,3 +1,18 @@ +// Keyboard shortcuts +chrome.commands.onCommand.addListener(async function (command) { + if(command=="saveSelection") { + await saveSelection(); + } else if (command == "saveWholePage") { + await saveWholePage(); + } else if (command == "saveScreenshot") { + const activeTab = await getActiveTab(); + await saveScreenshot(activeTab); + } else { + console.log("Unrecognized command", command); + } + +}); + function cropImage(newArea, dataUrl) { return new Promise((resolve, reject) => { const img = new Image(); diff --git a/manifest.json b/manifest.json index 7adaf5603..f9f771e7e 100644 --- a/manifest.json +++ b/manifest.json @@ -47,6 +47,26 @@ "options_ui": { "page": "options/options.html" }, + "commands": { + "saveSelection": { + "description": "Save the selected text into a note", + "suggested_key": { + "default": "Ctrl+Shift+S" + } + }, + "saveWholePage": { + "description": "Save the current page", + "suggested_key": { + "default": "Alt+Shift+S" + } + }, + "saveScreenshot": { + "description": "Take a screenshot of the current page", + "suggested_key": { + "default": "Ctrl+Shift+E" + } + } + }, "browser_specific_settings": { "gecko": { "id": "{1410742d-b377-40e7-a9db-63dc9c6ec99c}"