Giter Club home page Giter Club logo

coc-tsserver's Introduction

coc-tsserver

Tsserver language server extension for coc.nvim.

Most code from typescript-language-features extension which bundled with VSCode.

Install

In your vim/neovim, run command:

:CocInstall coc-tsserver

Features

Almost same as VSCode.

  • Support javascript & typescript and jsx/tsx.
  • Install typings automatically.
  • Commands to work with tsserver, including:
    • tsserver.reloadProjects
    • tsserver.openTsServerLog
    • tsserver.goToProjectConfig
    • tsserver.restart
    • tsserver.format
    • tsserver.organizeImports
    • tsserver.watchBuild
  • Code completion support.
  • Go to definition.
  • Code validation.
  • Document highlight.
  • Document symbols of current buffer.
  • Folding and folding range of current buffer.
  • Format current buffer, range format and format on type.
  • Hover for documentation.
  • Implementations codeLens and references codeLens.
  • Organize imports command.
  • Quickfix using code actions.
  • Code refactor using code actions.
  • Find references.
  • Signature help.
  • Rename symbols support.
  • Rename imports on file rename.
  • Search for workspace symbols.

Tsserver module is resolved from local workspace, if not found, bundled tsserver module would be used.

Configuration options

  • tsserver.enable set to false to disable tsserver language server.
  • tsserver.trace.server trace LSP traffic in output channel.
  • tsserver.orgnizeImportOnSave orgnize import on file save, default false.
  • tsserver.formatOnType run format on special character inserted.
  • tsserver.implicitProjectConfig.experimentalDecorators enable experimentalDecorators for implicit project.
  • typescript.updateImportsOnFileMove.enable enable update imports on file move, requires watchman installed, default true.
  • typescript.implementationsCodeLens.enable enable codeLens for implementations, default true
  • typescript.referencesCodeLens.enable enable codeLens for references, default true
  • typescript.preferences.noSemicolons remove semicolons on format for typescript.
  • typescript.preferences.quoteStyle quote style of typescript, could be single or double, default "double"
  • typescript.suggestionActions.enabled enable suggestion actions for typescript, default true
  • typescript.validate.enable enable typescript validation, default true
  • typescript.suggest.enabled enable typescript completion, default true
  • typescript.suggest.paths enable suggest paths in import statement and require calls, default true
  • typescript.suggest.autoImports enable suggest for auto import, default true
  • typescript.suggest.completeFunctionCalls enable using snippet for method suggestion.
  • javascript.updateImportsOnFileMove.enable enable update imports on file move, requires watchman installed, default true.
  • javascript.implementationsCodeLens.enable enable codeLens for implementations, default true
  • javascript.referencesCodeLens.enable enable codeLens for references, default true
  • javascript.preferences.noSemicolons remove semicolons on format for javascript.
  • javascript.preferences.quoteStyle quote style of javascript, could be single or double, default "double"
  • javascript.suggestionActions.enabled enable suggestion actions for javascript, default true
  • javascript.validate.enable enable javascript validation, default true
  • javascript.suggest.enabled enable javascript completion, default true
  • javascript.suggest.paths enable suggest paths in import statement and require calls, default true
  • javascript.suggest.autoImports enable suggest for auto import, default true
  • javascript.suggest.completeFunctionCalls enable using snippet for method suggestion.

And more, which are same as VSCode, trigger completion with tsserver, typescript or javascript in your coc-settings.json to get full list.

Trouble shooting

  • Add "tsserver.log": "verbose" to your coc-settings.json (opened by command :CocConfig)
  • To trace LSP communication, add "tsserver.trace.server": "verbose" to your coc-settings.json
  • Restart coc server by command :CocRestart
  • Make the issue happen.
  • Open tsserver log file by command CocCommand tsserver.openTsServerLog
  • Open tsserver output channel by command CocCommand workspace.showOutput tsserver

License

MIT

coc-tsserver's People

Contributors

chemzqm avatar yardnsm avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.