Live data from Hacker News

Actualvim – Sublime Text 3 input mode powered by Vim itself

github.com

51–60 of 112 posts

Re: Actualvim – Sublime Text 3 input mode powered by Vim itself

#51
post #42
post #39

Earlier quoted context omitted.

I have no idea how you make vim crash; usually it's because I attempt to search through a multigigabyte file or something. Vim may have many issues but stability is NOT one of them.

You are quite wrong, on any given day vim dev's mailing list has recent seg faults at the top of its list.

Vim is one of the software I use almost everyday. I've almost never seen it segfault. You are doing something very experimental or running some stuff that maybe is not just suitable to be used with VIM.

What is this async stuff you are talking about ?

Re: Actualvim – Sublime Text 3 input mode powered by Vim itself

#52
post #40

Earlier quoted context omitted.

Nope, and nope. > WTF are you talking about? Vim have may have many demerits but segfaults is not on that list. If segfaults are that frequent you described then people would have jumped ship already. Vim is all segfaults once you introduce async, and it's highly unstable during any dev work. On any given day visit the Vim dev mailing list and scroll down. Today I see: Scrolling in a c file segfaults: https://groups.…

It doesn't surprise me terribly that, in the sizable userbase, some people manage to make it segfault - particularly running unknown plugins &c. The first example you give is even found to be a bug in a compiled external extension. I've not read through any of the others... I've been using vim pretty much daily, across many versions, over roughly two decades, and I literally do not recall encountering a segfault. I w…

It probably isn't. It's when you want to do async or timed things that things start to fall apart.

Re: Actualvim – Sublime Text 3 input mode powered by Vim itself

#53
post #40
post #38

Earlier quoted context omitted.

WTF are you talking about? Vim have may have many demerits but segfaults is not on that list. If segfaults are that frequent you described then people would have jumped ship already. I can't comment on the code structure of Vim but it does not matter to me because end product is working fine for me for 5+ years. Also bad code structure did not stop continuous development of Vim. Just for example there were 1000 patch…

Nope, and nope. > WTF are you talking about? Vim have may have many demerits but segfaults is not on that list. If segfaults are that frequent you described then people would have jumped ship already. Vim is all segfaults once you introduce async, and it's highly unstable during any dev work. On any given day visit the Vim dev mailing list and scroll down. Today I see: Scrolling in a c file segfaults: https://groups.…

Did you even read those discussions? The C Segfault was due to a plugin. facepalm

Re: Actualvim – Sublime Text 3 input mode powered by Vim itself

#54
post #42

Earlier quoted context omitted.

You are quite wrong, on any given day vim dev's mailing list has recent seg faults at the top of its list.

Vim is one of the software I use almost everyday. I've almost never seen it segfault. You are doing something very experimental or running some stuff that maybe is not just suitable to be used with VIM. What is this async stuff you are talking about ?

> What is this async stuff you are talking about ?

Something vim cannot do, that other editors can. It's called an event loop. Vim only ever does anything based on user interaction. Sometimes you may just want to sit back and have vim do things even though you hadn't typed something recently. Like pair program remotely, have a clock, get notifications, all kinds of timed things.

Re: Actualvim – Sublime Text 3 input mode powered by Vim itself

#55
post #40
post #38

Earlier quoted context omitted.

WTF are you talking about? Vim have may have many demerits but segfaults is not on that list. If segfaults are that frequent you described then people would have jumped ship already. I can't comment on the code structure of Vim but it does not matter to me because end product is working fine for me for 5+ years. Also bad code structure did not stop continuous development of Vim. Just for example there were 1000 patch…

Nope, and nope. > WTF are you talking about? Vim have may have many demerits but segfaults is not on that list. If segfaults are that frequent you described then people would have jumped ship already. Vim is all segfaults once you introduce async, and it's highly unstable during any dev work. On any given day visit the Vim dev mailing list and scroll down. Today I see: Scrolling in a c file segfaults: https://groups.…

Bugs happen in software, you can not avoid. It is specially true for Vim which is used in wide variety of platforms. But still the segfaults bug listing is not that frequent as you described. Also Bram and other members are responding to to bug report in timely manner. Last I heard author of Sublime have stopped responding to bug reports.

Also you have zero knowledge of how Vimproc works. It spawns process or create socket connection in background and clients have access to it as a resource object from which client can read data during CursorMoved and CursorMovedI autocmd events. It is actually psudo-async but it works very well. I am using the plugins that have used Vimproc, even I used it in my PHP autocomplete plugin https://github.com/m2mdas/phpcomplete-extended (shameless plug) and it did not failed me yet. Also if you looked at the s:garbage_collect() method https://github.com/Shougo/vimproc.vim/blob/master/autoload/v... it is trying to release resource handles of the processes exited.

Also why should I need a clock inside vim? There is tmux/Screen status line for that. Please provide another valid use case.

Re: Actualvim – Sublime Text 3 input mode powered by Vim itself

#56
post #13
post #2

This makes me want to ask... why not just use vim?

Because vim is broken. I gave up vim after 7 years because of all the segfaults, in-extensibility and just horrible code. Some of the files in the vim code base are over 20,000 lines with hundreds of ifdefs, and littered with unsafe pointer use. The code is a horrible experience to just look at, pre 1989 C style functions, mixed tabs and spaces everywhere, and the files aren't even a valid encoding of any kind whatso…

So Vim is broken because you can't have a clock in your status line? Are you an idiot? Seriously, all that ranting and you can't come up with a single practical example of Vim being "broken" other than not being able to have a clock in your status line? I'm assuming you just made up the segfault thing because I have literally never seen that happen.

Re: Actualvim – Sublime Text 3 input mode powered by Vim itself

#57
post #26

I love vim's keybindings and cant work without them. I really like sublime but i just cant leave vim's keybindings which makes me so much efficient. Last time I tried a vim emulator for sublime it didn't go so well. it wasnt as smooth and limiting. I hope someone perfects the vim+sublime combo because that would be killer.

You might want to try Vintageous[0], It improves the native "Vintage" mode and adds things like vim-style searching and multiple cursors support. If you are addicted to NERDTree like I was, here are some custom keymapping[1] that will allow you to navigate the sidebar using the keyboard.

ctrl+h ctrl+h - takes you to the sidebar where you can navigate using j, k, h, l

ctrl+h - move to pane to the left

ctrl+l - move to pane to the right

ctrl+shift+h - move and create pane to the right

ctrl+shift+l - move and create pane to the left

.. and a few others

0: https://github.com/guillermooo/Vintageous/ 1: https://github.com/kylefinley/dotfiles/blob/master/sublime/U...

Edit: formatting

Re: Actualvim – Sublime Text 3 input mode powered by Vim itself

#58
post #52

Earlier quoted context omitted.

It doesn't surprise me terribly that, in the sizable userbase, some people manage to make it segfault - particularly running unknown plugins &c. The first example you give is even found to be a bug in a compiled external extension. I've not read through any of the others... I've been using vim pretty much daily, across many versions, over roughly two decades, and I literally do not recall encountering a segfault. I w…

It probably isn't. It's when you want to do async or timed things that things start to fall apart.

What use case do you have for timed things or async things?

Re: Actualvim – Sublime Text 3 input mode powered by Vim itself

#59
post #52

Earlier quoted context omitted.

It doesn't surprise me terribly that, in the sizable userbase, some people manage to make it segfault - particularly running unknown plugins &c. The first example you give is even found to be a bug in a compiled external extension. I've not read through any of the others... I've been using vim pretty much daily, across many versions, over roughly two decades, and I literally do not recall encountering a segfault. I w…

It probably isn't. It's when you want to do async or timed things that things start to fall apart.

My experience certainly doesn't make that implausible. I am pretty careful about async IO in terms of how my software interfaces with me, and this translates to less uncontrolled use of it generally.

Re: Actualvim – Sublime Text 3 input mode powered by Vim itself

#60
post #54

Earlier quoted context omitted.

Vim is one of the software I use almost everyday. I've almost never seen it segfault. You are doing something very experimental or running some stuff that maybe is not just suitable to be used with VIM. What is this async stuff you are talking about ?

> What is this async stuff you are talking about ? Something vim cannot do, that other editors can. It's called an event loop. Vim only ever does anything based on user interaction. Sometimes you may just want to sit back and have vim do things even though you hadn't typed something recently. Like pair program remotely, have a clock, get notifications, all kinds of timed things.

For many of these, there are better solutions than shoving them into vim. You can easily add a clock to a hardstatus line in screen or tmux. You can also use these for pair programming, reasonably easily. Notifications are better piped through notify, so you see them even if vim hidden.

This isn't to say there's no legitimate use for async processing in vim - just trying to be helpful to anyone wanting these particular things.

Post reply on HN