t9md / atom-vim-mode-plus

vim-mode improved
https://atom.io/packages/vim-mode-plus
MIT License
1.4k stars 111 forks source link

Question: Any plans to port this to VSC? #1063

Open compostbrain opened 6 years ago

compostbrain commented 6 years ago

I would like to have this available in Visual Studio Code. There is a Vim emulation extension but it seems to be missing some features I enjoy in this package.

t9md commented 6 years ago

Currently no. But I think if you think vmp is better tha VsCodeVim, putting that impression to them might lead them to do more research on vmp. Which is very honor to me as one vim-plugin author among tons of similar projects.

admosity commented 6 years ago

This has been the best vim implementation I have ever used. I believe this particular vim implementation should be abstracted so that it can be consumed on any JS based editor. I keep atom around for the sheer power and productivity. Thanks @t9md for this gift!

image

t9md commented 6 years ago

Thanks, and what you've suggested is just jordan suggested long before.

https://github.com/t9md/atom-vim-mode-plus/issues/182

Theoretically it's possible, and what vmp shines is each operator/motion is very declaratively defined which might make editor-agnostic abstraction easy. But still vmp greatly depends on Atom's super granular APIs. And I myself am happy with Atom. Feeling nor particular motivation to move to VsCode. If I forced to use VSCode, then I might consider to implement it on top of VSCode or collaborate with already existing VSCodeVim.

calebmeyer commented 6 years ago

The problem with VS Code (and unfortunately with VS Code Vim) is that there's not enough information in the public API to enable a fully compatible (or even as good as atom's) vim extension. See https://github.com/Microsoft/vscode/issues/22276#issuecomment-302061827 for more details on this. Because of the architecture of VS Code, extensions cannot know some of the things the core does.

I agree it would be cool if vim-mode-plus were editor agnostic, but I don't think VS Code will (soon, or maybe ever) support all the API needed to do it.

cquiroz commented 6 years ago

This is a very good discussion. For me, it would be better to use vscode as scala integration is better. But, vmp is so good that it keeps me firmly in Atom

Thanks @t9md for the best vim emulation I've used

bennypowers commented 5 years ago

VMP is a beast. I'm totally hooked. Thank you @t9md for producing this excellent software.

With Facebook shutting down nuclide and Atom-IDE, and with VSCode growing in popularity, I'm worried that a day might come in the future when atom is no longer relevant, and I'll have to give up on c o i p, etc., which have become integral to my workflow.

I hope work on abstracting the core of VMP will succeed so that many more users can enjoy these features.

t9md commented 5 years ago

Oh, I didn’t know FB shut down nuclide. Surprised, and sad. For me, I’m really looking forward to see xray editor become generally available. Hopefully vmp works on top of xray with slight modifications. In case that will not happen and Atom is also decided to shut down, then I think I can create vmp for VSCode!!

calebmeyer commented 5 years ago

Yeah, I'd switch to xray in a heartbeat if it's as fast as what's out there make it seem. It would be the best of atom and sublime text.

I don't think atom will be shut down any time soon, per the community manager, Lee: https://discuss.atom.io/t/the-microsoft-intervention/55744

If it does get shut down, I hope VS Code will be able to support all the cool features of VMP that aren't in vscodevim

deepsweet commented 5 years ago

Lack of subword movements in VSCode is so critical for me, as well as occurrences. But I personally have no choice because I work a lot with TypeScript recently and VSCode works just flawlessly with it.

Would love to see VMP ported to VSCode ❤️

admosity commented 5 years ago

It's unfortunate that atom-ide is no longer being supported by Facebook. That said I've found a combination that gives me close to a VSCode type experience with TypeScript. Hope this helps out!

Install the following plugins:

atom-ide ide-typescript atom-typescript language-typescript intentions

Hover: image

Using ctrl+space: image

Using vim-mode-plus gd (goto definition): image

Adding the following keyboard shortcut gives the cmd-. quick suggestions/imports from VSCode (mainly because I am so used to using ctrl-n and ctrl-p to navigate the options):

'atom-text-editor:not([mini])':
  'cmd-.': 'diagnostics:show-actions-at-position',

image

EDIT: Looks like I had these configured as well. Using gh I can get typescript hover functionality.

'atom-text-editor.vim-mode-plus.normal-mode':

  ###
  TYPESCRIPT
  ###
  'g h': 'typescript:show-tooltip'
  'g d': 'typescript:go-to-declaration'
Spirarel commented 5 years ago

For me, I’m really looking forward to see xray editor become generally available. Hopefully vmp works on top of xray with slight modifications. In case that will not happen and Atom is also decided to shut down, then I think I can create vmp for VSCode!!

@t9md, Github has decided not to move forward on x-ray in any capacity 😞

mauricecruz commented 4 years ago

I'm still using Atom ... but I fear that they're going to shut it down in the near future. Development has slowed significantly in the last half of the year.

image

t9md commented 4 years ago

Is that Atom's activity?

Spirarel commented 4 years ago

https://github.com/atom/atom/graphs/commit-activity

mauricecruz commented 4 years ago

Yes @t9md. Thanks for posting the link @Spirarel.

kerwin6182828 commented 4 years ago

xray

so love you

bennypowers commented 4 years ago

Note for anyone coming here from Google, if you have atom-ide-ui and atom-ide-typescript, but not atom-typescript installed, you can bind g d to hyperclick word under cursor with:

'atom-text-editor.vim-mode-plus.normal-mode':
  'g d':      'hyperclick:confirm-cursor'
  'g h':      'datatip:toggle'
bennypowers commented 4 years ago

this might be of interest to the discussion

https://theia-ide.org/

bennypowers commented 4 years ago

Also of interest is https://github.com/asvetliakov/vscode-neovim which bypasses type bindings

keevan commented 2 years ago

For what it's worth, github announced the sunsetting of Atom: https://github.blog/2022-06-08-sunsetting-atom/

t9md commented 2 years ago

@keevan Thank you for sharing this. It is sad. very sad.

saadq commented 2 years ago

@keevan Thank you for sharing this. It is sad. very sad.

Indeed. Thanks so much for creating this plugin though, it was by far the best Vim integration I've used in any editor/IDE by far. Atom + vim-mode-plus will be missed.

The bright side is that some Atom devs are working on a new editor called Zed (https://zed.dev). Hoping that will be a good successor