Donation page: http://iccf-holland.org/donate.html
It seems that you can send bitcoins too: http://iccf-holland.org/bitcoin.html
Imho just mentioning HN in the payment description would be okay :)
There is very few pieces of software I could never imagine replacing in my toolkit. Linux? I use Windows, too. GCC? Clang gets some love sometimes. Languages themselves? I'm fluent in several. Shell? I used Bash for years, now I switched to ZSH, but could go back to Bash if I needed. Tmux? I could also go back to screen if I needed to.
But vim? There's no replacement for vim. vim changes how you think about programming, how you think about software development. It is this frictionless editor (I mean, yes, huge fucking learning curve, but so is programming in general) that, even 20 years later, I will never abandon (unless I'm doing Java, because... fuck Java outside of Eclipse or IntelliJ; and yes, I've tried using that one vim<->eclipse bridge, hell no).
We currently hold the top spot, although I would be happy to see someone surpass that: http://www.vim.org/sponsor/hall_of_honour.php
I'm used to seeing people say "vim" where "vi" is meant (of which vim is but one (much enhanced) clone), so when you say you could switch out gcc for clang, or bash for zsh, could you not switch out vim for (e.g.) nvi[0]? If not, why not?
The analogous comparison would be between bash and posh/dash, or between gcc/clang and the Tiny C Compiler.
Evil mode in Emacs seems to be a bit of a crutch. I was actually an emacs user for awhile, and a lot of emacs' power imo comes from using emacs "the right way". I respect emacs and emacs users.
If you're referring to eclim [0] FWIW I've found it to be an adequate way to have a vim centric workflow with a few excursions into eclipse. If you have proficiency with both tools and enjoy having an eclim server running in a eclipse window you'd get have access to the best features of both tools.
I hope that you're being sarcastic.
Also, the same with Java only being used with Java IDEs, C# only being used with Visual Studio is also a notable exception to my "vim all the things" rule.
Every other programming language I've used a lot of (spanning from assembly to lisp) I've found it most pleasant to work in vim, even in large projects. I suspect the only other environments I'd want an IDE would be for iOS development and C#.
C, C++, Python, Ruby, JS, Erlang, Perl, etc, just require a relatively sane text editor, no full scale heavy weight IDE features needed. So, yeah, vim does everything I need there.
Neovim is like the Chrome of the web. A great editor, but also a great forcing function for the ecosystem.
Did Bram Moolenaar tell you that? Otherwise, none of us know what motivated him.
Neovim fans seem to hijack Vim discussions frequently. Sometimes people want to talk about Vim.
I don't think this is a subjective matter? The sequence of events was:
1. async feature was proposed in 2014 and earlier, Bram was opposed to the idea in general
2. neovim was created to integrate async and other improvements
3. lots of plugins started supporting neovim's async
4. vim comes out with its own async feature
You're welcome to ask Bram what motivates him personally, but I'm comfortable with my judgement of causality to the ecosystem as a whole.
> Neovim fans seem to hijack Vim discussions frequently. Sometimes people want to talk about Vim.
You may talk about vim, that's fine. Do you feel neovim is off-topic for vim discussions? It seems fairly related to me.
http://www.economist.com/news/middle-east-and-africa/2161334...
I would encourage folks to read up on factors surrounding the causes they support. Perhaps organizations like the Free Software Conservancy could use your donation to benefit humanity far more profoundly, even if they can't compete on emotional appeal.
Second-order effects also can make donations to the Free Software Conservancy counter-productive.
As an aside, I wonder if the Free Software Conservancy would want to be seen telling people not to donate to Ugandan AIDS victims and to redirect the money to themselves. My guess is they would not like to see their name here.
> emotional appeal
Life and death has appeal beyond 'mere' emotion. It's more important than free software, and I say that as an avid fan of, and occasional donor and contributor to FOSS projects.
EDIT: A rewording or two
The advice "Don't just do something, stand there!" comes to mind.
Bram has been going to Kibaale since 1994, and he's now presumably busy feeding and clothing a new generation of orphaned children, orphaned by the original orphans. Isn't this precisely the creation of a trans-generational cycle of dependency by Western patrons?
Wouldn't those people rather be in a position to feed and clothe their own population? Perhaps even be the ones sending charitable aid workers to the Netherlands.
What is happening is evidently not a path to freedom and independence. The correct action can be found in inaction.
> Life and death has appeal beyond 'mere' emotion.
Remember it's true: lives are valuable, but our dignity is valuable too.
- Async /Io
- Async Jobs
- "Packages", which allow easier built-in bundling of plugins
I'm pretty excited for this release! I've been using Neovim for several months now, but really great to see mainline Vim get these (IMO long overdue) enhancements.
By that time Emacs will have replaced temacs with Guile and someone clever will have added VimScript as a hosted language.
Also, who says vim is running in a terminal?
I think that was the main objective of the project. Would be nice to real vim in IntelliJ idea.
I'm guessing the delay you are referring to is the delay imposed by your terminal emulator (not vim) to detect the Escape key at the end that terminates visual block mode. If I'm right, you can quickly press "j" just after you press ESC, which should cancel the ESC-detection delay and cause your comment characters to appear instantly.
Edit: there's actually a few things that could be at play, including your terminal emulator, your screen/tmux (which is like another terminal editor, really), and vim's timeoutlen and ttimeoutlen settings.
Anyway, the things I appreciate more are the fast evolution and the community, no more than one year ago I tried it but was too lazy to compile, wait, configure...
This time I ran homebrew, linked my .vimrc in ~/.config/nvim/init.vim, and forgot I was using Neovim instead of Vim, except for the async compiling/linting.
From what I understand, the plugin community is generally pretty happy with neovim and find it preferable.
I've since switched all my plugins to use async versions and it's sooo fast, didn't think vim could be faster but here we are.
rm -rf /Library/Caches/Homebrew/neovim--git
brew reinstall --HEAD neovimMagit and org-mode are worth it.
Vim's tabbed interface is quite good, it's basically Vim + a Vim-specific stacking window manager.
I personally use emacs-native way, window-configuration-to-register: https://www.emacswiki.org/emacs/WindowsAndRegisters
I've seen some of these but I don't think any of them actually follow the tabbed interface paradigm:
* visible tab bar, preferably at the top and preferably style-able so that it doesn't look like it's out of Windows 3.11
* dynamic tab names based on file contents (in case of multiple buffers, show the name of the currently focused buffer), so that there's no need for manual tab name management
* tab navigation through shortcuts (open tab, close tab, move tab left/right, etc.)
In concept though, it is the best solution. Maybe I just have a broken config or something.
What you may be experiencing is an erroneous action stopping the macro. For example, if you press h at the beginning of the line, macro recording would be stopped. To make this behaviour less annoying add: (setq evil-kbd-macro-suppress-motion-error t) .
Sublime-like multi-cursors in emacs are sometimes more useful than macros. I use and like https://github.com/gabesoft/evil-mc .
Regarding other points:
- yes, for huuuge files I still use vim
- Occasional bugs due happen, as in every editor running custom plugins. In emacs debugging and editing plugins code is natural. You can use emacs to debug itself and reload parts of code without restarting.I actually started testing Spacemacs ad Vim was getting slow when highliting big .rs files.
More than anything, Vim for me is a really good set of keybindings.
(setq select-enable-clipboard t)
(setq select-enable-primary t)
See https://www.gnu.org/software/emacs/manual/html_node/emacs/Cl...It might be that Spacemacs layer is adding additional complexity, and maybe going through Helm is the issue, I don't know, just it does take quite a bit for it to catch up. In Vim, you really are plowing through at the speed of thought.
See https://www.gnu.org/software/emacs/manual/html_node/elisp/Pr...
It's true that emacs can get pretty slow if you have so many things running that you don't even need. It's also useful to defer packages until you actually need them by using autoloads or if you use use-package, `:defer/:commands/:bind` which create them for you.
Perhaps try disabling your layers one at a time to see where the problem is.
Helm is super helpful, so most likely I will disable it and see how it goes.
Might see in my tone I am not a fan of this fork.
Three of Spacemac's four pillars (mnemonic, discoverable, consistent) make it relatively easy to get the hang of. My early usage looked something like:
- Think of task I want to accomplish that probably has key binding
- Begin typing SPC - <continue drilling down through menus that look promising>
- If that doesn't work, type SPC-: and begin typing what I think the command might be called
- If that doesn't work, search web for "Spacemacs key binding <thing I want to do>"
- If that doesn't work, find/read relevant Spacemacs layer documentation
- If that doesn't work, ask in the Spacemacs gitter channel
- Memorize key binding
Once I learned a binding I found it easy to remember due to the mnemonicness:
open this file in Github? SPC-g-h-o of course (g (git) - h (..hub) - (open))
view most recent search buffer? SPC-s-l (s (search) - l (last search buffer))
maximize this window's buffer? SPC-w-m, etc
Method 1
1. Become proficient in vim
2. Become proficient in emacs
3. Learn spacemacs keyboard shortcuts
Method 2
1. Become proficient in emacs
2. Become proficient in vim
3. Learn spacemacs keyboard shortcuts
I'm a vim user, but I know almost nothing about emacs, so I am having a tough time adopting spacemacs. The basic editing features are a flawless reproduction of vim, but when I do `set textwidth=99` it doesn't work. Then I end up googling how to do this in spacemacs which is apparently `spc : set-fill-column <enter> 99`. This is just one example, but there are many others if you try to do anything different from the spacemacs defaults.
To migrate to Spacemacs, I just replicated my workflow. Earlier I would use `find . ...` extensively for complex grep. I figured the equivalent in Spacemacs. For file navigation I used the NerdTree. I again looked up the key bindings for file navigation. So on, so forth. I now have a pretty decent spacemacs setup.
I would think, this can also classify as a third method, without having to become proficient in Emacs.
The whole thing should be fun, not just laborious.
http://spacemacs.org/ http://spacemacs.org/doc/QUICK_START.html
I've been using pathogen for a while for plugins..
I will happily give 8.0 a try, but I have never used such perfect software such as vim (and I also don't follow its dev cycle at all) I am really, really surprised a new version came out. I figured I'd be using the same vim until keyboards were completely out of style.
Seems like we are now in a feature war between both lets see who comes out winning. This whole thing could have happend so much smoother for the community but stubbornness sometimes lead to interesting innovations :).
https://groups.google.com/forum/#!topic/vim_dev/_SbMTGshzVc/...
Some choice posts:
- Bram (vim author's) response to whether he looked at existing implementation in neovim: https://groups.google.com/d/msg/vim_dev/_SbMTGshzVc/wXmJuL4P...
- Thiago (neovim author's) response to Bram, which was ignored: https://groups.google.com/d/msg/vim_dev/_SbMTGshzVc/XZEXxaxD...
There are lots of other instances of this exact interaction between neovim and vim over and over, it's infuriating. Neovim was started precisely for this reason, an async proposal was made (in 2014!!) which was rudely shut down and all efforts of collaboration were ignored.
I got pissed off for Bram reading it.
Also Bram had much more detailed and valid criticism about neovim's implementation above the response you linked. Did you intentionally link that one to make Bram look bad or did you simply not read the whole thread? I'm betting on the former.
That being said I hope they pull an io.js and merge taking the best of both vim and neovim, whatever that may be.
https://danielmiessler.com/study/vim/
Going to download and see what Prezto stuff breaks when I upgrade.
Every Jedi needs to build their own light saber, and come on, it's just 6KLOC or so.
Every real Jedi needs to build their own light saber, and come on, it's just 100KLOC or so.
I've never even considered what goes into making an editor.
inoremap jk <Esc> inoremap kj <Esc>
Async is basically the reason I used NeoVim, so it feels good to come back.
Windows: ftp//ftp.vim.org/pub/vim/pc/gvim80.exe
MD5SUMS: ftp://ftp.vim.org/pub/vim/pc/MD5SUMS
Readme seems incomplete
https://github.com/vim/vim/blob/master/READMEdir/README_mac....
$ brew install --HEAD vim
[1] http://brew.sh
cd /usr/local/Cellar/vim/HEAD/share/vim/vim80/compiler; chmod 644 *.vim README.txt
-bash: cd: /usr/local/Cellar/vim/HEAD/share/vim/vim80/compiler: No such file or directory
chmod: *.vim: No such file or directory
chmod: README.txt: No such file or directory
Eh..I'll probably wait a little bit longer.$ brew update && brew upgrade vim --HEAD
I've since put Windows 10 on my MBPr (performs so much goddamned faster, Ivy Bridge era /w Intel GPU only, 8gb of RAM, decentish SSD for that generation), and use msys2 to fill that gap.
Disclaimer: My company Exelion hosts the msys2 mirror because their project is so important to the Windows community, and Sourceforge was having serious issues at the time. Well worth spending a dedi on them to keep the project going, imo.
(I realise that NeoVim has this.)
Update: Looking at the version8.txt[1] on github, the option seems to be `set termguicolors`
Change seemed to take place at version 7.4.1799[2]
[1]https://github.com/vim/vim/blob/master/runtime/doc/version8....
[2]https://github.com/vim/vim/blob/master/runtime/doc/version8....
Problem: Cannot use true color in the terminal.
Solution: Add the 'guicolors' option. (Nikolai Pavlov)
Files: runtime/doc/options.txt, runtime/doc/term.txt,
runtime/doc/various.txt, src/auto/configure, src/config.h.in,
src/configure.in, src/eval.c, src/globals.h, src/hardcopy.c,
src/option.c, src/option.h, src/proto/term.pro, src/screen.c,
src/structs.h, src/syntax.c, src/term.c, src/term.h,
src/version.c, src/vim.hWhile I usually stick to I, A, N+G, Shitf-ZZ and :q! only, I appreciate the effort and keeping vi alive and well.
Big thanks!
cnoremap sudow w !sudo tee % >/dev/null
Or from inside your editing session:
:w !sudo tee % > /dev/null
For when you find you've edited a file you don't own (e.g. config file) and forgot to sudo first.
I'm not sure how, in my use case, neovim could improve upon vim. vim's fast, available virtually everywhere, packaged with many OS's and distros, and has a rich and active community. I'm not sure why I'd want to change.
Neovim seems like a fun project ("let's reimplement vim!") but it feels a bit redundant, like a reimplementation for the sake of doing a reimplementation. There's an intangible reason why vim is so popular and has such a following. vim is well engineered, simple, and has been well cared for over the years. If I'm integrating something so deeply into my workflow, electing it the main way I interface with my code, it's going to be the 25 year old project that's beyond reliable, has evolved conservatively and is ubiquitous. Ten years ago I was writing code in the language du jour using vim, and ten years from now I'll be working with the hot new language. In vim.
vim isn't a broken relic of the 90's, it's one of the best, most valuable tools in my toolbox.
That said, I feel like this is a perfect example showing off that the best way (or a at least a very good one) out of stagnation of a piece of software is competition. VIM was dead in the water for a very long time (aync support looking at you), which is but one of the reasons NeoVIM was created, in turn sparking VIM to actually get off its laurels.
I can't help but draw parallels to the Haskell community with stack and cabal-install, to the people that might be familiar with that situation.
Anyhow, I guess I just wanted to also thank NeoVIM for pushing some life into VIM again, besides having it more or less in maintenance mode.
Don't get me wrong, I use vim all the time cause it's there on any machine I log in to, but I found I was MUCH more productive when I paid for a good IDE for development.
And YES I tried using all the plugins to make vim into an IDE. That was half the problem.
$ find foo | xargs nvim
docker run -it -e TERM=screen-256color yaasita/vim:8.0 vim
Maybe https://github.com/vim/vim/blob/v8.0.0002/runtime/doc/versio... ?
> Over Quota
> This application is temporarily over its serving quota. Please try again later.
https://groups.google.com/forum/#!topic/vim_dev/LaYdHDNzJcU
or
If you're going to lightweight and vi-like, than do that. If you're going to go the Emacs route (and if you're adding async, packaging, and lambdas, make no mistake, you're starting in the steps to building an inferior Emacs), than get a half-decent extension language. Or just up and die. We don't need a Vi clone that does the Emacs thing, we've got Evil/Spacemacs for that.
At some point you have drop out of the pseudo Vim world do things the Emacs way, keybindings and all.
For me personally, that's not what I want.
e.g. I like to use C-h as an alternative to backspace, it helps relieves my RSA not have to reach for backspace. Spacemacs provides that binding in some places but not all.
To get get C-h to consistently act as backspace I ended up effectively breaking the help system (which for an Emacs newbie like me is a bad thing).
I found loads of other things like that where I just want it to work the Vim way.
What I _really_ want is a better Vim not another editor pretending to be Vim on a superficial level. I'm glad to have the options that both Vim 8 and NeoVim offer.
Of course Emacs is an amazing bit of software and Spacemacs is a great configuration so if they work for you, more power to you.
or many packages there are many "vim-optimized" packages nowadays, e.g. evil-ediff, evil-org or evil-magit.
> e.g. I like to use C-h as an alternative to backspace, it helps relieves my RSA not have to reach for backspace.
I would do such remapping on the system level. E.g. I personally have my layout implemented in C++ on system level: https://github.com/kozikow/keyremaplinux
> I found loads of other things like that where I just want it to work the Vim way.
In Emacs in general it's easier to customise to do things your way. After a bit investment into learning elisp you can make it work however you want, including vim way. vim is not as customisable.
I love that idea and I keep telling myself I'll go back and give give it another try sometime. Would love to get really into org-mode, etc.
It's just that Vim is so comfortable! ...like a nice old pair of Goodyear welted shoes.
Sure, they come with bindings, but what about my custom bindings? Working with HJKL does not mean they are vim optimized.
I guess what I really want is for Vim to decide what it wants to be. You can be simple, or you can be extensible. Vim is kind of trying to be both. Traditionally, Emacs did extensible, and Vi did simple. It's fine if Vim wants to go the emacs route, it's just that I'd rather it stopped doing it so badly: At this point, Vim's extensibility story is embarrassing. It's 2016, the built-in language is rubbish, the external language interfaces are second-class at best. This has to change if Vim really wants to go in that direction. And if doesn't, why bother pretending?
No one is compelled to use Vim over Vi, you can just leave it in compatible mode or use another vi binary such as the one in busybox.
As far as the built in language and external API being second-class well you may have a point but both Vim and NeoVim are improving.
Whilst it's still useful and still provides, IMHO, nice ergonomics I'm probably going to stick with either Vim or NeoVim I think. I really don't mind if they never make up their mind what they want to be when they grow up. ;)
Why would you bash VIM by saying it should die? Just move over to something else and use the "Mom Rule."