import QtQml 2.0 import QOwnNotesTypes 1.0 /** * With this script you can right click in the note edit and paste previously copied HTML * from a website as GitHub Markdown with the help of Pandoc. */ Script { property string pandocPath; // register your settings variables so the user can set them in the script settings property variant settingsVariables: [ { "identifier": "pandocPath", "name": "Pandoc path", "description": "Please select the path to your Pandoc executable:", "type": "file", "default": "pandoc", }, ]; /** * Initializes the custom action */ function init() { script.registerCustomAction("html2Markdown", "Paste HTML as GitHub Markdown", "GitHub Markdown", "edit-paste", true, true); } /** * This function is invoked when a custom action is triggered * in the menu or via button * * @param identifier string the identifier defined in registerCustomAction */ function customActionInvoked(identifier) { if (identifier != "html2Markdown") { return; } var html = script.clipboard(true); // you need pandoc to convert HTML to Markdown var params = ["-f", "html", "-t", "markdown_github"]; var markdown = script.startSynchronousProcess(pandocPath, params, html); script.noteTextEditWrite(markdown); } }