diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 36cc710d..d18dc073 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -9,7 +9,7 @@ repos: # Enforce conventional commit messages before pushing to a remote: - repo: "https://github.com/commitizen-tools/commitizen" - rev: "3.12.0" + rev: "v3.29.0" hooks: - id: "commitizen" diff --git a/.vale.ini b/.vale.ini index 93f4acba..7fdc4991 100644 --- a/.vale.ini +++ b/.vale.ini @@ -178,3 +178,9 @@ Joblint.Sexualised = error Joblint.Starter = error Joblint.Acronyms = error Joblint.Meritocracy = error +Microsoft.URLFormat = error +RedHat.ProductCentricWriting = error +RedHat.EmDash = error +RedHat.Using = error +RedHat.SmartQuotes = error +alex.OCD = error diff --git a/newsfragments/+upgrade-requirements.bugfix.rst b/newsfragments/+upgrade-requirements.bugfix.rst index 5d26ec9f..b4f98119 100644 --- a/newsfragments/+upgrade-requirements.bugfix.rst +++ b/newsfragments/+upgrade-requirements.bugfix.rst @@ -1,2 +1,2 @@ Upgrade all requirements to the most recent versions as of -Thu Nov 9 08:51:35 PM UTC 2023. +Sun Aug 18 12:40:22 AM UTC 2024. diff --git a/styles/Google/EmDash.yml b/styles/Google/EmDash.yml index 1befe72a..5a81fb09 100644 --- a/styles/Google/EmDash.yml +++ b/styles/Google/EmDash.yml @@ -1,12 +1,13 @@ extends: existence message: "Don't put a space before or after a dash." -link: 'https://developers.google.com/style/dashes' +link: "https://developers.google.com/style/dashes" nonword: true level: error action: name: edit params: - - remove - - ' ' + - trim + - " " tokens: - '\s[—–]\s' + diff --git a/styles/Google/EnDash.yml b/styles/Google/EnDash.yml deleted file mode 100644 index b314dc4e..00000000 --- a/styles/Google/EnDash.yml +++ /dev/null @@ -1,13 +0,0 @@ -extends: existence -message: "Use an em dash ('—') instead of '–'." -link: 'https://developers.google.com/style/dashes' -nonword: true -level: error -action: - name: edit - params: - - replace - - '-' - - '—' -tokens: - - '–' diff --git a/styles/Google/Exclamation.yml b/styles/Google/Exclamation.yml index eea5fd24..b4e4a1f7 100644 --- a/styles/Google/Exclamation.yml +++ b/styles/Google/Exclamation.yml @@ -1,9 +1,12 @@ extends: existence message: "Don't use exclamation points in text." -link: 'https://developers.google.com/style/exclamation-points' +link: "https://developers.google.com/style/exclamation-points" nonword: true level: error action: - name: remove + name: edit + params: + - trim_right + - "!" tokens: - '\w+!(?:\s|$)' diff --git a/styles/Google/GenderBias.yml b/styles/Google/GenderBias.yml index 9e701908..36f5a3f8 100644 --- a/styles/Google/GenderBias.yml +++ b/styles/Google/GenderBias.yml @@ -1,47 +1,43 @@ extends: substitution message: "Consider using '%s' instead of '%s'." -link: 'https://developers.google.com/style/inclusive-documentation' ignorecase: true +link: "https://developers.google.com/style/inclusive-documentation" level: error action: name: replace swap: - (?:alumna|alumnus): graduate - (?:alumnae|alumni): graduates - air(?:m[ae]n|wom[ae]n): pilot(s) - anchor(?:m[ae]n|wom[ae]n): anchor(s) - authoress: author - camera(?:m[ae]n|wom[ae]n): camera operator(s) - chair(?:m[ae]n|wom[ae]n): chair(s) - congress(?:m[ae]n|wom[ae]n): member(s) of congress - door(?:m[ae]|wom[ae]n): concierge(s) - draft(?:m[ae]n|wom[ae]n): drafter(s) - fire(?:m[ae]n|wom[ae]n): firefighter(s) - fisher(?:m[ae]n|wom[ae]n): fisher(s) - fresh(?:m[ae]n|wom[ae]n): first-year student(s) - garbage(?:m[ae]n|wom[ae]n): waste collector(s) - lady lawyer: lawyer - ladylike: courteous - landlord: building manager - mail(?:m[ae]n|wom[ae]n): mail carriers - man and wife: husband and wife - man enough: strong enough - mankind: human kind - manmade: manufactured - manpower: personnel - men and girls: men and women - middle(?:m[ae]n|wom[ae]n): intermediary - news(?:m[ae]n|wom[ae]n): journalist(s) - ombuds(?:man|woman): ombuds - oneupmanship: upstaging - poetess: poet - police(?:m[ae]n|wom[ae]n): police officer(s) - repair(?:m[ae]n|wom[ae]n): technician(s) - sales(?:m[ae]n|wom[ae]n): salesperson or sales people - service(?:m[ae]n|wom[ae]n): soldier(s) - steward(?:ess)?: flight attendant - tribes(?:m[ae]n|wom[ae]n): tribe member(s) - waitress: waiter - woman doctor: doctor - woman scientist[s]?: scientist(s) - work(?:m[ae]n|wom[ae]n): worker(s) + (?:alumna|alumnus): graduate + (?:alumnae|alumni): graduates + air(?:m[ae]n|wom[ae]n): pilot(s) + anchor(?:m[ae]n|wom[ae]n): anchor(s) + authoress: author + camera(?:m[ae]n|wom[ae]n): camera operator(s) + door(?:m[ae]|wom[ae]n): concierge(s) + draft(?:m[ae]n|wom[ae]n): drafter(s) + fire(?:m[ae]n|wom[ae]n): firefighter(s) + fisher(?:m[ae]n|wom[ae]n): fisher(s) + fresh(?:m[ae]n|wom[ae]n): first-year student(s) + garbage(?:m[ae]n|wom[ae]n): waste collector(s) + lady lawyer: lawyer + ladylike: courteous + mail(?:m[ae]n|wom[ae]n): mail carriers + man and wife: husband and wife + man enough: strong enough + mankind: human kind|humanity + manmade: manufactured + manpower: personnel + middle(?:m[ae]n|wom[ae]n): intermediary + news(?:m[ae]n|wom[ae]n): journalist(s) + ombuds(?:man|woman): ombuds + oneupmanship: upstaging + poetess: poet + police(?:m[ae]n|wom[ae]n): police officer(s) + repair(?:m[ae]n|wom[ae]n): technician(s) + sales(?:m[ae]n|wom[ae]n): salesperson or sales people + service(?:m[ae]n|wom[ae]n): soldier(s) + steward(?:ess)?: flight attendant + tribes(?:m[ae]n|wom[ae]n): tribe member(s) + waitress: waiter + woman doctor: doctor + woman scientist[s]?: scientist(s) + work(?:m[ae]n|wom[ae]n): worker(s) diff --git a/styles/Google/HeadingPunctuation.yml b/styles/Google/HeadingPunctuation.yml index b538be5b..c1729868 100644 --- a/styles/Google/HeadingPunctuation.yml +++ b/styles/Google/HeadingPunctuation.yml @@ -1,13 +1,13 @@ extends: existence message: "Don't put a period at the end of a heading." -link: 'https://developers.google.com/style/capitalization#capitalization-in-titles-and-headings' +link: "https://developers.google.com/style/capitalization#capitalization-in-titles-and-headings" nonword: true level: warning scope: heading action: name: edit params: - - remove - - '.' + - trim_right + - "." tokens: - '[a-z0-9][.]\s*$' diff --git a/styles/Google/Headings.yml b/styles/Google/Headings.yml index e34d001b..c8d5be26 100644 --- a/styles/Google/Headings.yml +++ b/styles/Google/Headings.yml @@ -26,3 +26,4 @@ exceptions: - Visual - VS - Windows + - JSON diff --git a/styles/Google/LyHyphens.yml b/styles/Google/LyHyphens.yml index ac8f557a..50dacb40 100644 --- a/styles/Google/LyHyphens.yml +++ b/styles/Google/LyHyphens.yml @@ -1,14 +1,14 @@ extends: existence message: "'%s' doesn't need a hyphen." -link: 'https://developers.google.com/style/hyphens' +link: "https://developers.google.com/style/hyphens" level: error ignorecase: false nonword: true action: name: edit params: - - replace - - '-' - - ' ' + - regex + - "-" + - " " tokens: - - '\s[^\s-]+ly-' + - '\b[^\s-]+ly-\w+\b' diff --git a/styles/Google/OptionalPlurals.yml b/styles/Google/OptionalPlurals.yml index f858ea6f..4a8767d6 100644 --- a/styles/Google/OptionalPlurals.yml +++ b/styles/Google/OptionalPlurals.yml @@ -1,12 +1,12 @@ extends: existence message: "Don't use plurals in parentheses such as in '%s'." -link: 'https://developers.google.com/style/plurals-parentheses' +link: "https://developers.google.com/style/plurals-parentheses" level: error nonword: true action: name: edit params: - - remove - - '(s)' + - trim_right + - "(s)" tokens: - '\b\w+\(s\)' diff --git a/styles/Google/WordList.yml b/styles/Google/WordList.yml index 0d675f23..b3c6a403 100644 --- a/styles/Google/WordList.yml +++ b/styles/Google/WordList.yml @@ -38,7 +38,6 @@ swap: cellular network: mobile network chapter: documents|pages|sections check box: checkbox - check: select CLI: command-line tool click on: click|click in Cloud: Google Cloud Platform|GCP diff --git a/styles/Microsoft/Accessibility.yml b/styles/Microsoft/Accessibility.yml index 05bf9273..f5f48293 100644 --- a/styles/Microsoft/Accessibility.yml +++ b/styles/Microsoft/Accessibility.yml @@ -6,20 +6,25 @@ ignorecase: true tokens: - a victim of - able-bodied - - affected by - an epileptic + - birth defect - crippled + - differently abled - disabled - dumb - handicapped - handicaps - - healthy + - healthy person + - hearing-impaired - lame - maimed + - mentally handicapped - missing a limb - mute - - normal + - non-verbal + - normal person - sight-impaired + - slow learner - stricken with - suffers from - vision-impaired diff --git a/styles/Microsoft/Adverbs.yml b/styles/Microsoft/Adverbs.yml index 07d98d83..5619f99d 100644 --- a/styles/Microsoft/Adverbs.yml +++ b/styles/Microsoft/Adverbs.yml @@ -1,5 +1,5 @@ extends: existence -message: "Consider removing '%s'." +message: "Remove '%s' if it's not important to the meaning of the statement." link: https://docs.microsoft.com/en-us/style-guide/word-choice/use-simple-words-concise-sentences ignorecase: true level: warning @@ -54,6 +54,7 @@ tokens: - doubtfully - dreamily - easily + - effectively - elegantly - energetically - enormously @@ -164,6 +165,7 @@ tokens: - quickly - quietly - quirkily + - quite - quizzically - randomly - rapidly diff --git a/styles/Microsoft/ComplexWords.yml b/styles/Microsoft/ComplexWords.yml deleted file mode 100644 index 65b7a347..00000000 --- a/styles/Microsoft/ComplexWords.yml +++ /dev/null @@ -1,120 +0,0 @@ -extends: substitution -message: "Consider using '%s' instead of '%s'." -link: https://docs.microsoft.com/en-us/style-guide/word-choice/use-simple-words-concise-sentences -ignorecase: true -level: suggestion -action: - name: replace -swap: - "approximate(?:ly)?": about - abundance: plenty - accelerate: speed up - accentuate: stress - accompany: go with - accomplish: carry out|do - accorded: given - accordingly: so - accrue: add - accurate: right|exact - acquiesce: agree - acquire: get|buy - additional: more|extra - address: discuss - addressees: you - adjacent to: next to - adjustment: change - admissible: allowed - advantageous: helpful - advise: tell - aggregate: total - aircraft: plane - alleviate: ease - allocate: assign|divide - alternatively: or - alternatives: choices|options - ameliorate: improve - amend: change - anticipate: expect - apparent: clear|plain - ascertain: discover|find out - assistance: help - attain: meet - attempt: try - authorize: allow - belated: late - bestow: give - cease: stop|end - collaborate: work together - commence: begin - compensate: pay - component: part - comprise: form|include - concept: idea - concerning: about - confer: give|award - consequently: so - consolidate: merge - constitutes: forms - contains: has - convene: meet - demonstrate: show|prove - depart: leave - designate: choose - desire: want|wish - determine: decide|find - detrimental: bad|harmful - disclose: share|tell - discontinue: stop - disseminate: send|give - eliminate: end - elucidate: explain - employ: use - enclosed: inside|included - encounter: meet - endeavor: try - enumerate: count - equitable: fair - equivalent: equal - exclusively: only - expedite: hurry - facilitate: ease - females: women - finalize: complete|finish - frequently: often - identical: same - incorrect: wrong - indication: sign - initiate: start|begin - itemized: listed - jeopardize: risk - liaise: work with|partner with - maintain: keep|support - methodology: method - modify: change - monitor: check|watch - multiple: many - necessitate: cause - notify: tell - numerous: many - objective: aim|goal - obligate: bind|compel - optimum: best|most - permit: let - portion: part - possess: own - previous: earlier - previously: before - prioritize: rank - procure: buy - provide: give|offer - purchase: buy - relocate: move - solicit: request - state-of-the-art: latest - subsequent: later|next - substantial: large - sufficient: enough - terminate: end - transmit: send - utilization: use - utilize: use diff --git a/styles/Microsoft/Dashes.yml b/styles/Microsoft/Dashes.yml index 2894cf72..72b05ba3 100644 --- a/styles/Microsoft/Dashes.yml +++ b/styles/Microsoft/Dashes.yml @@ -7,7 +7,7 @@ level: error action: name: edit params: - - remove - - ' ' + - trim + - " " tokens: - - '[—–]\s|\s[—–]' + - '\s[—–]\s|\s[—–]|[—–]\s' diff --git a/styles/Microsoft/FirstPerson.yml b/styles/Microsoft/FirstPerson.yml index 77761af8..f58dea31 100644 --- a/styles/Microsoft/FirstPerson.yml +++ b/styles/Microsoft/FirstPerson.yml @@ -5,8 +5,8 @@ ignorecase: true level: warning nonword: true tokens: - - (?:^|\s)I\s - - (?:^|\s)I,\s + - (?:^|\s)I(?=\s) + - (?:^|\s)I(?=,\s) - \bI'd\b - \bI'll\b - \bI'm\b diff --git a/styles/Microsoft/GenderBias.yml b/styles/Microsoft/GenderBias.yml index 3d873aa3..fc987b94 100644 --- a/styles/Microsoft/GenderBias.yml +++ b/styles/Microsoft/GenderBias.yml @@ -2,43 +2,41 @@ extends: substitution message: "Consider using '%s' instead of '%s'." ignorecase: true level: error +action: + name: replace swap: - (?:alumna|alumnus): graduate - (?:alumnae|alumni): graduates - air(?:m[ae]n|wom[ae]n): pilot(s) - anchor(?:m[ae]n|wom[ae]n): anchor(s) - authoress: author - camera(?:m[ae]n|wom[ae]n): camera operator(s) - chair(?:m[ae]n|wom[ae]n): chair(s) - congress(?:m[ae]n|wom[ae]n): member(s) of congress - door(?:m[ae]|wom[ae]n): concierge(s) - draft(?:m[ae]n|wom[ae]n): drafter(s) - fire(?:m[ae]n|wom[ae]n): firefighter(s) - fisher(?:m[ae]n|wom[ae]n): fisher(s) - fresh(?:m[ae]n|wom[ae]n): first-year student(s) - garbage(?:m[ae]n|wom[ae]n): waste collector(s) - lady lawyer: lawyer - ladylike: courteous - landlord: building manager - mail(?:m[ae]n|wom[ae]n): mail carriers - man and wife: husband and wife - man enough: strong enough - mankind: human kind - manmade: manufactured - manpower: personnel - men and girls: men and women - middle(?:m[ae]n|wom[ae]n): intermediary - news(?:m[ae]n|wom[ae]n): journalist(s) - ombuds(?:man|woman): ombuds - oneupmanship: upstaging - poetess: poet - police(?:m[ae]n|wom[ae]n): police officer(s) - repair(?:m[ae]n|wom[ae]n): technician(s) - sales(?:m[ae]n|wom[ae]n): salesperson or sales people - service(?:m[ae]n|wom[ae]n): soldier(s) - steward(?:ess)?: flight attendant - tribes(?:m[ae]n|wom[ae]n): tribe member(s) - waitress: waiter - woman doctor: doctor - woman scientist[s]?: scientist(s) - work(?:m[ae]n|wom[ae]n): worker(s) + (?:alumna|alumnus): graduate + (?:alumnae|alumni): graduates + air(?:m[ae]n|wom[ae]n): pilot(s) + anchor(?:m[ae]n|wom[ae]n): anchor(s) + authoress: author + camera(?:m[ae]n|wom[ae]n): camera operator(s) + door(?:m[ae]|wom[ae]n): concierge(s) + draft(?:m[ae]n|wom[ae]n): drafter(s) + fire(?:m[ae]n|wom[ae]n): firefighter(s) + fisher(?:m[ae]n|wom[ae]n): fisher(s) + fresh(?:m[ae]n|wom[ae]n): first-year student(s) + garbage(?:m[ae]n|wom[ae]n): waste collector(s) + lady lawyer: lawyer + ladylike: courteous + mail(?:m[ae]n|wom[ae]n): mail carriers + man and wife: husband and wife + man enough: strong enough + mankind: human kind + manmade: manufactured + manpower: personnel + middle(?:m[ae]n|wom[ae]n): intermediary + news(?:m[ae]n|wom[ae]n): journalist(s) + ombuds(?:man|woman): ombuds + oneupmanship: upstaging + poetess: poet + police(?:m[ae]n|wom[ae]n): police officer(s) + repair(?:m[ae]n|wom[ae]n): technician(s) + sales(?:m[ae]n|wom[ae]n): salesperson or sales people + service(?:m[ae]n|wom[ae]n): soldier(s) + steward(?:ess)?: flight attendant + tribes(?:m[ae]n|wom[ae]n): tribe member(s) + waitress: waiter + woman doctor: doctor + woman scientist[s]?: scientist(s) + work(?:m[ae]n|wom[ae]n): worker(s) diff --git a/styles/Microsoft/HeadingPunctuation.yml b/styles/Microsoft/HeadingPunctuation.yml index af04b02e..4954cb11 100644 --- a/styles/Microsoft/HeadingPunctuation.yml +++ b/styles/Microsoft/HeadingPunctuation.yml @@ -7,7 +7,7 @@ scope: heading action: name: edit params: - - remove - - '.?!' + - trim_right + - ".?!" tokens: - - '[a-z][.?!](?:\s|$)' + - "[a-z][.?!]$" diff --git a/styles/Microsoft/Hyphens.yml b/styles/Microsoft/Hyphens.yml index 90bbb5de..7e5731c9 100644 --- a/styles/Microsoft/Hyphens.yml +++ b/styles/Microsoft/Hyphens.yml @@ -7,8 +7,8 @@ nonword: true action: name: edit params: - - replace - - '-' - - ' ' + - regex + - "-" + - " " tokens: - - '\s[^\s-]+ly-' + - '\b[^\s-]+ly-\w+\b' diff --git a/styles/Microsoft/Negative.yml b/styles/Microsoft/Negative.yml index d6ff2f22..d73221f5 100644 --- a/styles/Microsoft/Negative.yml +++ b/styles/Microsoft/Negative.yml @@ -6,8 +6,8 @@ level: error action: name: edit params: - - replace - - '-' - - '–' + - regex + - "-" + - "–" tokens: - - '\s-\d+\s' + - '(?<=\s)-\d+(?:\.\d+)?\b' diff --git a/styles/Microsoft/Plurals.yml b/styles/Microsoft/Plurals.yml new file mode 100644 index 00000000..1bb6660a --- /dev/null +++ b/styles/Microsoft/Plurals.yml @@ -0,0 +1,7 @@ +extends: existence +message: "Don't add '%s' to a singular noun. Use plural instead." +ignorecase: true +level: error +link: https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/s/s-es +raw: + - '\(s\)|\(es\)' diff --git a/styles/Microsoft/RangeFormat.yml b/styles/Microsoft/RangeFormat.yml deleted file mode 100644 index f1d736e9..00000000 --- a/styles/Microsoft/RangeFormat.yml +++ /dev/null @@ -1,13 +0,0 @@ -extends: existence -message: "Use an en dash in a range of numbers." -link: https://docs.microsoft.com/en-us/style-guide/numbers -nonword: true -level: error -action: - name: edit - params: - - replace - - '-' - - '–' -tokens: - - '\b\d+\s?[-]\s?\d+\b' diff --git a/styles/Microsoft/RangeTime.yml b/styles/Microsoft/RangeTime.yml index cdd4b334..72d8bbfb 100644 --- a/styles/Microsoft/RangeTime.yml +++ b/styles/Microsoft/RangeTime.yml @@ -6,8 +6,8 @@ level: error action: name: edit params: - - replace - - '[-–]' - - 'to' + - regex + - "[-–]" + - "to" tokens: - '\b(?:AM|PM)\s?[-–]\s?.+(?:AM|PM)\b' diff --git a/styles/Microsoft/Ranges.yml b/styles/Microsoft/Ranges.yml deleted file mode 100644 index 67d9702b..00000000 --- a/styles/Microsoft/Ranges.yml +++ /dev/null @@ -1,7 +0,0 @@ -extends: existence -message: "In most cases, use 'from' or 'through' to describe a range of numbers." -link: 'https://docs.microsoft.com/en-us/style-guide/numbers' -nonword: true -level: warning -tokens: - - '\b\d+\s?[-–]\s?\d+\b' diff --git a/styles/Microsoft/Terms.yml b/styles/Microsoft/Terms.yml index 7708900e..65fca10a 100644 --- a/styles/Microsoft/Terms.yml +++ b/styles/Microsoft/Terms.yml @@ -7,27 +7,28 @@ ignorecase: true action: name: replace swap: - '(?:agent|virtual assistant|intelligent personal assistant)': personal digital assistant - '(?:drive C:|drive C>|C: drive)': drive C - '(?:internet bot|web robot)s?': bot(s) - '(?:microsoft cloud|the cloud)': cloud - '(?:mobile|smart) ?phone': phone - '24/7': every day - 'audio(?:-| )book': audiobook - 'back(?:-| )light': backlight - 'chat ?bots?': chatbot(s) + "(?:agent|virtual assistant|intelligent personal assistant)": personal digital assistant + "(?:assembler|machine language)": assembly language + "(?:drive C:|drive C>|C: drive)": drive C + "(?:internet bot|web robot)s?": bot(s) + "(?:microsoft cloud|the cloud)": cloud + "(?:mobile|smart) ?phone": phone + "24/7": every day + "audio(?:-| )book": audiobook + "back(?:-| )light": backlight + "chat ?bots?": chatbot(s) adaptor: adapter administrate: administer afterwards: afterward alphabetic: alphabetical alphanumerical: alphanumeric + an URL: a URL anti-aliasing: antialiasing anti-malware: antimalware anti-spyware: antispyware anti-virus: antivirus appendixes: appendices artificial intelligence: AI - '(?:assembler|machine language)': assembly language caap: CaaP conversation-as-a-platform: conversation as a platform eb: EB diff --git a/styles/Microsoft/URLFormat.yml b/styles/Microsoft/URLFormat.yml index 82e702f9..4e24aa59 100644 --- a/styles/Microsoft/URLFormat.yml +++ b/styles/Microsoft/URLFormat.yml @@ -1,10 +1,9 @@ extends: substitution -message: "Use '%s' instead of '%s'." +message: Use 'of' (not 'for') to describe the relationship of the word URL to a resource. ignorecase: true -level: error +link: https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/u/url +level: suggestion action: name: replace swap: URL for: URL of - an URL: a URL - diff --git a/styles/Microsoft/Wordiness.yml b/styles/Microsoft/Wordiness.yml index 22a4c932..3d008d18 100644 --- a/styles/Microsoft/Wordiness.yml +++ b/styles/Microsoft/Wordiness.yml @@ -2,20 +2,23 @@ extends: substitution message: "Consider using '%s' instead of '%s'." link: https://docs.microsoft.com/en-us/style-guide/word-choice/use-simple-words-concise-sentences ignorecase: true -level: warning +level: suggestion action: name: replace swap: - (?:give|gave) rise to: lead to + (?:extract|take away|eliminate): remove + (?:in order to|as a means to): to + (?:inform|let me know): tell (?:previous|prior) to: before + (?:utilize|make use of): use a (?:large)? majority of: most a (?:large)? number of: many a myriad of: myriad adversely impact: hurt all across: across + all of (?!a sudden|these): all all of a sudden: suddenly all of these: these - all of: all all-time record: record almost all: most almost never: seldom @@ -52,13 +55,14 @@ swap: continue on: continue despite the fact that: although disappear from sight: disappear + doomed to fail: doomed drag and drop: drag drag-and-drop: drag - doomed to fail: doomed due to the fact that: because during the period of: during during the time that: while emergency situation: emergency + establish connectivity: connect except when: unless excessive number: too many extend an invitation: invite @@ -74,6 +78,7 @@ swap: in a careful manner: carefully in a thoughtful manner: thoughtfully in a timely manner: timely + in addition: also in an effort to: to in between: between in lieu of: instead of diff --git a/styles/RedHat/CaseSensitiveTerms.yml b/styles/RedHat/CaseSensitiveTerms.yml index 03b4b072..456dd0fd 100644 --- a/styles/RedHat/CaseSensitiveTerms.yml +++ b/styles/RedHat/CaseSensitiveTerms.yml @@ -2,21 +2,20 @@ extends: substitution ignorecase: false level: error -link: https://redhat-documentation.github.io/vale-at-red-hat/docs/reference-guide/casesensitiveterms/ -message: Use '%s' rather than '%s'. -# source: "https://redhat-documentation.github.io/supplementary-style-guide/#glossary-terms-conventions" +link: https://redhat-documentation.github.io/vale-at-red-hat/docs/main/reference-guide/casesensitiveterms/ +message: "Use '%s' rather than '%s'." action: name: replace swap: + "(?{7}\s.*$' diff --git a/styles/RedHat/PascalCamelCase.yml b/styles/RedHat/PascalCamelCase.yml index 4bd42a5c..a2f3ea10 100644 --- a/styles/RedHat/PascalCamelCase.yml +++ b/styles/RedHat/PascalCamelCase.yml @@ -53,6 +53,7 @@ exceptions: - FireWire - FreeRADIUS - GbE + - GBps - GiB - GitHub - GitLab @@ -84,6 +85,7 @@ exceptions: - JBoss - JetBrains - JUnit + - kBps - KiB - LangTags - LGPLv @@ -95,6 +97,7 @@ exceptions: - LiquidIO - ManageIQ - MariaDB + - MBps - MegaRAID - MiB - MicroProfile @@ -108,6 +111,7 @@ exceptions: - NetXen - NetXtreme - NFSv + - NMState - NuGet - NVidia - NVMe @@ -119,8 +123,8 @@ exceptions: - OpenID - OpenIPMI - OpenJDK - - OpenRewrite - OpenRAN + - OpenRewrite - OpenSCAP - OpenShift - OpenSSH @@ -163,15 +167,18 @@ exceptions: - STMicroelectronics - SuperLU - SysV + - TBps - TiB - TuneD - TypeScript - UltraSPARC - USBGuard + - vCenter - vDisk - vHost - VMware - vSphere + - vSwitch - WebAuthn - WebSocket - WireGuard diff --git a/styles/RedHat/PassiveVoice.yml b/styles/RedHat/PassiveVoice.yml index 901babba..67b16afe 100644 --- a/styles/RedHat/PassiveVoice.yml +++ b/styles/RedHat/PassiveVoice.yml @@ -184,3 +184,10 @@ tokens: - woven - written - wrung +exceptions: + - deprecated + - displayed + - imported + - supported + - tested + - trusted diff --git a/styles/RedHat/ProductCentricWriting.yml b/styles/RedHat/ProductCentricWriting.yml new file mode 100644 index 00000000..37216994 --- /dev/null +++ b/styles/RedHat/ProductCentricWriting.yml @@ -0,0 +1,8 @@ +--- +extends: existence +ignorecase: true +level: suggestion +link: https://redhat-documentation.github.io/vale-at-red-hat/docs/main/reference-guide/productcentricwriting/ +message: "Do not use transitive verb constructions like '%s' to grant abilities to inanimate objects. Whenever possible, use direct, user-focused sentences where the subject of the sentence performs the action." +tokens: + - '(allows?|enables?|lets?|permits?)\s(you|customers|the customer|the user|users)' diff --git a/styles/RedHat/ReadabilityGrade.yml b/styles/RedHat/ReadabilityGrade.yml index 607cbdd7..a401a67c 100644 --- a/styles/RedHat/ReadabilityGrade.yml +++ b/styles/RedHat/ReadabilityGrade.yml @@ -1,12 +1,9 @@ --- extends: readability -grade: 21 -level: suggestion +grade: 9 +message: "Simplify your language. The calculated Flesch–Kincaid grade level of %s is above the recommended reading grade level of 9." link: https://redhat-documentation.github.io/vale-at-red-hat/docs/main/reference-guide/readabilitygrade/ -message: "Grade level (%s) too high." +level: suggestion metrics: - - Automated Readability - - Coleman-Liau - Flesch-Kincaid - - Gunning Fog - - SMOG + diff --git a/styles/RedHat/RepeatedWords.yml b/styles/RedHat/RepeatedWords.yml index 61b6577e..3893d9b4 100644 --- a/styles/RedHat/RepeatedWords.yml +++ b/styles/RedHat/RepeatedWords.yml @@ -1,10 +1,16 @@ --- extends: repetition -message: "'%s' is repeated!" +message: "'%s' is repeated." level: warning link: https://redhat-documentation.github.io/vale-at-red-hat/docs/main/reference-guide/repeatedwords/ ignorecase: false alpha: true +action: + name: edit + params: + - regex + - '(\w+)(\s\w+)' # pattern + - "$1" # replace tokens: - '[^\s\.]+' - '[^\s]+' diff --git a/styles/RedHat/SimpleWords.yml b/styles/RedHat/SimpleWords.yml index a712c322..452e7e48 100644 --- a/styles/RedHat/SimpleWords.yml +++ b/styles/RedHat/SimpleWords.yml @@ -12,7 +12,6 @@ swap: "objective(?! C?)": aim|goal absent: none|not here abundance: plenty - accelerate: speed up accentuate: stress accompany: go with accomplish: carry out|do @@ -118,3 +117,4 @@ swap: transmit: send utilization: use utilize: use + utilizing: using diff --git a/styles/RedHat/Slash.yml b/styles/RedHat/Slash.yml index 69fd9757..7584c390 100644 --- a/styles/RedHat/Slash.yml +++ b/styles/RedHat/Slash.yml @@ -5,18 +5,23 @@ level: warning link: https://redhat-documentation.github.io/vale-at-red-hat/docs/main/reference-guide/slash/ message: "Use either 'or' or 'and' in '%s'" # source: "IBM - Slashes, p. 68" +scope: + - sentence + - heading tokens: - '(?__': Separate words by underscores in user-replaced values +nonword: true +action: + name: edit + params: + - regex + - "(-)" # pattern + - "_" # replace +tokens: + - '__<[a-z_\x60]+-[\x60a-z_-]+>__' + - '<[a-z_]+-[a-z_-]+>' \ No newline at end of file diff --git a/styles/RedHat/Using.yml b/styles/RedHat/Using.yml new file mode 100644 index 00000000..869cdc9b --- /dev/null +++ b/styles/RedHat/Using.yml @@ -0,0 +1,14 @@ +--- +extends: sequence +message: "Use 'by using' instead of 'using' when it follows a noun for clarity and grammatical correctness." +link: https://redhat-documentation.github.io/vale-at-red-hat/docs/main/reference-guide/using/ +level: warning +action: + name: edit + params: + - regex + - '(\w+)( using)' # pattern + - "$1 by using" # replace +tokens: + - tag: NN|NNP|NNPS|NNS + - pattern: using diff --git a/styles/alex/Ablist.yml b/styles/alex/Ablist.yml index cd6ddb5b..62887a81 100644 --- a/styles/alex/Ablist.yml +++ b/styles/alex/Ablist.yml @@ -157,9 +157,6 @@ swap: nuts: rude|malicious|mean|disgusting|incredible|vile|person with symptoms of mental illness|person with mental illness|person with symptoms of a mental disorder|person with a mental disorder - o.c.d: has an anxiety disorder|obsessive|pedantic|niggly|picky - o.c.d.: has an anxiety disorder|obsessive|pedantic|niggly|picky - ocd: has an anxiety disorder|obsessive|pedantic|niggly|picky panic attack: fit of terror|scare paraplegic: person with paraplegia psycho: rude|malicious|mean|disgusting|incredible|vile|person with symptoms of mental diff --git a/styles/alex/OCD.yml b/styles/alex/OCD.yml new file mode 100644 index 00000000..db5f59be --- /dev/null +++ b/styles/alex/OCD.yml @@ -0,0 +1,10 @@ +--- +extends: substitution +message: When referring to a person, consider using '%s' instead of '%s'. +ignorecase: true +level: warning +nonword: true +action: + name: replace +swap: + '\bocd\b|o\.c\.d\.': has an anxiety disorder|obsessive|pedantic|niggly|picky diff --git a/styles/alex/ProfanityLikely.yml b/styles/alex/ProfanityLikely.yml index 1c03e198..b1afe3d2 100644 --- a/styles/alex/ProfanityLikely.yml +++ b/styles/alex/ProfanityLikely.yml @@ -1,5 +1,5 @@ extends: existence -message: Don't use '%s', it’s profane. +message: Don't use '%s', it's profane. level: warning ignorecase: true tokens: diff --git a/styles/alex/ProfanityUnlikely.yml b/styles/alex/ProfanityUnlikely.yml index 8e13052d..5fc8ffbd 100644 --- a/styles/alex/ProfanityUnlikely.yml +++ b/styles/alex/ProfanityUnlikely.yml @@ -1,5 +1,5 @@ extends: existence -message: Be careful with '%s', it’s profane in some cases. +message: Be careful with '%s', it's profane in some cases. level: warning ignorecase: true tokens: diff --git a/styles/alex/Race.yml b/styles/alex/Race.yml index 9979c0b2..7f3c4c3d 100644 --- a/styles/alex/Race.yml +++ b/styles/alex/Race.yml @@ -78,10 +78,6 @@ swap: towel heads: Arabs|Middle Eastern People tribe: society|community white list: passlist|alrightlist|safelist|allow list - white space: space|blank - white spaces: space|blank whitelist: passlist|alrightlist|safelist|allow list whitelisted: passlisted|alrightlisted|safelisted|allow-listed whitelisting: passlisting|alrightlisting|safelisting|allow-listing - whitespace: space|blank - whitespaces: space|blank diff --git a/styles/code.ini b/styles/code.ini index a1378a53..765e3f0d 100644 --- a/styles/code.ini +++ b/styles/code.ini @@ -215,3 +215,9 @@ Joblint.Sexualised = error Joblint.Starter = error Joblint.Acronyms = error Joblint.Meritocracy = error +Microsoft.URLFormat = error +RedHat.ProductCentricWriting = error +RedHat.EmDash = error +RedHat.Using = error +RedHat.SmartQuotes = error +alex.OCD = error diff --git a/styles/proselint/Needless.yml b/styles/proselint/Needless.yml index 1f2732e1..820ae5c0 100644 --- a/styles/proselint/Needless.yml +++ b/styles/proselint/Needless.yml @@ -85,7 +85,7 @@ swap: conspicuity: conspicuousness conspiratorialist: conspirator constitutionist: constitutionalist - contingence: contigency + contingence: contingency contributary: contributory contumacity: contumacy conversible: convertible diff --git a/styles/proselint/Nonwords.yml b/styles/proselint/Nonwords.yml index 57e7b9e4..c6b0e96f 100644 --- a/styles/proselint/Nonwords.yml +++ b/styles/proselint/Nonwords.yml @@ -11,7 +11,7 @@ swap: confirmant: confirmand confirmants: confirmands conversate: converse - crained: cranded + crained: craned discomforture: discomfort|discomfiture dispersement: disbursement|dispersal doubtlessly: doubtless|undoubtedly diff --git a/styles/write-good/Weasel.yml b/styles/write-good/Weasel.yml index e2939144..d1d90a7b 100644 --- a/styles/write-good/Weasel.yml +++ b/styles/write-good/Weasel.yml @@ -3,205 +3,27 @@ message: "'%s' is a weasel word!" ignorecase: true level: warning tokens: - - absolutely - - accidentally - - additionally - - allegedly - - alternatively - - angrily - - anxiously - - approximately - - awkwardly - - badly - - barely - - beautifully - - blindly - - boldly - - bravely - - brightly - - briskly - - bristly - - bubbly - - busily - - calmly - - carefully - - carelessly - - cautiously - - cheerfully - clearly - - closely - - coldly - completely - - consequently - - correctly - - courageously - - crinkly - - cruelly - - crumbly - - cuddly - - currently - - daily - - daringly - - deadly - - definitely - - deliberately - - doubtfully - - dumbly - - eagerly - - early - - easily - - elegantly - - enormously - - enthusiastically - - equally - - especially - - eventually - - exactly - exceedingly - - exclusively + - excellent - extremely - fairly - - faithfully - - fatally - - fiercely - - finally - - fondly - - few - - foolishly - - fortunately - - frankly - - frantically - - generously - - gently - - giggly - - gladly - - gracefully - - greedily - - happily - - hardly - - hastily - - healthily - - heartily - - helpfully - - honestly - - hourly - - hungrily - - hurriedly - - immediately - - impatiently - - inadequately - - ingeniously - - innocently - - inquisitively + - huge - interestingly - - irritably - - jiggly - - joyously - - justly - - kindly + - is a number - largely - - lately - - lazily - - likely - - literally - - lonely - - loosely - - loudly - - loudly - - luckily - - madly - - many - - mentally - - mildly - - monthly - - mortally - mostly - - mysteriously - - neatly - - nervously - - nightly - - noisily - - normally - - obediently - - occasionally - - only - - openly - - painfully - - particularly - - patiently - - perfectly - - politely - - poorly - - powerfully - - presumably - - previously - - promptly - - punctually - - quarterly - - quickly - - quietly - - rapidly - - rarely - - really - - recently - - recklessly - - regularly - - remarkably + - obviously + - quite - relatively - - reluctantly - - repeatedly - - rightfully - - roughly - - rudely - - sadly - - safely - - selfishly - - sensibly - - seriously - - sharply - - shortly - - shyly + - remarkably + - several - significantly - - silently - - simply - - sleepily - - slowly - - smartly - - smelly - - smoothly - - softly - - solemnly - - sparkly - - speedily - - stealthily - - sternly - - stupidly - substantially - - successfully - - suddenly - surprisingly - - suspiciously - - swiftly - - tenderly - - tensely - - thoughtfully - - tightly - - timely - - truthfully - - unexpectedly - - unfortunately + - tiny - usually + - various + - vast - very - - victoriously - - violently - - vivaciously - - warmly - - waverly - - weakly - - wearily - - weekly - - wildly - - wisely - - worldly - - wrinkly - - yearly