842 lines
25 KiB
Plaintext
842 lines
25 KiB
Plaintext
\input texinfo @c -*-texinfo-*-
|
|
@c %**start of header
|
|
@setfilename weechat_doc_en.info
|
|
@settitle WeeChat - fast, light and extensible IRC client
|
|
@c %**end of header
|
|
|
|
@c WeeChat documentation (english version)
|
|
@c
|
|
@c Copyright (c) 2004 by FlashCode <flashcode@flashtux.org>
|
|
@c
|
|
@c This manual is free software; you can redistribute it and/or modify
|
|
@c it under the terms of the GNU General Public License as published by
|
|
@c the Free Software Foundation; either version 2 of the License, or
|
|
@c (at your option) any later version.
|
|
@c
|
|
@c This manual is distributed in the hope that it will be useful,
|
|
@c but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
@c MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
@c GNU General Public License for more details.
|
|
@c
|
|
@c You should have received a copy of the GNU General Public License
|
|
@c along with this program; if not, write to the Free Software
|
|
@c Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
@c pdf : texi2pdf weechat_doc_en.texi
|
|
@c html: makeinfo --html --no-split --number-sections weechat_doc_en.texi
|
|
|
|
@c tex
|
|
@c \overfullrule=0pt
|
|
@c end tex
|
|
|
|
@documentlanguage en
|
|
|
|
@titlepage
|
|
|
|
@title WeeChat - User guide
|
|
@subtitle Fast, light and extensible IRC client
|
|
@subtitle Documentation for WeeChat v0.0.6 - June, 12 2004
|
|
|
|
@image{weechat_image}
|
|
|
|
@author FlashCode <@email{flashcode@@flashtux.org, flashcode AT flashtux.org}>
|
|
|
|
@page
|
|
|
|
This manual documents WeeChat IRC client, it is part of WeeChat.@*
|
|
@*
|
|
Latest version of this document can be found on this page:@*
|
|
@uref{http://weechat.flashtux.org/doc.php?lang=en}@*
|
|
@*
|
|
Copyright @copyright{} 2004 FlashCode
|
|
<@email{flashcode@@flashtux.org, flashcode AT flashtux.org}>@*
|
|
@*
|
|
This document may be used under the terms the GNU General Public License
|
|
version 2 or higher.
|
|
|
|
@end titlepage
|
|
|
|
@everyheading @thischapter @| @|
|
|
@everyfooting @thistitle @| @| Page @thispage
|
|
|
|
@contents
|
|
|
|
@node Top, Introduction, (dir), (dir)
|
|
@menu
|
|
* Introduction:: What is WeeChat ?
|
|
* Installation:: WeeChat installation
|
|
* Usage:: WeeChat usage
|
|
* Extensions:: WeeChat extensions
|
|
* Authors / Support:: Contact authors and get support
|
|
@end menu
|
|
|
|
|
|
@c ******************************* Introduction *******************************
|
|
|
|
@node Introduction, Installation, Top, Top
|
|
@chapter Introduction
|
|
|
|
@menu
|
|
* Description::
|
|
* Pre-requisites::
|
|
@end menu
|
|
|
|
@node Description, Pre-requisites, Introduction, Introduction
|
|
@section Description
|
|
|
|
WeeChat (Wee Enhanced Environment for Chat) is a free IRC client, fast and light,
|
|
designed for many operating systems.@*
|
|
@*
|
|
Main features are:
|
|
@itemize @minus
|
|
@item
|
|
multi-servers connection
|
|
@item
|
|
many GUI (Graphical User Interface): Curses, Gtk and Qt
|
|
@item
|
|
small, fast and light
|
|
@item
|
|
customizable and extensible with scripts
|
|
@item
|
|
compliant with RFCs 1459, 2810, 2811, 2812, and 2813
|
|
@item
|
|
multi-platform (Gnu/Linux, *BSD, Windows and other)
|
|
@item
|
|
100% GPL, free software
|
|
@end itemize
|
|
|
|
@*
|
|
WeeChat homepage is here:@*
|
|
@uref{http://weechat.flashtux.org}@*
|
|
|
|
@node Pre-requisites, , Description, Introduction
|
|
@section Pre-requisites
|
|
|
|
In order to install WeeChat, you @b{need}:@*
|
|
|
|
@itemize @bullet
|
|
@item
|
|
A running Gnu/Linux system (with compiler tools for source package)
|
|
@item
|
|
"root" privileges (to install WeeChat)
|
|
@item
|
|
According to GUI, one of the following libraries:
|
|
@itemize @minus
|
|
@item
|
|
Curses: ncurses library,
|
|
@item
|
|
Gtk: *** GUI not developed ***,
|
|
@item
|
|
Qt: *** GUI not developed ***,
|
|
@end itemize
|
|
@end itemize
|
|
|
|
|
|
@c ******************************* Installation *******************************
|
|
|
|
@node Installation, Usage, Introduction, Top
|
|
@chapter Installation
|
|
|
|
@menu
|
|
* Binary package::
|
|
* Source package::
|
|
* CVS sources::
|
|
@end menu
|
|
|
|
@node Binary package, Source package, Installation, Installation
|
|
@section Binary package
|
|
|
|
Binary packages are available for these distributions:
|
|
@itemize @bullet
|
|
@item
|
|
Debian (or any Debian compatible distribution)@*
|
|
To install: @kbd{dpkg -i /path/weechat_x.y.z-1_i386.deb}
|
|
@item
|
|
Mandrake/Redhat (or any RPM compatible distribution)@*
|
|
To install: @kbd{rpm -i /path/weechat-x.y.z-1.i386.rpm}
|
|
@item
|
|
Gentoo@*
|
|
To install: @kbd{emerge weechat}
|
|
@item
|
|
*BSD (not available!)
|
|
@item
|
|
Slackware (not available!)
|
|
@item
|
|
Windows (not available!)
|
|
@end itemize
|
|
|
|
where x.y.z is the version (for example 0.0.1)
|
|
@*
|
|
|
|
@node Source package, CVS sources, Binary package, Installation
|
|
@section Source package
|
|
|
|
All you have to do is to run in a console or a terminal:@*
|
|
@kbd{./configure}@*
|
|
@kbd{make}@*
|
|
Nota: to build only some interfaces, you can give parameters
|
|
to ./configure, type @kbd{./configure --help} for help about options.@*
|
|
|
|
Then get root privileges and install WeeChat:@*
|
|
@kbd{su}@*
|
|
(enter root password)@*
|
|
@kbd{make install}@*
|
|
|
|
@node CVS sources, , Source package, Installation
|
|
@section CVS sources
|
|
|
|
Warning: CVS sources are for advanced users: it may not compile or not be stable.
|
|
You're warned!@*
|
|
|
|
To get CVS sources, issue these commands:@*
|
|
@kbd{cvs -d:pserver:anoncvs@@subversions.gnu.org:/cvsroot/weechat login}@*
|
|
@kbd{cvs -z3 -d:pserver:anoncvs@@subversions.gnu.org:/cvsroot/weechat co weechat}@*
|
|
(when prompted for a password, just press Enter key)@*
|
|
|
|
Execute this script:@*
|
|
@kbd{./autogen.sh}@*
|
|
|
|
Then follow instructions for source package - @xref{Source package}.
|
|
|
|
|
|
@c ********************************** Usage ***********************************
|
|
|
|
@node Usage, Extensions, Installation, Top
|
|
@chapter Usage
|
|
|
|
@menu
|
|
* Run WeeChat::
|
|
* Config file::
|
|
* Key bindings::
|
|
* WeeChat commands::
|
|
@end menu
|
|
|
|
@node Run WeeChat, Config file, Usage, Usage
|
|
@section Run WeeChat
|
|
|
|
@subsection Command line parameters
|
|
|
|
@table @code
|
|
@item -c, --config
|
|
Display config file help (list of options)@*
|
|
@item -h, --help
|
|
Display help screen@*
|
|
@item -l, --license
|
|
Display WeeChat license@*
|
|
@item -v, --version
|
|
Display WeeChat version@*
|
|
@end table
|
|
|
|
@subsection Run WeeChat
|
|
|
|
Just issue this command to run WeeChat:@*
|
|
@kbd{weechat-curses} (for Curses front-end)@*
|
|
or @kbd{weechat-gtk} (for Gtk front-end)@*
|
|
or @kbd{weechat-qt} (for Qt front-end)@*
|
|
|
|
When you run WeeChat for the first time, a default configuration file is
|
|
created, with default options.@*
|
|
The default configuration file is: ~/.weechat/weechat.rc@*
|
|
|
|
You can edit this file at your convenience to configure WeeChat, or you can
|
|
set parameters with @kbd{/set} command in WeeChat - @xref{WeeChat commands}.
|
|
|
|
@node Config file, Key bindings, Run WeeChat, Usage
|
|
@section Config file
|
|
|
|
Here is a list of all options for config file:@*
|
|
|
|
@table @kbd
|
|
@item look_set_title
|
|
Set title for window (terminal for Curses GUI) with name & version@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item look_startup_logo
|
|
Display WeeChat logo at startup@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item look_startup_version
|
|
Display WeeChat version at startup@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item look_weechat_slogan
|
|
WeeChat slogan (if empty, slogan is not used)@*
|
|
Type: string (any string), default value: 'the geekest IRC client!'@*
|
|
@item look_color_nicks
|
|
Display nick names with different colors@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item look_color_actions
|
|
Display actions with different colors@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item look_remove_colors_from_msgs
|
|
Remove colors from incoming messages@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item look_nicklist
|
|
Display nicklist window (for channel windows)@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item look_nicklist_position
|
|
Nicklist position (top, left, right (default), bottom)@*
|
|
Type: string (values: 'left', 'right', 'top', 'bottom'), default value: 'right'@*
|
|
@item look_nicklist_min_size
|
|
Min size for nicklist (width or height, depending on look_nicklist_position (0 = no min size))@*
|
|
Type: integer (values: between 0 and 100), default value: 0@*
|
|
@item look_nicklist_max_size
|
|
Max size for nicklist (width or height, depending on look_nicklist_position (0 = no max size; if min == max and > 0, then size is fixed))@*
|
|
Type: integer (values: between 0 and 100), default value: 0@*
|
|
@item look_no_nickname
|
|
Text to display instead of nick when not connected@*
|
|
Type: string (any string), default value: '-cmd-'@*
|
|
@item look_nickmode
|
|
Display nick mode ((half)op/voice) before each nick@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item look_nickmode_empty
|
|
Display space if nick mode is not (half)op/voice@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'off'@*
|
|
@item look_nick_completor
|
|
The string inserted after nick completion@*
|
|
Type: string (any string), default value: ':'@*
|
|
@item look_infobar
|
|
Enable info bar@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item look_infobar_timestamp
|
|
Timestamp for time in infobar@*
|
|
Type: string (any string), default value: '%B, %A %d %G - %H:%M'@*
|
|
@item look_infobar_delay_highlight
|
|
Delay (in seconds) for highlight messages in infobar (0 = disable highlight notifications in infobar)@*
|
|
Type: integer (values: between 0 and 2147483647), default value: 7@*
|
|
@item col_title
|
|
Color for title bar@*
|
|
Type: color (Curses or Gtk color), default value: 'gray'@*
|
|
@item col_title_bg
|
|
Background for title bar@*
|
|
Type: color (Curses or Gtk color), default value: 'blue'@*
|
|
@item col_chat
|
|
Color for chat text@*
|
|
Type: color (Curses or Gtk color), default value: 'gray'@*
|
|
@item col_chat_time
|
|
Color for time in chat window@*
|
|
Type: color (Curses or Gtk color), default value: 'gray'@*
|
|
@item col_chat_time_sep
|
|
Color for time separator (chat window)@*
|
|
Type: color (Curses or Gtk color), default value: 'brown'@*
|
|
@item col_chat_prefix1
|
|
Color for 1st and 3rd char of prefix@*
|
|
Type: color (Curses or Gtk color), default value: 'lightcyan'@*
|
|
@item col_chat_prefix2
|
|
Color for middle char of prefix@*
|
|
Type: color (Curses or Gtk color), default value: 'white'@*
|
|
@item col_chat_nick
|
|
Color for nicks in actions (chat window)@*
|
|
Type: color (Curses or Gtk color), default value: 'lightcyan'@*
|
|
@item col_chat_host
|
|
Color for hostnames (chat window)@*
|
|
Type: color (Curses or Gtk color), default value: 'cyan'@*
|
|
@item col_chat_channel
|
|
Color for channel names in actions (chat window)@*
|
|
Type: color (Curses or Gtk color), default value: 'white'@*
|
|
@item col_chat_dark
|
|
Color for dark separators (chat window)@*
|
|
Type: color (Curses or Gtk color), default value: 'green'@*
|
|
@item col_chat_highlight
|
|
Color for highlighted nick (chat window)@*
|
|
Type: color (Curses or Gtk color), default value: 'yellow'@*
|
|
@item col_chat_bg
|
|
Background for chat window@*
|
|
Type: color (Curses or Gtk color), default value: 'default'@*
|
|
@item col_status
|
|
Color for status bar@*
|
|
Type: color (Curses or Gtk color), default value: 'gray'@*
|
|
@item col_status_active
|
|
Color for active window (status bar)@*
|
|
Type: color (Curses or Gtk color), default value: 'yellow'@*
|
|
@item col_status_data_msg
|
|
Color for window with new messages (status bar)@*
|
|
Type: color (Curses or Gtk color), default value: 'lightred'@*
|
|
@item col_status_data_other
|
|
Color for window with new data (not messages) (status bar)@*
|
|
Type: color (Curses or Gtk color), default value: 'lightmagenta'@*
|
|
@item col_status_more
|
|
Color for window with new data (status bar)@*
|
|
Type: color (Curses or Gtk color), default value: 'white'@*
|
|
@item col_status_bg
|
|
Background for status window@*
|
|
Type: color (Curses or Gtk color), default value: 'blue'@*
|
|
@item col_infobar
|
|
Color for info bar text@*
|
|
Type: color (Curses or Gtk color), default value: 'black'@*
|
|
@item col_infobar_highlight
|
|
Color for info bar highlight notification@*
|
|
Type: color (Curses or Gtk color), default value: 'white'@*
|
|
@item col_infobar_bg
|
|
Background for info bar window@*
|
|
Type: color (Curses or Gtk color), default value: 'cyan'@*
|
|
@item col_input
|
|
Color for input text@*
|
|
Type: color (Curses or Gtk color), default value: 'gray'@*
|
|
@item col_input_channel
|
|
Color for input text (channel name)@*
|
|
Type: color (Curses or Gtk color), default value: 'white'@*
|
|
@item col_input_nick
|
|
Color for input text (nick name)@*
|
|
Type: color (Curses or Gtk color), default value: 'lightgreen'@*
|
|
@item col_input_bg
|
|
Background for input window@*
|
|
Type: color (Curses or Gtk color), default value: 'default'@*
|
|
@item col_nick
|
|
Color for nicknames@*
|
|
Type: color (Curses or Gtk color), default value: 'gray'@*
|
|
@item col_nick_op
|
|
Color for operator symbol@*
|
|
Type: color (Curses or Gtk color), default value: 'lightgreen'@*
|
|
@item col_nick_halfop
|
|
Color for half-operator symbol@*
|
|
Type: color (Curses or Gtk color), default value: 'lightmagenta'@*
|
|
@item col_nick_voice
|
|
Color for voice symbol@*
|
|
Type: color (Curses or Gtk color), default value: 'yellow'@*
|
|
@item col_nick_sep
|
|
Color for nick separator@*
|
|
Type: color (Curses or Gtk color), default value: 'blue'@*
|
|
@item col_nick_self
|
|
Color for local nick@*
|
|
Type: color (Curses or Gtk color), default value: 'white'@*
|
|
@item col_nick_private
|
|
Color for other nick in private window@*
|
|
Type: color (Curses or Gtk color), default value: 'gray'@*
|
|
@item col_nick_bg
|
|
Background for nicknames@*
|
|
Type: color (Curses or Gtk color), default value: 'default'@*
|
|
@item history_max_lines
|
|
Maximum number of lines in history for one server/channel/private window (0 = unlimited)@*
|
|
Type: integer (values: between 0 and 2147483647), default value: 4096@*
|
|
@item history_max_commands
|
|
Maximum number of user commands in history (0 = unlimited)@*
|
|
Type: integer (values: between 0 and 2147483647), default value: 100@*
|
|
@item log_auto_channels
|
|
Automatically log channel chats@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item log_auto_private
|
|
Automatically log private chats@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item log_path
|
|
Path for WeeChat log files@*
|
|
Type: string (any string), default value: '~/.weechat/logs/'@*
|
|
@item log_name
|
|
Name for log files (%S == irc server name, %N == channel name (or nickname if private chat)@*
|
|
Type: string (any string), default value: '%S,%N.weechatlog'@*
|
|
@item log_timestamp
|
|
Timestamp for log (see man strftime for date/time specifiers)@*
|
|
Type: string (any string), default value: '~'@*
|
|
@item log_start_string
|
|
Text written when starting new log file (see man strftime for date/time specifiers)@*
|
|
Type: string (any string), default value: '--- Log started %a %b %d %Y %H:%M:%s'@*
|
|
@item log_end_string
|
|
Text written when ending log file (see man strftime for date/time specifiers)@*
|
|
Type: string (any string), default value: '--- Log ended %a %b %d %Y %H:%M:%s'@*
|
|
@item dcc_auto_accept_files
|
|
Automatically accept incoming dcc files@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item dcc_auto_accept_max_size
|
|
Maximum size for incoming file when automatically accepted@*
|
|
Type: integer (values: between 0 and 2147483647), default value: 0@*
|
|
@item dcc_auto_accept_chats
|
|
Automatically accept dcc chats (use carefully!)@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item dcc_timeout
|
|
Timeout for dcc request (in seconds)@*
|
|
Type: integer (values: between 1 and 2147483647), default value: 300@*
|
|
@item dcc_download_path
|
|
Path for writing incoming files with dcc (default: user home)@*
|
|
Type: string (any string), default value: '~'@*
|
|
@item dcc_upload_path
|
|
Path for reading files when sending thru dcc (when no path is specified)@*
|
|
Type: string (any string), default value: '~'@*
|
|
@item dcc_auto_rename
|
|
Rename incoming files if already exists (add '.1', '.2', ...)@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item dcc_auto_resume
|
|
Automatically resume dcc transfer if connection with remote host is loosed@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item proxy_use
|
|
Use a proxy server to connect to irc server@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'off'@*
|
|
@item proxy_address
|
|
Proxy server address (IP or hostname)@*
|
|
Type: string (any string), default value: ''@*
|
|
@item proxy_port
|
|
Port for connecting to proxy server@*
|
|
Type: integer (values: between 0 and 65535), default value: 1080@*
|
|
@item proxy_password
|
|
Password for proxy server@*
|
|
Type: string (any string), default value: ''@*
|
|
@item server_name
|
|
Name associated to IRC server (for display only)@*
|
|
Type: string (any string), default value: ''@*
|
|
@item server_autoconnect
|
|
Automatically connect to server when WeeChat is starting@*
|
|
Type: boolean (values: 'on' or 'off'), default value: 'on'@*
|
|
@item server_address
|
|
IP address or hostname of IRC server@*
|
|
Type: string (any string), default value: ''@*
|
|
@item server_port
|
|
Port for connecting to server@*
|
|
Type: integer (values: between 0 and 65535), default value: 6667@*
|
|
@item server_password
|
|
Password for IRC server@*
|
|
Type: string (any string), default value: ''@*
|
|
@item server_nick1
|
|
Nickname to use on IRC server@*
|
|
Type: string (any string), default value: ''@*
|
|
@item server_nick2
|
|
Alternate nickname to use on IRC server (if nickname is already used)@*
|
|
Type: string (any string), default value: ''@*
|
|
@item server_nick3
|
|
2nd alternate nickname to use on IRC server (if alternate nickname is already used)@*
|
|
Type: string (any string), default value: ''@*
|
|
@item server_username
|
|
User name to use on IRC server@*
|
|
Type: string (any string), default value: ''@*
|
|
@item server_realname
|
|
Real name to use on IRC server@*
|
|
Type: string (any string), default value: ''@*
|
|
@item server_command
|
|
First command to run when connected to server@*
|
|
Type: string (any string), default value: ''@*
|
|
@item server_autojoin
|
|
Comma separated list of channels to join when connected to server@*
|
|
Type: string (any string), default value: ''@*
|
|
@end table
|
|
|
|
Colors for Curses GUI are:@*
|
|
@itemize @minus
|
|
@item
|
|
@kbd{default}: default color (transparent for background)
|
|
@item
|
|
@kbd{black}: black
|
|
@item
|
|
@kbd{red}: dark red
|
|
@item
|
|
@kbd{lightred}: light red
|
|
@item
|
|
@kbd{green}: dark green
|
|
@item
|
|
@kbd{lightgreen}: light green
|
|
@item
|
|
@kbd{brown}: brown
|
|
@item
|
|
@kbd{yellow}: yellow
|
|
@item
|
|
@kbd{blue}: dark blue
|
|
@item
|
|
@kbd{lightblue}: light blue
|
|
@item
|
|
@kbd{magenta}: dark magenta
|
|
@item
|
|
@kbd{lightmagenta}: light magenta
|
|
@item
|
|
@kbd{cyan}: dark cyan
|
|
@item
|
|
@kbd{lightcyan}: light cyan
|
|
@item
|
|
@kbd{gray}: gray
|
|
@item
|
|
@kbd{white}: white
|
|
@end itemize
|
|
|
|
@node Key bindings, WeeChat commands, Config file, Usage
|
|
@section Key bindings
|
|
|
|
@table @kbd
|
|
@item Left arrow / Right arrow
|
|
Go to previous / next char in command line@*
|
|
@*
|
|
@item Ctrl + left arrow / Ctrl + right arrow
|
|
Go to previous / next word in command line@*
|
|
@*
|
|
@item Home / End
|
|
Go to the beginning / end of command line@*
|
|
@*
|
|
@item Backspace / Delete
|
|
Erase previous / next char of command line@*
|
|
@*
|
|
@item Ctrl + Backspace
|
|
Erase previous word of command line@*
|
|
@*
|
|
@item Tab
|
|
Complete command or nick (@kbd{Tab} again: find next completion)@*
|
|
@*
|
|
@item Any char
|
|
Insert char to cursor position in the command line@*
|
|
@*
|
|
@item Enter
|
|
Execute command or send message@*
|
|
@*
|
|
@item Up arrow / Down arrow
|
|
Call again last commands/messages@*
|
|
@*
|
|
@item PageUp / PageDown
|
|
Show window history@*
|
|
@*
|
|
@item F6 / F7
|
|
Switch to previous / next window@*
|
|
@*
|
|
@item Alt + left arrow / Alt + right arrow
|
|
Same as F6 / F7@*
|
|
@*
|
|
@item F10
|
|
Remove last infobar message@*
|
|
@*
|
|
@end table
|
|
|
|
@node WeeChat commands, , Key bindings, Usage
|
|
@section WeeChat commands
|
|
|
|
NOT WRITTEN!
|
|
|
|
|
|
@c ******************************* Extensions *********************************
|
|
|
|
@node Extensions, Authors / Support, Usage, Top
|
|
@chapter Extensions
|
|
|
|
@menu
|
|
* Perl scripts::
|
|
* Python scripts::
|
|
* Ruby scripts::
|
|
@end menu
|
|
|
|
@node Perl scripts, Python scripts, Extensions, Extensions
|
|
@section Perl scripts
|
|
|
|
@subsection Load/unload Perl scripts
|
|
|
|
Perl scripts are loaded and unloaded with @command{/perl} command.
|
|
(type @kbd{/help perl} within WeeChat to get help about command).@*
|
|
|
|
@emph{Examples:}@*
|
|
@itemize @bullet
|
|
@item
|
|
Load a Perl script: @kbd{/perl load /tmp/sample.pl}@*
|
|
@item
|
|
Unload all Perl scripts: @kbd{/perl unload}@*
|
|
@item
|
|
List all Perl scripts: @kbd{/perl}@*
|
|
@end itemize
|
|
|
|
@subsection WeeChat / Perl API
|
|
|
|
@itemize @bullet
|
|
@item
|
|
@command{IRC::register ( name, version, shutdown_function, description );}@*
|
|
@*
|
|
This is first function to call in Perl script.@*
|
|
All Perl scripts for WeeChat should call this function.@*
|
|
|
|
@emph{Arguments:}
|
|
@itemize @minus
|
|
@item @option{name}: unique name to identify script (each script must have
|
|
unique name)
|
|
@item @option{version}: script's version
|
|
@item @option{shutdown_function}: Perl function called when script is
|
|
unloaded (optional parameter, empty string means nothing is called at the end)
|
|
@item @option{description}: short description of script.
|
|
@end itemize
|
|
@*
|
|
@emph{Example:}@*
|
|
@code{IRC::register ("sample", "1.0", "sample_end", "Sample script!");}@*
|
|
@*
|
|
|
|
@item
|
|
@command{IRC::print ( message );}@*
|
|
@*
|
|
Print message in current window (channel or server).@*
|
|
|
|
@emph{Arguments:}
|
|
@itemize @minus
|
|
@item @option{message}: message to display
|
|
@end itemize
|
|
@*
|
|
@emph{Example:}@*
|
|
@code{IRC::print ("message");}@*
|
|
@*
|
|
|
|
@item
|
|
@command{IRC::print_with_channel ( channel, [server,] message );}@*
|
|
@*
|
|
Print message in a channel.@*
|
|
|
|
@emph{Arguments:}
|
|
@itemize @minus
|
|
@item @option{channel}: name of channel
|
|
@item @option{server}: internal name of server
|
|
@item @option{message}: message to display
|
|
@end itemize
|
|
@*
|
|
@emph{Examples:}@*
|
|
@code{IRC::print_with_channel ("#weechat", "freenode", "message");}@*
|
|
@code{IRC::print_with_channel ("#weechat", "message");}@*
|
|
@*
|
|
|
|
@item
|
|
@command{IRC::print_infobar ( delay, message );}@*
|
|
@*
|
|
Print message in infobar.@*
|
|
|
|
@emph{Arguments:}
|
|
@itemize @minus
|
|
@item @option{delay}: after this delay (in seconds), message will be erased
|
|
(if 0, message will not be erased).
|
|
@item @option{message}: message to display
|
|
@end itemize
|
|
@*
|
|
@emph{Example:}@*
|
|
@code{IRC::print_infobar (5, "message");}@*
|
|
@*
|
|
|
|
@item
|
|
@command{IRC::add_message_handler ( name, function );}@*
|
|
@*
|
|
Attach a Perl function to an IRC message.@*
|
|
Function will be called each time IRC message will be received.@*
|
|
|
|
@emph{Arguments:}
|
|
@itemize @minus
|
|
@item @option{name}: name of IRC message@*
|
|
To know list of IRC messages, please refer to RFC 1459 and/or 2812:@*
|
|
RFC 1459: @uref{ftp://ftp.rfc-editor.org/in-notes/rfc1459.txt}@*
|
|
RFC 2812: @uref{ftp://ftp.rfc-editor.org/in-notes/rfc2812.txt}
|
|
@item @option{function}: Perl function called when message is received
|
|
@end itemize
|
|
@*
|
|
@emph{Example:}@*
|
|
@code{IRC::add_message_handler ("privmsg", my_function);}@*
|
|
@code{sub my_function}@*
|
|
@code{@{ }@*
|
|
@code{@ @ @ @ ($null, $channel, $message) = split ":",@@_[0],3;}@*
|
|
@code{@ @ @ @ ($hostmask, $null, $channel) = split " ", $channel;}@*
|
|
@code{@ @ @ @ IRC::print ("host=$hostmask, chan=$channel, msg=$message\n");}@*
|
|
@code{@} }@*
|
|
@*
|
|
|
|
@item
|
|
@command{IRC::add_command_handler ( name, function );}@*
|
|
@*
|
|
Create new WeeChat command, linked with Perl function.@*
|
|
Function will be called when user will launch command with @kbd{/name}.@*
|
|
|
|
@emph{Arguments:}
|
|
@itemize @minus
|
|
@item @option{name}: name of new command@*
|
|
This name may be existing command, so that the command is overrided by
|
|
Perl function. Be careful when overriding WeeChat commands, they'll not be
|
|
available until your Perl script will be unloaded.
|
|
@item @option{function}: Perl function linked with command
|
|
@end itemize
|
|
@*
|
|
@emph{Example:}@*
|
|
@code{IRC::add_command_handler ("command", my_command);}@*
|
|
@code{sub my_command}@*
|
|
@code{@{ }@*
|
|
@code{@ @ @ @ IRC::print("Arguments: ".@@_[0]);}@*
|
|
@code{@ @ @ @ return 0;}@*
|
|
@code{@} }@*
|
|
@*
|
|
|
|
@end itemize
|
|
|
|
@node Python scripts, Ruby scripts, Perl scripts, Extensions
|
|
@section Python scripts
|
|
|
|
Not developed!
|
|
|
|
@node Ruby scripts, , Python scripts, Extensions
|
|
@section Ruby scripts
|
|
|
|
Not developed!
|
|
|
|
|
|
@c **************************** Authors / Support *****************************
|
|
|
|
@node Authors / Support, , Extensions, Top
|
|
@chapter Authors / Support
|
|
|
|
@ifhtml
|
|
@menu
|
|
* Authors::
|
|
* Get support::
|
|
* Copyright::
|
|
@end menu
|
|
@end ifhtml
|
|
@ifnothtml
|
|
@menu
|
|
* Authors::
|
|
* Get support::
|
|
@end menu
|
|
@end ifnothtml
|
|
|
|
@node Authors, Get support, Authors / Support, Authors / Support
|
|
@section Authors
|
|
|
|
WeeChat is developed by:@*
|
|
|
|
@itemize @bullet
|
|
@item
|
|
FlashCode
|
|
<@email{flashcode@@flashtux.org, flashcode AT flashtux.org}>
|
|
@item
|
|
Bounga
|
|
<@email{bounga@@altern.org, bounga AT altern.org}>
|
|
@item
|
|
Xahlexx
|
|
<@email{xahlexx@@tuxfamily.org, xahlexx AT tuxfamily.org}>
|
|
@item
|
|
Crevetor
|
|
<@email{crevetor@@caramail.com, crevetor AT caramail.com}>
|
|
|
|
@end itemize
|
|
|
|
@ifhtml
|
|
@node Get support, Copyright, Authors, Authors / Support
|
|
@end ifhtml
|
|
@ifnothtml
|
|
@node Get support, , Authors, Authors / Support
|
|
@end ifnothtml
|
|
@section Get support
|
|
|
|
Before asking for support, be sure you've read documentation and FAQ provided
|
|
with WeeChat.@*
|
|
(documentation is this document, if you don't read all lines until this sentence,
|
|
you can start again!)@*
|
|
|
|
@itemize @bullet
|
|
@item
|
|
Support with IRC:@*
|
|
- server: @b{irc.freenode.net}@*
|
|
- channel: @b{#weechat}@*@*
|
|
@item
|
|
WeeChat forum: @uref{http://forums.flashtux.org}@*@*
|
|
@item
|
|
Support with mailing list:@*
|
|
- to subscribe/unsubscribe:@*@uref{http://mail.nongnu.org/mailman/listinfo/weechat-support}.@*
|
|
- to send mail to all mailing list subscribers, send your mail to@*@email{weechat-support@@nongnu.org}.@*
|
|
|
|
Mailing archives are available here:@*
|
|
@uref{http://mail.nongnu.org/archive/html/weechat-support}@*@*
|
|
@item
|
|
Look for WeeChat support page for detail:@*
|
|
@uref{http://weechat.flashtux.org/support.php?lang=en}
|
|
|
|
@end itemize
|
|
|
|
@ifhtml
|
|
@node Copyright, , Get support, Authors / Support
|
|
@section Copyright
|
|
|
|
This manual documents WeeChat IRC client, it is part of WeeChat.@*
|
|
|
|
Copyright @copyright{} 2004 FlashCode
|
|
<@email{flashcode@@flashtux.org, flashcode AT flashtux.org}>@*
|
|
@*
|
|
This document may be used under the terms the GNU General Public License
|
|
version 2 or higher.
|
|
@end ifhtml
|
|
|
|
@bye
|