Edit filter configuration

Differences between versions

ItemVersion from 21:09, 6 April 2024 by Suffusion of YellowVersion from 23:34, 6 April 2024 by Suffusion of Yellow
Filter conditions
Conditions:
(documentation)
!("confirmed" in user_groups) &
!("confirmed" in user_groups) &
(
(
     ccnormed := "(?x)
     ccnormed := "(?x)
         # From filter 260
         # From filter 260
         \b(?:MAS+IVE|ENORMO?US|HUMO+NGO?US|HUGE|TINY|SUCK(?:ED|ING|S)?|MY|MAH|HIS)[ ](?:(?:KAW|[CK]O)[CK]+|DICK?|PRICK|BALL*S|A[SZ]{2,})\b
         \b(?:MAS+IVE|ENORMO?US|HUMO+NGO?US|HUGE|TINY|SUCK(?:ED|ING|S)?|MY|MAH|HIS)[ ](?:(?:KAW|[CK]O)[CK]+|DICK?|PRICK|BALL*S|A[SZ]{2,})\b
         |\b(?:ASS+|BU(?:TT+|M+))[- ]?(?:R(?:APE|AEP)|(?:PH|F)UCK)
         |\b(?:ASS+|BU(?:TT+|M+))[- ]?(?:R(?:APE|AEP)|(?:PH|F)UCK)
         |PORN[- ]?STAR
         |PORN[- ]?STAR
         # From filter 384
         # From filter 384
         |\b(?:ass|arse|butt)\s?holes?\b(?!\Wsurfer)
         |\b(?:ASS|ARSE|BUTT)\s?HOLES?\b(?!\WSURFER)
         |\b(?:dumb|(?:f|ph)at+(?:est)?)\s*a(?:ss|\$\$)\b
         |\b(?:DUMB|(?:F|PH)AT+(?:EST)?)\s*ASS\b
         |\barse\b
         |\bARSE\b
         |bitch(?!\"?[ ]magazine|itra)
         |BITCH(?!\"?[ ]MAGAZINE|ITRA)
         |\bcock(?:s?|sucker)\b
         |\bCOCK(?:S?|SUCKER)\b
         |\bdick(?:sucker|head)s?\b
         |\bDICK(?:SUCKER|HEAD)S?\b
         |cuck(?:|s|er|ing)\b
         |CUCK(?:S|ER|ING)?\b
         |\bcunts?\b
         |\bCUNTS?\b
         |\bdildo
         |\bDILDO
         |douche
         |DOUCHE
         |f(?:u|v)ck
         |F[UV]CK
         |nigg(?:er|ah*)
         |NIGG(?:ER|AH*)
         |p(?:a|e|ae)do(?:f|ph)il
         |P(?:A|E|AE)DO(?:F|PH)IL
         |fag(?:\b|g[aio]t)
         |FAG(?:\b|G[AIO]T)
         |(?<!top)penis(?!ton|i|cola)
         |(?<!TOP)PENIS(?!TON|I|COLA)
         |\bcrap(?:py)?\b
         |\bCRAP(?:PY)?\b
         |\bslut\b
         |\bSLUT\b
         |whore
         |WHORE
         |\b(?:bull|dog|horse)?shite?(?:hole|s|ti?er|t?y|t?ing)?\b
         |\b(?:BULL|DOG|HORSE)?SHITE?(?:HOLE|S|TI?ER|T?Y|T?ING)?\b
         |\bpuss(?!ycat|yfoot|y[ ]riot)a?y
         |\bPUSS(?!YCAT|YFOOT|Y[ ]RIOT)A?Y
         |\bidiot\b
         |\bIDIOT\b
     ";
     ";
     plain := "(?!(?-i)Dick)\bdick(?!'s)s?\b";
     plain := "(?!(?-i)Dick)\bdick(?!'s)s?\b";
     all := plain + "|" + ccnormed;
     all := plain + "|" + ccnormed;
     (
     (
         ccnorm(added_lines) irlike ccnormed &
         ccnorm(added_lines) rlike ccnormed &
         !(ccnorm(removed_lines) irlike ccnormed)
         !(ccnorm(removed_lines) rlike ccnormed)
     ) | (
     ) | (
         /* Check everything again; ccnorm() can break \b, e.g. -> |idiot -> IIDIOT */
         /* Check everything again; ccnorm() can break \b, e.g. -> |idiot -> IIDIOT */
         added_lines irlike all &
         added_lines irlike all &
         !(removed_lines irlike all)
         !(removed_lines irlike all)
     )
     )
)
)