mirror of
https://github.com/Automattic/harper.git
synced 2025-12-23 08:48:15 +00:00
Some checks failed
Binaries / harper-ls - Windows-x86_64 (push) Has been cancelled
Build Web / build-web (push) Has been cancelled
Binaries / harper-cli - macOS-aarch64 (push) Has been cancelled
Binaries / harper-cli - Linux-aarch64-GNU (push) Has been cancelled
Binaries / harper-cli - Linux-aarch64-musl (push) Has been cancelled
Binaries / harper-cli - macOS-x86_64 (push) Has been cancelled
Binaries / harper-cli - Linux-x86_64-GNU (push) Has been cancelled
Binaries / harper-cli - Linux-x86_64-musl (push) Has been cancelled
Binaries / harper-cli - Windows-x86_64 (push) Has been cancelled
Binaries / harper-ls - macOS-aarch64 (push) Has been cancelled
Binaries / harper-ls - Linux-aarch64-GNU (push) Has been cancelled
Binaries / harper-ls - Linux-aarch64-musl (push) Has been cancelled
Binaries / harper-ls - macOS-x86_64 (push) Has been cancelled
Binaries / harper-ls - Linux-x86_64-GNU (push) Has been cancelled
Binaries / harper-ls - Linux-x86_64-musl (push) Has been cancelled
Just Checks / just test-vscode (push) Has been cancelled
WordPress Plugin / wp-plugin (push) Has been cancelled
VS Code Plugin / alpine-arm64 (push) Has been cancelled
VS Code Plugin / alpine-x64 (push) Has been cancelled
Chrome Plugin / chrome-plugin (push) Has been cancelled
Just Checks / just check-js (push) Has been cancelled
VS Code Plugin / darwin-x64 (push) Has been cancelled
Just Checks / just check-rust (push) Has been cancelled
Just Checks / just test-chrome-plugin (push) Has been cancelled
Just Checks / just test-firefox-plugin (push) Has been cancelled
Just Checks / just test-harperjs (push) Has been cancelled
Just Checks / just test-obsidian (push) Has been cancelled
Just Checks / just test-rust (push) Has been cancelled
VS Code Plugin / darwin-arm64 (push) Has been cancelled
VS Code Plugin / linux-arm64 (push) Has been cancelled
VS Code Plugin / linux-armhf (push) Has been cancelled
VS Code Plugin / linux-x64 (push) Has been cancelled
VS Code Plugin / win32-arm64 (push) Has been cancelled
VS Code Plugin / win32-x64 (push) Has been cancelled
harper-brill@1.3.0 harper-comments@1.3.0 harper-core@1.3.0 harper-html@1.3.0 harper-ink@1.3.0 harper-jjdescription@1.3.0 harper-literate-haskell@1.3.0 harper-ls@1.3.0 harper-pos-utils@1.3.0 harper-python@1.3.0 harper-stats@1.3.0 harper-tree-sitter@1.3.0 harper-typst@1.3.0 Generated by cargo-workspaces
3170 lines
109 KiB
JSON
3170 lines
109 KiB
JSON
{
|
||
"name": "harper",
|
||
"displayName": "Harper - Grammar / Spell Checking",
|
||
"description": "The grammar checker for developers",
|
||
"version": "1.3.0",
|
||
"private": true,
|
||
"author": "Elijah Potter",
|
||
"publisher": "elijah-potter",
|
||
"license": "Apache-2.0",
|
||
"icon": "icon.png",
|
||
"galleryBanner": {
|
||
"color": "#F2F2F2",
|
||
"theme": "light"
|
||
},
|
||
"repository": {
|
||
"type": "git",
|
||
"url": "https://github.com/automattic/harper"
|
||
},
|
||
"bugs": {
|
||
"url": "https://github.com/automattic/harper/issues"
|
||
},
|
||
"engines": {
|
||
"vscode": "^1.96.2"
|
||
},
|
||
"categories": [
|
||
"Other"
|
||
],
|
||
"keywords": [
|
||
"grammar",
|
||
"spellcheck",
|
||
"writing"
|
||
],
|
||
"activationEvents": [
|
||
"onLanguage:c",
|
||
"onLanguage:clojure",
|
||
"onLanguage:cmake",
|
||
"onLanguage:cpp",
|
||
"onLanguage:csharp",
|
||
"onLanguage:dart",
|
||
"onLanguage:git-commit",
|
||
"onLanguage:go",
|
||
"onLanguage:haskell",
|
||
"onLanguage:html",
|
||
"onLanguage:ink",
|
||
"onLanguage:java",
|
||
"onLanguage:javascript",
|
||
"onLanguage:javascriptreact",
|
||
"onLanguage:jj-commit",
|
||
"onLanguage:kotlin",
|
||
"onLanguage:literate haskell",
|
||
"onLanguage:lua",
|
||
"onLanguage:markdown",
|
||
"onLanguage:nix",
|
||
"onLanguage:org",
|
||
"onLanguage:php",
|
||
"onLanguage:plaintext",
|
||
"onLanguage:python",
|
||
"onLanguage:ruby",
|
||
"onLanguage:rust",
|
||
"onLanguage:scala",
|
||
"onLanguage:shellscript",
|
||
"onLanguage:solidity",
|
||
"onLanguage:swift",
|
||
"onLanguage:toml",
|
||
"onLanguage:typescript",
|
||
"onLanguage:typescriptreact",
|
||
"onLanguage:typst"
|
||
],
|
||
"main": "./build/extension.js",
|
||
"contributes": {
|
||
"icons": {
|
||
"harper-logo": {
|
||
"description": "Harper logo",
|
||
"default": {
|
||
"fontPath": "media/harper.woff",
|
||
"fontCharacter": "\\e900"
|
||
}
|
||
}
|
||
},
|
||
"commands": [
|
||
{
|
||
"command": "harper.languageserver.restart",
|
||
"title": "Harper: Restart Language Server",
|
||
"description": "Restart harper-ls"
|
||
}
|
||
],
|
||
"configuration": {
|
||
"type": "object",
|
||
"title": "Harper",
|
||
"properties": {
|
||
"harper.path": {
|
||
"scope": "resource",
|
||
"type": "string",
|
||
"description": "Optional path to a harper-ls executable to use."
|
||
},
|
||
"harper.codeActions.ForceStable": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "Make code actions appear in \"stable\" positions by placing code actions that should always be available, like adding misspelled words in the dictionary, first."
|
||
},
|
||
"harper.dialect": {
|
||
"scope": "resource",
|
||
"type": "string",
|
||
"enum": [
|
||
"British",
|
||
"American",
|
||
"Canadian",
|
||
"Australian"
|
||
],
|
||
"default": "American",
|
||
"description": "Set which dialect of English Harper should expect."
|
||
},
|
||
"harper.diagnosticSeverity": {
|
||
"scope": "resource",
|
||
"type": "string",
|
||
"enum": [
|
||
"error",
|
||
"hint",
|
||
"information",
|
||
"warning"
|
||
],
|
||
"default": "information",
|
||
"description": "How severe do you want diagnostics to appear in the editor?"
|
||
},
|
||
"harper.excludePatterns": {
|
||
"scope": "resource",
|
||
"type": "array",
|
||
"description": "A set of globs to ignore. If a file matches any of the globs, it will not be linted."
|
||
},
|
||
"harper.fileDictPath": {
|
||
"scope": "resource",
|
||
"type": "string",
|
||
"description": "Optional path to a file dictionary directory to use."
|
||
},
|
||
"harper.isolateEnglish": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "Only lint English text in documents that are a mixture of English and another language."
|
||
},
|
||
"harper.markdown.IgnoreLinkTitle": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "Skip linting link titles."
|
||
},
|
||
"harper.maxFileLength": {
|
||
"scope": "resource",
|
||
"type": "number",
|
||
"default": 120000,
|
||
"description": "Maximum length of file to be linted (in bytes). If a file is larger than this, it will not be linted."
|
||
},
|
||
"harper.userDictPath": {
|
||
"scope": "resource",
|
||
"type": "string",
|
||
"description": "Optional path to a user dictionary file to use."
|
||
},
|
||
"harper.workspaceDictPath": {
|
||
"scope": "resource",
|
||
"type": "string",
|
||
"description": "Optional path to a workspace-local dictionary file to use."
|
||
},
|
||
"harper.linters.ACoupleMore": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `a couple of more` to `a couple more`."
|
||
},
|
||
"harper.linters.ALongTime": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `along time` to `a long time`."
|
||
},
|
||
"harper.linters.APart": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Finds and corrects common mistakes between 'a part' and 'apart'"
|
||
},
|
||
"harper.linters.AWhile": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Enforces `awhile` after verbs and `a while` everywhere else."
|
||
},
|
||
"harper.linters.AdNauseam": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `as nauseam` to `ad nauseam`."
|
||
},
|
||
"harper.linters.Addicting": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Replaces `addicting` with `addictive` when used as an adjective."
|
||
},
|
||
"harper.linters.AdjectiveDoubleDegree": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Finds adjectives that are used as double degrees (e.g. `more prettier`)."
|
||
},
|
||
"harper.linters.AdjectiveOfA": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This rule looks for sequences of words of the form `adjective of a`."
|
||
},
|
||
"harper.linters.Ado": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `adieu` to `ado`."
|
||
},
|
||
"harper.linters.AfterAWhile": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the missing article in `after while`, forming `after a while`."
|
||
},
|
||
"harper.linters.AfterLater": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Checks for the word `later` following `after [a period of time]`."
|
||
},
|
||
"harper.linters.AheadAnd": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `an` to `and` after `ahead`."
|
||
},
|
||
"harper.linters.AllIntentsAndPurposes": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Finds and corrects common wrong forms of the phrase 'for all intents and purposes' / 'to all intents and purposes'."
|
||
},
|
||
"harper.linters.AllOfASudden": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Guides this expression toward the standard `all of a sudden`."
|
||
},
|
||
"harper.linters.AllowTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags erroneous usage of `allow to` without a subject."
|
||
},
|
||
"harper.linters.Alongside": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Replaces the spaced form `along side` with `alongside`."
|
||
},
|
||
"harper.linters.AlzheimersDisease": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes the common misnomer `old-timers' disease`, ensuring the correct medical term `Alzheimer’s disease` is used."
|
||
},
|
||
"harper.linters.AmInTheMorning": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Finds redundant am/pm indicators used together with time periods such as 'in the morning' or 'at night'."
|
||
},
|
||
"harper.linters.AmazonNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to the various products of Amazon.com, make sure to treat them as a proper noun."
|
||
},
|
||
"harper.linters.Americas": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to North, Central, and South America, make sure to treat them as a proper noun."
|
||
},
|
||
"harper.linters.AmountsFor": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `amounts for` to either `amounts to` or `accounts for`"
|
||
},
|
||
"harper.linters.AnA": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "A rule that looks for incorrect indefinite articles. For example, `this is an mule` would be flagged as incorrect."
|
||
},
|
||
"harper.linters.AnAnother": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `an another` and `a another`."
|
||
},
|
||
"harper.linters.AndIn": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes the incorrect phrase `an in` to `and in` for proper conjunction usage."
|
||
},
|
||
"harper.linters.AndTheLike": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects mistakes in `and the like` and `or the like`."
|
||
},
|
||
"harper.linters.AnotherAn": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `another an` to `another`."
|
||
},
|
||
"harper.linters.AnotherOnes": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `another ones`."
|
||
},
|
||
"harper.linters.AnotherThingComing": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Though `another think coming` is the original phrase, `another thing coming` is now more common."
|
||
},
|
||
"harper.linters.AnotherThings": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `another things`."
|
||
},
|
||
"harper.linters.AnotherThinkComing": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "Though `another thing coming` is now more common, `another think coming` is the original phrase."
|
||
},
|
||
"harper.linters.Anybody": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `anybody`."
|
||
},
|
||
"harper.linters.Anyhow": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `anyhow`."
|
||
},
|
||
"harper.linters.Anywhere": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `anywhere`."
|
||
},
|
||
"harper.linters.ApartFrom": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags the misspelling `apart form` and suggests `apart from`."
|
||
},
|
||
"harper.linters.AppleNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to Apple products and services, make sure to treat them as proper nouns."
|
||
},
|
||
"harper.linters.AsFarAsIKnow": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.AsFarBackAs": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects nonstandard `as early back as` to `as far back as`."
|
||
},
|
||
"harper.linters.AsIfThough": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects redundant `as if though`."
|
||
},
|
||
"harper.linters.AsItHappens": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `as it so happens` to `as it happens`."
|
||
},
|
||
"harper.linters.AsLongAs": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `aslong as` to `as long as`."
|
||
},
|
||
"harper.linters.AsOfLate": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `as of lately` to `as of late`."
|
||
},
|
||
"harper.linters.AsSoonAsPossible": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.AskNoPreposition": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Identifies sequences like `ask to us` or `tell to him` and recommends removing the superfluous “to”."
|
||
},
|
||
"harper.linters.AtFaceValue": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `on face value` to the more usual `at face value`."
|
||
},
|
||
"harper.linters.AtTheEndOfTheDay": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `in the end of the day` to `at the end of the day`."
|
||
},
|
||
"harper.linters.Australia": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to the states of Australia, make sure to treat them as a proper noun."
|
||
},
|
||
"harper.linters.AvoidAndAlso": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Reduces redundancy by replacing `and also` with `and`."
|
||
},
|
||
"harper.linters.AvoidCurses": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags offensive language and offers various ways to censor or replace with euphemisms."
|
||
},
|
||
"harper.linters.AwaitFor": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Suggests using either `await` or `wait for` but not both, as they express the same meaning."
|
||
},
|
||
"harper.linters.AzureNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to Azure cloud services, make sure to treat them as proper nouns."
|
||
},
|
||
"harper.linters.BackInTheDay": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This linter flags instances of the nonstandard phrase `back in the days`. The correct, more accepted form is `back in the day`"
|
||
},
|
||
"harper.linters.Backplane": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `backplane`."
|
||
},
|
||
"harper.linters.BadRap": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Changes `bed rap` to the proper idiom `bad rap`."
|
||
},
|
||
"harper.linters.BanTogether": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects and corrects the common error of using `ban together` instead of the idiom `band together`, which means to unite or join forces."
|
||
},
|
||
"harper.linters.BareInMind": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures the phrase `bear in mind` is used correctly instead of `bare in mind`."
|
||
},
|
||
"harper.linters.BatedBreath": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Changes `baited breath` to the correct `bated breath`."
|
||
},
|
||
"harper.linters.BeAllowed": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures the passive form uses `be allowed` after future negatives."
|
||
},
|
||
"harper.linters.BeRightBack": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.BeckAndCall": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes `back and call` to `beck and call`."
|
||
},
|
||
"harper.linters.BeenThere": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the misspelling `bee there` to the proper phrase `been there`."
|
||
},
|
||
"harper.linters.Beforehand": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "`Beforehand` functions as a fixed adverb meaning ‘in advance’; writing it as two words or with a hyphen is nonstandard and can jar readers."
|
||
},
|
||
"harper.linters.BesideThePoint": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `besides the point` to `beside the point`."
|
||
},
|
||
"harper.linters.BestOfAllTime": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Checks for nonstandard `of all times` in superlatives instead of singular `time`"
|
||
},
|
||
"harper.linters.BestRegards": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "In valedictions, `best` expresses your highest regard—avoid the typo `beat regards`."
|
||
},
|
||
"harper.linters.BlanketStatement": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects common errors in the phrase `blanket statement`."
|
||
},
|
||
"harper.linters.BoringWords": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "This rule looks for particularly boring or overused words. Using varied language is an easy way to keep a reader's attention."
|
||
},
|
||
"harper.linters.Bought": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Replaces the incorrect past-tense spelling `bough` with `bought` after subject pronouns."
|
||
},
|
||
"harper.linters.BrandBrandish": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for `brandish` wrongly used when `brand` is intended."
|
||
},
|
||
"harper.linters.Brutality": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Suggests the more standard and common synonym `brutality`."
|
||
},
|
||
"harper.linters.BuiltIn": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "English convention treats `built-in` as a single, attributive adjective—meaning something integrated from the outset—whereas other forms like `in built` are nonstandard and can feel awkward to readers."
|
||
},
|
||
"harper.linters.ByAccident": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Incorrect preposition: `by accident` is the idiomatic expression."
|
||
},
|
||
"harper.linters.ByTheWay": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.CanBeSeen": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `can be seem` to the proper phrase `can be seen`."
|
||
},
|
||
"harper.linters.Canada": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to the provinces of Canada, make sure to treat them as a proper noun."
|
||
},
|
||
"harper.linters.Cant": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Suggests correcting `cant` to `can't`."
|
||
},
|
||
"harper.linters.CapitalizePersonalPronouns": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Forgetting to capitalize personal pronouns, like \"I\" or \"I'm\" is one of the most common errors. This rule helps with that."
|
||
},
|
||
"harper.linters.CaseInPoint": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `case and point` to `case in point`."
|
||
},
|
||
"harper.linters.CaseSensitive": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `case-sensitive` is correctly hyphenated."
|
||
},
|
||
"harper.linters.CautionaryTale": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects confusion between `tale` (story) and `tail` (appendage) in common phrases."
|
||
},
|
||
"harper.linters.ChampAtTheBit": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `chomp at the bit` to the idiom `champ at the bit`, which has an equestrian origin referring to the way an anxious horse grinds its teeth against the metal part of the bridle."
|
||
},
|
||
"harper.linters.ChangeTack": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Locates errors in the idioms `to change tack` and `change of tack` to convey the correct meaning of altering one's course or strategy."
|
||
},
|
||
"harper.linters.ChineseCommunistParty": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to the political party, make sure to treat them as a proper noun."
|
||
},
|
||
"harper.linters.ChockFull": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags common soundalikes of \"chock-full\" and makes sure they're hyphenated."
|
||
},
|
||
"harper.linters.ClientOrServerSide": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects extraneous apostrophe in `client's side` and `server's side`."
|
||
},
|
||
"harper.linters.CommaFixes": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fix common comma errors such as no space after, erroneous space before, etc., Asian commas instead of English commas, etc."
|
||
},
|
||
"harper.linters.CompaniesProductsAndTrademarks": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensure proper capitalization of companies, products, and trademarks."
|
||
},
|
||
"harper.linters.CompoundNouns": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects compound nouns split by a space and suggests merging them when both parts form a valid noun."
|
||
},
|
||
"harper.linters.CompoundSubjectI": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Promotes `I` in compound subjects headed by a possessive determiner."
|
||
},
|
||
"harper.linters.CondenseAllThe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Suggests removing `of` in `all of the` for a more concise phrase."
|
||
},
|
||
"harper.linters.Confident": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This linter detects instances where the noun `confidant` is incorrectly used in place of the adjective `confident`. `Confidant` refers to a trusted person, whereas `confident` describes certainty or self-assurance. The rule suggests replacing `confidant` with `confident` when used in an adjectival context."
|
||
},
|
||
"harper.linters.ConfirmThat": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `conform` typos to `confirm`."
|
||
},
|
||
"harper.linters.Copyright": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `copywrite` to `copyright`. `Copywrite` refers to writing copy, while `copyright` is the legal right to creative works."
|
||
},
|
||
"harper.linters.CorrectNumberSuffix": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When making quick edits, it is common for authors to change the value of a number without changing its suffix. This rule looks for these cases, for example: `2st`."
|
||
},
|
||
"harper.linters.Countries": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to Countries, make sure to treat it as a proper noun."
|
||
},
|
||
"harper.linters.CoursingThroughVeins": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "In English idioms, “to course” means to flow rapidly—so avoid the eggcorn `cursing through veins.`"
|
||
},
|
||
"harper.linters.CriteriaPhenomena": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "The words “criteria” and “phenomena” are the plurals of “criterion” and “phenomenon”, respectively. They are often incorrectly used as singular."
|
||
},
|
||
"harper.linters.CureFor": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags `cure against` and prefers the standard `cure for` pairing."
|
||
},
|
||
"harper.linters.CurrencyPlacement": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "The location of currency symbols varies by country. The rule looks for and corrects improper positioning."
|
||
},
|
||
"harper.linters.DampSquib": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the eggcorn `damp squid` to `damp squib`, ensuring the intended meaning of a failed or underwhelming outcome."
|
||
},
|
||
"harper.linters.Dashes": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Writers often type `--` or `---` expecting their editor to convert them into proper dashes. Replace these sequences with the correct characters: use an en dash (–) for ranges or connections and an em dash (—) for a break in thought."
|
||
},
|
||
"harper.linters.DayAndAge": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the eggcorn `day in age` to `day and age`, which properly means the current era or time period."
|
||
},
|
||
"harper.linters.DayOneNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensure proper capitalization of Day One and Day One Premium as brand names."
|
||
},
|
||
"harper.linters.DefiniteArticle": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "The name of the word `the` is `definite article`."
|
||
},
|
||
"harper.linters.DegreesKelvin": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects use of `degrees kelvin` to `kelvins`."
|
||
},
|
||
"harper.linters.DegreesKelvinSymbol": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects use of `°K` to `K`."
|
||
},
|
||
"harper.linters.Desktop": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `desktop`."
|
||
},
|
||
"harper.linters.DespiteOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the misuse of `despite of` and suggests the proper alternatives `despite` or `in spite of`."
|
||
},
|
||
"harper.linters.Devops": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `devops`."
|
||
},
|
||
"harper.linters.Didnt": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `dint` to `didn't` after subject pronouns."
|
||
},
|
||
"harper.linters.DigestiveTract": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `digestive track` to `digestive tract`."
|
||
},
|
||
"harper.linters.DiscourseMarkers": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags sentences that begin with a discourse marker but omit the required following comma."
|
||
},
|
||
"harper.linters.Discuss": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Removes unnecessary `about` after `discuss`."
|
||
},
|
||
"harper.linters.DisjointPrefixes": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for words with their prefixes written with a space or hyphen between instead of joined."
|
||
},
|
||
"harper.linters.DoNotWant": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "In English, negation still requires the complete verb form (“want”), so avoid truncating it to “wan.”"
|
||
},
|
||
"harper.linters.DoesOrDose": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Tries to correct typos of `dose` to `does`."
|
||
},
|
||
"harper.linters.DontCan": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `don't can` to `can't` or `cannot`."
|
||
},
|
||
"harper.linters.DotInitialisms": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures common initialisms (like \"i.e.\") are properly dot-separated."
|
||
},
|
||
"harper.linters.DoubleClick": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Encourages hyphenating `double-click` and its inflections."
|
||
},
|
||
"harper.linters.DoubleModal": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Two modal verbs in a row are rarely grammatical; remove one of them."
|
||
},
|
||
"harper.linters.EachAndEveryOne": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `each and everyone` to `each and every one`."
|
||
},
|
||
"harper.linters.EggYolk": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the eggcorn `egg yoke`, replacing it with the standard culinary term `egg yolk`."
|
||
},
|
||
"harper.linters.EllipsisLength": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Make sure you have the correct number of dots in your ellipsis."
|
||
},
|
||
"harper.linters.ElsePossessive": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects missing apostrophes in phrases like `someone elses book` and suggests the correct possessive form `else’s`."
|
||
},
|
||
"harper.linters.EludedTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `eluded to` to `alluded to` in contexts referring to indirect references."
|
||
},
|
||
"harper.linters.EnMasse": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects variants like `on mass` or `in mass` and suggests `en masse`."
|
||
},
|
||
"harper.linters.EnRoute": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects variants like `on route` or `in route` and suggests `en route`."
|
||
},
|
||
"harper.linters.EverEvery": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Tries to correct typos of `every` instead of `ever`."
|
||
},
|
||
"harper.linters.EverPresent": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the missing hyphen in `ever present` to the compound adjective `ever-present`."
|
||
},
|
||
"harper.linters.EverSince": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `every since` to `ever since`."
|
||
},
|
||
"harper.linters.EveryOnceAndAgain": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `every once and again` to `every once in a while` or `once again`."
|
||
},
|
||
"harper.linters.EveryTime": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `everytime` to `every time`."
|
||
},
|
||
"harper.linters.Everybody": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `everybody`."
|
||
},
|
||
"harper.linters.Everyday": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This rule tries to sort out confusing the adjective `everyday` and the adverb `every day`."
|
||
},
|
||
"harper.linters.Everyone": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `everyone`."
|
||
},
|
||
"harper.linters.Everywhere": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `everywhere`."
|
||
},
|
||
"harper.linters.Excellent": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Provides a stronger word choice by replacing `very good` with `excellent` for clarity and emphasis."
|
||
},
|
||
"harper.linters.ExpandArgument": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands the abbreviation `arg` to the full word `argument` for clarity."
|
||
},
|
||
"harper.linters.ExpandBecause": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands the informal abbreviation `cuz` to the full word `because` for formality."
|
||
},
|
||
"harper.linters.ExpandDependencies": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands the abbreviation `deps` to the full word `dependencies` for clarity."
|
||
},
|
||
"harper.linters.ExpandMemoryShorthands": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands memory-related abbreviations (`B`, `kB`, `MB`, `GB`, `TB`, `PB`, `KiB`, `MiB`, `GiB`, `TiB`, `PiB`, etc.) to their full forms (`byte`, `kilobyte`, `megabyte`, `gigabyte`, `terabyte`, `petabyte`, `kibibyte`, `mebibyte`, `gibibyte`, `tebibyte`, `pebibyte`, etc.)."
|
||
},
|
||
"harper.linters.ExpandMinimum": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands the abbreviation `min` to the full word `minimum` for clarity."
|
||
},
|
||
"harper.linters.ExpandStandardInputAndOutput": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands the abbreviations `stdin`, `stdout`, and `stderr` to the full words `standard input`, etc. for clarity."
|
||
},
|
||
"harper.linters.ExpandTimeShorthands": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands time-related abbreviations (`hr`, `hrs`, `min`, `mins`, `sec`, `secs`, `ms`, `msec`, `msecs`) to their full forms (`hour`, `hours`, `minute`, `minutes`, `second`, `seconds`, `millisecond`, `milliseconds`)."
|
||
},
|
||
"harper.linters.ExpandWith": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands the abbreviation `w/` to the full word `with` for clarity."
|
||
},
|
||
"harper.linters.ExpandWithout": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands the abbreviation `w/o` to the full word `without` for clarity."
|
||
},
|
||
"harper.linters.Expat": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the mistake of writing `expat` as two words."
|
||
},
|
||
"harper.linters.Expatriate": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes the misinterpretation of `expatriate`, ensuring the correct term is used for individuals residing abroad."
|
||
},
|
||
"harper.linters.ExplainLikeImFive": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.ExplanationMark": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the eggcorn `explanation mark/point` to `exclamation mark/point`."
|
||
},
|
||
"harper.linters.ExtendOrExtent": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `extend` to `extent` when the context is a noun."
|
||
},
|
||
"harper.linters.FaceFirst": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `face first` is correctly hyphenated as `face-first` when used before `into`."
|
||
},
|
||
"harper.linters.FairBit": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects malapropisms of `a fair bit`."
|
||
},
|
||
"harper.linters.FarAndFewBetween": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `far and few between` to the standard idiom `few and far between`."
|
||
},
|
||
"harper.linters.FarBeIt": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags misuse of `far be it` and suggests using `from` when it is followed by `for`"
|
||
},
|
||
"harper.linters.FascinatedBy": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures the correct prepositions are used with `fascinated` (e.g., `fascinated by` or `fascinated with`)."
|
||
},
|
||
"harper.linters.FastPaste": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects incorrect usage of `fast paste` or `fast-paste` and suggests `fast-paced` as the correct phrase."
|
||
},
|
||
"harper.linters.FatalOutcome": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Replaces `fatal outcome` with the more direct term `death` for conciseness."
|
||
},
|
||
"harper.linters.FeelFell": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects some expressions using `fell` where `feel` is correct."
|
||
},
|
||
"harper.linters.FetalPosition": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures the correct use of `fetal position`, avoiding confusion with `feeble position`, which is not a standard phrase."
|
||
},
|
||
"harper.linters.FewUnitsOfTimeAgo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects some expressions using `few` where `a few` is correct."
|
||
},
|
||
"harper.linters.FillerWords": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Removes filler words."
|
||
},
|
||
"harper.linters.FindFine": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes the common typo where writers write `find` when they mean `fine`."
|
||
},
|
||
"harper.linters.FirstAidKit": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects when “kid” after “aid”, “starter”, “travel”, or “tool” should be “kit” (a set of supplies)."
|
||
},
|
||
"harper.linters.FootTheBill": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `flip the bill` to `foot the bill`."
|
||
},
|
||
"harper.linters.ForALongTime": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Eliminates the incorrect merging in `for along time`."
|
||
},
|
||
"harper.linters.ForAWhile": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the missing article in `for while`, forming `for a while`."
|
||
},
|
||
"harper.linters.ForNoun": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the archaic or mistaken `fro` to `for` when followed by a noun."
|
||
},
|
||
"harper.linters.ForWhatItsWorth": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.ForYourInformation": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.FreePredicate": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Helps swap in `free` when a linking verb is followed by the noun `fee`."
|
||
},
|
||
"harper.linters.FreeRein": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures the correct use of `free rein`, avoiding confusion with `free reign`, which incorrectly suggests authority rather than freedom of action."
|
||
},
|
||
"harper.linters.Freezing": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Encourages vivid writing by suggesting `freezing` instead of weaker expressions like `very cold.`"
|
||
},
|
||
"harper.linters.FriendOfMe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects wrong pronoun usage in constructions like `a friend of me`."
|
||
},
|
||
"harper.linters.FromTheGetGo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `from the get-go` is correctly hyphenated, preserving the idiom’s meaning of ‘from the very beginning’."
|
||
},
|
||
"harper.linters.Furthermore": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `furthermore`."
|
||
},
|
||
"harper.linters.GetRidOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects common misspellings of the idiom `get rid of`."
|
||
},
|
||
"harper.linters.GildedAge": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "If referring to the period of economic prosperity, the correct term is `Gilded Age`."
|
||
},
|
||
"harper.linters.GoSoFarAsTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags 'go so far to' when it should be 'go so far as to' to express going beyond expectations"
|
||
},
|
||
"harper.linters.GoingTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `gong to` to the intended phrase `going to`."
|
||
},
|
||
"harper.linters.GoogleNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to Google products and services, make sure to treat them as proper nouns."
|
||
},
|
||
"harper.linters.GuineaBissau": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Checks for the correct official name of the African country."
|
||
},
|
||
"harper.linters.HadOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags the unnecessary use of `of` after `had` and suggests the correct forms."
|
||
},
|
||
"harper.linters.HalfAnHour": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes the eggcorn `half an our` to the accepted `half an hour`."
|
||
},
|
||
"harper.linters.Haphazard": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the eggcorn `half hazard` to `haphazard`, which properly means lacking organization or being random."
|
||
},
|
||
"harper.linters.HavePassed": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Suggests `past` for `passed` in case a verb was intended."
|
||
},
|
||
"harper.linters.HavePronoun": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags questions that begin with `has` followed by a pronoun that requires `have`, such as `Has we …` or `Has I …`, and suggests the correct auxiliary."
|
||
},
|
||
"harper.linters.HaveTakeALook": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects either `have a look` or `take a look` to the other, depending on the dialect."
|
||
},
|
||
"harper.linters.Hedging": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags hedging language (e.g. `I would argue that`, `..., so to speak`, `to a certain degree`)."
|
||
},
|
||
"harper.linters.HelloGreeting": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Encourages greeting someone with `hello` instead of the homophone `halo`."
|
||
},
|
||
"harper.linters.Henceforth": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `henceforth`."
|
||
},
|
||
"harper.linters.Hereby": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "`Here by` in some contexts should be `hereby`"
|
||
},
|
||
"harper.linters.Holidays": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to holidays, make sure to treat them as a proper noun."
|
||
},
|
||
"harper.linters.HolyWar": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects misspellings of `holy war`."
|
||
},
|
||
"harper.linters.HomeInOn": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `hone in on` to `home in on`."
|
||
},
|
||
"harper.linters.HopHope": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Handles common errors involving `hop` and `hope`. Ensures `hop` is used correctly in phrases like `hop on a bus` while correcting mistaken uses of `hope` in contexts where `hop` is expected."
|
||
},
|
||
"harper.linters.HowItLooksLike": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `how ... looks like` to `how ... looks` or `what ... looks like`."
|
||
},
|
||
"harper.linters.HowTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects the omission of `to` in constructions like `how clone / how install` and suggests `how to …`."
|
||
},
|
||
"harper.linters.However": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `however`."
|
||
},
|
||
"harper.linters.HumanBeings": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Eliminates the incorrect possessive/plural usage like `human's beings` or `humans beings`."
|
||
},
|
||
"harper.linters.HumanLife": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Changes `human live` to `human life`."
|
||
},
|
||
"harper.linters.HungerPang": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `hunger pain` to `hunger pang`."
|
||
},
|
||
"harper.linters.HyphenateNumberDay": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures a hyphen is used in `X-day` when it is part of a compound adjective, such as `4-day work week`."
|
||
},
|
||
"harper.linters.IAm": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes the incorrect spacing in `I a m` to properly form `I am`."
|
||
},
|
||
"harper.linters.IAmAgreement": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `I are` to `I am`."
|
||
},
|
||
"harper.linters.IDo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `I does` to `I do`."
|
||
},
|
||
"harper.linters.IDontKnow": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.IfIRecallCorrectly": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.IfWouldve": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `if I would've done` etc. to `if I had done` etc."
|
||
},
|
||
"harper.linters.IfYouKnowYouKnow": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.InAWhile": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the missing article in `in while`, forming `in a while`."
|
||
},
|
||
"harper.linters.InAnyWay": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects ungrammatical `in anyway` to `in any way`."
|
||
},
|
||
"harper.linters.InCaseYouMissedIt": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.InDetail": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects unidiomatic plural `in details` to `in detail`."
|
||
},
|
||
"harper.linters.InLieuOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the misspelling `in lue of` to `in lieu of`."
|
||
},
|
||
"harper.linters.InMyHumbleOpinion": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.InMyOpinion": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.InNeedOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `in need for` to `in need of`."
|
||
},
|
||
"harper.linters.InOfItself": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects nonstandard `in of itself` to standard `in itself` or `in and of itself`."
|
||
},
|
||
"harper.linters.InOnTheCards": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects either `in the cards` or `on the cards` to the other, depending on the dialect."
|
||
},
|
||
"harper.linters.InOneFellSwoop": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `in one foul swoop` to `in one fell swoop`, preserving the phrase’s original meaning of sudden and complete action."
|
||
},
|
||
"harper.linters.InRealLife": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.InThe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects and corrects a spacing error where `in the` is mistakenly written as `int he`. Proper spacing is essential for readability and grammatical correctness in common phrases."
|
||
},
|
||
"harper.linters.InflectedVerbAfterTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This rule looks for `to verb` where `verb` is not in the infinitive form."
|
||
},
|
||
"harper.linters.Insensitive": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Suggests the more standard and common synonym `insensitive`."
|
||
},
|
||
"harper.linters.Insofar": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `insofar`."
|
||
},
|
||
"harper.linters.Instead": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `instead`."
|
||
},
|
||
"harper.linters.InsteadOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the archaic or mistaken separation `in stead of` to `instead of` in everyday usage."
|
||
},
|
||
"harper.linters.Insurmountable": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Suggests the more standard and common synonym `insurmountable`."
|
||
},
|
||
"harper.linters.Intact": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Prevents the erroneous spacing in `in tact`; `intact` is the single correct word."
|
||
},
|
||
"harper.linters.InterestedIn": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures the correct preposition is used with the word `interested` (e.g. `interested in`)."
|
||
},
|
||
"harper.linters.InvestIn": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "`Invest` is traditionally followed by 'in,' not `into.`"
|
||
},
|
||
"harper.linters.IsKnownFor": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Typo: `known` is the correct past participle."
|
||
},
|
||
"harper.linters.ItCan": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the misspelling `It cam` to the proper phrase `It can`."
|
||
},
|
||
"harper.linters.ItLooksLikeThat": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `it looks like that` to just `it looks like`."
|
||
},
|
||
"harper.linters.ItsContraction": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects places where the possessive `its` should be the contraction `it's`, including before verbs/clauses and before proper nouns after opinion verbs."
|
||
},
|
||
"harper.linters.ItsPossessive": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "In English, possessive pronouns never take an apostrophe. Use `its` to show ownership (e.g. “its texture”) and avoid confusing it with `it's`, which always means “it is” or “it has.”"
|
||
},
|
||
"harper.linters.Itself": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `itself`."
|
||
},
|
||
"harper.linters.IveGotTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the slip `I've go to` to the idiomatic `I've got to`."
|
||
},
|
||
"harper.linters.JawDropping": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `jar-dropping` to `jaw-dropping`, ensuring the intended meaning of something that causes amazement."
|
||
},
|
||
"harper.linters.JealousOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Encourages the standard preposition after `jealous`."
|
||
},
|
||
"harper.linters.JetpackNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensure proper capitalization of Jetpack-related terms."
|
||
},
|
||
"harper.linters.JohnsHopkins": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Recommends the proper spelling `Johns Hopkins`."
|
||
},
|
||
"harper.linters.JustDeserts": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `just deserts` is used correctly, preserving its meaning of receiving an appropriate outcome for one's actions."
|
||
},
|
||
"harper.linters.KindOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `kinda of` to `kind of`."
|
||
},
|
||
"harper.linters.KindRegards": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Changes `kid regards` to `kind regards`."
|
||
},
|
||
"harper.linters.Koreas": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to the nations, make sure to treat them as a proper noun."
|
||
},
|
||
"harper.linters.Laptop": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `laptop`."
|
||
},
|
||
"harper.linters.LastButNotLeast": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects common errors in the phrase `last but not least`."
|
||
},
|
||
"harper.linters.LastDitch": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects wrong variations of the idiomatic adjective `last-ditch`."
|
||
},
|
||
"harper.linters.LastNight": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags `yesterday night` and suggests the standard phrasing `last night`."
|
||
},
|
||
"harper.linters.LeftRightHand": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `left hand` and `right hand` are hyphenated when used as adjectives before a noun, such as in `left-hand side` or `right-hand corner`."
|
||
},
|
||
"harper.linters.LessWorse": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Suggests alternatives to `less/least worse/worst` for more standard, clearer comparisons."
|
||
},
|
||
"harper.linters.LetAlone": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Changes `let along` to `let alone`."
|
||
},
|
||
"harper.linters.LetToDo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects extraneous `to` after `let`."
|
||
},
|
||
"harper.linters.LetsConfusion": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "It's often hard to determine where the subject should go with the word `let`. This rule attempts to find common errors with redundancy and contractions that may lead to confusion for readers."
|
||
},
|
||
"harper.linters.LikeAsIf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects redundant `like as if` to `like` or `as if`."
|
||
},
|
||
"harper.linters.LikeThePlague": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `like a plague` to `like the plague`."
|
||
},
|
||
"harper.linters.Likewise": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `likewise`."
|
||
},
|
||
"harper.linters.LitotesDirectPositive": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Offers direct-positive alternatives when double negatives might feel heavy."
|
||
},
|
||
"harper.linters.LongSentences": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This rule looks for run-on sentences, which can make your work harder to grok."
|
||
},
|
||
"harper.linters.LookingForwardTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This rule identifies instances where the phrase `looking forward to` is followed by a base form verb instead of the required gerund (verb + `-ing` form)."
|
||
},
|
||
"harper.linters.LowHangingFruit": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects nonstandard variants of `low-hanging fruit`."
|
||
},
|
||
"harper.linters.MakeDoWith": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `make due` to `make do` when followed by `with`."
|
||
},
|
||
"harper.linters.MakeItSeem": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `make it seems` to `make it seem`."
|
||
},
|
||
"harper.linters.MakeSense": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `make senses` to `make sense`."
|
||
},
|
||
"harper.linters.Malaysia": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to the states of Malaysia and their capitals, make sure to treat them as a proper noun."
|
||
},
|
||
"harper.linters.ManagerialReins": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the eggcorn `managerial reigns` to the idiomatic `managerial reins`."
|
||
},
|
||
"harper.linters.MassNouns": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects mass nouns used as countable nouns."
|
||
},
|
||
"harper.linters.MergeWords": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Accidentally inserting a space inside a word is common. This rule looks for valid words that are split by whitespace."
|
||
},
|
||
"harper.linters.MetaNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to Meta products and services, make sure to treat them as proper nouns."
|
||
},
|
||
"harper.linters.MicrosoftNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to Microsoft products and services, make sure to treat them as proper nouns."
|
||
},
|
||
"harper.linters.Middleware": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `middleware`."
|
||
},
|
||
"harper.linters.MissingPreposition": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Locates potentially missing prepositions."
|
||
},
|
||
"harper.linters.MissingTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags verbs and adjectives like `need`, `want`, or `ready` that are missing `to` before an infinitive."
|
||
},
|
||
"harper.linters.Misspell": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `misspell` and its inflected forms are written as a single word."
|
||
},
|
||
"harper.linters.Misunderstand": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `misunderstand`."
|
||
},
|
||
"harper.linters.Misunderstood": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `misunderstood`."
|
||
},
|
||
"harper.linters.Misuse": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `misuse`."
|
||
},
|
||
"harper.linters.Misused": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `misused`."
|
||
},
|
||
"harper.linters.MixedBag": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the eggcorn `mixed bad` to `mixed bag`."
|
||
},
|
||
"harper.linters.ModalBeAdjective": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for `be` missing between a modal verb and adjective."
|
||
},
|
||
"harper.linters.ModalOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects `of` mistakenly used with `would`, `could`, `should`, etc."
|
||
},
|
||
"harper.linters.ModalSeem": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects modal verbs followed by `seen` before adjectives and suggests `seem` or `be`."
|
||
},
|
||
"harper.linters.Months": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects months written with a lowercase first letter."
|
||
},
|
||
"harper.linters.Monumentous": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Advises using `momentous` or `monumental` instead of `monumentous` for serious usage."
|
||
},
|
||
"harper.linters.MootPoint": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `mute` to `moot` in the phrase `moot point`."
|
||
},
|
||
"harper.linters.MoreBetter": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Finds redundant paring of `more` or `most` with adjectives already in the comparative or superlative form."
|
||
},
|
||
"harper.linters.MostNumber": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `most number` and `most amount`"
|
||
},
|
||
"harper.linters.MostOfTheTimes": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `a lot of the times` and `most of the times` to use singular `time`."
|
||
},
|
||
"harper.linters.Multicore": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `multicore`."
|
||
},
|
||
"harper.linters.Multimedia": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `multimedia`."
|
||
},
|
||
"harper.linters.MultipleSequentialPronouns": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When editing work to change point of view (i.e. first-person or third-person) it is common to add pronouns while neglecting to remove old ones. This rule catches cases where you have multiple disparate pronouns in sequence."
|
||
},
|
||
"harper.linters.Multithreading": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `multithreading`."
|
||
},
|
||
"harper.linters.MyHouse": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes the typo `mu house` to `my house`."
|
||
},
|
||
"harper.linters.Myself": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `myself`."
|
||
},
|
||
"harper.linters.NailOnTheHead": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Replaces hat/had/hit/hid in the idiom `nail on the head` with `head`."
|
||
},
|
||
"harper.linters.NationalCapitals": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to national capitals, make sure to treat it as a proper noun."
|
||
},
|
||
"harper.linters.NeedHelp": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Changes `ned help` to the correct `need help`."
|
||
},
|
||
"harper.linters.NeedToNoun": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags `need to` when it is immediately followed by a noun, which usually means the infinitive verb is missing."
|
||
},
|
||
"harper.linters.NerveRacking": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects common misspellings and missing hyphen in `nerve-racking`."
|
||
},
|
||
"harper.linters.NervousWreck": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Suggests using `nervous wreck` when referring to a person's emotional state."
|
||
},
|
||
"harper.linters.NeverMind": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.NoFrenchSpaces": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Stops users from accidentally inserting French spaces."
|
||
},
|
||
"harper.linters.NoMatchFor": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "No match for"
|
||
},
|
||
"harper.linters.NoOxfordComma": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "The Oxford comma is one of the more controversial rules in common use today. Enabling this lint checks that there is no comma before `and`, `or` or `nor` when listing out more than two ideas."
|
||
},
|
||
"harper.linters.Nobody": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `nobody`."
|
||
},
|
||
"harper.linters.NominalWants": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures you use the correct `want` / `wants` after a nominal."
|
||
},
|
||
"harper.linters.Nonetheless": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `nonetheless`."
|
||
},
|
||
"harper.linters.NotIn": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Replaces `no in` with `not in`."
|
||
},
|
||
"harper.linters.NotTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `no to` to `not to`, ensuring proper negation."
|
||
},
|
||
"harper.linters.NotablePlaces": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensure proper capitalization of notable places that are significant regional centers, travel destinations, or have international importance."
|
||
},
|
||
"harper.linters.Nothing": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `nothing`."
|
||
},
|
||
"harper.linters.Notwithstanding": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `notwithstanding`."
|
||
},
|
||
"harper.linters.NounVerbConfusion": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Handles common confusions between related nouns and verbs (e.g., 'advice/advise', 'breath/breathe')"
|
||
},
|
||
"harper.linters.Nowhere": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `nowhere`."
|
||
},
|
||
"harper.linters.NumberSuffixCapitalization": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "You should never capitalize number suffixes."
|
||
},
|
||
"harper.linters.OceansAndSeas": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to the world's oceans and seas, ensure they are treated as proper nouns."
|
||
},
|
||
"harper.linters.OfCourse": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects the common mistake `off course` and suggests the correct form `of course`."
|
||
},
|
||
"harper.linters.OffTheCuff": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `off-the-cuff` is correctly hyphenated."
|
||
},
|
||
"harper.linters.OhMyGod": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.OldWivesTale": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `old wise tale` to `old wives' tale`, preserving the phrase’s meaning as an unfounded traditional belief."
|
||
},
|
||
"harper.linters.OldestInTheBook": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects the idiom `oldest X in the books`, which should use singular `book`."
|
||
},
|
||
"harper.linters.OnFloor": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This rule identifies incorrect uses of the prepositions `in` or `at` when referring to locations inside a building and recommends using `on the floor` instead."
|
||
},
|
||
"harper.linters.OnSecondThought": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Replaces the nonstandard `on second though` with the common idiom `on second thought` to indicate reconsideration."
|
||
},
|
||
"harper.linters.OnTheSpurOfTheMoment": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures the correct use of `on the spur of the moment`, avoiding nonstandard variations."
|
||
},
|
||
"harper.linters.OnTopOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `ontop of` to `on top of`."
|
||
},
|
||
"harper.linters.OnceInAWhile": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects two common malapropisms of `once in a while`."
|
||
},
|
||
"harper.linters.OnceOrTwice": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects the mistaken phrase `once a twice` and suggests `once or twice`."
|
||
},
|
||
"harper.linters.OneAndTheSame": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This linter flags instances of the nonstandard phrase `one in the same`. The correct, more accepted form is `one and the same`"
|
||
},
|
||
"harper.linters.OpenCompounds": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects compound words that should be written as two words."
|
||
},
|
||
"harper.linters.OpenTheLight": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects using `open` instead of `turn on` or `switch on`"
|
||
},
|
||
"harper.linters.OperatingSystem": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `operating system` is used correctly instead of `operative system`."
|
||
},
|
||
"harper.linters.OrthographicConsistency": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures word casing matches the dictionary's canonical orthography."
|
||
},
|
||
"harper.linters.OughtToBe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects the mistaken `out to be` and suggests `ought to be`, while ignoring legitimate phrasal-verb uses such as `turn out to be` and `make it out to be`."
|
||
},
|
||
"harper.linters.OutOfDate": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures that the phrase `out of date` is written with a hyphen as `out-of-date` when used as a compound adjective."
|
||
},
|
||
"harper.linters.Overall": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `overall`."
|
||
},
|
||
"harper.linters.Overclocking": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `overclocking`."
|
||
},
|
||
"harper.linters.Overload": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `overload`."
|
||
},
|
||
"harper.linters.Overnight": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `overnight`."
|
||
},
|
||
"harper.linters.OxfordComma": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "The Oxford comma is one of the more controversial rules in common use today. Enabling this lint checks that there is a comma before `and`, `or`, or `nor` when listing out more than two ideas."
|
||
},
|
||
"harper.linters.Oxymorons": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags oxymoronic phrases (e.g. `amateur expert`, `increasingly less`, etc.)."
|
||
},
|
||
"harper.linters.PartsOfSpeech": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects pluralizing the wrong noun in `part of speech`."
|
||
},
|
||
"harper.linters.PassersBy": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `passerbys` and `passer-bys` to `passersby` or `passers-by`."
|
||
},
|
||
"harper.linters.PeaceOfMind": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `piece of mind` to `peace of mind`."
|
||
},
|
||
"harper.linters.PerSe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects common misspellings of `per se`."
|
||
},
|
||
"harper.linters.PhrasalVerbAsCompoundNoun": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This rule looks for phrasal verbs written as compound nouns."
|
||
},
|
||
"harper.linters.Piggyback": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the eggcorn `piggy bag` to `piggyback`, which is the proper term for riding on someone’s back or using an existing system."
|
||
},
|
||
"harper.linters.PiqueInterest": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects incorrect usage of `peak` or `peek` when the intended word is `pique`, as in the phrase `you've peaked my interest`."
|
||
},
|
||
"harper.linters.PleaseTakeALook": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.PocketCastsNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensure proper capitalization of Pocket Casts and Pocket Casts Plus as brand names."
|
||
},
|
||
"harper.linters.PointsOfView": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects pluralizing the wrong noun in `point of view`."
|
||
},
|
||
"harper.linters.PortAuPrince": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Checks for the correct official name of the capital of Haiti."
|
||
},
|
||
"harper.linters.PortoNovo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Checks for the correct official name of the capital of Benin."
|
||
},
|
||
"harper.linters.PossessiveNoun": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "Use an apostrophe and `s` to form a noun’s possessive."
|
||
},
|
||
"harper.linters.PossessiveYour": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "The possessive form of `you` is more likely before nouns."
|
||
},
|
||
"harper.linters.Postpone": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `postpone`."
|
||
},
|
||
"harper.linters.PrayingMantis": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `preying mantis` to `praying mantis`, ensuring accurate reference to the insect’s characteristic pose."
|
||
},
|
||
"harper.linters.ProgressiveNeedsBe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects the ungrammatical patterns `<pronoun> have …ing` (e.g., `I have …ing`) and `<pronoun>'ve …ing` (e.g., `I've …ing`) and suggests either the present progressive (e.g., `I'm/We're/You're/They're …`) or the present perfect progressive (e.g., `I/We/You/They have been …` or `I've/We've/You've/They've been …`)."
|
||
},
|
||
"harper.linters.PronounAre": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Spots the letter `r` used in place of `are` or `you're` after plural first- or second-person pronouns."
|
||
},
|
||
"harper.linters.PronounContraction": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Choosing when to contract pronouns is a challenging art. This rule looks for faults."
|
||
},
|
||
"harper.linters.PronounInflectionBe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Checks subject–verb agreement for the verb `be`. Third-person singular pronouns (`he`, `she`, `it`) require the singular form `is`, while the plural pronoun `they` takes `are`. The linter flags mismatches such as `He are` or `They is` and offers the correct concord."
|
||
},
|
||
"harper.linters.PronounKnew": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects when “new” following a pronoun (optionally with an adverb) is a typo for the past tense “knew.”"
|
||
},
|
||
"harper.linters.Proofread": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `proofread`."
|
||
},
|
||
"harper.linters.ProperNouns": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensure proper capitalization of proper nouns."
|
||
},
|
||
"harper.linters.QuantifierNeedsOf": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects missing `of` after the quantifier “a couple” when it precedes a plural noun"
|
||
},
|
||
"harper.linters.QuantifierNumeralConflict": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects quantifier-numeral conflicts"
|
||
},
|
||
"harper.linters.QuiteMany": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `quite many` to `quite a few`, which is the more natural and idiomatic phrase in standard English. `Quite many` is considered nonstandard usage."
|
||
},
|
||
"harper.linters.QuiteQuiet": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Helps distinguish between ‘quiet’ (making ‘little noise’) and ‘quite’ (meaning ‘rather’)."
|
||
},
|
||
"harper.linters.QuoteSpacing": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Checks that quotation marks are preceded or succeeded by whitespace."
|
||
},
|
||
"harper.linters.RapidFire": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Checks to ensure writers hyphenate `rapid-fire`."
|
||
},
|
||
"harper.linters.RealTrouper": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures the correct use of `real trouper`, distinguishing it from `trooper`, which refers to a soldier or police officer."
|
||
},
|
||
"harper.linters.Really": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.RedundantAcronyms": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Identifies redundant acronyms where the last word repeats the last letter's meaning (e.g., `ATM machine` → `ATM` or `automated teller machine`)."
|
||
},
|
||
"harper.linters.RedundantAdditiveAdverbs": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects redundant additive adverbs."
|
||
},
|
||
"harper.linters.RedundantIIRC": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags redundant use of 'if' or 'correctly' with `IIRC`, since `IIRC` already stands for 'if I recall correctly'."
|
||
},
|
||
"harper.linters.RedundantSuperlatives": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Simplifies redundant double positives like `most optimal` to the base form."
|
||
},
|
||
"harper.linters.RedundantThat": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "There is rarely a situation where `that that` cannot be condensed into a single token."
|
||
},
|
||
"harper.linters.Regardless": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `regardless`."
|
||
},
|
||
"harper.linters.Regionalisms": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Regionalisms"
|
||
},
|
||
"harper.linters.RepeatedWords": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This rule looks for repetitions of words that are not homographs."
|
||
},
|
||
"harper.linters.Respond": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags uses of the noun `response` where the verb `respond` is needed after an auxiliary."
|
||
},
|
||
"harper.linters.RifeWith": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `ripe with` to `rife with`, preserving the phrase’s meaning of being filled with something, often undesirable."
|
||
},
|
||
"harper.linters.RightClick": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Hyphenates right-click style mouse commands."
|
||
},
|
||
"harper.linters.RiseTheQuestion": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `rise the question` to `raise the question`."
|
||
},
|
||
"harper.linters.RoadMap": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects when `roadmap` is used instead of `road map`, prompting the correct spacing."
|
||
},
|
||
"harper.linters.RollerSkated": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Encourages hyphenating the past tense of `roller-skate`."
|
||
},
|
||
"harper.linters.RulesOfThumb": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects pluralizing the wrong noun in `rule of thumb`."
|
||
},
|
||
"harper.linters.SafeToSave": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects `safe` (adjective) when `save` (verb) is intended after modal verbs like `could` or `should`."
|
||
},
|
||
"harper.linters.SameAs": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the incorrect phrase `same then` to the standard `same as`."
|
||
},
|
||
"harper.linters.SaveToSafe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `save to <verb>` to `safe to <verb>` after a form of `be`."
|
||
},
|
||
"harper.linters.ScantilyClad": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes `scandally clad` to `scantily clad`, ensuring clarity in describing minimal attire."
|
||
},
|
||
"harper.linters.SemicolonApostrophe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects semicolons accidentally typed instead of apostrophes."
|
||
},
|
||
"harper.linters.SentenceCapitalization": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "The opening word of a sentence should almost always be capitalized."
|
||
},
|
||
"harper.linters.ShootOneselfInTheFoot": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects nonstandard variants of 'shoot oneself in the foot'."
|
||
},
|
||
"harper.linters.SimpleGrammatical": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `simply grammatical` to `simple grammatical` for proper adjective usage."
|
||
},
|
||
"harper.linters.SimplePastToPastParticiple": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects simple past tense verbs to past participle after auxiliary verbs like \"have\" or \"be\"."
|
||
},
|
||
"harper.linters.SinceDuration": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects the use of 'since' with a duration instead of a point in time."
|
||
},
|
||
"harper.linters.SingleBe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Removes adjacent duplicate inflections of `be`, including contracted forms followed by another `be` verb."
|
||
},
|
||
"harper.linters.SneakingSuspicion": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Changes `sneaky suspicion` to `sneaking suspicion`."
|
||
},
|
||
"harper.linters.SomeOfThe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Quantity words such as `some` normally take `of` before a definite article. Including `of` signals that you mean a subset of a larger set, preventing a momentary stumble in comprehension."
|
||
},
|
||
"harper.linters.SomeWithoutArticle": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects the redundant article in front of `some` and suggests more natural phrasing."
|
||
},
|
||
"harper.linters.Somebody": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `somebody`."
|
||
},
|
||
"harper.linters.SomebodyElses": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `somebody else's` when the `'s` is in the wrong place."
|
||
},
|
||
"harper.linters.Somehow": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `somehow`."
|
||
},
|
||
"harper.linters.Someone": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `someone`."
|
||
},
|
||
"harper.linters.SomethingIs": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags forms like `somethings` before progressive verbs and suggests using `something's` or `something is`."
|
||
},
|
||
"harper.linters.SomewhatSomething": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags the phrase `somewhat of a` in favor of `something of a`, which can be considered more traditional."
|
||
},
|
||
"harper.linters.Somewhere": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `somewhere`."
|
||
},
|
||
"harper.linters.SoonToBe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Hyphenates `soon-to-be` when it appears before a noun."
|
||
},
|
||
"harper.linters.SoonerOrLater": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes the improper phrase `sooner than later` by suggesting standard alternatives."
|
||
},
|
||
"harper.linters.SoughtAfter": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Correct `sort after` to `sought after`"
|
||
},
|
||
"harper.linters.Spaces": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Words should be separated by at most one space."
|
||
},
|
||
"harper.linters.SpecialAttention": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Changes `spacial attention` to `special attention`."
|
||
},
|
||
"harper.linters.SpellCheck": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks and provides corrections for misspelled words."
|
||
},
|
||
"harper.linters.SpelledNumbers": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "Most style guides recommend that you spell out numbers less than ten."
|
||
},
|
||
"harper.linters.SplitWords": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Finds missing spaces in improper compound words."
|
||
},
|
||
"harper.linters.Starving": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Encourages vivid writing by suggesting `starving` instead of weaker expressions like `very hungry.`"
|
||
},
|
||
"harper.linters.StateOfTheArt": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects incorrect usage of `state of art` and suggests `state of the art` as the correct phrase."
|
||
},
|
||
"harper.linters.StatuteOfLimitations": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `statue of limitations` to `statute of limitations`."
|
||
},
|
||
"harper.linters.SubjectPronoun": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes sentences that start with `me and X` by putting the proper noun first and using `I`."
|
||
},
|
||
"harper.linters.SufficeItToSay": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `suffice to say` to `suffice it to say`."
|
||
},
|
||
"harper.linters.SupposedTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes `suppose to` to the correct `supposed to`."
|
||
},
|
||
"harper.linters.TakeItPersonally": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `take it personal` to `take it personally`."
|
||
},
|
||
"harper.linters.TakeMedicine": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Encourages pairing medicine-related nouns with verbs like `take` or `swallow` instead of `eat`."
|
||
},
|
||
"harper.linters.TalkToYouLater": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.ThanksALot": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the missing article in `thanks lot`, forming `thanks a lot`."
|
||
},
|
||
"harper.linters.ThatChallenged": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `the challenged` to `that challenged` for proper relative clause usage."
|
||
},
|
||
"harper.linters.ThatThan": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the typo `that` to `than` in comparisons."
|
||
},
|
||
"harper.linters.ThatThis": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes `the this` to the correct phrase `that this`."
|
||
},
|
||
"harper.linters.ThatWhich": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Repeating the word \"that\" is often redundant. The phrase `that which` is easier to read."
|
||
},
|
||
"harper.linters.The": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes especially common misspellings of the word `the`"
|
||
},
|
||
"harper.linters.TheAnother": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `the another`."
|
||
},
|
||
"harper.linters.TheHowWhy": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Removes the extra `the` from expressions like `the how`, skipping `how to` and `who's who`."
|
||
},
|
||
"harper.linters.TheMy": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags the definite article used together with a possessive."
|
||
},
|
||
"harper.linters.ThenThan": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects mixing up `then` and `than`."
|
||
},
|
||
"harper.linters.Therefore": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `therefore`."
|
||
},
|
||
"harper.linters.Theres": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Replaces the mistaken possessive `their's` before a determiner with the contraction `there's`."
|
||
},
|
||
"harper.linters.Thereupon": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `thereupon`."
|
||
},
|
||
"harper.linters.ThesesThese": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the common misspelling of `these` as `theses`."
|
||
},
|
||
"harper.linters.ThingThink": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the typo `thing` when it should be `think`."
|
||
},
|
||
"harper.linters.ThoughThought": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `though` when it's a typo for `thought`."
|
||
},
|
||
"harper.linters.ThoughtProcess": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Changes `though process` to `thought process`."
|
||
},
|
||
"harper.linters.ThrowAway": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Finds the typo `through away` and suggests `throw away` or `threw away` instead."
|
||
},
|
||
"harper.linters.ThrowRubbish": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Checks for throwing rubbish rather than throwing it away."
|
||
},
|
||
"harper.linters.TickingTimeClock": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `ticking time clock` to `ticking time bomb` for idiomatic urgency or `ticking clock` otherwise."
|
||
},
|
||
"harper.linters.ToAdverb": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags duplicated `to` around certain adverbs (e.g. `to never to`) and offers fixes that keep only one `to`."
|
||
},
|
||
"harper.linters.ToBeHonest": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Expands an initialism."
|
||
},
|
||
"harper.linters.ToDoHyphen": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `to-do` is correctly hyphenated."
|
||
},
|
||
"harper.linters.ToGreatLengths": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `through great lengths` to `to great lengths`."
|
||
},
|
||
"harper.linters.ToTheMannerBorn": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `to the manor born` to `to the manner born`, ensuring the intended meaning of being naturally suited to a way of life."
|
||
},
|
||
"harper.linters.ToTooIdioms": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `to` used instead of `too`."
|
||
},
|
||
"harper.linters.ToTwoToo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects homophone confusion between `to` and `too`."
|
||
},
|
||
"harper.linters.ToWorryAbout": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes incorrect use of `to worried about`."
|
||
},
|
||
"harper.linters.TongueInCheek": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the idiom when `and` replaces the needed preposition."
|
||
},
|
||
"harper.linters.TooTo": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `too` used instead of `to`."
|
||
},
|
||
"harper.linters.Touristic": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Suggests replacing the uncommon word `touristic` with `tourist`, `tourism`, and/or `touristy`."
|
||
},
|
||
"harper.linters.Towards": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Removes redundant `to` before `towards`."
|
||
},
|
||
"harper.linters.TransposedSpace": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for a space one character too early or too late between words."
|
||
},
|
||
"harper.linters.TrialAndError": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `trail` to `trial` in `trial and error`."
|
||
},
|
||
"harper.linters.TumblrNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensure proper capitalization of Tumblr-related terms."
|
||
},
|
||
"harper.linters.TurnItOff": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Fixes the mistake in the phrase `turn it off`."
|
||
},
|
||
"harper.linters.USUniversities": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensure proper capitalization of major universities in the United States."
|
||
},
|
||
"harper.linters.UnclosedQuotes": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Quotation marks should always be closed. Unpaired quotation marks are a hallmark of sloppy work."
|
||
},
|
||
"harper.linters.Underclock": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `underclock`."
|
||
},
|
||
"harper.linters.UnitedOrganizations": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "When referring to national or international organizations, make sure to treat them as a proper noun."
|
||
},
|
||
"harper.linters.Unless": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `unless if`."
|
||
},
|
||
"harper.linters.UpdatePlaceNames": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "This rule looks for deprecated place names and offers to update them."
|
||
},
|
||
"harper.linters.Upset": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `upset`."
|
||
},
|
||
"harper.linters.Upward": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `upward`."
|
||
},
|
||
"harper.linters.UseGenitive": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "Looks for situations where the genitive case of \"there\" should be used."
|
||
},
|
||
"harper.linters.UseTitleCase": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Prompts you to use title case in relevant headings."
|
||
},
|
||
"harper.linters.VerbToAdjective": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for situations where a verb was written where an adjective is often intended."
|
||
},
|
||
"harper.linters.VeryUnique": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags phrases like `very unique`, `pretty unique`, etc., and suggests using `unique` alone or a more precise adjective such as `special`, `rare`, or `unusual`."
|
||
},
|
||
"harper.linters.ViceVersa": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Recommends writing ‘vice versa’ without hyphens."
|
||
},
|
||
"harper.linters.WantBe": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Detects incorrect usage of `want be` and suggests `won't be` or `want to be` based on context."
|
||
},
|
||
"harper.linters.WasAloud": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `was aloud` and `were aloud` are corrected to `was allowed` or `were allowed` when referring to permission."
|
||
},
|
||
"harper.linters.WaveFunction": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Identifies the mistake of merging `wave` and `function` into one word. In quantum mechanics, a `wave function` (written as two words) describes the mathematical function that represents the quantum state of a particle or system. Correct usage is crucial for clear and accurate scientific communication."
|
||
},
|
||
"harper.linters.WayTooAdjective": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Replaces the preposition `to` with the adverb `too` after `way` when followed by an adjective (e.g. `way too fast`)"
|
||
},
|
||
"harper.linters.WellBeing": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `well-being` is correctly hyphenated."
|
||
},
|
||
"harper.linters.WellEducated": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Replaces `good-educated` with the accepted compound `well-educated`."
|
||
},
|
||
"harper.linters.WellKept": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags `highly-kept` and recommends `well-kept` as an alternative."
|
||
},
|
||
"harper.linters.Whereas": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "The Whereas rule is designed to identify instances where the phrase `where as` is used in text and suggests replacing it with the single word `whereas`."
|
||
},
|
||
"harper.linters.Whereupon": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `whereupon`."
|
||
},
|
||
"harper.linters.WhetYourAppetite": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures `whet your appetite` is used correctly, distinguishing it from the incorrect `wet` variation."
|
||
},
|
||
"harper.linters.WholeEntire": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the redundancy in `whole entire` to `whole` or `entire`."
|
||
},
|
||
"harper.linters.WidelyAccepted": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Flags `wide accepted`, `wide acceptable`, or `wide used` and recommends switching `wide` to the adverb `widely`."
|
||
},
|
||
"harper.linters.Widespread": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `widespread`."
|
||
},
|
||
"harper.linters.WillContain": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Incorrect verb form: `will` should be followed by the base form `contain`."
|
||
},
|
||
"harper.linters.WinPrize": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Catches the mix-up between `price`/`prise` and `prize` after the verb `win`."
|
||
},
|
||
"harper.linters.WishCould": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Checks for `can` being used after `wish` when it should be `could`."
|
||
},
|
||
"harper.linters.WordPressDotcom": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Ensures correct capitalization of WordPress.com. This rule verifies that the official stylization of WordPress.com is used when referring to the hosting provider."
|
||
},
|
||
"harper.linters.Worldwide": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Looks for incorrect spacing inside the closed compound `worldwide`."
|
||
},
|
||
"harper.linters.WorseOrWorst": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `worse` and `worst` used in contexts where the other belongs."
|
||
},
|
||
"harper.linters.WorstCaseScenario": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `worst-case scenario` when the hyphen is missing or `worse` is used instead of `worst`."
|
||
},
|
||
"harper.linters.WouldNeverHave": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects `would/could have never` to `never would/could have`."
|
||
},
|
||
"harper.linters.WreakHavoc": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Corrects the eggcorn `wreck havoc` to `wreak havoc`, which is the proper term for causing chaos or destruction."
|
||
},
|
||
"harper.linters.WroughtIron": {
|
||
"scope": "resource",
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "`Wrought iron` is low-carbon, malleable iron used for decorative work; variants like `rod iron` or `rot iron` are phonetic misspellings that may confuse readers."
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"scripts": {
|
||
"watch:esbuild": "node esbuild.cjs --watch",
|
||
"watch:tsc": "tsc --noEmit --watch",
|
||
"pretest": "tsc && node esbuild.cjs",
|
||
"test": "node build/tests/runTests.js",
|
||
"vscode:prepublish": "tsc --noEmit && node esbuild.cjs --production",
|
||
"package": "vsce package --no-dependencies"
|
||
},
|
||
"devDependencies": {
|
||
"@types/jasmine": "^5.1.7",
|
||
"@types/node": "catalog:",
|
||
"@types/vscode": "^1.96.2",
|
||
"@vscode/test-electron": "^2.3.9",
|
||
"@vscode/vsce": "^3.3.0",
|
||
"esbuild": "^0.25.0",
|
||
"jasmine": "^5.6.0",
|
||
"typescript": "catalog:"
|
||
},
|
||
"dependencies": {
|
||
"vscode-languageclient": "^9.0.1"
|
||
}
|
||
}
|