mirror of
https://github.com/marty-oehme/scripts.git
synced 2024-12-22 07:58:08 +00:00
Add a setting to specify a folder where newly
created journal notes will be placed. Refs pbek/QOwnNotes#795
This commit is contained in:
parent
dd17fd729e
commit
6a76e9491d
2 changed files with 27 additions and 5 deletions
|
@ -2,8 +2,8 @@
|
||||||
"name": "Journal entry",
|
"name": "Journal entry",
|
||||||
"identifier": "journal-entry",
|
"identifier": "journal-entry",
|
||||||
"script": "journal-entry.qml",
|
"script": "journal-entry.qml",
|
||||||
"version": "1.0.0",
|
"version": "1.1.0",
|
||||||
"minAppVersion": "17.05.6",
|
"minAppVersion": "17.12.0",
|
||||||
"authors": ["@pbek", "@sanderboom"],
|
"authors": ["@pbek", "@sanderboom"],
|
||||||
"description" : "This script creates a menu item and a button to create or jump to the current date's journal entry."
|
"description" : "This script creates a menu item and a button to create or jump to the current date's journal entry."
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,12 +5,20 @@ import com.qownnotes.noteapi 1.0
|
||||||
* This script creates a menu item and a button to create or jump to the current date's journal entry
|
* This script creates a menu item and a button to create or jump to the current date's journal entry
|
||||||
*/
|
*/
|
||||||
QtObject {
|
QtObject {
|
||||||
|
property string defaultFolder;
|
||||||
property string defaultTags;
|
property string defaultTags;
|
||||||
|
|
||||||
property variant settingsVariables: [
|
property variant settingsVariables: [
|
||||||
|
{
|
||||||
|
"identifier": "defaultFolder",
|
||||||
|
"name": "Default folder",
|
||||||
|
"description": "The default folder where the newly created journal note should be placed. Specify the path to the folder relative to the note folder. Make sure that the full path exists. Examples: to place new journal notes in the subfolder 'Journal' enter: \"Journal\"; to place new journal notes in the subfolder 'Journal' in the subfolder 'Personal' enter: \"Personal/Journal\". Leave blank to disable (notes will be created in the currently active folder).",
|
||||||
|
"type": "string",
|
||||||
|
"default": "",
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"identifier": "defaultTags",
|
"identifier": "defaultTags",
|
||||||
"name": "Auto-tagging",
|
"name": "Default tags",
|
||||||
"description": "One or more default tags (separated by commas) to assign to a newly created journal note. Leave blank to disable auto-tagging.",
|
"description": "One or more default tags (separated by commas) to assign to a newly created journal note. Leave blank to disable auto-tagging.",
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"default": "journal",
|
"default": "journal",
|
||||||
|
@ -51,15 +59,29 @@ QtObject {
|
||||||
// create a new journal entry note if it wasn't found
|
// create a new journal entry note if it wasn't found
|
||||||
// keep in mind that the note will not be created instantly on the disk
|
// keep in mind that the note will not be created instantly on the disk
|
||||||
script.log("creating new journal entry: " + headline);
|
script.log("creating new journal entry: " + headline);
|
||||||
|
|
||||||
|
// Default folder.
|
||||||
|
if (defaultFolder && defaultFolder !== '') {
|
||||||
|
var msg = 'Jump to default folder \'' + defaultFolder + '\' before creating a new journal note.';
|
||||||
|
script.log('Attempt: ' + msg);
|
||||||
|
var jump = script.jumpToNoteSubFolder(defaultFolder);
|
||||||
|
if (jump) {
|
||||||
|
script.log('Success: ' + msg);
|
||||||
|
} else {
|
||||||
|
script.log('Failed: ' + msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create the new journal note.
|
||||||
script.createNote(headline + "\n================\n\n");
|
script.createNote(headline + "\n================\n\n");
|
||||||
|
|
||||||
// Auto-tagging.
|
// Default tags.
|
||||||
if (defaultTags && defaultTags !== '') {
|
if (defaultTags && defaultTags !== '') {
|
||||||
defaultTags
|
defaultTags
|
||||||
// Split on 0..* ws, 1..* commas, 0..* ws.
|
// Split on 0..* ws, 1..* commas, 0..* ws.
|
||||||
.split(/\s*,+\s*/)
|
.split(/\s*,+\s*/)
|
||||||
.forEach(function(i) {
|
.forEach(function(i) {
|
||||||
script.log('Auto-tag new journal entry with: ' + i);
|
script.log('Tag the new journal note with default tag: ' + i);
|
||||||
script.tagCurrentNote(i);
|
script.tagCurrentNote(i);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue