vim7 review/rant

vim7 announcement commented by a lazy non-contributor

- Spell checking support for about 50 languages

I never dweled in the spellcheking, but i haven't seen any mention of aspell or other well stabilished architeture used, so i assumed it was written from scratch. Don't think that was clever. But i'm not going to look the horse's teeths :)

- Intelligent completion for C, HTML, Ruby, Python, PHP, etc.
this one i can't comment yet, i'm too used to my "set complete+=k set dictionary+=~/.vim_php" setup that i'm afraid to try using ctags with php.

- Tab pages, each containing multiple windows
Gezz. jEdit is way ahed in this one. it was a lame feature :(
The sad part, vim already had a superb suport for "tabs". try that: "nmap <F5> :buffers<CR>:b"
pressing F5 (or ctrl+tab or what you feel like, even to ":showtabs") you get a list of a number and a open file (or tab), just type the number and voilà, you're on the file. Sadly, vim never allowed me to do that with a unsaved current buffer. And i never added an autosave to the macro because that's dangerous.
The point is: the feature was always there. just work aroung the annoyance of moving between unsaved buffers... but NOOOO, add some ten more commands. what's this? emacs?!? ;)
btw, since this should have been a review instead of a rant, the good part is that each tab is like a different vim. you have a buffer list for each tab. just like several vims open under pwm or ion3.


- Undo branches: never accidentally lose text again
Now, this is good news!
an ascii-art-screen-cast[TM] for your viewing pleasure:
--------------------
hello world <ESC>
~
~
:

--------------------
hello world<o>
bla bla bla<ESC>
~
~
:undo<enter>
:undo<enter>

-------------------
~
~
~
:

--------------------
oi<ESC> (by typing after an undo in any other
~        text editor, you'd loose the undoed text)
~
:

--------------------
oi mundo<ESC>
~
~
:earlier<enter>

--------------------
oi
~
~
:earlier<enter>

--------------------
hello world
bla bla bla
~
~
:

amazing that nobody did this before :) does gimp have it? :)

- Vim script supports Lists and Dictionaries
 (similar to Python)
- Vim script profiling
i'm claiming ignorance on those since my macros can only be called "keyboard shortcuts" anyway.

- Improved Unicode support
this i can confirm in gvim. My french accented chars showed up all screwed up in the interface. regularly i couldn't figure out error messages because of the unicode screwing. Now there's none. but in vim under xterm i still have them.

- Highlighting of cursor line, cursor column and matching braces
- Scroll back in messages

nice. i'm still procrastinating my macro to highlight not the current line, but the {} block i'm inside... hey, i thought that the matching braces was already there...
anyway, i think that was a step in the right direction. Interface. And I hope vim8 goes along this line. Lots of interface! feedback is everything, and is what vim sucks most.

- Translated manual pages support.
huray (hey, that was not sarcastic, i mean it)

- Internal grep; works on all platforms, searches compressed files

now, this i feel like making the same rant as the spell check. Why? oh why? think of the children!
!grep
vim is a text editor. it's not a perl hacker wet dream. grep is a superb program. there's even versions compiled for win32... don't reinvent the wheel.
But, anyway, i should be gratefull that a developer give in his time to do that, if that's what he needed. (i'm sincery about this too, the fact that i may write macros with multiple file grep result may came in handy, but would still be just a substitute for a bash script that did the same, and probably one that used some garbage in /tmp)

- Browsing remote directories, zip and tar archives
I think i'm going nuts. I tought vim alredy did remote and tar... o well, maybe i'm running betas for too long. This is nice. can i open jar files? ;)

- Printing multi-byte text
I didn't even know vim prints! seriously.

- Cursor past end of the line
never figured that out :-/