498 lines
16 KiB
Plaintext
498 lines
16 KiB
Plaintext
WeeChat FAQ (Frequently Asked Questions)
|
|
========================================
|
|
Sébastien Helleu <flashcode@flashtux.org>
|
|
|
|
|
|
[[general]]
|
|
General
|
|
-------
|
|
|
|
|
|
[[why_choose_weechat]]
|
|
Why choose WeeChat? X-Chat and Irssi are so good...
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Because WeeChat is very light and has new features.
|
|
Some features (version > = 0.3.x):
|
|
|
|
* multi-protocol support via plugins (IRC, Jabber)
|
|
* many remote GUI's in addition to Curses (coming soon)
|
|
* available in many languages
|
|
* extensible with plugins (C, Perl, Python, Ruby, Lua, Tcl)
|
|
* buffers with free content
|
|
* display filtering by tags and regular expressions
|
|
* horizontal and vertical window split
|
|
* customizable and extensible bars
|
|
* nicklist available in all GUI's
|
|
* incremental text search in buffers, jump to highlights
|
|
* FIFO pipe for remote control
|
|
* aspell support
|
|
* double charset (encoding/decoding)
|
|
* developed from scratch (not based on any other client)
|
|
* multi-platform
|
|
* 100% GPL and free
|
|
|
|
More info on this page: http://www.weechat.org/features
|
|
|
|
|
|
[[compilation_install]]
|
|
Compilation / install
|
|
---------------------
|
|
|
|
|
|
[[gui]]
|
|
I heard about many GUI's for WeeChat. How can I compile/use them?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Today only a Curses GUI is available.
|
|
|
|
Other GUI's will be available as remote clients (currently under development).
|
|
|
|
|
|
[[compile_git]]
|
|
I can't compile WeeChat after cloning git repository, why?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The recommended way to compile WeeChat is with cmake.
|
|
|
|
If you're compiling with autotools (and not cmake), check that you have latest
|
|
version of autoconf and automake (WeeChat is developed with autoconf 2.61 and
|
|
automake 1.10.1).
|
|
|
|
The other way is to install the "devel package", which needs less dependencies.
|
|
This package is built almost every day using git repository. Note that this
|
|
package may not correspond exactly to git base and that it's less convenient
|
|
than git cloning for installing updates.
|
|
|
|
|
|
[[lost]]
|
|
I've launched WeeChat, but I'm lost, what can I do?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
For help you can type `/help`. For help about a command, type `/help command`.
|
|
Keys and commands are listed in documentation.
|
|
|
|
It's recommended for new users to read the quickstart guide (see the doc page
|
|
on the website).
|
|
|
|
|
|
[[display]]
|
|
Display
|
|
-------
|
|
|
|
|
|
[[charset]]
|
|
I don't see some chars with accents, what can I do?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
It's common issue, please read carefully and check *ALL* solutions below.
|
|
|
|
For versions < 0.2.3, please upgrade to the latest stable version.
|
|
|
|
For versions > = 0.2.3:
|
|
|
|
* check that weechat-curses is linked to libncursesw (warning: needed on most
|
|
distributions but not all): `ldd /path/to/weechat-curses`
|
|
* check that the "Charset" plugin is loaded with `/plugin` command (if it is
|
|
not, then you probably need the "weechat-plugins" package)
|
|
* check the charset line (on server buffer). You should see 'ISO-XXXXXX' or
|
|
'UTF-8' for terminal charset. If you see 'ANSI_X3.4-1968' or other values,
|
|
your locale is probably wrong.
|
|
* setup global decode value, for example:
|
|
** with WeeChat < = 0.2.6: `/setp charset.global.decode = ISO-8859-15`
|
|
** with WeeChat > = 0.3.x: `/set charset.default.decode "ISO-8859-15"`
|
|
* if you are using UTF-8 locale:
|
|
** check that your terminal is UTF-8 ready (terminal recommended for UTF-8 is
|
|
rxvt-unicode)
|
|
** if you are using screen, check that it is run with UTF-8 mode
|
|
("`defutf8 on`" in ~/.screenrc or `screen -U` to run screen)
|
|
|
|
[NOTE]
|
|
UTF-8 locale is recommended for WeeChat. If you're using ISO or other
|
|
locale, please check that *all* your settings (terminal, screen, ..) are ISO
|
|
and *not* UTF-8.
|
|
|
|
|
|
[[bars_background]]
|
|
Bars like title and status are not filled, background color stops after text, why?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
This may be caused by a bad value of the TERM variable in your shell (look at
|
|
output of `echo $TERM` in your terminal).
|
|
|
|
Depending on where you launch WeeChat, you should have:
|
|
|
|
* if WeeChat runs locally or on a remote machine without screen, it depends on
|
|
the terminal used: 'xterm', 'rxvt', ..
|
|
* if WeeChat runs under screen, you should have 'screen'.
|
|
|
|
If needed, fix your TERM variable: `export TERM="xxx"`.
|
|
|
|
|
|
[[screen_weird_chars]]
|
|
When I'm using weechat under screen, I have weird random chars, how do I fix that?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
This may be caused by bad value of the TERM variable in your shell (look at
|
|
output of `echo $TERM` in your terminal).
|
|
|
|
For example, 'xterm-color' may display such weird chars, you can use 'xterm'
|
|
which is ok (like many other values).
|
|
|
|
If needed, fix your TERM variable: `export TERM="xxx"`.
|
|
|
|
|
|
[[osx_display_broken]]
|
|
I compiled WeeChat under OS X, and I see "(null)" everywhere on screen, what's wrong?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
If you compiled ncursesw yourself, try to use standard ncurses (that comes with
|
|
system).
|
|
|
|
Moreover, under OS X, it is recommended to install WeeChat with Homebrew package
|
|
manager.
|
|
|
|
|
|
[[buffer_vs_window]]
|
|
I heard about "buffers" and "windows", what's the difference?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
A 'buffer' is composed by a number, a name, lines displayed (and some other
|
|
data).
|
|
|
|
A 'window' is a screen area which displays a buffer. It is possible to split
|
|
your screen into many windows.
|
|
|
|
Each window displays one buffer. A buffer can be hidden (not displayed by a
|
|
window) or displayed by one or more windows.
|
|
|
|
|
|
[[terminal_copy_paste]]
|
|
How can I copy/paste text without pasting nicklist?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
You can use a terminal with rectangular selection (like rxvt-unicode,
|
|
konsole, gnome-terminal, ...). Key is usually ctrl + alt + mouse selection.
|
|
|
|
Another solution is to move nicklist to top or bottom, for example:
|
|
|
|
* with WeeChat < = 0.2.6: +
|
|
`set look_nicklist_position = top`
|
|
* with WeeChat > = 0.3.x: +
|
|
`/bar set nicklist position top`
|
|
|
|
|
|
[[urls]]
|
|
How can I click on long URLs (more than one line)?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
WeeChat displays time and prefix for each line and optional bars around chat
|
|
area, so it is not possible to display long URLs without truncating them.
|
|
|
|
You can use one of following scripts:
|
|
|
|
urlbar.py::
|
|
display URLs in a bar
|
|
|
|
urlgrab.py::
|
|
logs URLs and open them in browser
|
|
|
|
url_shorten.rb::
|
|
tinyurl.py::
|
|
shortenurl.py::
|
|
shorten long URLs
|
|
|
|
List of scripts about URLs: http://www.weechat.org/scripts/stable/tag/url
|
|
|
|
|
|
[[change_locale_without_quit]]
|
|
I want to change the language used by WeeChat for messages, but without exiting WeeChat, is it possible?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Yes, you have to use a python script, shell.py (available on WeeChat website)
|
|
and issue these commands when script is loaded:
|
|
|
|
----------------------------------------
|
|
/shell setenv LANG=en_US.UTF-8
|
|
/upgrade
|
|
----------------------------------------
|
|
|
|
To have english messages with UTF-8 encoding for terminal, for ISO users, you
|
|
can issue: `/shell setenv LANG=en_US`.
|
|
|
|
|
|
[[key_bindings]]
|
|
Key bindings
|
|
------------
|
|
|
|
|
|
[[meta_keys]]
|
|
Some meta keys (alt + key) are not working, why?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
If you're using some terminals like xterm or uxterm, some meta keys does not
|
|
work by default. You can add a line in file '~/.Xresources':
|
|
|
|
* for xterm:
|
|
----------------------------------------
|
|
XTerm*metaSendsEscape: true
|
|
----------------------------------------
|
|
* for uxterm:
|
|
----------------------------------------
|
|
UXTerm*metaSendsEscape: true
|
|
----------------------------------------
|
|
|
|
And then reload resources (`xrdb -override ~/.Xresources`) or restart X.
|
|
|
|
|
|
[[customize_key_bindings]]
|
|
How can I customize key bindings?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Key bindings are customizable with `/key` command.
|
|
|
|
Default key Meta-k (usually Alt-k) lets you grab key code and insert it in
|
|
command line.
|
|
|
|
|
|
[[irc]]
|
|
IRC
|
|
---
|
|
|
|
|
|
[[ignore_vs_filter]]
|
|
What is the difference between the /ignore and /filter commands?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The `/ignore` command is an IRC command, so it applies only for IRC buffers
|
|
(servers and channels).
|
|
It lets you ignore some nicks or hostnames of users for a server or channel
|
|
(command will not apply on content of messages).
|
|
Matching messages are deleted by IRC plugin before display (so you'll
|
|
never see them).
|
|
|
|
The `/filter` command is a core command, so it applies to any buffer.
|
|
It lets you filter some lines in buffers with tags or regular expression for
|
|
prefix and content of line.
|
|
Filtered lines are only hidden, not deleted, and you can see them if you
|
|
disable filters (by default, the key alt + "=" toggles filters).
|
|
|
|
|
|
[[filter_irc_join_part_quit]]
|
|
How can I filter join/part/quit messages on IRC channels?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
According to WeeChat version:
|
|
|
|
* with WeeChat < = 0.2.6: +
|
|
`/ignore * join #weechat freenode` +
|
|
`/ignore * part #weechat freenode` +
|
|
`/ignore * quit #weechat freenode` +
|
|
(channel and/or server may be "*", `/help ignore` for help)
|
|
|
|
* with WeeChat > = 0.3.x:
|
|
|
|
** smart filter (keep join/part/quit from users who spoke recently): +
|
|
`/set irc.look.smart_filter on` +
|
|
`/filter add irc_smart * irc_smart_filter *` +
|
|
(`/help irc.look.smart_filter` and `/help filter` for help)
|
|
|
|
** global filter (hide *all* join/part/quit): +
|
|
`/filter add jpk * irc_join,irc_part,irc_quit *` +
|
|
(`/help filter` for help)
|
|
|
|
|
|
[[filter_irc_join_channel_messages]]
|
|
How can I filter some messages displayed when I join an IRC channel?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Some tags you can use to filter messages:
|
|
|
|
* 'irc_366': names on channel
|
|
* 'irc_332,irc_333': channel topic/date
|
|
* 'irc_329': channel creation date
|
|
|
|
You can find tags for other messages by looking at IRC raw server
|
|
(`/server raw`).
|
|
|
|
Examples:
|
|
|
|
* filter names:
|
|
----------------------------------------
|
|
/filter add irc_join_names * irc_366 *
|
|
----------------------------------------
|
|
* filter topic (and date):
|
|
----------------------------------------
|
|
/filter add irc_join_topic_date * irc_332,irc_333 *
|
|
----------------------------------------
|
|
|
|
|
|
[[filter_voice_messages]]
|
|
How can I filter voice messages (eg on Bitlbee server)?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
It's not easy to filter voice messages, because voice mode can be set with other
|
|
modes in same IRC message.
|
|
|
|
If you want to do that, it's probably because Bitlbee is using voice to show
|
|
away users, and you are flooded with voice messages. Therefore, you can change
|
|
that and let WeeChat use a special color for away nicks in nicklist.
|
|
|
|
On channel '&bitlbee', do:
|
|
----------------------------------------
|
|
set away_devoice false
|
|
----------------------------------------
|
|
|
|
For checking away nicks in WeeChat, see question about
|
|
<<color_away_nicks,away nicks>>.
|
|
|
|
|
|
[[color_away_nicks]]
|
|
How can I see away nicks in nicklist?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
You have to set option 'irc.server_default.away_check' to a positive value
|
|
(minutes between each check of away nicks).
|
|
|
|
You can set option 'irc.server_default.away_check_max_nicks' to limit away check
|
|
on small channels only.
|
|
|
|
For example, check every 5 minutes for away nicks, for channels with max 25
|
|
nicks:
|
|
|
|
----------------------------------------
|
|
/set irc.server_default.away_check 5
|
|
/set irc.server_default.away_check_max_nicks 25
|
|
----------------------------------------
|
|
|
|
[NOTE]
|
|
For WeeChat < = 0.3.3, options are 'irc.network.away_check' and
|
|
'irc.network.away_check_max_nicks'.
|
|
|
|
|
|
[[highlight_notification]]
|
|
How can I be warned when someone highlights me on a channel?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
According to WeeChat version:
|
|
|
|
* with WeeChat < = 0.2.6: use script 'sound.pl' (available on scripts page),
|
|
and then setup a system command (to play sound, display message, ..) with
|
|
this command: +
|
|
`/setp perl.sound.cmd_highlight = "/path/to/command arguments"`
|
|
* with WeeChat > = 0.3.x: use script 'launcher.pl' (available on scripts page),
|
|
and then setup a system command (to play sound, display message, ..) with
|
|
this command: +
|
|
`/set plugins.var.perl.launcher.signal.weechat_highlight "/path/to/command arguments"`
|
|
|
|
Many other scripts exist for notification, please look at plugins/scripts page:
|
|
http://www.weechat.org/scripts
|
|
|
|
|
|
[[plugins_scripts]]
|
|
Plugins / scripts
|
|
-----------------
|
|
|
|
|
|
[[openbsd_plugins]]
|
|
I'm using OpenBSD and WeeChat does not load any plugins, what's wrong?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Under OpenBSD, plugin filenames end with ".so.0.0" (".so" for Linux).
|
|
|
|
You must set that up:
|
|
|
|
* with WeeChat < = 0.2.6: +
|
|
`/set plugins_extension = ".so.0.0"`
|
|
* with WeeChat > = 0.3.x: +
|
|
`/set weechat.plugin.extension ".so.0.0"`
|
|
|
|
Then: `/plugin autoload`.
|
|
|
|
|
|
[[load_scripts]]
|
|
How can I load Perl/Python/Ruby/Lua/Tcl scripts? Are scripts compatible with other IRC clients?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
You can use the commands `/perl`, `/python`, `/ruby`, `/lua` and `/tcl` to load
|
|
scripts (default path for scripts is '~/.weechat/<language>/').
|
|
|
|
Scripts are not compatible with other IRC clients.
|
|
|
|
Notes:
|
|
|
|
* scripts in '~/.weechat/<language>/autoload/' are automatically loaded when
|
|
WeeChat is starting up.
|
|
* a 'tcl' plugin is available with version > = 0.3.0.
|
|
|
|
|
|
[[settings]]
|
|
Settings
|
|
--------
|
|
|
|
|
|
[[memory_usage]]
|
|
How can I tweak WeeChat to consume less memory?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
You can try following tips to consume less memory:
|
|
|
|
* use the latest stable version (it is supposed to have less memory leaks than
|
|
older versions)
|
|
* do not load some plugins if you don't use them, for example: aspell, fifo,
|
|
logger, perl, python, ruby, lua, tcl, xfer (used for DCC)
|
|
* load only scripts that you really need
|
|
* reduce value of option 'weechat.history.max_lines' (number of lines saved in
|
|
memory for each buffer)
|
|
* reduce value of option 'weechat.history.max_commands' (number of user commands
|
|
saved in memory)
|
|
|
|
|
|
[[development]]
|
|
Development
|
|
-----------
|
|
|
|
|
|
[[bug_task_patch]]
|
|
How should I report bugs, ask for new features or send patches?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
There are 3 ways:
|
|
|
|
. you can join us on IRC: 'irc.freenode.net', channel '#weechat'
|
|
. you can use the savannah website:
|
|
* report a bug: https://savannah.nongnu.org/bugs/?group=weechat
|
|
* request a new feature: https://savannah.nongnu.org/task/?group=weechat
|
|
* send a patch: https://savannah.nongnu.org/patch/?group=weechat
|
|
. you can mail developers, look at support page for developer's mails:
|
|
http://www.weechat.org/about
|
|
(you can subscribe and send to "support" mailing list)
|
|
|
|
|
|
[[supported_os]]
|
|
What is the list of supported platforms for WeeChat? Will it be ported to other operating systems?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The full list is on this page: http://www.weechat.org/download
|
|
|
|
We do our best to run on as many platforms as possible. Help is welcome for
|
|
some OS' we don't have, to test WeeChat.
|
|
|
|
|
|
[[help_developers]]
|
|
I want to help WeeChat developers. What can I do?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
There's many tasks to do (testing, code, documentation, ...)
|
|
|
|
Please contact us via IRC or mail, look at support page:
|
|
http://www.weechat.org/about
|
|
|
|
|
|
[[donate]]
|
|
Can I give money or other things to WeeChat developers?
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
You can give us money to help development.
|
|
Details on http://www.weechat.org/donate
|