-
-
Notifications
You must be signed in to change notification settings - Fork 5.6k
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
[RDY] Remove POSIX 'cpoptions' #2943
Conversation
Setting this to WIP until I fix the tests. |
Fixed the tests, so I'm setting back to |
The failure is on QB only, and looking through the log it looks to be related to QB itself, as opposed to our tests. |
Rebased. Would anyone like me to split this into multiple PRs? |
rebased @justinmk I can split this if you'd like, I imagine this might be tedious for people to review (although the commits are cleanly separated). Either way, I can't deal with |
Took a quick look, and this looks pretty nice. |
LGTM |
Great, thanks for the reviews. I'll merge soon if no more comments. |
I removed the sentence in |
Ah, the changes still have to be documented in |
Funny you say that, as I just pushed a commit for that 😄 A few |
Seems to fit perfectly! (Exactly 78 characters.) (Although I find the prior removals of the non-POSIX flags from |
I don't mind discussing this here as there's not much left to discuss regarding the PR, so why do you find them controversial? I went over a few of the PRs (the relevant commits all have |
That's the problem. I can't know what other people find useful.. personally I think that IMHO, unless options are "vi settings" or there a good technical reasons for it, no option should be removed. Using saner default values for new users is just as important as not shooing away long-time users by crippling their settings. |
Sorry, I accidentally hit reply. Fully reply coming. |
Yes, I suppose you're right. Given that, I don't think we've gotten a single complaint so far, at least outside of Gitter (I didn't look through the logs).
I suppose I should be more precise. Of course they aren't useless, as that could be said about anything which isn't a no-op, but I still think they're close to it. I would really like to hear of some use cases for these commands, because I don't really understand why many of them exist besides Vi compatibility.
The
Of course, but I'm not convinced we're shooing anyone away, as previously mentioned with the lack of complaints. |
Users won't complain, they will just continue using Vim, because it works for them. One could probably argue that it's not Neovim's intent to convert all existing Vim users, though. Just my experience from There are many Vim users. Most heard of Neovim. Those who heard of Neovim, but haven't used it yet, think of it as a Vim fork that does things asynchronously and includes a terminal emulator (like Emacs). These are the killer features for them. Some people just want to play around with new software, then encounter a bug, and just go away. No feedback. Other people see cool plugins like neomake and neoterm. They are try to make them part of their workflow. Then they can't use That's my experience. People try out Neovim for the shiny things (and that doesn't include the great msgpack API), and leave because of small things that are different from Vim. Why? Because they think of Neovim as a superset of Vim. It's Vim + magic. But the truth is, currently Neovim does less than Vim. People don't see that's it's all about the long term or that there isn't even a 0.1 version. There's nothing we can do about that, but we shouldn't make it any harder for them by changing things they expect. Don't get me wrong, I think the project moves into the right direction, but then I'm more involved into Vim as most "normal users" who just want to get work done. IMHO, we should focus on making all new stuff rock-solid, before thinking about changing options. p.s. Sorry for the unstructured post, I just quickly wrote down what came to my mind. :) |
Your rant would have given me pause when working on #2676, but then, I feel the issue is not really changing the defaults, but removing behaviours we might not get otherwise. I see now the point of keeping things like |
It was no rant.. maybe a bit. ;]
Agreed. As I said in my post above my rant, removing all stuff that is somehow related to vi settings, should eventually removed. |
I didn't mean it in a bad way ;) |
It wasn't even hooked up to anything... must have been removed when term.c was replaced.
- CPO_ALL and CPO_VI are identical, so merge them - No longer check for the environment variable 'VIM_POSIX' - In vim_diff.txt, mention the removal of 'cpoptions' flags
Yes, I think you're right (I read your rant and agree with it, so I don't have much else to say). Now that I think about it, my main gripe with I guess I didn't mention it before because IMO it's impractical in the case of N/Vim, as the design philosophy is so different I think we're always going to have a tons of knobs present, although hopefully a bit less than vanilla Vim. |
[RDY] Remove POSIX 'cpoptions' Reviewed-by: Felipe Morales <hel.sheep@gmail.com> Reviewed-by: Marco Hinz <mh.codebro@gmail.com>
These were present for compatibility with the POSIX spec of
vi
.Vi compatibility has slowly been stripped away in various forms (
cpoptions
,nocompatible
), so the removal of these options seems to me like a logical continuation of that.This is being done in order to fulfil #2548.