{"id":13479382,"url":"https://github.com/neoclide/coc-eslint","last_synced_at":"2025-05-16T14:08:59.888Z","repository":{"id":39869172,"uuid":"147535090","full_name":"neoclide/coc-eslint","owner":"neoclide","description":"Eslint extension for coc.nvim","archived":false,"fork":false,"pushed_at":"2025-04-25T07:33:11.000Z","size":445,"stargazers_count":400,"open_issues_count":5,"forks_count":24,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-25T07:41:56.921Z","etag":null,"topics":["coc","eslint","vim"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neoclide.png","metadata":{"files":{"readme":"Readme.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"patreon":"chemzqm","custom":"https://www.paypal.com/paypalme/chezqm"}},"created_at":"2018-09-05T14:53:57.000Z","updated_at":"2025-04-25T07:33:14.000Z","dependencies_parsed_at":"2024-11-15T04:53:44.335Z","dependency_job_id":"87f85c2f-0186-43ff-87e8-62c96655e7e0","html_url":"https://github.com/neoclide/coc-eslint","commit_stats":{"total_commits":115,"total_committers":10,"mean_commits":11.5,"dds":"0.12173913043478257","last_synced_commit":"70eb10d294e068757743f9b580c724e92c5b977d"},"previous_names":[],"tags_count":44,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoclide%2Fcoc-eslint","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoclide%2Fcoc-eslint/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoclide%2Fcoc-eslint/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoclide%2Fcoc-eslint/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neoclide","download_url":"https://codeload.github.com/neoclide/coc-eslint/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254544157,"owners_count":22088808,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["coc","eslint","vim"],"created_at":"2024-07-31T16:02:14.740Z","updated_at":"2025-05-16T14:08:54.872Z","avatar_url":"https://github.com/neoclide.png","language":"TypeScript","funding_links":["https://patreon.com/chemzqm","https://www.paypal.com/paypalme/chezqm","https://www.patreon.com/chemzqm"],"categories":["TypeScript","Lint"],"sub_categories":[],"readme":"# coc-eslint\n\nEslint language server extension for [coc.nvim](https://github.com/neoclide/coc.nvim).\n\nForked from [vscode-eslint](https://github.com/Microsoft/vscode-eslint).\n\n## Install\n\nIn your vim/neovim run the following command:\n\n```sh\n:CocInstall coc-eslint\n```\n\n`eslint` and a config file must be available, for example:\n\n```sh\nnpm install eslint --global\n```\n\nExample config file, in the root of the project: `eslint.config.mjs`:\n\n```javascript\nexport default [\n\t{\n\t\trules: {\n\t\t\t\"prefer-const\": \"error\",\n\t\t\t\"no-undef\": \"error\"\n\t\t}\n\t}\n];\n```\n\n## Important notice\n\n* This extension may not work with files just created, save the file and execute\n  `:CocCommand eslint.restart` on that case.\n* The eslint config file should inside your workspace folder for project lint to\n  work `:h coc-workspace-folders`.\n* Configuration `eslint.probe` is ignored when `eslint.validate` exists, configure\n  `eslint.validate` for your project is recommended.\n* `eslint.autoFixOnSave` is deprecated, use `:CocCommand eslint.migrateSettings`\n  for migrate to new configuration by use `editor.codeActionsOnSave` configuration.\n* `eslint.useFlatConfig` default to true and can't be turned off, consider\n  migrate your old configuration to use flat config instead.\n\n## Features\n\n- Lint `javascript` files using eslint.\n- Provide `codeActions` for fixing lint issues.\n- Provide eslint commands:\n  - `eslint.lintProject` Lint current project and set errors \u0026 warnings to vim's quickfix list.\n  - `eslint.executeAutofix` Fix all auto-fixable Problems\n  - `eslint.createConfig` Create ESLint configuration\n  - `eslint.showOutputChannel` Show Output Channel\n  - `eslint.migrateSettings` Migrate Settings\n  - `eslint.restart` Restart ESLint Server\n  - `eslint.revalidate` Revalidate all open files\n\n## Differences with vscode-eslint\n\n- Option `eslint.lintTask.enable` not exists, use `:CocCommand eslint.lintProject` to run eslint for current project.\n\n## Configuration options\n\n**Notice** these configuration settings allow you to configure the behaviour of the coc-eslint extension. They should be set in your `coc-settings.json` file, which can be opened with the `:CocConfig` command.\n\n- `eslint.enable`: Controls whether eslint is enabled or not.  Default: `true`\n- `eslint.packageManager`: The package manager you use to install node modules.  Default: `\"npm\"`\n    Valid options: [\"npm\",\"yarn\",\"pnpm\"]\n- `eslint.alwaysShowStatus`: Always show the ESlint status bar item.  Default: `false`\n- `eslint.fixOnSaveTimeout`: Timeout in miliseconds when run auto fix on save.  Default: `1000`\n- `eslint.nodeEnv`: The value of `NODE_ENV` to use when running eslint tasks.  Default: `null`\n- `eslint.nodePath`: A path added to `NODE_PATH` when resolving the eslint module.  Default: `null`\n- `eslint.options`: The eslint options object to provide args normally passed to eslint when executed from a command line (see https://eslint.org/docs/developer-guide/nodejs-api#eslint-class).  Default: `{}`\n- `eslint.trace.server`: Traces the communication between VSCode and the eslint linter service.  Default: `\"off\"`\n- `eslint.run`: Run the linter on save (onSave) or on type (onType)  Default: `\"onType\"`\n    Valid options: [\"onSave\",\"onType\"]\n- `eslint.autoFixOnSave`: Turns auto fix on save on or off.  Default: `false`\n- `eslint.quiet`: Turns on quiet mode, which ignores warnings.  Default: `false`\n- `eslint.onIgnoredFiles`: Whether ESLint should issue a warning on ignored files.  Default: `\"off\"`\n    Valid options: [\"warn\",\"off\"]\n- `eslint.useESLintClass`: Since version 7 ESLint offers a new API call ESLint. Use it even if the old CLIEngine is available. From version 8 on forward on ESLint class is available.  Default: `false`\n- `eslint.experimental.useFlatConfig`: Enables support of experimental Flat Config (aka eslint.config.js, supported by ESLint version 8.21 or later).  Default: `false`\n- `eslint.workingDirectories`: Specifies how the working directories ESLint is using are computed. ESLint resolves configuration files (e.g. `eslintrc`, `.eslintignore`) relative to a working directory so it is important to configure this correctly.\n- `eslint.validate`: An array of language ids which should be validated by ESLint. If not installed ESLint will show an error.\n- `eslint.probe`: An array of language ids for which the extension should probe if support is installed.  Default: `[\"javascript\",\"javascriptreact\",\"typescript\",\"typescriptreact\",\"html\",\"vue\",\"markdown\"]`\n- `eslint.runtime`: The location of the node binary to run ESLint under.  Default: `null`\n- `eslint.debug`: Enables ESLint debug mode (same as `--debug` on the command line)  Default: `false`\n- `eslint.execArgv`: Additional exec argv argument passed to the runtime. This can for example be used to control the maximum heap space using --max_old_space_size  Default: `null`\n- `eslint.codeAction.disableRuleComment`: Show disable lint rule in the quick fix menu.  Default: `{\"enable\":true,\"location\":\"separateLine\"}`\n- `eslint.codeAction.showDocumentation`: Show open lint rule documentation web page in the quick fix menu.  Default: `{\"enable\":true}`\n- `eslint.codeActionsOnSave.mode`: Specifies the code action mode. Possible values are 'all' and 'problems'.  Default: `\"all\"`\n    Valid options: [\"all\",\"problems\"]\n- `eslint.codeActionsOnSave.rules`: The rules that should be executed when computing the code actions on save or formatting a file. Defaults to the rules configured via the ESLint configuration  Default: `null`\n- `eslint.format.enable`: Enables ESLint as a formatter.  Default: `false`\n- `eslint.rules.customizations`: Override the severity of one or more rules reported by this extension, regardless of the project's ESLint config. Use globs to apply default severities for multiple rules.\n- `eslint.lintTask.options`: Command line options applied when running the task for linting the whole workspace (see https://eslint.org/docs/user-guide/command-line-interface).  Default: `[\".\"]`\n- `eslint.problems.shortenToSingleLine`: Shortens the text spans of underlined problems to their first related line.  Default: `false`\n- `eslint.migration.2_x`: Whether ESlint should migrate auto fix on save settings.  Default: `\"on\"`\n    Valid options: [\"off\",\"on\"]\n- `eslint.useFlatConfig`: Controls whether flat config should be used or not. This setting requires ESLint version 8.57 or later and is interpreted according to the [ESLint Flat Config rollout plan](https://eslint.org/blog/2023/10/flat-config-rollout-plans/). This means:   - *8.57.0 \u003c= ESLint version \u003c 9.x*: setting is honored and defaults to false - *9.0.0 \u003c= ESLint version \u003c 10.x*: settings is honored and defaults to true - *10.0.0 \u003c= ESLint version*: setting is ignored. Flat configs are the default and can't be turned off.  Default: `null`\n- `eslint.ignoreUntitled`: If true, untitled files won't be validated by ESLint.  Default: `false`\n- `eslint.timeBudget.onValidation`: The time budget in milliseconds to spend on validation before showing a warning or error.  Default: `{\"warn\":4000,\"error\":8000}`\n- `eslint.timeBudget.onFixes`: The time budget in milliseconds to spend on computing fixes before showing a warning or error.  Default: `{\"warn\":3000,\"error\":6000}`\n\n## Auto-fixing\n\nThe extension supports automatic fixing of warnings to the extent that it is supported by eslint.\nFor warnings which support an auto-fix. You can apply the quick fix by either:\n\n- Configure `editor.codeActionsOnSave` with property `\"source.fixAll.eslint\": true`.\n- ~Set `eslint.autoFixOnSave` to `true` and save your file~\n- Trigger `\u003cPlug\u003e(coc-codeaction)` with mapped keys, and select a fix action in the input list.\n- Run command `:CocCommand eslint.executeAutofix`.\n- Trigger command `eslint.executeAutofix` from `:CocCommand`.\n\n## Supporting\n\nIf you like this extension, consider supporting it on Patreon or PayPal:\n\n\u003ca href=\"https://www.patreon.com/chemzqm\"\u003e\u003cimg src=\"https://c5.patreon.com/external/logo/become_a_patron_button.png\" alt=\"Patreon donate button\" /\u003e \u003c/a\u003e\n\u003ca href=\"https://www.paypal.com/paypalme/chezqm\"\u003e\u003cimg src=\"https://werwolv.net/assets/paypal_banner.png\" alt=\"PayPal donate button\" /\u003e \u003c/a\u003e\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneoclide%2Fcoc-eslint","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneoclide%2Fcoc-eslint","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneoclide%2Fcoc-eslint/lists"}