From a5acb7aafbb29727d2c0fe47c87bb7226e49b771 Mon Sep 17 00:00:00 2001 From: Marcelo Paternostro Date: Sat, 1 Apr 2023 16:05:39 -0400 Subject: [PATCH 1/3] Allow users to define decoration for date --- package.json | 5 +++++ src/toggleCheckbox.ts | 8 +++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 2b7c8e3..c28e507 100644 --- a/package.json +++ b/package.json @@ -162,6 +162,11 @@ "type": "string", "default": "YYYY-MM-DD", "description": "Format date" + }, + "markdown-checkbox.dateTemplate": { + "type": "string", + "default": "[{date}]", + "markdownDescription": "The date template: `${date}` is replaced by the actual date." } } } diff --git a/src/toggleCheckbox.ts b/src/toggleCheckbox.ts index 2fe0e61..52b391c 100644 --- a/src/toggleCheckbox.ts +++ b/src/toggleCheckbox.ts @@ -108,9 +108,11 @@ const markField = ( newText = `~~${newText}~~`; } if (dateWhenChecked) { - newText = `${newText} [${moment(new Date()).format( - dateFormat - )}]${whitespace}`; + const date = moment(new Date()).format(dateFormat); + const decoratedDate = helpers + .getConfig('dateTemplate') + .replace('{date}', date); + newText = `${newText} ${decoratedDate}${whitespace}`; } editBuilder.replace( From ded614ecc00dadb47b8f263dc0902a0e088aad71 Mon Sep 17 00:00:00 2001 From: Philipp Kief Date: Sun, 2 Apr 2023 15:20:06 +0200 Subject: [PATCH 2/3] Add readme description --- README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/README.md b/README.md index 3da7ea8..b5ffb7e 100644 --- a/README.md +++ b/README.md @@ -154,6 +154,16 @@ If dates are enabled, they can be formatted with the following user setting: It makes use of the JavaScript library [moment.js](https://momentjs.com/docs/#/parsing/string-format/) which means that the date format patterns can be found there. +In addition the syntax around in which the date is placed can be defined via template. `{date}` will be replaced by the actual date value: + +```json +"markdown-checkbox.dateTemplate": "({date})" +``` + +Preview: + +- [x] ~~_sample with date_~~ (2017-11-23) + ### Specify language IDs Besides markdown, this extension can also be used for other languages in VS Code. The language IDs can be specified in the user settings like this: From 789e0e36540dbb710121146487eb8b75a54fbc47 Mon Sep 17 00:00:00 2001 From: Philipp Kief Date: Sun, 2 Apr 2023 15:20:27 +0200 Subject: [PATCH 3/3] Adjust config description --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c28e507..8971ef6 100644 --- a/package.json +++ b/package.json @@ -166,7 +166,7 @@ "markdown-checkbox.dateTemplate": { "type": "string", "default": "[{date}]", - "markdownDescription": "The date template: `${date}` is replaced by the actual date." + "markdownDescription": "The date template `{date}` is replaced by the actual date." } } }