All Projects β†’ mhartington β†’ Nvim Typescript

mhartington / Nvim Typescript

Typescript tooling for Neovim

Programming Languages

typescript
32286 projects

Labels

Projects that are alternatives of or similar to Nvim Typescript

Vim Markdown Composer
An asynchronous markdown preview plugin for Vim and Neovim.
Stars: ✭ 501 (-17.73%)
Mutual labels:  neovim
Fern.vim
🌿 General purpose asynchronous tree viewer written in Pure Vim script
Stars: ✭ 552 (-9.36%)
Mutual labels:  neovim
Vim Smoothie
Smooth scrolling for Vim done rightπŸ₯€
Stars: ✭ 579 (-4.93%)
Mutual labels:  neovim
Ranger.vim
Ranger integration in vim and neovim
Stars: ✭ 510 (-16.26%)
Mutual labels:  neovim
Vim Lsc
A vim plugin for communicating with a language server
Stars: ✭ 545 (-10.51%)
Mutual labels:  neovim
Fzf Preview.vim
The plugin that powerfully integrates fzf and (Neo)vim. It is also possible to integrate with coc.nvim.
Stars: ✭ 563 (-7.55%)
Mutual labels:  neovim
Falcon
A colour scheme for terminals, Vim and friends.
Stars: ✭ 483 (-20.69%)
Mutual labels:  neovim
Neovim Dots
most beautiful neovim cli setup
Stars: ✭ 547 (-10.18%)
Mutual labels:  neovim
Coc Snippets
Snippets solution for coc.nvim
Stars: ✭ 547 (-10.18%)
Mutual labels:  neovim
Conjure
Interactive evaluation for Neovim (Clojure, Fennel, Janet, Racket, Hy, MIT Scheme, Guile)
Stars: ✭ 569 (-6.57%)
Mutual labels:  neovim
Vim Doge
(Do)cumentation (Ge)nerator 10+ languages πŸ“š Generate proper code documentation skeletons with a single keypress. ⚑️πŸ”₯
Stars: ✭ 533 (-12.48%)
Mutual labels:  neovim
Comfortable Motion.vim
Brings physics-based smooth scrolling to the Vim world!
Stars: ✭ 543 (-10.84%)
Mutual labels:  neovim
Evervim
A Modern, Powerful & Modular Vim Distribution
Stars: ✭ 568 (-6.73%)
Mutual labels:  neovim
Vim Plugins Profile
πŸ•“ Profile Vim's plugins, generate awesome statistics and optimize (n)vim startup time
Stars: ✭ 508 (-16.58%)
Mutual labels:  neovim
Vimr
Project VimR is a Neovim GUI for macOS. The goal is to build an editor that uses Neovim inside with many of the convenience GUI features similar to those present in modern editors. We mainly use Swift, but also use C/Objective-C when where appropriate.
Stars: ✭ 5,524 (+807.06%)
Mutual labels:  neovim
Asynctasks.vim
πŸš€ Modern Task System for Project Building, Testing and Deploying !!
Stars: ✭ 495 (-18.72%)
Mutual labels:  neovim
Deoplete Jedi
deoplete.nvim source for Python
Stars: ✭ 559 (-8.21%)
Mutual labels:  neovim
Coc Tsserver
Tsserver extension for coc.nvim that provide rich features like VSCode for javascript & typescript
Stars: ✭ 602 (-1.15%)
Mutual labels:  neovim
Gina.vim
πŸ‘£ Asynchronously control git repositories in Neovim/Vim 8
Stars: ✭ 587 (-3.61%)
Mutual labels:  neovim
Tagbar
Vim plugin that displays tags in a window, ordered by scope
Stars: ✭ 5,322 (+773.89%)
Mutual labels:  neovim

Nvim-Typescript

nvim language service plugin for typescript

Installation

First make sure you have Neovim 0.3.8 or higher. This includes the node-host that is required for this plugin.

You will need a global install of the neovim client as well. This will make sure that neovim and node can communicate.

npm install -g neovim

After installing the neovim client, you will have to run :UpdateRemotePlugins.

You might want to also have typescript install globally. By default, this plugin will look in your node_modules folder first for typescript, but if that does not exist, it will use the global install.

npm -g install typescript

Then add the following plugins. This example shows Dein.vim and Plug.vim, but any plugin manager will work.

 " Dein
 # REQUIRED: Add a syntax file. YATS is the best
  call dein#add('HerringtonDarkholme/yats.vim')
  call dein#add('mhartington/nvim-typescript', {'build': './install.sh'})
 " For async completion
  call dein#add('Shougo/deoplete.nvim')
 " For Denite features
  call dein#add('Shougo/denite.nvim')


 " Vim-Plug
 # REQUIRED: Add a syntax file. YATS is the best
  Plug 'HerringtonDarkholme/yats.vim'
  Plug 'mhartington/nvim-typescript', {'do': './install.sh'}
 " For async completion
  Plug 'Shougo/deoplete.nvim'
 " For Denite features
  Plug 'Shougo/denite.nvim'


" Enable deoplete at startup

  let g:deoplete#enable_at_startup = 1

If errors occur after installing, make sure to run ./install.sh in the plugin directory. And try to run :UpdateRemotePlugins if you haven't already.

Limitation

If no completion is happening, please be sure to have a Typescript syntax file in your RTP. Older versions of Neovim do not include a default syntax for Typescript, so be sure to include one. A popular syntax file for Typescript is yats.vim. As of v0.4.3, Neovim includes a default Typescript syntax file that is based off yats. Running nvim-typescript with no syntax file could lead to unexpected behavior.

Open Open Source, or how to make this everyone's code

If you happened to build something and would love to make a PR, I would be more than happy to add contributors. If something you do add happens to get merged (most likely it will 😁 ) you'll get a collaborator request. This has worked out very well in the Node community and I want it to happen here. This is as much my code as it is your code.

See:

Debugging

There are a few things you'll have to modify in your nvim config in order to be able to effectively work on this plugin:

  call dein#local('~/GitHub', {},['nvim-typescript'])
  let $NVIM_NODE_LOG_FILE='nvim-node.log'
  let $NVIM_NODE_LOG_LEVEL='warn'

This plug will try to log most things to warn as the node-client logs a lot of verbose output to debug/info. You will now be able to tail -f /PATH_TO/nvim-node.log, and see debug output appear.

TODOS

If there's a feature that you would like to see, feel free to open an issue or send a PR.

Like this plugin? Buy me a coffee on KoFI

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].