decidim/decidim

View on GitHub
.github/actions/spelling/patterns.txt

Summary

Maintainability
Test Coverage
# See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns

# Automatically suggested patterns
# hit-count: 1341 file-count: 323
# https/http/file urls
(?:\b(?:https?|ftp|file)://)[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]

# Non-English
^\s*(?:es|ca): ".+"

# hit-count: 150 file-count: 27
# hex digits including css/html color classes:
(?:[\\0][xX]|\\u|[uU]\+|#x?|%23)[0-9_a-fA-FgGrR]*?[a-fA-FgGrR]{2,}[0-9_a-fA-FgGrR]*(?:[uUlL]{0,3}|[iu]\d+)\b

# hit-count: 91 file-count: 40
# node packages
(["'])\@[^/'" ]+/[^/'" ]+\g{-1}

# hit-count: 78 file-count: 44
# Non-English
[a-zA-Z]*[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3}[a-zA-ZÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]*|[a-zA-Z]{3,}[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]|[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3,}

# hit-count: 72 file-count: 35
# hex runs
\b[0-9a-fA-F]{16,}\b

# hit-count: 61 file-count: 13
# URL escaped characters
\%[0-9A-F][A-F](?=[A-Za-z])

# hit-count: 45 file-count: 14
# Lorem
# Update Lorem based on your content (requires `ge` and `w` from https://github.com/jsoref/spelling; and `review` from https://github.com/check-spelling/check-spelling/wiki/Looking-for-items-locally )
# grep '^[^#].*lorem' .github/actions/spelling/patterns.txt|perl -pne 's/.*i..\?://;s/\).*//' |tr '|' "\n"|sort -f |xargs -n1 ge|perl -pne 's/^[^:]*://'|sort -u|w|sed -e 's/ .*//'|w|review -
# Warning, while `(?i)` is very neat and fancy, if you have some binary files that aren't proper unicode, you might run into:
# ... Operation "substitution (s///)" returns its argument for non-Unicode code point 0x1C19AE (the code point will vary).
# ... You could manually change `(?i)X...` to use `[Xx]...`
# ... or you could add the files to your `excludes` file (a version after 0.0.19 should identify the file path)
(?:(?:\w|\s|[,.])*\b(?i)(?:accusamus|adipisci|adipiscing|aliquam|aliquid|amet|animi|aperiam|architecto|asperiores|assumenda|consectetur|consequatur|consequuntur|corporis|cupiditate|cursus|debitis|dolor|Donec|earum|enim|eros|facilisis|harum|illo|impedit|incidunt|ipsum|lacus|libero|ligula|lorem|magna|neque|nulla|suscipit|tempus|vitae)\b(?:\w|\s|[,.])*)

# hit-count: 33 file-count: 5
# css url wrappings
\burl\([^)]+\)

# hit-count: 31 file-count: 17
# in check-spelling@v0.0.22+, printf markers aren't automatically consumed
# printf markers
(?<!\\)\\[nrt](?=[a-z]{2,})

# hit-count: 15 file-count: 5
# IServiceProvider / isAThing
\b(?:I|isA)(?=(?:[A-Z][a-z]{2,})+(?:[A-Z]|\b))

# hit-count: 12 file-count: 9
# version suffix <word>v#
(?:(?<=[A-Z]{2})V|(?<=[a-z]{2}|[A-Z]{2})v)\d+(?:\b|(?=[a-zA-Z_]))

# hit-count: 8 file-count: 6
# GitHub actions
\buses:\s+[-\w.]+/[-\w./]+@[-\w.]+

# hit-count: 5 file-count: 2
# assign regex
= /[^*]*?(?:[a-z]{3,}|[A-Z]{3,}|[A-Z][a-z]{2,}).*/

# hit-count: 4 file-count: 4
# javascript match regex
\.match\(/[^/\s"]{3,}/[gim]*\s*

# hit-count: 4 file-count: 4
# perl regex test
[!=]~ (?:/.*/|m\{.*?\}|m<.*?>|m([|!/@#,;']).*?\g{-1})

# hit-count: 4 file-count: 2
# lower URL escaped characters
%[0-9a-f][a-f](?=[a-z]{2,})

# hit-count: 3 file-count: 3
# javascript replace regex
\.replace\(/[^/\s"]{3,}/[gim]*\s*,

# hit-count: 3 file-count: 2
# data url in quotes
([`'"])data:(?:[^ `'"].*?|)(?:[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,}).*\g{-1}

# hit-count: 3 file-count: 2
# regex choice
\(\?:[^)]+\|[^)]+\)

# hit-count: 2 file-count: 2
# uuid:
\b[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}\b

# hit-count: 2 file-count: 2
# base64 encoded content
([`'"])[-a-zA-Z=;:/0-9+]{3,}=\g{-1}

# hit-count: 2 file-count: 2
# curl arguments
\b(?:\\n|)curl(?:\.exe|)(?:\s+-[a-zA-Z]{1,2}\b)*(?:\s+-[a-zA-Z]{3,})(?:\s+-[a-zA-Z]+)*

/redirect/[^/]+

(\b|")(?:ar|ca|cs|cy|da|de|de-CH|e[lsu]|es-MX|f[ari]|ga|he|hi|id|it|nl|no|pt|pl|pt-BR|ru|si|sv|th|tr|uk|ur|vi|zh)\g{-1}(?: =>|:) ".*?"

sgid=[-%\w]+
(?:href|name|value)=&quot;.*?&quot;

\\A(?=[A-Za-z]{2})

IDENTIFICATION_PRIVATE_KEY: '.*'
password(?:: | = )".*"
let\(:password\) \{ ".*"
value="[-\w]{16,}
_key: "[\w]{10,}=

let\(:\w+\) \{ "[a-z]+[A-Z0-9][a-zA-Z0-9]+"

W3C

^.*# intentionally misspelled

# Foreign names -- check-spelling doesn't handle these well
\b[a-zO]'[a-z]{3,}\b

%250a

@rails/\w+

organization_name[):{ ]*"?(?:\w+\s)+\w+[",} ]*$
expect\(.*\)\.to eq\(".*"
gem ".*?"
".*?typo\b.*?"

# Questionably acceptable forms of `in to`
# Personally, I prefer `log into`, but people object
# https://www.tprteaching.com/log-into-log-in-to-login/
\b(?:[Ll]og|[Ss]ign) in to\b

# to opt in
\bto opt in\b

# acceptable duplicates
# ls directory listings
[-bcdlpsw](?:[-r][-w][-SsTtx]){3}[\.+*]?\s+\d+\s+\S+\s+\S+\s+\d+\s+
# mount
\bmount\s+-t\s+(\w+)\s+\g{-1}\b
# C types and repeated CSS values
\s(auto|center|div|inherit|long|LONG|none|normal|solid|thin|text|think|transparent|very)(?: \g{-1})+\s
# C struct
\bstruct\s+(\w+)\s+\g{-1}\b
# go templates
\s(\w+)\s+\g{-1}\s+\`(?:graphql|inject|json|yaml):
# doxygen / javadoc / .net
(?:[\\@](?:brief|groupname|t?param|return|retval)|(?:public|private|\[Parameter(?:\(.+\)|)\])(?:\s+static|\s+override|\s+readonly)*)(?:\s+\{\w+\}|)\s+(\w+)\s+\g{-1}\s

# Commit message -- Signed-off-by and friends
^\s*(?:(?:Based-on-patch|Co-authored|Helped|Mentored|Reported|Reviewed|Signed-off)-by|Thanks-to): (?:[^<]*<[^>]*>|[^<]*)\s*$

# Autogenerated revert commit message
^This reverts commit [0-9a-f]{40}\.$

# ignore long runs of a single character:
\b([A-Za-z])\g{-1}{3,}\b