Tuesday, September 1, 2009

Re: Suggest a vim task for a college workshop

On Tue, Aug 25, 2009 at 10:08 AM, Erik Falor<ewfalor@gmail.com> wrote:
> On Tue, Aug 25, 2009 at 09:25:51AM -0700, Ben Fritz wrote:
>> 1. Vim is a very powerful tool with plenty of advantages over other
>> tools.
>> 2. Vim is complex, but there are ways to learn how to use it
>> effectively.
>
> Most of my colleagues who use Vim at work do not use it to its full
> potential.  For instance, I haven't encountered a single one who was
> aware of text objects.  Most folks are content to learn only 10% of
> Vim's unique functionality.  I suspect that's true for most people who
> use any software.  But it's especially sad in the case of Vim since
> they really are missing out on a lot.

I have the same observation. Even those who say they are die-hard fans
don't really know much of Vim, but I guess they are really die-hard Vi
fans, not Vim, they simply switched over to Vim, but don't really want
to learn more. What is funny however is there are people who worked
for years on Vi on console and still don't know much of Vi. I guess
these are the folks who would have been satisfied working in windows
notepad like program, but just happened to begin their work in Vi.

My recommendation for beginners it to use plain Vi in console (or at
least Vim in 'compatible' mode on console) and concentrate on the core
Vi features before trying out the newer Vim features. This was my
learning path, though mine was natural shift with quite a few years of
time to play with Vi before I came across Vim.

--
HTH,
Hari

>
> I believe that any approach that emphasizes using Vim's help system
> will do them the greatest service in the long-term.  And if you teach
> them to effectively search and navigate the help system, it should
> also have the effect of getting them hooked.  You'll be showing them
> that:
>    1) Vim isn't really *that* hard because it comes with so much good
>       documentation.
>    2) Vim has an overwhelming number of features, but I can learn
>       about them at my own pace because I know where to look for
>       help.
>    3) Vim's normal-mode and ex-mode commands all adhere to
>       well-defined conventions with respect to addresses and motions.
>       Once I master that, it's just a matter of remembering the names
>       of some commands.  Oh, there is tab completion for the ex-mode
>       commands!  That means I really only need to memorize a few
>       normal mode commands!
>
>> Start them out with a pre-configured Vim with a lot of "bells and
>> whistles" such as syntax highlighting already enabled for them. Maybe
>> even install a snippet or skeleton plugin that pre-populates most of a
>> C program for them. TagList would not be out of the question.
>
> I would also show off Vim's insert-mode completion capabilities.  That
> is something that programmers coming from an IDE very much rely on.
>
>> 3. Vim's help tells you basically EVERYTHING you need to know about
>> the editor.
>>
>> This step is VERY important. Without knowledge of :help, Vim is
>> basically useless, and a new user will never get beyond basic editing.
>> If time permits, I would even demonstrate CTRL-D with a :help topic,
>> and :helpgrep.
>
> Please make time to show this aspect of the help system off.  I also
> encourage you to point out that they can use Ctrl-] and Ctrl-T to
> navigate via helptags.
>
> The :options command along with :mkvimrc would be a good thing to
> throw into a hand-out.  Vim is very, very configurable.  These
> commands are a good way to explore all of those settings.
>
> In addition to the great resources Ben Fritz pointed to, you can also
> direct new users to #vim on irc.freenode.net.
>
> --
> Erik Falor
> Registered Linux User #445632 http://counter.li.org
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (GNU/Linux)
>
> iEYEARECAAYFAkqUGpoACgkQpMTu6iYtwselPwCffq28KFLp1vQQLiXmi9du00S4
> xp4An2yfOofSYFo7cMwrVHkBLZPXFDVp
> =ri5h
> -----END PGP SIGNATURE-----
>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message from the "vim_use" maillist.
For more information, visit http://www.vim.org/maillist.php
-~----------~----~----~----~------~----~------~--~---

No comments: