• This repository has been archived on 25/Oct/2021
  • Stars
    star
    615
  • Rank 72,947 (Top 2 %)
  • Language
    TypeScript
  • Created almost 9 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Typescript tooling for Neovim

Nvim-Typescript

DEPRECATED

The time has finally come. Since Neovim 0.5 is out, and LSP is officially supported, I'd suggest you migrate over to it. I have been using it instead of this plugin for a while and it solves many pain points that I've not been able to. This will stay around for older neovim release, but everyone should upgrade. Thanks for the support and for using this plugin 🚀

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

More Repositories

1

formatter.nvim

Lua
1,352
star
2

oceanic-next

Oceanic Next theme for neovim
Vim Script
1,090
star
3

dotfiles

Shell
556
star
4

oceanic-next-iterm

iterm port of https://github.com/voronianski/oceanic-next-theme/
201
star
5

Ionic-Chat

simple ionic chat example
JavaScript
88
star
6

star-track-ionic

TypeScript
88
star
7

StarTrack-ng

TypeScript
67
star
8

ion-md-input

A material design inspired text input for Ionic Framework | NO LONGER MAINTAINED
JavaScript
67
star
9

StarTrack-react

Star Track built with Ionic and React
TypeScript
46
star
10

Star-Track-vue

Vue
43
star
11

ionic-firebase-auth

Testing Firebase's various authentication methods
JavaScript
41
star
12

lazyLoad2-components

TypeScript
37
star
13

cordova-config-utils

JavaScript
32
star
14

ion-hide-tabs

CSS
27
star
15

lazyLoadTabs

TypeScript
27
star
16

vim-angular2-snippets

Snippets for Angular2 and Vim!
26
star
17

vim-typings

search for typings in vim!
Vim Script
25
star
18

vscode-oceanicnext

Oceanic Next for vscode
18
star
19

ion-ngrx

TypeScript
15
star
20

lazy-load-image

TypeScript
13
star
21

present-it

JavaScript
12
star
22

PinchToZoom

JavaScript
12
star
23

ionic-vue-vite

Vue
11
star
24

supabase-ionic-vue

Vue
10
star
25

ionic-v2-and-beyond

JavaScript
10
star
26

pwa-across-frameworks

TypeScript
9
star
27

oceanic-next-shell

256 color space for oceanic next
Shell
9
star
28

KeyboardTest

CSS
8
star
29

lang-bolt

CoffeeScript
8
star
30

quick-shell

Shell
7
star
31

cdk-virtual-scroll-ionic

TypeScript
7
star
32

ionic-firebase

JavaScript
6
star
33

fade-transition-demo

TypeScript
6
star
34

ionic-gestures

An example of using ionic's built-in gestures
JavaScript
6
star
35

ionic-vue-demo

Vue
6
star
36

builders-deep-dive

An example of various angular builders
TypeScript
6
star
37

v5-animations

TypeScript
6
star
38

vuex-todo

CSS
5
star
39

ionicv2-c3js

example of ionicvs and c3js
JavaScript
5
star
40

v2-convert

JavaScript
5
star
41

errorBar

JavaScript
5
star
42

ionic-video

JavaScript
5
star
43

ionicv2-Geolocation

JavaScript
4
star
44

ngspain-workshop

TypeScript
4
star
45

twitch-geo

TypeScript
4
star
46

V2Proxy

CSS
4
star
47

angular-14-test

TypeScript
4
star
48

frameworks-are-dead

HTML
4
star
49

ng-atl-conf

TypeScript
4
star
50

vimconf-live

JavaScript
4
star
51

Nested-Side-Menu

JavaScript
4
star
52

Ionic-Todo

A sample todo app with ionic
CSS
4
star
53

ionic-react-virtuoso

TypeScript
4
star
54

infiniteScrollTest

JavaScript
4
star
55

lazyLoadingBlank

Lazy Loading a blank sample app
CSS
4
star
56

supabase-ionic-react

TypeScript
4
star
57

supabase-ionic-angular

TypeScript
3
star
58

forum-react-css-issues

TypeScript
3
star
59

ionicV2PouchDB

JavaScript
3
star
60

react-notes

TypeScript
3
star
61

StarTrack-vue

Vue
3
star
62

oceanic-next-hyperterm

JavaScript
3
star
63

ionic-snippets

Vim Snippet
3
star
64

ionic-io-demo

Examples of ionic.io's services, https://apps.ionic.io
JavaScript
3
star
65

ion4-popover-data

TypeScript
3
star
66

ionic-presents

JavaScript
3
star
67

inline-video

JavaScript
3
star
68

ngx-honk

HTML
3
star
69

random-user

An example app with the random user API
TypeScript
3
star
70

ionic-friends-slides

TypeScript
3
star
71

Devnexus2016

TypeScript
3
star
72

v4-forms-test

TypeScript
3
star
73

bug-ion-router-outlet

TypeScript
3
star
74

svg-perf-test

JavaScript
3
star
75

cool-angular2-add-ons

A list of interesting and cool add-ons for angular 2 projects
3
star
76

angular-responsive-img

Angular directive to easily place responsive <img>'s using <picture> element
JavaScript
3
star
77

phillyete2016

Sample App for PhillyETE 2016
CSS
2
star
78

firebase-push-gen

JavaScript
2
star
79

quick-vim

quick and easy vim
Vim Script
2
star
80

defx-devicons

Python
2
star
81

zeit-pwa

TypeScript
2
star
82

angular-router-error

TypeScript
2
star
83

ionic4-custom-animation

TypeScript
2
star
84

echo-plex

TypeScript
2
star
85

Devnexus

JavaScript
2
star
86

Connect2017WorkShop

TypeScript
2
star
87

lazy-loaded-components-v4

TypeScript
2
star
88

denite-neomake

Denite source for neomake
Python
2
star
89

gulp-cordova-config

JavaScript
2
star
90

sentry-demo

TypeScript
2
star
91

capacitor-talk

JavaScript
2
star
92

ionic-realm-demo

TypeScript
2
star
93

v4-routing-example

TypeScript
2
star
94

vue-monorepo

CSS
2
star
95

ionic4-css-variable-example

TypeScript
2
star
96

ng-pwa-test

TypeScript
2
star
97

tkyt-demo

CSS
2
star
98

mhartington.github.io

Mike Hartingtons
HTML
2
star
99

stencil-inspector

A Chrome plugin that adds a new inspector pane to the Elements panel, providing Stencil-specific information about selected elements.
TypeScript
2
star
100

Angular-summit

JavaScript
1
star