Vimchat is a vim plugin that allows you to do instant messaging from within the vim text editor. Note that this only works with vim, not gvim.
Screenshot 1 Screenshot 2
FeaturesVimchat allows you to easily connect to jabber servers such as Google Talk. It is also possible to connect to other services such as IRC, AIM, ICQ, and MSN. You just need to set up jabber transports.
Vimchat supports encryption via OTR (off the record).
Vimchat can use a status icon in the system tray that will blink when you receive new messages. You simply need to put any icon you would like to use at ~/.vimchat/icon.gif.
Requirementslinux or Mac vim python-xmpp Suggestedpython-gtk2 python-notify python-dns This works on linux and Mac (tested with MacVim, but required a recompile against newer python libraries). You must have python support in vim, and you must have xmpppy installed (the python-xmpp package in most distros). The python-notify package is not necessary, but if it is installed, you will get pretty libnotify alerts for new messages. It also throws some warning messages if you do not have python-dns installed (though it will still work without it). The python-gtk2 package is needed if you want a status icon in your system tray that blinks when new messages arrive.
If you are running ubuntu linux, here is a command you can run to get everything:
sudo apt-get install vim-gtk python-xmpp python-notify python-dns python-gtk2Installationchmod +x install.sh ./install.sh This should have created a file at ~/.vimchat/config. Edit this file and add at least one account entry to it.
UsageTo start using vimchat just start vim and type :VimChat. You should see a window on the left with a list of all your buddies. Type B a couple times to refresh/toggle this list. Hit enter on someone's name to open a chat buffer. Type i (or a or o) to open a send buffer. Type a message and hit enter.
Buddy ListThe buddy list can be toggled by typing B in normal mode from a vimchat buffer. Toggling the buddy list also refreshes it. If you are not currently in a vimchat buffer, you can open it with the :VimChatBuddyList command.
The buddy list is comprised of folds, and unfolding any buddy will show items like status, away message, and the groups that he or she belongs to.
Once in the buddy list, you can scroll through your buddies and hit enter when your cursor is on the buddy you want to chat with.
Pressing \l while on a buddy entry in the buddy list will bring up the log files (if any) for that user.
Chat BuffersWhen you enter into insert mode from a chat window (for example by typing i), it will pop up a send buffer. In the send buffer you simply type your message and hit enter. Multiple lines can also be sent by typing the lines, then selecting what you want to send in visual mode and pressing enter.
Typing \l will bring up a new tab containing log files for the current user.
OptionsOptional ~/.vimrc Variables:
let g:vimchat_buddylistwidth = width of buddy list, default is 30 let g:vimchat_logpath = path to store log files, default is ~/.vimchat/logs let g:vimchat_logchats = (0 or 1) default is 1 -- 0 will not log, let g:vimchat_otr = (0 or 1) default is 0 -- enable otr or not let g:vimchat_logotr = (0 or 1) default is 1 -- log otr convos or not let g:vimchat_statusicon = (0 or 1) default is 1 -- use a gtk status icon?
Copyright © 2013 Black Duck Software, Inc. and its contributors, Some Rights Reserved. Unless otherwise marked, this work is licensed under a Creative Commons Attribution 3.0 Unported License . Ohloh ® and the Ohloh logo are trademarks of Black Duck Software, Inc. in the United States and/or other jurisdictions. All other trademarks are the property of their respective holders.