From f4dfdcea25f541b41c5621b8fba3bdf8b157a032 Mon Sep 17 00:00:00 2001 From: Ted Unangst Date: Tue, 24 Jan 2023 19:08:26 -0500 Subject: [PATCH] allow . to match all summaries --- docs/changelog.txt | 2 ++ docs/hfcs.1 | 1 + hfcs.go | 11 +++++++++-- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/docs/changelog.txt b/docs/changelog.txt index be7076b..aa4ec2d 100644 --- a/docs/changelog.txt +++ b/docs/changelog.txt @@ -2,6 +2,8 @@ changelog === next ++ Filter to match anything with summary/warning. + + Start collecting quties. + Fix http signatures for GET requests. diff --git a/docs/hfcs.1 b/docs/hfcs.1 index 74a94df..5a7af15 100644 --- a/docs/hfcs.1 +++ b/docs/hfcs.1 @@ -51,6 +51,7 @@ fields as well. .It Ar text Regular expression match against the post .Fa content . +The special value of "." will match any post with a summary only. .It Ar is announce Is announced (shared). .It Ar announce of diff --git a/hfcs.go b/hfcs.go index 610cef2..2277b8a 100644 --- a/hfcs.go +++ b/hfcs.go @@ -107,7 +107,7 @@ func filtcachefiller(userid int64) (afiltermap, bool) { expflush = filt.Expiration } } - if t := filt.Text; t != "" { + if t := filt.Text; t != "" && t != "." { wordfront := t[0] != '#' wordtail := true t = "(?i:" + t + ")" @@ -314,7 +314,7 @@ func matchfilterX(h *Honk, f *Filter) string { rv += " announce" } } - if match && f.Text != "" { + if match && f.Text != "" && f.Text != "." { match = false re := f.re_text m := re.FindString(h.Precis) @@ -334,6 +334,13 @@ func matchfilterX(h *Honk, f *Filter) string { rv = m } } + if match && f.Text == "." { + match = false + if h.Precis != "" { + match = true + rv = h.Precis + } + } if match { return rv }