(on Wikipedia)
https://weechat.org/
A console IRC client.
- 2014-05-21 – 0.4.2 on Lubuntu 14.04
- 2010-09-26 – 0.2.6.2 on Unity Linux 2010.1 32bit
- 2010-09-04 – 0.3.3 on (distribution not recorded)
- 2010-04-19 – 0.3.1.1 on (distribution not recorded)
- 2010-01-06 – 0.3.0 on Unity Linux 64bit-beta2
- 2010-01-02 – 0.3.0 on Unity Linux 64bit beta1
- 2010-01-01 – 0.3.0 on Unity Linux 64bit-beta1
-
2009-08-12 – 0.2.6.2 on Unity Linux 0.99-alpha2
- Also recently tested on 0.99-alpha1.
- 2009-07-16 – 0.2.6.2 on Slackware 12.2 vanilla.
-
2009-04-26+ – 0.2.6.2 on PCLinuxOS 2007
Notes ∞
From 2015-03-26 or earlier.
- Find old config? Isn’t all that handled by my wiki notes?
- Autologin
-
I can’t use IRC until I can proxy and protect my IP.
2014-05-21 – 0.4.2 ∞
Seems to work very well.
I rather like WeeChat’s documentation, especially compared to SpaceFM‘s documentation, which I’ve been struggling with.
2010-09-26 – 0.2.6.2 ∞
Working just fine.
2010-09-04 – 0.3.3 ∞
Same shit, I’m not even bothering to look things up. For simplicity I’m going back to 0.2.6.2.
2010-04-19 – 0.3.1.1 ∞
I have no clue how to connect. The inline and online documentation don’t help. I went back to the 0.2.x series..
2010-01-06 – 0.3.0 ∞
wget weechat.org/files/src/weechat-0.3.0.tar.bz2 tar -xvvzf weechat-0.3.0.tar.bz2 cd weechat-0.3.0 su smart install lib64aspell-devel lib64ncursesw-devel lib64gnutls-devel lib64lua-devel perl-devel ruby-devel lib64tcl-devel ./configure make make install
-
lib64python-develdoesn’t provide the python headers. I still get:
ImportError: No module named distutils.sysconfig
The key bindings for Home and End are not working, I had to update them to:
/key bind meta-OH /input move_beginning_of_line /key bind meta-OF /input move_end_of_line
2010-01-02 – 0.3.0 ∞
See Compiling WeeChat 0.3.0 on Unity Linux 64bit beta1
Mentioned in 2010-01-02 random stuff.
I got WeeChat 0.3.0 running, and I can be found on IRC again. They made more drastic changes in this release than I thought they would, and I needed to rediscover the way to do all sorts of things. Once again, documentation could have been done better in this case, because it was non-obvious on how I would change hotkeys.
All the plugins have been outdated now that their internal engine has been changed, but there’s still a good list to go through. For unknown reasons I can’t get Python compiled in.. which is a complete pain since the good plugins will be in Python.
2010-01-01 – 0.3.0 ∞
wget weechat.org/files/src/weechat-0.3.0.tar.bz2 tar -xvvzf weechat-0.3.0.tar.bz2 cd weechat-0.3.0 su smart install lib64aspell-devel lib64ncursesw-devel lib64lua-devel perl-devel ruby-devel lib64tcl-devel ./configure make make install
lib64gtk+-develcan be installed if you want something slightly more graphical. If so, run it withweechat-gtk.- I’m not installing asciidoc since I don’t have source-highlight
- Not exploring jabber support
-
Not exploring direct connect
I have not been able to get python to work even though I installed lib64python-devel. Reinstalling Python and it has changed nothing. I’m not going to bother to troubleshoot right now, but I’ll have to if I want to get Python scripts running.
checking for python... /usr/bin/python Traceback (most recent call last): File "<string>", line 1, in <module> ImportError: No module named distutils.sysconfig checking for Python header files... configure: WARNING: *** Python header files couldn't be found on your system. *** Try to install them with your software package manager. *** WeeChat will be built without Python support.
Running weechat-curses works just fine. Basic usage:
/connect freenode /nick <username> /msg nickserv <yourpass> /join #channelname
- looks like everything’s been changed.. sigh
- How do I add a server?
- How do I do autoconnect?
- How do I automatically message nickserv?
-
How do I change hotkeys? The documentation is inhuman, and the previous method doesn’t work even though the documentation hasn’t changed..
- Key bindings
/key bind ctrl-C /input delete_line # doesn't seem to really work: /key bind ctrl-V /input clipboard_paste # alt-left/right /key bind meta2-1;3D /buffer -1 /key bind meta2-1;3C /buffer +1 # control-left/right /key bind meta2-1;5D /input move_previous_word /key bind meta2-1;5C /input move_next_word # control-delete /key bind meta2-3;5~ /input delete_next_word # alt-backspace /key bind meta-ctrl-? /input delete_previous_word # control-backspace /key bind ctrl-H /input delete_previous_word # control-/ /key bind control-_ /input search_text # control-pageup/pagedown, alt-pageup/pagedown # note: use control-shift pageup/down if you want to scroll back in [[xterm]] to see the terminal history from before you launched weechat. /key bind meta2-5;5~ /window page_up /key bind meta2-6;5~ /window page_down /key bind meta2-5;3~ /window page_up /key bind meta2-6;3~ /window page_down # home/end /key bind meta2-H /input move_beginning_of_line /key bind meta2-F /input move_end_of_line
notes:
- Plugins tested
-
beep.pl Speaker beep on highlight/private msg.
- Plugins lost
not updated yet..
-
ruby /
forcenick.rb
2009-08-12 – 0.2.6.2 ∞
Works just fine from source.
-
can I load the past history for each channel? I want to get it back into my history list if I restart..
2009-07-16 – 0.2.6.2 ∞
I just unpacked it and did a
./configure && make && make install
.. and it worked.
2009-04-30 – 0.2.7-devel 30/04/2009 06:43 ∞
-
2009-04-30 – 0.2.7-devel 30/04/2009 06:43 on PCLinuxOS 2007, updated 2009-04.
not tested.
-
New plugin API. Breaks old plugins. =(
-
As of 2009-04-28, WeeChat has todo items slated to be done Dec 2006
Installation
This time I decided to also include more dependencies so that I can get more plugins working.
apt-get install libaspell15-devel libjabberd0-devel perl-devel liblua-devel libtcl8.4-devel libgnutls-devel
I don’t know what these are: doc(pdf) doc(html)
No joy:
Spoiler
*** libiksemel was not found. You may want to get it from https://github.com/meduketto/iksemel <span class="footnote_referrer" ><a><sup id="footnote_plugin_tooltip_71453_1" class="footnote_plugin_tooltip_text" onclick="footnote_moveToAnchor_71453('footnote_plugin_reference_71453_1');" >[ 1 ]</sup ></a><span id="footnote_plugin_tooltip_text_71453_1" class="footnote_tooltip" > was [[archive:http://code.google.com/p/iksemel/|]] </span ></span><script type="text/javascript"> jQuery('#footnote_plugin_tooltip_71453_1').tooltip({ tip: '#footnote_plugin_tooltip_text_71453_1', tipClass: 'footnote_tooltip', effect: 'fade', predelay: 0, fadeInSpeed: 200, delay: 400, fadeOutSpeed: 200, position: 'top center', relative: true, offset: [1, 0], });</script>
*** WeeChat will be built without Jabber support.
*** Perl headers couldn't be found in your system.
*** Try to install it with your software package manager.
*** WeeChat will be built without Perl support.
*** Tcl headers couldn't be found in your system.
*** Try to install it with your software package manager.
*** WeeChat will be built without Tcl support.
*** Docbook XSL files not found
*** WeeChat will be built without documentation.
*** Try ./configure --with-doc-xsl-prefix=DIR if you have DIR/html/chunk.xsl file
Umm, libtcl8.4-devel and perl-devel didn’t install before? Odd.
apt-get install perl-devel libtcl8.4-devel docbook-utils
I don’t have libiksemel so I’ll ignore that one. Jabber support would be sweet though! Maybe later if there’s a reason I can get it from https://github.com/meduketto/iksemel [ 2 ] was http://code.google.com/p/iksemel/
*** Docbook XSL files not found *** WeeChat will be built without documentation. *** Try ./configure --with-doc-xsl-prefix=DIR if you have DIR/html/chunk.xsl file
docbook-style-xsl is installed, so I don’t know how to deal with this. Whatever.
-
notify.py (0.0.2.0, 2009-04-30)
- Notification on screen for highlights and private messages.
- How is this configured? How does it work? When I send myself a private message, it explodes. Presumably I’m missing some libraries or something?
-
beep.pl (0.3, 2009-04-30)
- Speaker beep on highlight/private message.
- It works, but because I don’t get any sound, it’s not so useful. See Enabling the Linux PC speaker beep. It beeps even when I’m looking at that buffer. Sigh.
review ∞
- Does this have NickServ identification? I don’t see a plugin for that.
-
fifo seems to exist now
Seems sensible enough, but i’m going back to the release version now that I have the dependencies installed. I’d rather wait for the essential plugins to get updated before I use the other version. Well, I’d rather wait for a stable version..
2009-04-26+ – 0.2.6.2 ∞
- Wow, it’s beautiful.
-
F10scrolls the topic. But it wraps around when it gets to the end.- Just replace it with one command to view the whole topic.
-
I see no
~/.weechat/weechat_fifo_xfile.- Aha, it needs to be enabled in the rc file.
-
Very very light on resources.
There is functionality to fix key bindings. Yay. Sensible defaults, but some don’t work for me. Some of it seems to be the fault of xterm, because LXTerminal works..
alt-k <key>will give you the keycode.-
alt-F11gives me3~- it’s not a default key binding, the manual is wrong.
-
scroll wheel– won’t work!/key meta2-Ameta2-Ameta2-A scroll_up/key meta2-Bmeta2-Bmeta2-B scroll_down
- I get no scan codes out of
shift-pageup/shift-pagedown -
control-home/control-endandalt-home/alt-endaren’t bindable. Thecontrol/altare not noticed and justpageup/pagedownis seen.
setup ∞
See also WeeChat configuration
Put scripts in the appropriate autoload dir. If you’re expecting a scripting language directory and it’s not there, you probably don’t have support compiled in. At the WeeChat commandline, try stuff like /perl /python /ruby /lua and if you get an error with any of them you don’t have support.
Example directory:
~/.weechat/ruby/autoload
- key bindings
-
alt-left/right – also binds mouse buttons 4/5 !
/key meta2-1;3D /buffer -1/key meta2-1;3C /buffer +1
-
control-left/control-right/key meta2-1;5D previous_word/key meta2-1;5C next_word/key ctrl-C delete_line
-
control-backspace/key meta2-3;5~ delete_next_word
-
alt-backspace/key meta-ctrl-? delete_previous_word
-
control-v/key ctrl-v clipboard_paste
-
control-//key control-_ search_text
-
control-pageup/control-pagedown,alt-pageup/alt-pagedown/key meta2-5;5~ page_up/key meta2-6;5~ page_down/key meta2-5;3~ page_up/key meta2-6;3~ page_down
-
home/end/key meta-OH home/key meta-OF end
/key ctrl-C won’t clear the line in LXTerminal =/
key [key [function/command]] [unbind key] [functions] [call function ["args"]] [reset -yes]
bind/unbind keys
key: display or bind this key to an internal function or a command (beginning by "/")
unbind: unbind a key
functions: list internal functions for key bindings
call: call a function by name (with optional arguments)
reset: restore bindings to the default values and delete ALL personal bindings (use carefully!)
- Automatic-connect and channel joining
a. at the commandline
weechat-curses irc://username@irc.freenode.net/#chan1,#chan2
b. always
edit ~/.weechat/weechat.rc and check for your server under [server]. Set this stuff:
server_autoconnect = on server_autojoin = "#chan1,#chan2" server_password = "password" server_nick1 = "nick" server_nick2 = "nick2" server_nick3 = "nick3"
- NickServ identification
-
automatic commands after connecting (ghosting, nickserv identifying)
-
Forcenick (1.0, 2009-04-27)
- Works with no configuration. Make sure
~/.weechat/weechat.rchas the correct nick and password information. - Ghosting hasn’t been tested. I can’t actually reproduce a ghost. :)
- Does not work if the server goes down and I auto-reconnect.
- Works with no configuration. Make sure
-
NickServ identifer plugin (0.1, 2009-04-27)
- Too universal and complicated.
-
Keepnick ()
usage ∞
alt-ato switch to the next unread buffer (channel)./closeto/partand close a window.- By default, any
/keysettings are saved automatically. - Press
upto get to the previous commands. It remembers what you were typing. - You could type things, and press down to add it into your command history stack without sending it to the channel.
-
Your current-typing and history is saved individually for each channel you’re on.
todo ∞
-
- Check for something that’ll automatically tinyURL links? Or maybe put links on one row or something.. eesh.
-
bind
scrollupto one-line scroll up the buffer- and down..
-
bind
shift-upto one-line scroll up the buffer- and down..
- Is there a function to match currently-typing text with a previously-typed command?
- Is there a hotkey to show/hide the user list?
- I can’t highlight a URL to visit it. Sad.
- Change the green chat bar into a dash
- Maybe change conversation so the second line isn’t indented?
-
The status bar needs to be updated
- I need the channel to be the leftmost item.
- I also don’t care for some of that info, including the time taking up a new row.
- remove my username?
- figure out logging, I think it already does it and just has to be turned on.
- TODO – Highlight notification: On one’s name, or personal message. Should not notify if you’re currently in that channel.
-
beep.pl ()
- Speaker beep on highlight/private msg.
- FIXME: I can’t test, apparently I don’t have Perl support compiled. =/
-
sound.pl ()
- Play a sound when highlighted/private msg, or for ctcp sound event.
/setp perl.sound.cmd_highlight = "/usr/bin/command arguments..."- I can do a sound and popup, or maybe a tray icon (animated?)
- FIXME: I can’t test, apparently I don’t have perl support compiled. =/
-
notify.py ()
- This Plugin Calls the
libnotifybindings via python when somebody says your nickname, sends you a query, etc. To make it work, you may need to download:python-notify(andlibnotify–libgtk)
- This Plugin Calls the
-
weenotify.py ()
- Script to run notify-send on highlights and private messages.
- autoaway.py
- https://web.archive.org/web/20090316165947/http://weechat.flashtux.org:80/scripts/awaylog.pl — best to do it all the time though, not just when away.
- https://web.archive.org/web/20090825195839/http://weechat.flashtux.org:80/scripts/awl.py
- https://web.archive.org/web/20080719120431/http://weechat.flashtux.org/scripts/exec.pl
- https://web.archive.org/web/20090316094040/http://weechat.flashtux.org:80/scripts/shell.py
- https://web.archive.org/web/20090316170003/http://weechat.flashtux.org:80/scripts/histecho.pl
- https://web.archive.org/web/20090316104049/http://weechat.flashtux.org:80/scripts/layout.pl
- https://web.archive.org/web/20090316180623/http://weechat.flashtux.org:80/scripts/logsearch.pl
- https://web.archive.org/web/20090717013151/http://weechat.flashtux.org:80/scripts/obsolete.py
- https://web.archive.org/web/20090316032524/http://weechat.flashtux.org:80/scripts/oldtopic.pl
- https://web.archive.org/web/20090524200236/http://weechat.flashtux.org:80/scripts/onattach.py
- https://web.archive.org/web/20090825202248/http://weechat.flashtux.org:80/scripts/pagetitle.py
- https://web.archive.org/web/20090810093808/http://weechat.flashtux.org:80/scripts/pmwhitelist.py
- https://web.archive.org/web/20090823064500/http://weechat.flashtux.org:80/scripts/response.py
-
https://web.archive.org/web/20090318042025/http://weechat.flashtux.org:80/scripts/surfraw.rb
-
https://web.archive.org/web/20080719115936/http://weechat.flashtux.org/scripts/text_replace.py
- get the list of replacable words from naim.
- https://web.archive.org/web/20090210160102/http://weechat.flashtux.org:80/scripts/urlgrab.py
- https://web.archive.org/web/20090317033820/http://weechat.flashtux.org:80/scripts/wildcard.py
Footnotes

pushed old notes here