Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make this plugin based on FakeVim #9

Closed
Zaharid opened this issue Jul 19, 2016 · 4 comments
Closed

Make this plugin based on FakeVim #9

Zaharid opened this issue Jul 19, 2016 · 4 comments
Milestone

Comments

@Zaharid
Copy link

Zaharid commented Jul 19, 2016

Copied from spyder-ide/spyder#3304 (comment), as requested:

I was wondering if it would be feasible to use FakeVim:

https://github.com/hluk/FakeVim

This works very well in QtCreator, and does neat things like reading the default .vimrc file, allowing search or block text selection.

@Nodd
Copy link
Contributor

Nodd commented Jul 19, 2016

Thanks, that's interesting, I'll have a look at it. The features are interesting, but there is not a lot of documentation, and I'm not sure if it can work as an external plugin (vs being embedded in the editor itself).

@Nodd
Copy link
Contributor

Nodd commented Jul 23, 2016

So, after more research, here is what I found about FakeVim

  • It's C++, so it needs to be compiled
  • It's not present on pypi
  • It works with PyQt only (not necessarily a big problem since PySide is not officially supported in spyder)
  • It needs to be compiled with the correct PyQt version, so no Qt4/Qt5 compatibility

For these reasons I won't use it for this plugin, even if there are lots of features absent from spyder.vim that I will have to recode.

@Nodd Nodd closed this as completed Jul 23, 2016
@nevion
Copy link

nevion commented Jul 23, 2016

hmm.. I'm a long time user of fakevim on qtcreator. I reported several bugs and watched how long it took (~2 years to get good, still has issues tho). If you're doing it in pure python, things may take less long but it still is going to be a long effort - I think, doing it in house. I will note that their implementation is not full vim either - I hit edge cases often there too, but you get used to them and it's worth the sacrifice.

On your list, the only thing we can really address is pypi.

Maybe as an alternate you could translate the C++ stuff over to python... though I'd still want to keep that a fakevim project so it can be reused. Needing a vim widget does come up pretty often in peoples wishlist. I also find C++ Qt ports pretty easily to do to python Qt.

@Nodd
Copy link
Contributor

Nodd commented Jul 23, 2016

I agree that it will be a big effort (I'm counting on user contributions too!), but if only 1/10th of users are able to actually install the plugin it's not worth it (compiling python extensions on windows is really hard).

FakeVim licence is LGPL, I'm not sure if it's possible to simply translate the lib (I thought about it too).

@goanpeca goanpeca modified the milestone: v0.1 Jan 13, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants