docs/hfcs.1 (view raw)
1.\"
2.\" Copyright (c) 2019 Ted Unangst
3.\"
4.\" Permission to use, copy, modify, and distribute this software for any
5.\" purpose with or without fee is hereby granted, provided that the above
6.\" copyright notice and this permission notice appear in all copies.
7.\"
8.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15.\"
16.Dd $Mdocdate$
17.Dt HFCS 1
18.Os
19.Sh NAME
20.Nm hfcs
21.Nd honk filtering and censorship system
22.Sh DESCRIPTION
23The honk filtering and censorship system,
24.Nm hfcs ,
25controls what messages are seen and how they are presented to the user.
26Filter rules are based on series of matches and actions.
27It is accessed via the
28.Pa filters
29menu item.
30.Pp
31The following match types are possible.
32All criteria must match.
33.Bl -tag -width include-audience
34.It Ar who
35Match an actor or domain name.
36Matches against
37.Fa Ar actor
38property.
39.It Ar include audience
40Previous match is applied against
41.Fa to
42and
43.Fa cc
44fields as well.
45.It Ar text
46Regular expression match against the post
47.Fa content .
48.It Ar is announce
49Is announced (shared).
50.El
51.Pp
52The following actions may be applied.
53Multiple actions may be applied, but some are subsumed by others.
54.Bl -tag -width tenletters
55.It Ar reject
56Reject this message entirely.
57.It Ar skip media
58Don't include images or attachments.
59.It Ar hide
60Remove this message from most feeds.
61.It Ar collapse
62Show only a short summary with click to view content.
63.It Ar rewrite
64Rewrite message content, using
65.Ar replace
66replacement text.
67.El
68.Pp
69The
70.Ar text
71and
72.Ar rewrite
73fields are case insensitive word anchored regular expressions.
74Specifically, an argument
75.Ql re
76will be automatically rewritten as
77.Ql \\\b(?i:re)\\\b .
78.Pp
79An optional expiration may be specified as a duration.
80XdYhZm for X days, Y hours, and Z minutes.
81.Sh SEE ALSO
82.Xr honk 1
83.Sh CAVEATS
84Not seeing is not erasing.