Welcome to the VCHATTER project!!

vchatter is a vi-like jabber chat client (though I hope to extend it to support other protocols too). Some of vchatter's
features include tiling chat windows, support for multiple layouts, vim-like navigation and commands, ease of usability etc.

AUTHOR: Ankur Nayak

Sourceforge Project Page: vchatter


Oct 21: Development has been on pause for a while. It'll soon be in progress.


There are no official releases yet.

You can get access to the code using svn:

svn co https://vchatter.svn.sourceforge.net/svnroot/vchatter vchatter

Alternatively, you can download development snapshots here


vchatter has culminated as a result of the author experimenting with tons of different
command line chat clients and finally reaching the conclusion that all of them
essentially suck. If someone can inform me of a console-based chat client which
is efficient and to my liking, I'll stop coding for vchatter that day.

What should a chat client be like?
- Easy to use
- Vim-like bindings


1. Window-based. Three different ones: buddy list, chat buffer window, and debug/status window
2. Modes : Support three layouts: Tiled layout, full screen, Split layout. Switch between modes using ctrl-space
3. Should have a command line, just like vim, which can be invoked using ":".
4. Navigate in the buddy list using j/k. Be able to search in the buddy list using /.

Details of layouts

Tiled layout:

Just like tiling window managers(xmonad,dwm etc), there should be a master
window, which would be the buddy list window (in future we can extend it to
have any window to be the master window). The master window occupies one half
of the screen. The other half of the screen is filled with all the chat buffer
windows, which are tiled one on top of the other. One can navigate through windows using ctrl-j/k

Full screen layout:

In this mode, there will be tabs for each window. One can move from one window
to the other using alt-num

Split Layout:
In this layout, buddy-list windows occupies one half of the screen. The other
half is occupied by a chat window buffer. The idea is for the buddy-list
window to be visible at all times.