Get selected text from any application using Electron's clipboard and robotjs
For Electron 9 and later, this module should only be used in the main process because robotjs is not context aware
$ npm install electron-selected-text
import { app } from "electron";
import { getSelectedText, registerShortcut } from "electron-selected-text";
const printSelectedText = (selectedText) => {
console.log(`Selected Text: ${selectedText}`);
};
getSelectedText().then(printSelectedText);
app.whenReady().then(() => {
const ret = registerShortcut("F6", printSelectedText);
if (!ret) {
console.warn("registration failed");
}
});