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

Why all the workarounds. #412

Closed
mmlb opened this issue Jun 26, 2013 · 6 comments
Closed

Why all the workarounds. #412

mmlb opened this issue Jun 26, 2013 · 6 comments

Comments

@mmlb
Copy link
Contributor

mmlb commented Jun 26, 2013

So I have been following YouCompleteMe for a little while now, and the issue of vim is dumb because it does x (no background processing, blocks gui, pretends to block scolling...) and the hacks / work arounds to get around them keeps coming up.

While reading @Valloric's comment on #234 (comment) mentions the abusing of Vim's conceal feature. My question is why continue the hacking/abusing and not fixing things in upstream.

Note: I am not trying to troll or bring flames, I just wanted to have a bit of a conversation here, where I see lots of progress, and really cool features while having to deal with Vim's failings.

Is the lack of upstream changes due to upstream? Do they want to avoid feature creep? Is the barrier to entry ridiculous?

Apologies for the off-topicness.

@Valloric
Copy link
Member

Because the Vim codebase is an unmaintainable pile of garbage, that's why. For instance, look at the "edit" function in Vim's code base.

I don't ever want to look at Vim internals again, let alone touch them. If you wish to do the work yourself, you have my complete support.

@mmlb
Copy link
Contributor Author

mmlb commented Jun 26, 2013

Wow, kind of what I thought.

@Shougo
Copy link

Shougo commented Jun 27, 2013

So I have been following YouCompleteMe for a little while now, and the issue of vim is dumb because it does x (no background processing, blocks gui, pretends to block scolling...) and the hacks / work arounds to get around them keeps coming up.

Vim cannot be multithread. Because in Vim's internal code, there are many global variables with no lock.
And Mr.Moolenaar thinks Vim is editor not IDE. So IDE like feature is not merged to upstream code.
(But I think Vim is environment personally)

@vheon
Copy link
Contributor

vheon commented Jul 2, 2013

Am I wrong or they use pre-standard function definition? What a mess :(

@oblitum
Copy link
Contributor

oblitum commented Jul 2, 2013

@vheon that's not a valid judgment point, it's documented why it's this way, it's because of compatibility with some weird compiler I can't recall. Long functions, on the other way... are bad.

@vheon
Copy link
Contributor

vheon commented Jul 3, 2013

@oblitum my "What a mess" was not for the non standard definition but for the rest. I understand that compatibility is very important for vim and that not everybody needs every feature, but how do you maintain that file so long and with all that conditional compilation?

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jun 26, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants