• Stars
    star
    315
  • Rank 132,951 (Top 3 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created about 7 years ago
  • Updated over 6 years ago

Reviews

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

Repository Details

A rewrite of VSCodeVim, backed by neovim. Still in development, not meant for use.


VSCodeNeoVim

Vim emulation for Visual Studio Code.


VSCodeNeoVim is a Visual Studio Code rewrite of VSCodeVim, changing everything to be backed by Neovim.

This is the temporary repo for VSCodeNeovim for development purposes. Please submit PRs/issues here. This extension will not be released on the marketplace, but I will be providing a .vsix for testing purposes.

Some notes on contributing:

  • Much of the VSCodeVim code is still in here. The only places it's used are things like some utility Position functions, etc.
  • Most of the "hard" work is in extension.ts.
  • The rest of the work is in srcNV. NvUtil contains a lot of utility functions with working with neovim rpc requests. RPCHandlers contain handlers for RPC requests.
  • You need to have the newest nvim (installed from nightly/master) installed. At the very least, you need a version of neovim that has this issue fixed: neovim/neovim#6166
  • The easiest way to test is to have the neovim instance for VSCode be created by connecting to a pipe. In order to do so, set NVIM_LISTEN_ADDRESS equal to /tmp/nvim, open a neovim instance, and then open the extension. This allows you to see what's happening on the neovim side (any errors/prompts/etc.) This is how my typical setup for development looks: . There's some code to do this automatically, but it doesn't check if /tmp/nvim is a socket, so it may still fail. Also, I think performance is slightly worse when you do this.

Other helpful documentation links: https://vscodevim.slack.com/files/U3EUW86U9/F62R31A5V/Integrating_Neovim_into_VSCode "Design" doc https://neovim.io/doc/user/api.html#api-global Neovim RPC API documentation https://neovim.io/doc/user/ui.html Neovim remote UI documentation. We currently aren't using it but will likely use it at some point in the future.
https://github.com/neovim/node-client The node client we're using
https://github.com/lunixbochs/ActualVim Another neovim backed vim plugin (for sublime)

Important discussions links: https://gitter.im/neovim/neovim For talking to the neovim devs https://gitter.im/neovim/node-client For talking to the neovim node-client devs https://vscodevim.slack.com/ For talking to the VSCodeVim devs

Important Neovim PRs to follow: neovim/neovim#5269 Text Diffs (so we don't have to sync the entire buffer each time)

Some screenshots (kinda hard to show what's changed without at least a gif...): Wildmenu working! Autocomplete working!

More Repositories

1

coursera-dl-all

Python
189
star
2

OpenReviewExplorer

Explore OpenReview papers for ICLR (with citation counts, acceptance status, and ratings)!
Jupyter Notebook
86
star
3

CS344_2021

Udacity CS344 Introduction to Parallell Programming (https://classroom.udacity.com/courses/cs344), with assignments/materials updated to build in 2021
C++
45
star
4

Algorithms

Implementations of algorithms used for competitive programming, with a focus placed on readability, usability, conciseness, and performance (when important)
C++
43
star
5

MovieRankings

Movies that people living in 110D Dryden Road have watched since the beginning of the 2018-2019 school year
27
star
6

pytorch-vs-tensorflow

Tracking Pytorch vs Tensorflow adoption metrics.
Jupyter Notebook
22
star
7

notreddit

This is Notreddit.top These are the lowest voted posts on reddit.
HTML
9
star
8

ManiStories

JavaScript
8
star
9

pytorch_aws_helper

Some utility functions to help make working on scratch space easier
TypeScript
4
star
10

Schoolloop-HoraceScope

Chrome Extension for finding new grades after they're edited
JavaScript
4
star
11

CompProgramming

My competitive programming stuff
C++
3
star
12

ogb_baselines

A couple of simple baselines for OGB.
Python
3
star
13

VSCode-Xi

VSCode support for the Xi language
TypeScript
3
star
14

CV-Maze-Solver

Takes a picture of a maze, reads it in with computer vision, and solves it.
HTML
3
star
15

willmypaperbeaccepted

A website for predicting whether your paper (rated from 1-10) will be accepted, based off of the reviews :) Primarily intended for NeurIPS, but trained with data from ICLR.
JavaScript
3
star
16

slurm_scripts

Some slurm scripts I find useful.
Python
2
star
17

vscode-linguine

A simple VSCode extension for Linguine
TypeScript
2
star
18

DKRP

Jupyter Notebook
1
star
19

competitiveprogramming

Templates for competitive programming
C++
1
star
20

chillee.github.io

My Personal Site
HTML
1
star
21

pt_transformation_experiments

Python
1
star
22

bookmarklets

Some bookmarklets I find useful
HTML
1
star
23

pwcmlrpress

A script for scraping mlpress for use with papers with code
Python
1
star
24

Inferknow

A site to aid FTC teams around the world in scouting matches. Similar to the old yellow alliance.
JavaScript
1
star