{"id":13479419,"url":"https://github.com/neoclide/coc-tsserver","last_synced_at":"2025-05-14T01:06:35.957Z","repository":{"id":37269943,"uuid":"147821688","full_name":"neoclide/coc-tsserver","owner":"neoclide","description":"Tsserver extension for coc.nvim that provide rich features like VSCode for javascript \u0026 typescript","archived":false,"fork":false,"pushed_at":"2025-04-08T14:27:57.000Z","size":860,"stargazers_count":1074,"open_issues_count":39,"forks_count":68,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-04-10T16:59:22.349Z","etag":null,"topics":["neovim","tsserver","typescript","vim"],"latest_commit_sha":null,"homepage":"","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":"history.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},"funding":{"patreon":"chemzqm","custom":"https://www.paypal.com/paypalme/chezqm"}},"created_at":"2018-09-07T12:40:41.000Z","updated_at":"2025-04-08T14:28:01.000Z","dependencies_parsed_at":"2024-09-30T19:10:48.315Z","dependency_job_id":"be233bd0-a972-4e8e-bac4-aeaa394430e5","html_url":"https://github.com/neoclide/coc-tsserver","commit_stats":{"total_commits":490,"total_committers":37,"mean_commits":"13.243243243243244","dds":"0.11632653061224485","last_synced_commit":"d8a2f44d64fcefaf6a2087cd5d0b7783393b73d7"},"previous_names":[],"tags_count":171,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoclide%2Fcoc-tsserver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoclide%2Fcoc-tsserver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoclide%2Fcoc-tsserver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neoclide%2Fcoc-tsserver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neoclide","download_url":"https://codeload.github.com/neoclide/coc-tsserver/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253553037,"owners_count":21926591,"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":["neovim","tsserver","typescript","vim"],"created_at":"2024-07-31T16:02:15.695Z","updated_at":"2025-05-14T01:06:35.898Z","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","Language Support","Plugins / Themes / Dependencies"],"sub_categories":[],"readme":"# coc-tsserver\n\nTsserver language server extension for [coc.nvim](https://github.com/neoclide/coc.nvim).\n\nTsserver is part of [TypeScript](https://github.com/microsoft/TypeScript) which\nprovide rich language features for javascript and typescript.\n\nThis extension is a fork of `typescript-language-features` extension which is\nbundled with VSCode. File type detect and syntax highlight are not supported by\nthis extension, use other vim plugin instead.\n\n**Important note:** from v2.0.0, tsserver module resolved first from global\nconfiguration `tsserver.tsdk` and use bundled module when not found, if\n`tsserver.useLocalTsdk` is enabled, workspace folder configured `tsserver.tsdk`\nor typescript module inside current workspace folder would be used when exists.\n\n## Install\n\nIn your vim/neovim, run command:\n\n`:CocInstall coc-tsserver`\n\nFor yarn2 ( \u003e= v2.0.0-rc.36) user want to use local typescript module:\n\n- Run command `yarn dlx @yarnpkg/sdks vim`, which will generate\n  `.vim/coc-settings.json`, with content:\n\n  ```json\n  {\n    \"eslint.packageManager\": \"yarn\",\n    \"eslint.nodePath\": \".yarn/sdks\",\n    \"workspace.workspaceFolderCheckCwd\": false,\n    \"tsserver.tsdk\": \".yarn/sdks/typescript/lib\"\n  }\n  ```\n\n## Features\n\nAlmost the same as VSCode.\n\n- Supports javascript \u0026 typescript and jsx/tsx.\n- Installs typings automatically.\n- Commands to work with tsserver, including:\n  - `tsserver.reloadProjects`\n  - `tsserver.openTsServerLog`\n  - `tsserver.goToProjectConfig`\n  - `tsserver.restart`\n  - `tsserver.watchBuild`\n  - `tsserver.findAllFileReferences`\n- Code completion support.\n- Go to definition (more info in [microsoft/TypeScript#37777](https://github.com/microsoft/TypeScript/issues/37777))\n- Code validation.\n- Document highlight.\n- Document symbols of current buffer.\n- Folding and folding range of current buffer.\n- Format current buffer, range format and format on type.\n- Hover for documentation.\n- Implementations codeLens and references codeLens.\n- Organize imports command.\n- Quickfix using code actions.\n- Code refactor using code actions.\n- Source code action, including:\n  - Fix all fixable JS/TS issues.\n  - Remove all unused code.\n  - Add all missing imports.\n  - Organize Imports.\n  - Sort Imports.\n  - Remove Unused Imports\n- Find references.\n- Signature help.\n- Call hierarchy.\n- Selection range.\n- Semantic tokens.\n- Rename symbols support.\n- Automatic tag closing.\n- Rename imports on file rename, require\n  [watchman](https://facebook.github.io/watchman/) installed in your \\$PATH.\n- Search for workspace symbols.\n- Inlay hints support using virtual text feature of neovim, which requires:\n  - TypeScript \u003e= 4.4.0\n  - Neovim \u003e= 0.4.0\n  - Enabled by options starts with `typescript.inlayHints` or\n    `javascript.inlayHints`.\n\n~Tsserver module first resolved from your local workspace. If it's not found, use\ntsserver from `tsserver.tsdk` configuration or use bundled tsserver with this\nextension.~\n\n## Commands\n\nCommands contributed to `:CocList commands`\n\n- `tsserver.reloadProjects` Reload current project\n- `tsserver.openTsServerLog` Open log file of tsserver.\n- `tsserver.goToProjectConfig` Open project config file.\n- `tsserver.restart` Restart tsserver\n- `tsserver.findAllFileReferences` Find File References\n- `tsserver.goToSourceDefinition` Go to Source Definition\n- `tsserver.watchBuild` Run `tsc --watch` for current project by use vim's job feature.\n- `tsserver.executeAutofix` Fix autofixable problems of current document.\n- `tsserver.chooseVersion` Choose different typescript version for current project.\n\n## Configuration options\n\nCheckout `:h coc-configuration` for guide of coc.nvim's configuration.\n\n- `tsserver.enable`: Enable running of tsserver. Default: `true`\n- `tsserver.tsconfigPath`: Path to tsconfig file for the `tsserver.watchBuild` command. Default: `\"tsconfig.json\"`\n- `tsserver.locale`: Sets the locale used to report JavaScript and TypeScript errors. Defaults to use VS Code's locale. Default: `\"auto\"`\n  Valid options: [\"auto\",\"de\",\"es\",\"en\",\"fr\",\"it\",\"ja\",\"ko\",\"ru\",\"zh-CN\",\"zh-TW\"]\n- `tsserver.useLocalTsdk`: Use tsserver from typescript module in workspace folder, ignore tsserver.tsdk configuration. Default: `false`\n- `tsserver.maxTsServerMemory`: Set the maximum amount of memory to allocate to the TypeScript server process Default: `3072`\n- `tsserver.watchOptions`: Configure which watching strategies should be used to keep track of files and directories. Requires using TypeScript 3.8+ in the workspace.\n- `tsserver.tsdk`: Specifies the folder path to the tsserver and `lib*.d.ts` files under a TypeScript install to use for IntelliSense, for example: `./node_modules/typescript/lib`. - When specified as a user setting, the TypeScript version from `tsserver.tsdk` automatically replaces the built-in TypeScript version. - When specified as a workspace setting, the tsserver is used when `tsserver.useLocalTsdk` is true. Use command `:CocCommand tsserver.chooseVersion` to choose different typescript version. Default: `\"\"`\n- `tsserver.npm`: Specifies the path to the npm executable used for [Automatic Type Acquisition](https://code.visualstudio.com/docs/nodejs/working-with-javascript#_typings-and-automatic-type-acquisition). Default: `\"\"`\n- `tsserver.log`: Log level of tsserver Default: `\"off\"`\n  Valid options: [\"normal\",\"terse\",\"verbose\",\"off\"]\n- `tsserver.trace.server`: Trace level of tsserver Default: `\"off\"`\n  Valid options: [\"off\",\"messages\",\"verbose\"]\n- `tsserver.enableTracing`: Enables tracing TS server performance to a directory. These trace files can be used to diagnose TS Server performance issues. The log may contain file paths, source code, and other potentially sensitive information from your project. Default: `false`\n- `tsserver.pluginPaths`: Additional paths to discover TypeScript Language Service plugins. Default: `[]`\n- `tsserver.reportStyleChecksAsWarnings`: Report style checks as warnings. Default: `true`\n- `tsserver.implicitProjectConfig.checkJs`: Enable checkJs for implicit project Default: `false`\n- `tsserver.implicitProjectConfig.module`: Sets the module system for the program. See more: https://www.typescriptlang.org/tsconfig#module. Default: `\"ESNext\"`\n  Valid options: [\"CommonJS\",\"AMD\",\"System\",\"UMD\",\"ES6\",\"ES2015\",\"ES2020\",\"ESNext\",\"None\",\"ES2022\",\"Node12\",\"NodeNext\"]\n- `tsserver.implicitProjectConfig.target`: Set target JavaScript language version for emitted JavaScript and include library declarations. See more: https://www.typescriptlang.org/tsconfig#target. Default: `\"ES2020\"`\n  Valid options: [\"ES3\",\"ES5\",\"ES6\",\"ES2015\",\"ES2016\",\"ES2017\",\"ES2018\",\"ES2019\",\"ES2020\",\"ES2021\",\"ES2022\",\"ESNext\"]\n- `tsserver.implicitProjectConfig.strictNullChecks`: Enable/disable [strict null checks](https://www.typescriptlang.org/tsconfig#strictNullChecks) in JavaScript and TypeScript files that are not part of a project. Existing `jsconfig.json` or `tsconfig.json` files override this setting. Default: `true`\n- `tsserver.implicitProjectConfig.strictFunctionTypes`: Enable/disable [strict function types](https://www.typescriptlang.org/tsconfig#strictFunctionTypes) in JavaScript and TypeScript files that are not part of a project. Existing `jsconfig.json` or `tsconfig.json` files override this setting. Default: `true`\n- `tsserver.implicitProjectConfig.experimentalDecorators`: Enable experimentalDecorators for implicit project Default: `false`\n- `tsserver.disableAutomaticTypeAcquisition`: Disables [automatic type acquisition](https://code.visualstudio.com/docs/nodejs/working-with-javascript#_typings-and-automatic-type-acquisition). Automatic type acquisition fetches `@types` packages from npm to improve IntelliSense for external libraries. Default: `false`\n- `tsserver.useSyntaxServer`: Controls if TypeScript launches a dedicated server to more quickly handle syntax related operations, such as computing code folding. Default: `\"auto\"`\n  Valid options: [\"always\",\"never\",\"auto\"]\n- `tsserver.experimental.enableProjectDiagnostics`: (Experimental) Enables project wide error reporting. Default: `false`\n- `typescript.check.npmIsInstalled`: Check if npm is installed for [Automatic Type Acquisition](https://code.visualstudio.com/docs/nodejs/working-with-javascript#_typings-and-automatic-type-acquisition). Default: `true`\n- `typescript.showUnused`: Show unused variable hint. Default: `true`\n- `typescript.showDeprecated`: Show deprecated variable hint. Default: `true`\n- `typescript.updateImportsOnFileMove.enabled`: Enable/disable automatic updating of import paths when you rename or move a file in VS Code. Default: `\"prompt\"`\n  Valid options: [\"prompt\",\"always\",\"never\"]\n- `typescript.implementationsCodeLens.enabled`: Enable codeLens for implementations Default: `false`\n- `typescript.referencesCodeLens.enabled`: Enable codeLens for references Default: `false`\n- `typescript.referencesCodeLens.showOnAllFunctions`: Enable/disable references CodeLens on all functions in typescript files. Default: `false`\n- `typescript.preferences.importModuleSpecifier`: Preferred path style for auto imports. Default: `\"shortest\"`\n  Valid options: [\"shortest\",\"relative\",\"non-relative\",\"project-relative\"]\n- `typescript.preferences.importModuleSpecifierEnding`: Preferred path ending for auto imports. Default: `\"auto\"`\n  Valid options: [\"auto\",\"minimal\",\"index\",\"js\"]\n- `typescript.preferences.jsxAttributeCompletionStyle`: Preferred style for JSX attribute completions. Default: `\"auto\"`\n  Valid options: [\"auto\",\"braces\",\"none\"]\n- `typescript.preferences.includePackageJsonAutoImports`: Enable/disable searching `package.json` dependencies for available auto imports. Default: `\"auto\"`\n  Valid options: [\"auto\",\"on\",\"off\"]\n- `typescript.preferences.quoteStyle`: Preferred quote style to use for quick fixes. Default: `\"auto\"`\n  Valid options: [\"auto\",\"single\",\"double\"]\n- `typescript.preferences.useAliasesForRenames`: Enable/disable introducing aliases for object shorthand properties during renames. Requires using TypeScript 3.4 or newer in the workspace. Default: `true`\n- `typescript.preferences.autoImportFileExcludePatterns`: Specify glob patterns of files to exclude from auto imports. Requires using TypeScript 4.8 or newer in the workspace.\n- `typescript.preferences.preferTypeOnlyAutoImports`: Include the `type` keyword in auto-imports whenever possible. Requires using TypeScript 5.3+ in the workspace.\n- `typescript.preferences.renameShorthandProperties`: Enable/disable introducing aliases for object shorthand properties during renames. Requires using TypeScript 3.4 or newer in the workspace. Default: `true`\n- `typescript.suggestionActions.enabled`: Enable/disable suggestion diagnostics for TypeScript files in the editor. Requires using TypeScript 2.8 or newer in the workspace. Default: `true`\n- `typescript.validate.enable`: Enable/disable TypeScript validation. Default: `true`\n- `typescript.suggest.enabled`: Enabled/disable autocomplete suggestions. Default: `true`\n- `typescript.suggest.paths`: Enable/disable suggest paths in import statement and require calls Default: `true`\n- `typescript.suggest.autoImports`: Enable/disable auto import suggests. Default: `true`\n- `typescript.suggest.completeFunctionCalls`: Enable snippet for method suggestion Default: `true`\n- `typescript.suggest.includeCompletionsForImportStatements`: Enable/disable auto-import-style completions on partially-typed import statements. Requires using TypeScript 4.3+ in the workspace. Default: `true`\n- `typescript.suggest.includeCompletionsWithSnippetText`: Enable/disable snippet completions from TS Server. Requires using TypeScript 4.3+ in the workspace. Default: `true`\n- `typescript.suggest.classMemberSnippets.enabled`: Enable/disable snippet completions for class members. Requires using TypeScript 4.5+ in the workspace Default: `true`\n- `typescript.suggest.jsdoc.generateReturns`: Enable/disable generating `@return` annotations for JSDoc templates. Requires using TypeScript 4.2+ in the workspace. Default: `true`\n- `typescript.format.enable`: Enable format for typescript. Default: `true`\n- `typescript.format.insertSpaceAfterCommaDelimiter`: Defines space handling after a comma delimiter. Default: `true`\n- `typescript.format.insertSpaceAfterConstructor`: Defines space handling after the constructor keyword. Default: `false`\n- `typescript.format.insertSpaceAfterSemicolonInForStatements`: Defines space handling after a semicolon in a for statement. Default: `true`\n- `typescript.format.insertSpaceBeforeAndAfterBinaryOperators`: Defines space handling after a binary operator. Default: `true`\n- `typescript.format.insertSpaceAfterKeywordsInControlFlowStatements`: Defines space handling after keywords in a control flow statement. Default: `true`\n- `typescript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions`: Defines space handling after function keyword for anonymous functions. Default: `true`\n- `typescript.format.insertSpaceBeforeFunctionParenthesis`: Defines space handling before function argument parentheses. Default: `false`\n- `typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis`: Defines space handling after opening and before closing non-empty parenthesis. Default: `false`\n- `typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets`: Defines space handling after opening and before closing non-empty brackets. Default: `false`\n- `typescript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces`: Defines space handling after opening and before closing empty braces. Default: `false`\n- `typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces`: Defines space handling after opening and before closing non-empty braces. Default: `false`\n- `typescript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces`: Defines space handling after opening and before closing template string braces. Default: `false`\n- `typescript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces`: Defines space handling after opening and before closing JSX expression braces. Default: `false`\n- `typescript.format.insertSpaceAfterTypeAssertion`: Defines space handling after type assertions in TypeScript. Default: `false`\n- `typescript.format.placeOpenBraceOnNewLineForFunctions`: Defines whether an open brace is put onto a new line for functions or not. Default: `false`\n- `typescript.format.placeOpenBraceOnNewLineForControlBlocks`: Defines whether an open brace is put onto a new line for control blocks or not. Default: `false`\n- `typescript.format.semicolons`: Defines handling of optional semicolons. Requires using TypeScript 3.7 or newer in the workspace. Default: `\"ignore\"`\n  Valid options: [\"ignore\",\"insert\",\"remove\"]\n- `typescript.suggest.includeAutomaticOptionalChainCompletions`: Enable/disable showing completions on potentially undefined values that insert an optional chain call. Requires TS 3.7+ and strict null checks to be enabled. Default: `true`\n- `typescript.workspaceSymbols.scope`: Controls which files are searched by [go to symbol in workspace](https://code.visualstudio.com/docs/editor/editingevolved#_open-symbol-by-name). Default: `\"allOpenProjects\"`\n  Valid options: [\"allOpenProjects\",\"currentProject\"]\n- `typescript.autoClosingTags`: Enable/disable automatic closing of JSX tags. Default: `true`\n- `typescript.preferGoToSourceDefinition`: Makes Go to Definition avoid type declaration files when possible by triggering Go to Source Definition instead. Requires using TypeScript 4.7+ in the workspace. Default: `false`\n- `javascript.showUnused`: Show unused variable hint. Default: `true`\n- `javascript.showDeprecated`: Show deprecated variable hint. Default: `true`\n- `javascript.updateImportsOnFileMove.enabled`: Enable/disable automatic updating of import paths when you rename or move a file in VS Code. Default: `\"prompt\"`\n  Valid options: [\"prompt\",\"always\",\"never\"]\n- `javascript.implementationsCodeLens.enabled`: Enable/disable implementations CodeLens. This CodeLens shows the implementers of an interface. Default: `false`\n- `javascript.referencesCodeLens.enabled`: Enable/disable references CodeLens in JavaScript files. Default: `false`\n- `javascript.referencesCodeLens.showOnAllFunctions`: Enable/disable references CodeLens on all functions in JavaScript files. Default: `false`\n- `javascript.preferences.importModuleSpecifier`: Preferred path style for auto imports. Default: `\"shortest\"`\n  Valid options: [\"shortest\",\"relative\",\"non-relative\",\"project-relative\"]\n- `javascript.preferences.importModuleSpecifierEnding`: Preferred path ending for auto imports. Default: `\"auto\"`\n  Valid options: [\"auto\",\"minimal\",\"index\",\"js\"]\n- `javascript.preferences.jsxAttributeCompletionStyle`: Preferred style for JSX attribute completions. Default: `\"auto\"`\n  Valid options: [\"auto\",\"braces\",\"none\"]\n- `javascript.preferences.quoteStyle`: Preferred quote style to use for quick fixes. Default: `\"auto\"`\n  Valid options: [\"auto\",\"single\",\"double\"]\n- `javascript.preferences.useAliasesForRenames`: Enable/disable introducing aliases for object shorthand properties during renames. Requires using TypeScript 3.4 or newer in the workspace. Default: `true`\n- `javascript.preferences.autoImportFileExcludePatterns`: Specify glob patterns of files to exclude from auto imports. Requires using TypeScript 4.8 or newer in the workspace.\n- `javascript.preferences.renameShorthandProperties`: Enable/disable introducing aliases for object shorthand properties during renames. Requires using TypeScript 3.4 or newer in the workspace. Default: `true`\n- `javascript.validate.enable`: Enable/disable JavaScript validation. Default: `true`\n- `javascript.suggestionActions.enabled`: Enable/disable suggestion diagnostics for JavaScript files in the editor. Requires using TypeScript 2.8 or newer in the workspace. Default: `true`\n- `javascript.suggest.names`: Enable/disable including unique names from the file in JavaScript suggestions. Note that name suggestions are always disabled in JavaScript code that is semantically checked using `@ts-check` or `checkJs`. Default: `true`\n- `javascript.suggest.enabled`: Enabled/disable autocomplete suggestions. Default: `true`\n- `javascript.suggest.paths`: Enable/disable suggest paths in import statement and require calls Default: `true`\n- `javascript.suggest.autoImports`: Enable/disable auto import suggests. Default: `true`\n- `javascript.suggest.completeFunctionCalls`: Enable snippet for method suggestion Default: `true`\n- `javascript.suggest.includeCompletionsForImportStatements`: Enable/disable auto-import-style completions on partially-typed import statements. Requires using TypeScript 4.3+ in the workspace. Default: `true`\n- `javascript.suggest.classMemberSnippets.enabled`: Enable/disable snippet completions for class members. Requires using TypeScript 4.5+ in the workspace Default: `true`\n- `javascript.suggest.jsdoc.generateReturns`: Enable/disable generating `@return` annotations for JSDoc templates. Requires using TypeScript 4.2+ in the workspace. Default: `true`\n- `javascript.format.enable`: Enable format for javascript. Default: `true`\n- `javascript.format.insertSpaceAfterCommaDelimiter`: Default: `true`\n- `javascript.format.insertSpaceAfterConstructor`: Default: `false`\n- `javascript.format.insertSpaceAfterSemicolonInForStatements`: Default: `true`\n- `javascript.format.insertSpaceBeforeAndAfterBinaryOperators`: Default: `true`\n- `javascript.format.insertSpaceAfterKeywordsInControlFlowStatements`: Default: `true`\n- `javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions`: Default: `true`\n- `javascript.format.insertSpaceBeforeFunctionParenthesis`: Default: `false`\n- `javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis`: Default: `false`\n- `javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets`: Default: `false`\n- `javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces`: Default: `false`\n- `javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces`: Default: `false`\n- `javascript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces`: Default: `false`\n- `javascript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces`: Default: `false`\n- `javascript.format.insertSpaceAfterTypeAssertion`: Default: `false`\n- `javascript.format.placeOpenBraceOnNewLineForFunctions`: Default: `false`\n- `javascript.format.placeOpenBraceOnNewLineForControlBlocks`: Default: `false`\n- `javascript.suggest.includeAutomaticOptionalChainCompletions`: Enable/disable showing completions on potentially undefined values that insert an optional chain call. Requires TS 3.7+ and strict null checks to be enabled. Default: `true`\n- `typescript.inlayHints.parameterNames.enabled`: Enable/disable inlay hints of parameter names. Default: `\"none\"`\n  Valid options: [\"none\",\"literals\",\"all\"]\n- `typescript.inlayHints.parameterNames.suppressWhenArgumentMatchesName`: Suppress parameter name hints on arguments whose text is identical to the parameter name. Default: `true`\n- `typescript.inlayHints.parameterTypes.enabled`: Enable/disable inlay hints of parameter types. Default: `false`\n- `typescript.inlayHints.variableTypes.enabled`: Enable/disable inlay hints of variable types. Default: `false`\n- `typescript.inlayHints.propertyDeclarationTypes.enabled`: Enable/disable inlay hints of property declarations. Default: `false`\n- `typescript.inlayHints.functionLikeReturnTypes.enabled`: Enable/disable inlay hints of return type for function signatures. Default: `false`\n- `typescript.inlayHints.enumMemberValues.enabled`: Enable/disable inlay hints of enum member values. Default: `false`\n- `typescript.inlayHints.variableTypes.suppressWhenTypeMatchesName`: Suppress type hints on variables whose name is identical to the type name. Requires using TypeScript 4.8+ in the workspace. Default: `true`\n- `javascript.inlayHints.parameterNames.enabled`: Enable/disable inlay hints of parameter names. Default: `\"none\"`\n  Valid options: [\"none\",\"literals\",\"all\"]\n- `javascript.inlayHints.parameterNames.suppressWhenArgumentMatchesName`: Suppress parameter name hints on arguments whose text is identical to the parameter name. Default: `true`\n- `javascript.inlayHints.parameterTypes.enabled`: Enable/disable inlay hints of parameter types. Default: `false`\n- `javascript.inlayHints.variableTypes.enabled`: Enable/disable inlay hints of variable types. Default: `false`\n- `javascript.inlayHints.propertyDeclarationTypes.enabled`: Enable/disable inlay hints of property declarations. Default: `false`\n- `javascript.inlayHints.functionLikeReturnTypes.enabled`: Enable/disable inlay hints of return type for function signatures. Default: `false`\n- `javascript.inlayHints.enumMemberValues.enabled`: Enable/disable inlay hints of enum member values. Default: `false`\n- `javascript.inlayHints.variableTypes.suppressWhenTypeMatchesName`: Suppress type hints on variables whose name is identical to the type name. Requires using TypeScript 4.8+ in the workspace. Default: `true`\n- `javascript.autoClosingTags`: Enable/disable automatic closing of JSX tags. Default: `true`\n- `javascript.preferGoToSourceDefinition`: Makes Go to Definition avoid type declaration files when possible by triggering Go to Source Definition instead. Requires using TypeScript 4.7+ in the workspace. Default: `false`\n- `javascript.format.semicolons`: Defines handling of optional semicolons. Requires using TypeScript 3.7 or newer in the workspace. Default: `\"ignore\"`\n  Valid options: [\"ignore\",\"insert\",\"remove\"]\n- `javascript.suggest.completeJSDocs`: Enable/disable suggestion to complete JSDoc comments. Default: `true`\n- `typescript.suggest.completeJSDocs`: Enable/disable suggestion to complete JSDoc comments. Default: `true`\n- `javascript.suggest.objectLiteralMethodSnippets.enabled`: Enable/disable snippet completions for methods in object literals. Requires using TypeScript 4.7+ in the workspace Default: `true`\n- `typescript.suggest.objectLiteralMethodSnippets.enabled`: Enable/disable snippet completions for methods in object literals. Requires using TypeScript 4.7+ in the workspace Default: `true`\n\nMost Configurations are the same as with VSCode. Install\n[coc-json](https://github.com/neoclide/coc-json) and try completion with\n`tsserver`, `typescript` or `javascript` in your\n`coc-settings.json`.\n\n### Differences between VSCode\n\nAdded configurations by coc-tsserver:\n\n- `tsserver.useLocalTsdk` only works when used as workspace folder configuration.\n- `tsserver.tsconfigPath`\n- `tsserver.enable`\n\nRemoved configurations:\n\n- `typescript.tsserver.useSeparateSyntaxServer` Use `tsserver.useSyntaxServer` instead.\n- `typescript.enablePromptUseWorkspaceTsdk` No propmpts given.\n- `typescript.tsc.autoDetect` Used for task, not supported.\n- `typescript.surveys.enabled` Not supported.\n\nRenamed configurations to use `tsserver` as prefix:\n\n- `typescript.tsdk` =\u003e `tsserver.tsdk`\n- `typescript.disableAutomaticTypeAcquisition` =\u003e `tsserver.disableAutomaticTypeAcquisition`\n- `typescript.npm` =\u003e `tsserver.npm`\n- `typescript.locale` =\u003e `tsserver.locale`\n- `typescript.tsserver.maxTsServerMemory` =\u003e `tsserver.maxTsServerMemory`\n- `typescript.tsserver.watchOptions` =\u003e `tsserver.watchOptions`\n- `typescript.tsserver.useSyntaxServer` =\u003e `tsserver.useSyntaxServer`\n- `typescript.tsserver.log` =\u003e `tsserver.log`\n- `typescript.tsserver.trace` =\u003e `tsserver.trace.server`\n- `typescript.tsserver.enableTracing` =\u003e `tsserver.enableTracing`\n- `typescript.tsserver.pluginPaths` =\u003e `tsserver.pluginPaths`\n- `typescript.reportStyleChecksAsWarnings` =\u003e `tsserver.reportStyleChecksAsWarnings`\n- `js/ts.implicitProjectConfig.checkJs` =\u003e `tsserver.implicitProjectConfig.checkJs`\n- `js/ts.implicitProjectConfig.experimentalDecorators` =\u003e `tsserver.implicitProjectConfig.experimentalDecorators`\n- `js/ts.implicitProjectConfig.module` =\u003e `tsserver.implicitProjectConfig.module`\n- `js/ts.implicitProjectConfig.target` =\u003e `tsserver.implicitProjectConfig.target`\n- `js/ts.implicitProjectConfig.strictNullChecks` =\u003e `tsserver.implicitProjectConfig.strictNullChecks`\n- `js/ts.implicitProjectConfig.strictFunctionTypes` =\u003e `tsserver.implicitProjectConfig.strictFunctionTypes`\n- `typescript.tsserver.experimental.enableProjectDiagnostics` =\u003e `tsserver.experimental.enableProjectDiagnostics`\n\n## Related extensions\n\n- [coc-eslint](https://github.com/neoclide/coc-eslint): enable [eslint](https://github.com/eslint/eslint) plugin for tsserver to lint TypeScript and JavaScript files.\n- [coc-tslint-plugin](https://github.com/neoclide/coc-tslint-plugin): enable [tslint](https://github.com/palantir/tslint) plugin for tsserver ([deprecated](https://github.com/palantir/tslint/issues/4534)).\n- [coc-styled-components](https://github.com/fannheyward/coc-styled-components/): Styled component for coc.nvim as a tsserver plugin.\n- [coc-react-refactor](https://github.com/fannheyward/coc-react-refactor): React refactor extension for coc.nvim, forked from vscode-react-refactor.\n- [coc-vetur](https://github.com/neoclide/coc-vetur): [vue](https://github.com/vuejs/vue) extension.\n- [coc-angular](https://github.com/iamcco/coc-angular): [angular](https://github.com/angular/angular) extension.\n\n## Troubleshooting\n\n- Add `\"tsserver.log\": \"verbose\"` to your `coc-settings.json` (opened by command\n  `:CocConfig`)\n- To trace LSP communication, add `\"tsserver.trace.server\": \"verbose\"` to your\n  `coc-settings.json`\n- Restart coc server by command `:CocRestart`\n- Make the issue happen.\n- Open tsserver log file by command `CocCommand tsserver.openTsServerLog`\n- Open tsserver output channel by command `CocCommand workspace.showOutput tsserver`\n\nIf you find any issues, please [create an\nissue](https://github.com/neoclide/coc-tsserver/issues/new).\n\n## Q \u0026 A\n\nQ: Automatic type acquisition not work.\n\nA: configure `tsserver.npm` to your global npm path or configure\n`\"tsserver.disableAutomaticTypeAcquisition\": false` to disable automatic typings\ninstallation.\n\nQ: The extension needs some time to work.\n\nA: The initialize of tsserver requires some time, you can add `g:coc_status` to\nyour status line, see `:h coc-status`. If your tsserver get slow, try exclude\nunnecessary files in your jsconfig.json/tsconfig.json, make sure typescript\nversion \u003e 4.9 and disable logging (disabled by default).\n\nQ: Update import on file rename not work.\n\nA: Make sure install [watchman](https://facebook.github.io/watchman/) in your\n\\$PATH. Use command `:CocCommand workspace.showOutput watchman` to check\nwatchman output.\n\nQ: Not work with buffer just created.\n\nA: Tsserver treat buffer without a disk file belongs to implicit project, VSCode\ncould work because VSCode create empty file first for buffer, save the buffer to\ndisk to make tsserver work.\n\nQ: Not work with my javascript project.\n\nA: Configure [jsconfig.json](https://code.visualstudio.com/docs/languages/jsconfig) to make\ntsserver understand your code. Some features may still not work well, it's\nrecommended to use typescript.\n\nQ: Not work on WSL.\n\nA: Copy you project files from mounted dirs to linux home otherwise tsserver\nmay not work properly.\n\n## Sponsoring\n\nIf you like coc-tsserver, consider supporting me 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-tsserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneoclide%2Fcoc-tsserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneoclide%2Fcoc-tsserver/lists"}