diff --git a/core/language/en-GB/Search.multids b/core/language/en-GB/Search.multids
index f5aa478bf..8eedd0a1c 100644
--- a/core/language/en-GB/Search.multids
+++ b/core/language/en-GB/Search.multids
@@ -3,6 +3,7 @@ title: $:/language/Search/
DefaultResults/Caption: List
Filter/Caption: Filter
Filter/Hint: Search via a [[filter expression|https://tiddlywiki.com/static/Filters.html]]
+Filter/AllowDuplicates: Allow duplicate results
Filter/Matches: //<> matches//
Matches: //<> matches//
Matches/All: All matches:
diff --git a/core/ui/AdvancedSearch/Filter.tid b/core/ui/AdvancedSearch/Filter.tid
index 4005ebbdc..3d9cf3fab 100644
--- a/core/ui/AdvancedSearch/Filter.tid
+++ b/core/ui/AdvancedSearch/Filter.tid
@@ -96,13 +96,24 @@ caption: {{$:/language/Search/Filter/Caption}}
$list>
+
+ <$checkbox tiddler="$:/config/Search/AllowDuplicates" field="text" checked="yes" unchecked="no" default="yes">
+ <$text text=" "/><>
+ $checkbox>
+
+
<$reveal state="$:/temp/advancedsearch" type="nomatch" text="" tag="div" class="tc-search-results">
- <$set name="resultCount" value="<$count filter={{$:/temp/advancedsearch}}/>">
+ <$let
+ filter-allow-duplicates="::defaultprefix:all [subfilter{$:/temp/advancedsearch}]"
+ filter-deduplicate="::defaultprefix:or [subfilter{$:/temp/advancedsearch}]"
+ currentFilter={{{ [{$:/config/Search/AllowDuplicates}match[yes]thenelse] }}}
+ resultCount={{{ [subfiltercount[]] }}}
+ >
<>
- <$list filter={{$:/temp/advancedsearch}}>
+ <$list filter="[subfilter]">
addsuffix[-primaryList]] -[[$:/temp/advancedsearch/selected-item]get[text]] :and[then[]else[tc-list-item-selected]] }}}>
<$transclude tiddler="$:/core/ui/ListItemTemplate"/>
$list>
- $set>
+ $let>
$reveal>
diff --git a/core/wiki/config/SearchAllowDuplicates.tid b/core/wiki/config/SearchAllowDuplicates.tid
new file mode 100644
index 000000000..557ff8d7b
--- /dev/null
+++ b/core/wiki/config/SearchAllowDuplicates.tid
@@ -0,0 +1,2 @@
+title: $:/config/Search/AllowDuplicates
+text: yes
\ No newline at end of file
diff --git a/themes/tiddlywiki/vanilla/base.tid b/themes/tiddlywiki/vanilla/base.tid
index c20aa94ab..46f36ae42 100644
--- a/themes/tiddlywiki/vanilla/base.tid
+++ b/themes/tiddlywiki/vanilla/base.tid
@@ -940,6 +940,10 @@ button.tc-btn-invisible.tc-remove-tag-button {
width: 60%;
}
+.tc-advanced-search .tc-advanced-search-options input {
+ width: auto;
+}
+
.tc-search a svg {
width: 1.2em;
height: 1.2em;