From 9fe3c4fa9196446f7d7534f6b7fd6acca277fe9b Mon Sep 17 00:00:00 2001 From: Leilei332 Date: Mon, 19 Aug 2024 10:56:42 +0800 Subject: [PATCH] Use template to handle image import --- core/ui/EditorToolbar/file-import.tid | 46 ++----------------- core/ui/FileImportTemplate.tid | 43 +++++++++++++++++ core/wiki/config/EditorEnableImportFilter.tid | 2 +- .../markdown/EditorToolbar/file-import.tid | 9 ++++ 4 files changed, 58 insertions(+), 42 deletions(-) create mode 100644 core/ui/FileImportTemplate.tid create mode 100644 plugins/tiddlywiki/markdown/EditorToolbar/file-import.tid diff --git a/core/ui/EditorToolbar/file-import.tid b/core/ui/EditorToolbar/file-import.tid index 20cff547d..6ccdf3049 100644 --- a/core/ui/EditorToolbar/file-import.tid +++ b/core/ui/EditorToolbar/file-import.tid @@ -1,45 +1,9 @@ title: $:/core/ui/EditorToolbar/file-import tags: $:/tags/EditorTools +image: [img[$title$]] +file: [[$title$]] +regexp-search: +regexp-replace: condition: [!has[type]] [type[text/vnd.tiddlywiki]] -\define lingo-base() $:/language/Import/ - -\define closePopupActions() -<$action-deletetiddler $filter="[title] [title]"/> -\end - -\define replacement-text-image() [img[$title$]] - -\define replacement-text-file() [[$title$]] - -\define postImportActions() -\whitespace trim -<$list filter="[links[]] :reduce[get[type]prefix[image]thenelsesearch-replace[$title$],addprefix]" variable="imageTitle"> -<$action-sendmessage - $message="tm-edit-text-operation" - $param="insert-text" - text=<> -/> - -<> -\end - -\define buttons() -\whitespace trim -<$button class="tc-btn-invisible" actions=<> ><> - -<$button class="tc-btn-invisible" message="tm-perform-import" param=<> actions=<> ><> -\end - -\whitespace trim -<$reveal type="popup" state=<> tag="div" class="tc-editor-importpopup"> -
-<$list filter="[field:plugin-type[import]]"> -

<>

-<$tiddler tiddler=<>> -{{||$:/core/ui/ImportListing}} -<> - - -
- +{{||$:/core/ui/FileImportTemplate}} diff --git a/core/ui/FileImportTemplate.tid b/core/ui/FileImportTemplate.tid new file mode 100644 index 000000000..d36e2f9e5 --- /dev/null +++ b/core/ui/FileImportTemplate.tid @@ -0,0 +1,43 @@ +title: $:/core/ui/FileImportTemplate + +\whitespace trim + +\procedure lingo-base() $:/language/Import/ + +\procedure closePopupActions() +<$action-deletetiddler $filter="[title] [title]"/> +\end + +\procedure postImportActions() +<$list filter="[links[]]"> + <$let escaped-title={{{ [search-replace:g:regexp,] }}}> + <$let insertText={{{ [get[type]prefix[image]thenelsesearch-replace[$title$],] }}}> + <$action-sendmessage + $message="tm-edit-text-operation" + $param="insert-text" + text=<> + /> + + + +<> +\end + +\procedure buttons() +<$button class="tc-btn-invisible tc-small-gap-right" actions=<> ><> +<$button class="tc-btn-invisible" message="tm-perform-import" param=<> actions=<> ><> +\end + +<$let replacement-text-image={{!!image}} replacement-text-file={{!!file}} replacement-regexp={{!!regexp-search}} replacement-replace={{!!regexp-replace}}> +<$reveal type="popup" state=<> tag="div" class="tc-editor-importpopup"> +
+<$list filter="[field:plugin-type[import]]"> +

<>

+<$tiddler tiddler=<>> +{{||$:/core/ui/ImportListing}} +<> + + +
+ + diff --git a/core/wiki/config/EditorEnableImportFilter.tid b/core/wiki/config/EditorEnableImportFilter.tid index 55d068e12..805ad72f0 100644 --- a/core/wiki/config/EditorEnableImportFilter.tid +++ b/core/wiki/config/EditorEnableImportFilter.tid @@ -1,4 +1,4 @@ title: $:/config/Editor/EnableImportFilter type: text/vnd.tiddlywiki -[all[current]type[text/vnd.tiddlywiki]] [all[current]!has[type]] \ No newline at end of file +[all[current]type[text/vnd.tiddlywiki]] [all[current]!has[type]] [all[current]type[text/markdown]] [all[current]type[text/x-markdown]] \ No newline at end of file diff --git a/plugins/tiddlywiki/markdown/EditorToolbar/file-import.tid b/plugins/tiddlywiki/markdown/EditorToolbar/file-import.tid new file mode 100644 index 000000000..9335d20b8 --- /dev/null +++ b/plugins/tiddlywiki/markdown/EditorToolbar/file-import.tid @@ -0,0 +1,9 @@ +title: $:/plugins/tiddlywiki/markdown/EditorToolbar/file-import +tags: $:/tags/EditorTools +image: ![](<#$title$>) +file: [](<#$title$>) +regexp-search: [()<>\\] +regexp-replace: \$& +condition: [type[text/x-markdown]] [type[text/markdown]] + +{{||$:/core/ui/FileImportTemplate}} \ No newline at end of file