Spaces:
Running
Running
| function initUi() | |
| app.registerUi({["menu"] = "Xournal++ HTR", ["callback"] = "run", ["accelerator"] = "<Control>F1"}); | |
| end | |
| function save_file(path) | |
| if path:len() > 0 then | |
| -- Read settings: I use this (https://stackoverflow.com/a/41176958). An | |
| -- alternative could have been https://stackoverflow.com/a/41176826. Both | |
| -- found using G"lua read settings file". | |
| local config = require "config" | |
| config.filename = '"' .. app.getDocumentStructure()['xoppFilename'] .. '"' | |
| config.output_file = '"' .. path .. '"' | |
| command = config.python_executable .. " " .. config.xournalpp_htr_path | |
| .. " -if " .. config.filename | |
| .. " -of " .. config.output_file | |
| if config.debug_HTR_command then | |
| print(command) | |
| else | |
| os.execute(command) | |
| end | |
| end | |
| end | |
| function run() | |
| document_structure = app.getDocumentStructure() | |
| if document_structure['xoppFilename']:len() == 0 then | |
| app.openDialog('Please save document prior to exporting it as searchable PDF!', {"Ok"}, "", true) | |
| else | |
| app.fileDialogSave("save_file", "untitled.pdf") | |
| end | |
| end | |
| -- TODO: Think of workflow to maximise usability for user | |
| -- TODO: How to store settings? Ideally permanently? | |
| -- TODO: Interesting code from example plugins: | |
| -- - Get filename: https://github.com/xournalpp/xournalpp/blob/master/plugins/Export/main.lua#L29 | |
| -- - Toggle logic: https://github.com/xournalpp/xournalpp/blob/master/plugins/HighlightPosition/main.lua#L5 | |
| -- - UI: https://github.com/xournalpp/xournalpp/blob/master/plugins/MigrateFontSizes/main.lua | |
| -- - OS interaction: https://github.com/xournalpp/xournalpp/blob/master/plugins/QuickScreenshot/main.lua | |