Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is there any IRC client that supports VI keys? The ''obvious'' script VimIRC is and has been broken for so long it's not even funny.

Do you know any IRC clients on Linux, GUI or Curses, that provides some of that nice vi usability?

Or could some of the existing clients be scripted to use? Irssi, XChat, even ERC would do?

share|improve this question
up vote 19 down vote accepted
  1. I use with irssi (in GNU screen) and am extremely satisfied with the combination.

    For anyone who doesn't know Irssi, it's terminal-based and there is no GUI available or planned. While this may put some people off, it makes for a great combination with GNU screen, and allows you to keep your connection while being logged out: Always a good thing to have for IRC and its erratic response times.

    The current version of vim_mode is already pretty sophisticated, has registers, custom mappings and lots of other stuff, and it's still being developed.

    To use vim_mode's ex mode, you'll need the script from irssi-scripts/prompt_info (same developers).

    The most up-to-date documentation is in the .pl file itself. If you have further questions or suggestions, the developers (and a few of us lowly users) hang out on #irssi_vim/Freenode and are generally very friendly and responsive.

  2. An alternative solution would be to use the unixy bare-bones ii IRC client by the suckless community with Vim itself.

    ii creates a directory structure in the file system and places FIFOs for channels and server messages that can be written to and read from.

    On the ii page, you can find a link to a working setup that uses multitail for split windows, Vim for entry, and shell scripts and screen for glue.

    Multitail can be configured to get (non-dynamic) highlighting for the IRC logs, and if you'd buffer the logs, you can use Vim's 'complete' option to get dynamic word completion from them.

share|improve this answer
Oh dear peth. You made me so happy. I was an avid irssi user, and I did actually once try to provide modality to irssi by binding a mass of keys, but I realized it wouldn't work well by any metric. Guess I were wrong. :) – progo Feb 13 '11 at 22:24
The ii mode would be quite perfect if I got vim somehow to do tail -f characteristics. But nothing usable has come around. TailBundle for instance ceases action after a while and so on... It would be perfect to get buffer word completion and omni completion for nicks, and vim's highlighting for the log. And one buffer per IRC channel. Wouldn't that be grand. I'm investigating to so perhaps it fills the needs better. Because irssi takes care of many issues that should otherwise be implemented (eg. splitlong, away toggle, ...) – progo Feb 14 '11 at 9:23
as much as I wanted to have real vim completion, that kind of tricky tweaking would be too much for me. Now that I've adopted Twirssi, leaving irssi has become not that big an option. Luckily vim_mode is excellent as is. I've been tweaking with extra completion keys (can have both <Tab> and <C-n> to do different kinds of completion now), but haven't written a buffer completion function yet. – progo Jun 8 '11 at 17:44

Now that Emacs has more than decent Vi-key emulation package, Evil, ERC is a very viable solution for this. After a little tuning, chatting using ERC and Evil can be very vim experience.

share|improve this answer

Vim itself has an IRC plugin.

share|improve this answer
VimIRC is so hopelessly broken I thought it was obvious not to mention it. – progo Jun 30 '11 at 13:58

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .