Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Vimcasts (vimcasts.org)
277 points by va_coder on March 30, 2010 | hide | past | favorite | 42 comments


This is a good example of how to do a simple tutorial.

The tutorial video itself is well done.

Following the video is a concise recap of what was covered in the video.

At the end is a short, relevant list of "learn more" resources.

Well done.


The site is beautifully designed. Minimal, simple and effective. just like vim :)


I'll pay vim many compliments, "minimal" is not one of them.


What i like about vim's UI is that it's very reduced to a minimum. New users have no idea how powerful it is.


Come to the Dark Side. We have buffers.


Wait, which dark side? (or possibly, what is the light side?) Both vim and emacs have buffers, including special ones...


I use the arg list. I looked into buffers a while back, but they seemed overcomplex for what I need (same with windows). Checking the vim help just now, buffers and arglist seem (mostly) equivalent.

I'm curious: do you find there's specific advantages of buffers over the arglist? And, do you use buffers as well as, or instead of, the arglist?

The only problem I find is that if I start two vims in different xterms, sometimes I'll want to paste between them - so I need to use the system clipboard, instead of vim.


Ah, my mistake. I meant registers, not buffers.

:help registers

As to your "I'm curious" question, I use both. Mostly arglist, and I resort to buffers when the arglist has gone squirrely (editing an additional file after starting with a number of files, e.g.).

For example, edit a small number of files (vi *).

:files will show you the list of files.

Repeating :n will take you through each file.

:e newfile to create a new file

:files will show you the list, with newfile at the end.

:rew to rewind the list

:n will get you to the last file on the original list, but not to newfile.

:bn will then get you to newfile.


I've had that problem, here's what I do:

:arge

will do the same as :e, but also add it to the arglist. You can prefix with a number to insert it at a particular position, especially :0arge and :99arge for first and last respectively. It only adds one at a time; several can be added with :arga (including recursive wildcards such as /*.java)

:argd %

will delete the current file (which % expands to) from the arglist.

BTW: I dislike pressing : and <CR> so instead of :n, my .vimrc has:

:map <C-n> <Esc>:n<CR> " next file, with control-n :map <C-p> <Esc>:N<CR> " prev file, with control-p


The recursive wildcard didn't come out right. It should be:

    **/*.java
And the mapping is:

    :map <C-n> <Esc>:n<CR>    " next file, with control-n
    :map <C-p> <Esc>:N<CR>    " prev file, with control-p


I just watched the video entitled "Working with Buffers" so I don't quite get your reference


In the parent to my comment was this sentence: "New users have no idea how powerful it is."

That reminded me of this quote from Star Wars Episode VI: "You don't know the power of the Dark Side."

Which reminded me of the bumper sticker or T shirt: "Come to the Dark Side. We have cookies."

Which led to my comment: "Come to the Dark Side. We have buffers."

Buffers isn't important, except as something Vim has that can substitute for cookies.


I would also recommend the Vim Tutorial Videos here: http://www.derekwyatt.org/vim/vim-tutorial-videos/


Great pacing and clearly communicated. Has helped me no end to get up to speed with Vim in my new job.


If you're using Chrome right-click the video and open Video in New Tab or you'll get badly-resized, and pretty much unreadable text.

Looks much better in Firefox at the reduced size, but you'll probably still want to right-click and View Video to see it at its best.


Or you could subscribe to the podcast, and watch it offline: http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcas...


Thanks, I was just about to ask about the badly-resized video.

Also, thanks for revealing this "open Video in new tab" feature I've never seen before. Chrome is very pleasing in this manner.


It's ok for me in chrome (mac os x)


Doesn't look like there's been any action in the bug tracking this issue:

http://code.google.com/p/chromium/issues/detail?id=19113

Are you running the very latest nightly code?


I'm not using nightly builds.


From the about page:

>Vimcasts is produced by Drew Neil (aka nelstrom), who came to Vim from TextMate. He made the switch when starting work at a company that uses Linux workstations. His choice of text editor was influenced by collegues.

Textmate is great, but this is something that concern me as well, as sooner or later I'll have to start over with a new editor. Hopefully I'll be able to learn something through these screencasts.


I, and as have a lot of others, went from TextMate to Vim. I was really looking into something fresh, and learning Vim has been a breath of fresh air.

I found it comparable to when I switched over from SVN to Git, it really made me revitalized my programming, I was looking forward to work with my new tools! I had that same feeling when picking up Vim, so I can wholeheartedly recommend!


Glad to see a vimcasts site, more perspectives on vim are always welcome. I saw in the comments that you're using randiant cms, one thing you might want to check out is that the source code for railscasts.com is open source and is a pretty solid video cast site.


If you append all the vimrc together you get this: http://brianh.nfshost.com/vimrc.html



I gave the server a kick, so it should be back up now. Thanks for your patience.


Hi Drew - I'm trying to find an email to contact you but cannot, I'll try here then: I'd like to add vimcasts to learnivore.com, is it possible ?


You'll get me with drew at the domain name. Sorry that's not more obvious.


thanks! For the others, it will be added on learnivore end of week or sooner.


Excellent! I tend to switch around between vim, emacs, and textmate -- this may give me the impetus to learn vim a bit more fully.


Personally, I've found some of the advice dubious or just plain wrong (e.g. trying to map control plus number key). But some of it looks terrific.


It's not nice to downvote a factual statement (that there is some advice that just doesn't work) without providing a counter-argument.

Seriously, vim doesn't handle maps for ctrl-1, ctrl-2, etc. or ctrl-shift-[, etc. because terminals don't have a way to represent them to running programs. (Technically, xterm has a mode, but no programs understand it.) And gui vim doesn't handle them (though, it could) because that would be too different from what terminal vim can do.


Awesome! I've been trying to immerse myself in Vim lately, so I'm excited to check these out.


awesome. please continue!


One note: please activate page caching. looks like your slicehost is quite busy atm.


Vimcasts.org runs on Radiant CMS, which has page caching enabled by default. My problem was too many app instances spinning up. I've limited the PassengerMaxPoolSize and PassengerMaxInstancesPerApp both to 2, which seems to have fixed it.

I appreciate this burst of traffic to help me get to the bottom of this.


I wonder why you're running a clean site like vimcasts.org on a full-blown CMS. Imho this scenario longs for simpler solutions. Static site generators - in the Ruby universe: toto, nanoc, webby - come to mind.


Well, I guess your passenger/apache is not configured right to deliver the generated static files without using ruby or passenger besides your MaxInstances/PoolSize options.

I remember some issues with passengers and page caching (on nginx e.g.) which needed some tweaks.


Radiant uses Rack::Cache behind the scenes, so it still needs to be running.

I'm sure there's some reason it doesn't use Rails static caching, but even having used Radiant I'm not sure what it would be...


nelstrom, may I request for screencasts geared toward beginners? :D


Of course - and you're not the only one asking. The latest episode on modal editing ("the newbie killer") is a step back to basics. However, I don't intend to cover the material that you can find in the vimtutor.


Thanks!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: