From f1f52efb685e25ad10508a1872814677092c773d Mon Sep 17 00:00:00 2001 From: marty-oehme <2098447+marty-oehme@users.noreply.github.com> Date: Wed, 28 Nov 2018 15:20:35 +0100 Subject: [PATCH] Add option to ignore repeated tag markers When listing tags of a note, this adds the option to only look for tags which contain a single tag marker at the beginning and ignore the others. So if your tag marker is @, and the option is enabled it will display @some_tag as a tag but ignore @@no_tag. --- in-note-text-tagging/in-note-text-tagging.qml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/in-note-text-tagging/in-note-text-tagging.qml b/in-note-text-tagging/in-note-text-tagging.qml index 84458cf..e4d9dcf 100644 --- a/in-note-text-tagging/in-note-text-tagging.qml +++ b/in-note-text-tagging/in-note-text-tagging.qml @@ -9,6 +9,7 @@ import QOwnNotesTypes 1.0 Script { property string tagMarker + property bool ignoreDoubleMarkers property bool putToBeginning property string tagHighlightColor @@ -20,6 +21,13 @@ Script { "type": "string", "default": "@", }, + { + "identifier": "ignoreDoubleMarkers", + "name": "Ignore repeated tag markers", + "description": "If enabled tags preceded by the same marker multiple times (such as @@no_tag) will be ignored.", + "type": "boolean", + "default": "false", + }, { "identifier": "putToBeginning", "name": "Put tags to beginning of note rather than to end", @@ -129,7 +137,10 @@ Script { // add the tag if it wasn't in the list if (tagNameList.indexOf(tagName) == -1) { - tagNameList.push(tagName); + // add the tag if it contains no duplicate tagMarkers or the check is disabled + if(ignoreDoubleMarkers == false || tagName.startsWith(escapeRegExp(tagMarker)) == false) { + tagNameList.push(tagName); + } } } return tagNameList;