mirror of
https://github.com/weechat/weechat.git
synced 2026-06-14 15:14:47 +02:00
Compare commits
203 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 18339e9608 | |||
| 5bd729d6a0 | |||
| 26041f4a1c | |||
| 9eaea6bc19 | |||
| fed65826b5 | |||
| 4456a6047f | |||
| 1dba2c8c92 | |||
| 42b9038919 | |||
| aeee1856eb | |||
| acca17d142 | |||
| ea3588a8d7 | |||
| 339e42df76 | |||
| ea5fa86793 | |||
| ca76653a2c | |||
| 1df46609ce | |||
| b1fa81468e | |||
| 9c0eb33213 | |||
| 030ac33005 | |||
| c33f0e60ea | |||
| 31bfcf96c7 | |||
| 9394a78e39 | |||
| a6f37da576 | |||
| d52f051ec1 | |||
| 45c0cc7e7e | |||
| 3fc11807f9 | |||
| 2e82d65819 | |||
| fab6ac61ee | |||
| 9399c9f9cb | |||
| 9017a23013 | |||
| a6e819f790 | |||
| 2a37b44ae1 | |||
| eccb4703cf | |||
| 09939a1b4b | |||
| 19d74e18a5 | |||
| 96f49f39e0 | |||
| 187381f1d1 | |||
| 915d4801f6 | |||
| df0d408ce9 | |||
| 1c80407f0f | |||
| 848cce2c8a | |||
| 253ff07009 | |||
| 12afdb29c4 | |||
| 5ff1742c86 | |||
| 4981e7150a | |||
| 35944a4219 | |||
| b6bb001fc4 | |||
| 56526db5cf | |||
| 88853df080 | |||
| 485e884751 | |||
| 2bbc228381 | |||
| b9e65ec63d | |||
| 24135801b4 | |||
| 483b63f360 | |||
| ac27388543 | |||
| e59bbbb40a | |||
| 96e6ae3fc3 | |||
| b932f403a5 | |||
| 3e2943a0e0 | |||
| b491cc3479 | |||
| f1a946054e | |||
| 8cfabb4696 | |||
| a0f442a84e | |||
| 03d01f4234 | |||
| 2bad57ae28 | |||
| 918383424f | |||
| 855993d14d | |||
| a10b9038d5 | |||
| c1c1005b36 | |||
| da4438b995 | |||
| 1c5ef4d1e3 | |||
| 8f9f1f8e97 | |||
| b40ea94a49 | |||
| 7d65014efd | |||
| 032a5ddef5 | |||
| c0d050f7cc | |||
| 29fad11df5 | |||
| 6f84e00ee7 | |||
| 6b4aaef396 | |||
| 5755bd50ac | |||
| 7925b2d242 | |||
| 9d96090d7d | |||
| 2801b8437c | |||
| bc3fa9fd4c | |||
| 568d913c58 | |||
| 645d38d403 | |||
| 4fd23e12dc | |||
| feb51fbca4 | |||
| 7ef5a97a08 | |||
| ab9d1480f6 | |||
| 0a66ad0e0f | |||
| 5233ceed44 | |||
| 86b1ab20b5 | |||
| 7ec6092ba9 | |||
| 23a0c0d610 | |||
| 7ef2f312ff | |||
| 9dd45664fd | |||
| 8f4240dbf7 | |||
| bab29e028d | |||
| 58d423319c | |||
| 682f5addc0 | |||
| eb5e54602e | |||
| da50ac329a | |||
| 788df1089b | |||
| 401ddff564 | |||
| 16e62bdc60 | |||
| fa60269325 | |||
| 1db7ef859c | |||
| 6ad62e4021 | |||
| ca51a9780f | |||
| 3e47e9c3e3 | |||
| 4faa3c772b | |||
| d1950311cf | |||
| 92bc700349 | |||
| a852d3af4b | |||
| 0543b0ccc7 | |||
| 282f786c1a | |||
| 62aff3f1c6 | |||
| 873bcfc9f0 | |||
| eabf21098d | |||
| 5868fc3c6d | |||
| dfa43ea1a7 | |||
| 7cc735c7f9 | |||
| 3d3dc1593d | |||
| 27bf347e1c | |||
| 2fc187743c | |||
| 08b17c2f26 | |||
| 42972ce00a | |||
| 8c324c238d | |||
| 6e1e8e9ed8 | |||
| 94764208e4 | |||
| b523613e73 | |||
| 35157bc2f1 | |||
| cd5b8c8f9e | |||
| f4849bc625 | |||
| 555f1827e3 | |||
| cdf990fced | |||
| 090bd68e7c | |||
| 3cf7b4e696 | |||
| d2ec8d133d | |||
| 832a4c1466 | |||
| b1e840eb6c | |||
| 1ad5f123b5 | |||
| ce1b23311c | |||
| 341551f2f2 | |||
| 34272b7e4d | |||
| 922e67cabd | |||
| 8d25a75200 | |||
| 8cea059feb | |||
| f19000ac4f | |||
| be8831499d | |||
| 2e72679363 | |||
| 124634cf88 | |||
| 4b6bd6a923 | |||
| 94a0551c55 | |||
| 3799d2c2a5 | |||
| f6868c40af | |||
| 5b71c03c4f | |||
| 5bfb2929e6 | |||
| 7850668327 | |||
| daee18621e | |||
| 71d77a5890 | |||
| 74d148d056 | |||
| df1a6b0c3d | |||
| bd1b6c1794 | |||
| fa8ff80fc1 | |||
| a3658f4fc2 | |||
| 40401f88da | |||
| e6a99fb63a | |||
| 1d00db2d14 | |||
| 3d4c76cecc | |||
| 8109368f7c | |||
| 69b53c8f3d | |||
| fbc1c2a9b1 | |||
| 8862f19788 | |||
| 5aa82a85e3 | |||
| 94ddf61d20 | |||
| 8663d10063 | |||
| f33eaee78f | |||
| c4467469cc | |||
| 2d99d6e7ea | |||
| 930285e489 | |||
| e23aed51a1 | |||
| 2899770bbe | |||
| 2f176dc347 | |||
| c8920da899 | |||
| 8c042210a8 | |||
| 16a02cddaf | |||
| 10a3954908 | |||
| aad84612a9 | |||
| b868eaee2a | |||
| dfa0500b12 | |||
| fb9268c01d | |||
| fcd296d7f2 | |||
| 754cf874bc | |||
| ac19ec05be | |||
| 99bfdfd2ff | |||
| aa41942ac1 | |||
| f4d5ddd858 | |||
| 2e48becbfc | |||
| b4e0e17917 | |||
| c02d70b7ba | |||
| eb56a98fc8 | |||
| 309e8eadab |
+3
-1
@@ -28,8 +28,9 @@ ENDIF(PREFIX)
|
||||
|
||||
SET(VERSION_MAJOR "0")
|
||||
SET(VERSION_MINOR "3")
|
||||
SET(VERSION_PATCH "1")
|
||||
SET(VERSION_PATCH "2")
|
||||
SET(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
|
||||
SET(LICENSE "GPL3")
|
||||
SET(PKG_STRING "${PROJECT_NAME} ${VERSION}")
|
||||
STRING(REPLACE "\";\"" "\ " PKG_STRING ${PKG_STRING})
|
||||
|
||||
@@ -56,6 +57,7 @@ ENDIF(DEFINED INCLUDEDIR)
|
||||
OPTION(DISABLE_NCURSES "Disable Ncurses interface")
|
||||
OPTION(ENABLE_GTK "Enable GTK interface")
|
||||
OPTION(DISABLE_NLS "Disable Native Language Support")
|
||||
OPTION(DISABLE_GCRYPT "Disable libgcrypt support")
|
||||
OPTION(DISABLE_GNUTLS "Disable SSLv3/TLS connection support")
|
||||
OPTION(DISABLE_LARGEFILE "Disable Large File Support")
|
||||
OPTION(DISABLE_ALIAS "Disable Alias plugin")
|
||||
|
||||
@@ -1,9 +1,106 @@
|
||||
WeeChat ChangeLog
|
||||
=================
|
||||
FlashCode <flashcode@flashtux.org>
|
||||
v0.3.1, 2010-01-23
|
||||
v0.3.2, 2010-04-18
|
||||
|
||||
|
||||
Version 0.3.2 (2010-04-18)
|
||||
--------------------------
|
||||
|
||||
* core: add new options for command /key: listdefault, listdiff and reset
|
||||
* core: add new command /mute
|
||||
* core: add command line option "-s" (or "--no-script") to start WeeChat
|
||||
without loading any script
|
||||
* core: improve plugins autoload (option weechat.plugin.autoload): allow to
|
||||
use "*" as joker and "!" to prevent a plugin from being autoloaded
|
||||
(task #6361)
|
||||
* core: remove unneeded space after time on each line if option
|
||||
weechat.look.buffer_time_format is set to empty value (bug #28751)
|
||||
* core: add option "switch_active_buffer_previous" for command /input
|
||||
(task #10141)
|
||||
* core: add new option weechat.look.time_format to customize default format
|
||||
for date/time displayed (localized date by default), add function
|
||||
weechat_util_get_time_string in plugin API (patch #6914)
|
||||
* core: add new option weechat.look.command_chars, add functions
|
||||
string_is_command_char and string_input_for_buffer in plugin and script API
|
||||
* core: add new option weechat.look.read_marker_always_show
|
||||
* core: use arguments for infolist "nicklist" to return only one nick or group
|
||||
* core: fix bug with writing of configuration files when disk is full
|
||||
(bug #29331)
|
||||
* core: fix infinite loop with /layout apply and bug when applying layout,
|
||||
sometimes many /layout apply were needed (bug #26110)
|
||||
* gui: refresh screen when exiting WeeChat (to display messages printed after
|
||||
/quit)
|
||||
* gui: fix bug with global history, reset pointer to last entry after each user
|
||||
input (bug #28754)
|
||||
* gui: fix bug with bar background after text with background color (bug #28157)
|
||||
* gui: fix bug with cursor when position is last char of terminal
|
||||
* api: add "version_number" for function info_get to get WeeChat version as
|
||||
number
|
||||
* api: add "irc_is_nick" for function info_get to check if a string is a valid
|
||||
IRC nick name (patch #7133)
|
||||
* api: add functions "string_encode_base64" and "string_decode_base64", fix
|
||||
bug with base64 encoding
|
||||
* api: add functions "string_match", "string_has_highlight" and
|
||||
"string_mask_to_regex" in script plugin API
|
||||
* api: add missing infos in functions buffer_get_integer / buffer_get_string
|
||||
and in buffer infolist
|
||||
* api: add description of arguments for functions hook_info and hook_infolist
|
||||
* api: add signals "day_changed", "nicklist_group_added/removed",
|
||||
"nicklist_nick_added/removed"
|
||||
* api: fix function "color" in Lua script API
|
||||
* api: fix "inactivity" value when no key has been pressed since WeeChat started
|
||||
(bug #28930)
|
||||
* api: return absolute path for info_get of "weechat_dir" (bug #27936)
|
||||
* alias: add custom completion for aliases (task #9479)
|
||||
* scripts: allow script commands to reload only one script
|
||||
* scripts: fix bug with callbacks when loading a script already loaded
|
||||
* perl: fix crash when callbacks are called during script initialization
|
||||
(bug #29018)
|
||||
* perl: fix crash on /quit or unload of plugin under FreeBSD and Cygwin
|
||||
(bug #29467)
|
||||
* perl: fix bug with script filename when multiplicity is disabled (bug #29530)
|
||||
* irc: add SASL authentication, with PLAIN and DH-BLOWFISH mechanisms
|
||||
(task #8829)
|
||||
* irc: fix crash with SSL connection if option ssl_cert is set (bug #28752)
|
||||
* irc: fix bug with SSL connection (fails sometimes when ssl_verify is on)
|
||||
(bug #28741)
|
||||
* irc: add new option irc.look.part_closes_buffer to close buffer when /part
|
||||
is issued on channel (task #10295)
|
||||
* irc: fix bug with nicks on reconnection: try all nicks in list, even if nick
|
||||
used was not the first in list of nicks
|
||||
* irc: fix command /list: send channel and server name given as argument, and
|
||||
use separate option "-re" to allow a regex
|
||||
* irc: fix PART message received on Undernet server (bug #28825)
|
||||
* irc: fix bug with /away -all: set or unset future away for disconnected
|
||||
servers (bug #29022)
|
||||
* irc: bug with prefix "!" for mode "a" (channel admin) (bug #29109)
|
||||
* irc: do not send signals "irc_in" and "irc_in2" when messages are ignored,
|
||||
add new signals "irc_raw_in" and "irc_raw_in2"
|
||||
* irc: add option "-open" for command /connect
|
||||
* irc: add option irc.network.connection_timeout (timeout between TCP connection
|
||||
to server and reception of message 001)
|
||||
* irc: add options irc.look.smart_filter_join and irc.look.smart_filter_quit
|
||||
* irc: apply smart filter only on channels, not private buffers (bug #28841)
|
||||
* irc: add option irc.look.item_channel_modes_hide_key to hide channel key
|
||||
in channel modes (bug #23961)
|
||||
* irc: add option irc.look.item_nick_prefix
|
||||
* irc: add command /map
|
||||
* irc: add missing commands 276, 343
|
||||
* irc: fix compilation with old GnuTLS versions (bug #28723)
|
||||
* logger: allow date format in logger options path and mask (task #9430)
|
||||
* xfer: fix crash when purging old xfer chats (bug #28764)
|
||||
* xfer: add signal "xfer_ended" (patch #7081)
|
||||
|
||||
Version 0.3.1.1 (2010-01-31)
|
||||
----------------------------
|
||||
|
||||
* irc: fix crash with SSL connection if option ssl_cert is set (bug #28752)
|
||||
* irc: fix bug with SSL connection (fails sometimes when ssl_verify is on)
|
||||
(bug #28741)
|
||||
* irc: fix compilation with old GnuTLS versions (bug #28723)
|
||||
* xfer: fix crash when purging old xfer chats (bug #28764)
|
||||
|
||||
Version 0.3.1 (2010-01-23)
|
||||
--------------------------
|
||||
|
||||
@@ -369,7 +466,7 @@ Version 0.2.1 (2006-10-01)
|
||||
* values yes/no accepted (as on/off) for config boolean values (task #5454)
|
||||
* add server default notify level (set by /buffer notify on server buffer)
|
||||
(task #5634)
|
||||
* fix crashs with /buffer and /charset commands when not connected to any
|
||||
* fix crashes with /buffer and /charset commands when not connected to any
|
||||
server (bug #17525)
|
||||
* add special vars $nick/$channel/$server for server_command, alias and plugin
|
||||
command handlers
|
||||
@@ -577,7 +674,7 @@ Version 0.1.6 (2005-11-11)
|
||||
* add colors for input buffer and current channel of status bar
|
||||
* add online help for config options (with /set full_option_name)
|
||||
* enhanced "smart" hotlist, with names (new options:
|
||||
look_hotlist_names_{count|level|length})
|
||||
look_hotlist_names_{count|level|length})
|
||||
|
||||
Version 0.1.5 (2005-09-24)
|
||||
--------------------------
|
||||
|
||||
@@ -27,7 +27,7 @@ make install (as root for installation in system directories)
|
||||
----------------------------------------------------------------------
|
||||
|
||||
|
||||
If you want to report bugs/crashs to developers, please:
|
||||
If you want to report bugs/crashes to developers, please:
|
||||
|
||||
- compile with debug info (type "Debug" for cmake build, default for autotools),
|
||||
- enable core files (for bash shell, add "ulimit -c unlimited" to your ~/.bashrc).
|
||||
|
||||
@@ -26,6 +26,7 @@ EXTRA_DIST = CMakeLists.txt \
|
||||
cmake/cmake_uninstall.cmake.in \
|
||||
cmake/FindAsciidoc.cmake \
|
||||
cmake/FindAspell.cmake \
|
||||
cmake/FindGcrypt.cmake \
|
||||
cmake/FindGettext.cmake \
|
||||
cmake/FindGnuTLS.cmake \
|
||||
cmake/FindIconv.cmake \
|
||||
|
||||
@@ -1,189 +1,248 @@
|
||||
WeeChat News
|
||||
============
|
||||
FlashCode <flashcode@flashtux.org>
|
||||
v0.3.2, 2010-04-18
|
||||
|
||||
FlashCode, 2010-01-23::
|
||||
WeeChat 0.3.1 released.
|
||||
+
|
||||
IRC commands /ame and /amsg are now aliases, if you are upgrading from
|
||||
version 0.3.0, you must create aliases with following commands:
|
||||
* `/alias aaway allserv /away`
|
||||
* `/alias ame allchan /me`
|
||||
* `/alias amsg allchan /amsg *`
|
||||
* `/alias anick allserv /nick`
|
||||
|
||||
FlashCode, 2009-09-06::
|
||||
WeeChat 0.3.0 released.
|
||||
+
|
||||
This version brings major changes, especially for configuration files
|
||||
and plugin API.
|
||||
+
|
||||
For more information about this version, please read file UPGRADE_0.3.
|
||||
Version 0.3.2 (2010-04-18)
|
||||
--------------------------
|
||||
|
||||
FlashCode, 2009-06-13::
|
||||
WeeChat 0.2.6.3 released.
|
||||
+
|
||||
This version fixes gnutls detection.
|
||||
If you are using `/upgrade` from a previous release, then you must execute this
|
||||
command on all IRC servers/channels/private buffers and xfer DCC chats (not
|
||||
needed on WeeChat core buffer or buffers from other plugins/scripts): +
|
||||
`/buffer set highlight_words $nick`
|
||||
|
||||
FlashCode, 2009-04-18::
|
||||
WeeChat 0.2.6.2 released.
|
||||
+
|
||||
This version fixes a bug with charset decoding (like iso2022jp).
|
||||
Version 0.3.1.1 (2010-01-31)
|
||||
----------------------------
|
||||
|
||||
FlashCode, 2009-03-14::
|
||||
WeeChat 0.2.6.1 released.
|
||||
+
|
||||
This version fixes a major bug: crash with some special chars in IRC
|
||||
messages.
|
||||
This version fixes crashs with SSL connection and purge of old DCC chats.
|
||||
|
||||
FlashCode, 2007-09-06::
|
||||
WeeChat 0.2.6 released.
|
||||
All users of version 0.2.2 should upgrade to this version.
|
||||
|
||||
FlashCode, 2007-06-07::
|
||||
WeeChat 0.2.5 released.
|
||||
Version 0.3.1 (2010-01-23)
|
||||
--------------------------
|
||||
|
||||
FlashCode, 2007-03-29::
|
||||
WeeChat 0.2.4 released.
|
||||
IRC commands /ame and /amsg are now aliases, if you are upgrading from version
|
||||
0.3.0, you must create aliases with following commands: +
|
||||
`/alias aaway allserv /away` +
|
||||
`/alias ame allchan /me` +
|
||||
`/alias amsg allchan /amsg *` +
|
||||
`/alias anick allserv /nick`
|
||||
|
||||
FlashCode, 2007-01-10::
|
||||
WeeChat 0.2.3 released.
|
||||
+
|
||||
This version fixes several major bugs of version 0.2.2.
|
||||
All users of version 0.2.2 should upgrade to this version.
|
||||
Version 0.3.0 (2009-09-06)
|
||||
--------------------------
|
||||
|
||||
FlashCode, 2007-01-06::
|
||||
WeeChat 0.2.2 released.
|
||||
+
|
||||
Important release notes:
|
||||
* new charset plugin:
|
||||
** for users of any previous version, all your charset settings
|
||||
in weechat.rc will be LOST! You should save your weechat.rc
|
||||
to keep your values and set them again with new "charset" plugin.
|
||||
** for ISO users: history of channels may be without accents
|
||||
(after /upgrade), this is not recoverable, but this is not a bug.
|
||||
All new messages should be ok.
|
||||
** be careful, now default encode is UTF-8 for all channels (before
|
||||
it was terminal charset). If you still want to send messages as
|
||||
ISO-8859-1, you should send either global encode or server specific
|
||||
encode to ISO-8859-1.
|
||||
For global encode: /setp charset.global.encode = "ISO-8859-1"
|
||||
For server encode: (on server buffer) /charset encode ISO-8859-1
|
||||
* new keys for topic scroll:
|
||||
** new keys for scrolling topic: F9/F10
|
||||
** key F10 was used for "infobar_clear" in previous WeeChat versions,
|
||||
you have to manually rebind this key (except for new WeeChat users):
|
||||
/key <press alt-k then F10> scroll_topic_right
|
||||
which gives something like this:
|
||||
/key meta2-21~ scroll_topic_right
|
||||
This version brings major changes, especially for configuration files and plugin
|
||||
API.
|
||||
|
||||
FlashCode, 2006-10-01::
|
||||
WeeChat 0.2.1 released.
|
||||
For more information about this version, please read file 'UPGRADE_0.3'.
|
||||
|
||||
FlashCode, 2006-08-19::
|
||||
WeeChat 0.2.0 released.
|
||||
+
|
||||
Important release notes:
|
||||
* if you upgraded with /upgrade in WeeChat, you should /disconnect and
|
||||
then /reconnect on each server, to display properly channel/user modes
|
||||
* if you're using plugins, you should remove some old plugins libraries
|
||||
in WeeChat system library directory (commonly
|
||||
/usr/local/lib/weechat/plugins): remove `lib*` files (like `libperl.*`,
|
||||
`libpython.*`, ..) and keep only new libraries (`perl.*`, `python.*`, ..)
|
||||
Version 0.2.6.3 (2009-06-13)
|
||||
----------------------------
|
||||
|
||||
FlashCode, 2006-05-25::
|
||||
WeeChat 0.1.9 released.
|
||||
+
|
||||
Important release notes:
|
||||
* please close all DCC chat buffers before using /upgrade command,
|
||||
otherwise you may experience problems with DCC chats.
|
||||
* some changes in script API: now timer handlers functions takes exactly
|
||||
0 (zero) argument (in version 0.1.8, two arguments were mandatory but
|
||||
not used: server and args)
|
||||
This version fixes gnutls detection.
|
||||
|
||||
FlashCode, 2006-03-18::
|
||||
WeeChat 0.1.8 released.
|
||||
+
|
||||
Important release notes:
|
||||
* it is recommended for users of version 0.1.7 (or any older), to
|
||||
replace values in setup file (~/.weechat/weechat.rc) :
|
||||
** option: log_path: replace "~/.weechat/logs" by "%h/logs"
|
||||
** option: plugins_path: replace "~/.weechat/plugins" by "%h/plugins"
|
||||
+
|
||||
"%h" is replaced by WeeChat home (default: ~/.weechat, may be overriden
|
||||
by new command line arg --dir)
|
||||
* after installing 0.1.8 (or with /upgrade), issue both commands (if you
|
||||
didn't redefined these keys (alt-home/end):
|
||||
/key unbind meta-meta2-1~
|
||||
/key unbind meta-meta2-4~
|
||||
then launch again WeeChat (or issue /upgrade).
|
||||
Alt-home/end were used for nicklist scroll, they're now replaced by
|
||||
Alt-F11/F12.
|
||||
Version 0.2.6.2 (2009-04-18)
|
||||
----------------------------
|
||||
|
||||
FlashCode, 2006-01-14::
|
||||
WeeChat 0.1.7 released.
|
||||
+
|
||||
Important release notes:
|
||||
* Ruby script plugin has been added but is experimental in this release.
|
||||
You're warned!
|
||||
* "/away" command was changed to be RFC 2812 compliant.
|
||||
Now argument is required to set away, and no argument means
|
||||
remove away ("back"). Setting "irc_default_msg_away" has been removed.
|
||||
This version fixes a bug with charset decoding (like 'iso2022jp').
|
||||
|
||||
FlashCode, 2005-11-11::
|
||||
WeeChat 0.1.6 released.
|
||||
+
|
||||
Important release notes:
|
||||
* incompatibility with some old scripts: now all handlers have to return
|
||||
a code for completion, and to do some actions about message to ignore
|
||||
(please look at documentation for detail)
|
||||
* on OpenBSD, the new option "plugins_extension" should be set to ".so.0.0"
|
||||
since the plugins names are ending by ".so.0.0" and not ".so"
|
||||
* with new and full UTF-8 support, the option "look_charset_internal"
|
||||
should be set to blank for most cases. Forces it only if your locale is
|
||||
not properly detected by WeeChat (you can set "UTF-8" or "ISO-8859-15"
|
||||
for example, depending on your locale). WeeChat is looking for "UTF-8" in
|
||||
your locale name at startup.
|
||||
Version 0.2.6.1 (2009-03-14)
|
||||
----------------------------
|
||||
|
||||
FlashCode, 2005-09-24::
|
||||
WeeChat 0.1.5 released.
|
||||
This version fixes a major bug: crash with some special chars in IRC messages.
|
||||
|
||||
FlashCode, 2005-07-30::
|
||||
WeeChat 0.1.4 released.
|
||||
Version 0.2.6 (2007-09-06)
|
||||
--------------------------
|
||||
|
||||
FlashCode, 2005-07-02::
|
||||
WeeChat 0.1.3 released.
|
||||
No release note.
|
||||
|
||||
FlashCode, 2005-05-21::
|
||||
WeeChat 0.1.2 released.
|
||||
Version 0.2.5 (2007-06-07)
|
||||
--------------------------
|
||||
|
||||
FlashCode, 2005-03-20::
|
||||
WeeChat 0.1.1 released.
|
||||
No release note.
|
||||
|
||||
FlashCode, 2005-02-12::
|
||||
WeeChat 0.1.0 released.
|
||||
Version 0.2.4 (2007-03-29)
|
||||
--------------------------
|
||||
|
||||
FlashCode, 2005-01-01::
|
||||
WeeChat 0.0.9 released.
|
||||
No release note.
|
||||
|
||||
FlashCode, 2004-10-30::
|
||||
WeeChat 0.0.8 released.
|
||||
Version 0.2.3 (2007-01-10)
|
||||
--------------------------
|
||||
|
||||
FlashCode, 2004-08-08::
|
||||
WeeChat 0.0.7 released.
|
||||
This version fixes several major bugs of version 0.2.2.
|
||||
|
||||
FlashCode, 2004-06-05::
|
||||
WeeChat 0.0.6 released.
|
||||
All users of version 0.2.2 should upgrade to this version.
|
||||
|
||||
FlashCode, 2004-02-07::
|
||||
WeeChat 0.0.5 released.
|
||||
Version 0.2.2 (2007-01-06)
|
||||
--------------------------
|
||||
|
||||
FlashCode, 2004-01-01::
|
||||
WeeChat 0.0.4 released.
|
||||
Important release notes:
|
||||
|
||||
FlashCode, 2003-11-03::
|
||||
WeeChat 0.0.3 released.
|
||||
* new charset plugin:
|
||||
** for users of any previous version, all your charset settings in weechat.rc
|
||||
will be LOST! You should save your weechat.rc to keep your values and set
|
||||
them again with new 'charset' plugin.
|
||||
** for ISO users: history of channels may be without accents (after `/upgrade`),
|
||||
this is not recoverable, but this is not a bug. All new messages should be
|
||||
ok.
|
||||
** be careful, now default encode is UTF-8 for all channels (before it was
|
||||
terminal charset). If you still want to send messages as 'ISO-8859-1', you
|
||||
should send either global encode or server specific encode to 'ISO-8859-1':
|
||||
*** for global encode: `/setp charset.global.encode = "ISO-8859-1"`
|
||||
*** for server encode (on server buffer): `/charset encode ISO-8859-1`
|
||||
* new keys for topic scroll:
|
||||
** new keys for scrolling topic: F9/F10
|
||||
** key F10 was used for `infobar_clear` in previous WeeChat versions,
|
||||
you have to manually rebind this key (except for new WeeChat users):
|
||||
*** `/key <press alt-k then F10> scroll_topic_right` (which gives something
|
||||
like: `/key meta2-21~ scroll_topic_right`).
|
||||
|
||||
FlashCode, 2003-10-05::
|
||||
WeeChat 0.0.2 released.
|
||||
Version 0.2.1 (2006-10-01)
|
||||
--------------------------
|
||||
|
||||
FlashCode, 2003-09-27::
|
||||
WeeChat 0.0.1 released.
|
||||
No release note.
|
||||
|
||||
Version 0.2.0 (2006-08-19)
|
||||
--------------------------
|
||||
|
||||
Important release notes:
|
||||
|
||||
* if you upgraded with `/upgrade` in WeeChat, you should `/disconnect` and then
|
||||
`/reconnect` on each server, to display properly channel/user modes.
|
||||
* if you're using plugins, you should remove some old plugins libraries in
|
||||
WeeChat system library directory (commonly '/usr/local/lib/weechat/plugins'):
|
||||
remove `lib*` files (like `libperl.*`, `libpython.*`, ..) and keep only new
|
||||
libraries (`perl.*`, `python.*`, ..).
|
||||
|
||||
Version 0.1.9 (2006-05-25)
|
||||
--------------------------
|
||||
|
||||
Important release notes:
|
||||
|
||||
* please close all DCC chat buffers before using /upgrade command, otherwise you
|
||||
may experience problems with DCC chats.
|
||||
* some changes in script API: now timer handlers functions takes exactly
|
||||
0 (zero) argument (in version 0.1.8, two arguments were mandatory but not
|
||||
used: server and args).
|
||||
|
||||
Version 0.1.8 (2006-03-18)
|
||||
--------------------------
|
||||
|
||||
Important release notes:
|
||||
|
||||
* it is recommended for users of version 0.1.7 (or any older), to
|
||||
replace values in setup file ('~/.weechat/weechat.rc'):
|
||||
** option: log_path: replace '~/.weechat/logs' by '%h/logs'
|
||||
** option: plugins_path: replace '~/.weechat/plugins' by '%h/plugins' +
|
||||
'%h' is replaced by WeeChat home (default: '~/.weechat', may be overriden
|
||||
by new command line arg `--dir`).
|
||||
* after installing 0.1.8 (or with `/upgrade`), issue both commands (if you
|
||||
didn't redefine these keys (alt-home/end):
|
||||
** `/key unbind meta-meta2-1~`
|
||||
** `/key unbind meta-meta2-4~`
|
||||
** then launch again WeeChat (or issue `/upgrade`).
|
||||
* Keys alt-home/end were used for nicklist scroll, they're now replaced by
|
||||
alt-F11/F12.
|
||||
|
||||
Version 0.1.7 (2006-01-14)
|
||||
--------------------------
|
||||
|
||||
Important release notes:
|
||||
|
||||
* Ruby script plugin has been added but is experimental in this release.
|
||||
You're warned!
|
||||
* `/away` command was changed to be RFC 2812 compliant. Now argument is required
|
||||
to set away, and no argument means remove away ("back"). Option
|
||||
'irc_default_msg_away' has been removed.
|
||||
|
||||
Version 0.1.6 (2005-11-11)
|
||||
--------------------------
|
||||
|
||||
Important release notes:
|
||||
|
||||
* incompatibility with some old scripts: now all handlers have to return a code
|
||||
for completion, and to do some actions about message to ignore (please look at
|
||||
documentation for detail).
|
||||
* on OpenBSD, the new option 'plugins_extension' should be set to '.so.0.0'
|
||||
since the plugins names are ending by '.so.0.0' and not '.so'.
|
||||
* with new and full UTF-8 support, the option 'look_charset_internal' should be
|
||||
set to blank for most cases. Forces it only if your locale is not properly
|
||||
detected by WeeChat (you can set 'UTF-8' or 'ISO-8859-15' for example,
|
||||
depending on your locale). WeeChat is looking for 'UTF-8' in your locale name
|
||||
at startup.
|
||||
|
||||
Version 0.1.5 (2005-09-24)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.1.4 (2005-07-30)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.1.3 (2005-07-02)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.1.2 (2005-05-21)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.1.1 (2005-03-20)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.1.0 (2005-02-12)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.0.9 (2005-01-01)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.0.8 (2004-10-30)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.0.7 (2004-08-08)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.0.6 (2004-06-05)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.0.5 (2004-02-07)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.0.4 (2004-01-01)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.0.3 (2003-11-03)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.0.2 (2003-10-05)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
Version 0.0.1 (2003-09-27)
|
||||
--------------------------
|
||||
|
||||
No release note.
|
||||
|
||||
+3
-3
@@ -39,10 +39,10 @@ run ()
|
||||
echo -n "Running \"$@\""
|
||||
eval $@ >$AUTOGEN_LOG 2>&1
|
||||
if [ $? = 0 ] ; then
|
||||
echo -e $OK
|
||||
echo -e $OK
|
||||
else
|
||||
echo -e $FAIL
|
||||
err
|
||||
echo -e $FAIL
|
||||
err
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
#
|
||||
|
||||
# - Find Aspell
|
||||
# This module finds if libaspell is installed and determines where
|
||||
# This module finds if libaspell is installed and determines where
|
||||
# the include files and libraries are.
|
||||
#
|
||||
# This code sets the following variables:
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
# Copyright (c) 2003-2010 by FlashCode <flashcode@flashtux.org>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
# - Find Gcrypt
|
||||
# This module finds if libgcrypt is installed and determines where
|
||||
# the include files and libraries are.
|
||||
#
|
||||
# This code sets the following variables:
|
||||
#
|
||||
# GCRYPT_CFLAGS = cflags to use to compile
|
||||
# GCRYPT_LDFLAGS = ldflags to use to compile
|
||||
#
|
||||
|
||||
FIND_PROGRAM(LIBGCRYPT_CONFIG_EXECUTABLE NAMES libgcrypt-config)
|
||||
|
||||
set(GCRYPT_LDFLAGS)
|
||||
set(GCRYPT_CFLAGS)
|
||||
|
||||
IF(LIBGCRYPT_CONFIG_EXECUTABLE)
|
||||
|
||||
EXEC_PROGRAM(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS)
|
||||
EXEC_PROGRAM(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS)
|
||||
|
||||
IF(${GCRYPT_CFLAGS} MATCHES "\n")
|
||||
SET(GCRYPT_CFLAGS " ")
|
||||
ENDIF(${GCRYPT_CFLAGS} MATCHES "\n")
|
||||
|
||||
IF(GCRYPT_LDFLAGS AND GCRYPT_CFLAGS)
|
||||
SET(GCRYPT_FOUND TRUE)
|
||||
ENDIF(GCRYPT_LDFLAGS AND GCRYPT_CFLAGS)
|
||||
|
||||
ENDIF(LIBGCRYPT_CONFIG_EXECUTABLE)
|
||||
|
||||
MARK_AS_ADVANCED(GCRYPT_CFLAGS GCRYPT_LDFLAGS)
|
||||
@@ -15,7 +15,7 @@
|
||||
#
|
||||
|
||||
# - Find Gettext
|
||||
# This module finds if gettext is installed and determines where
|
||||
# This module finds if gettext is installed and determines where
|
||||
# the include files and libraries are.
|
||||
#
|
||||
# This code sets the following variables:
|
||||
@@ -60,7 +60,7 @@ IF(HAVE_LIBINTL_H)
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
|
||||
|
||||
IF(LIBINTL_HAS_DGETTEXT)
|
||||
SET(GETTEXT_FOUND TRUE)
|
||||
SET(GETTEXT_FOUND TRUE)
|
||||
ENDIF(LIBINTL_HAS_DGETTEXT)
|
||||
ENDIF(LIBINTL_LIBRARY)
|
||||
ENDIF(LIBC_HAS_DGETTEXT)
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
#
|
||||
|
||||
# - Find GnuTLS
|
||||
# This module finds if libgnutls is installed and determines where
|
||||
# This module finds if libgnutls is installed and determines where
|
||||
# the include files and libraries are.
|
||||
#
|
||||
# This code sets the following variables:
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
#
|
||||
|
||||
# - Find Iconv
|
||||
# This module finds if libiconv is installed and determines where
|
||||
# This module finds if libiconv is installed and determines where
|
||||
# the include files and libraries are.
|
||||
#
|
||||
# This code sets the following variables:
|
||||
@@ -30,6 +30,9 @@ IF(ICONV_FOUND)
|
||||
set(ICONV_FIND_QUIETLY TRUE)
|
||||
ENDIF(ICONV_FOUND)
|
||||
|
||||
INCLUDE(CheckLibraryExists)
|
||||
INCLUDE(CheckFunctionExists)
|
||||
|
||||
FIND_PATH(ICONV_INCLUDE_PATH
|
||||
NAMES iconv.h
|
||||
PATHS /usr/include /usr/local/include /usr/pkg/include
|
||||
|
||||
+3
-3
@@ -15,7 +15,7 @@
|
||||
#
|
||||
|
||||
# - Find Lua
|
||||
# This module finds if liblua is installed and determines where
|
||||
# This module finds if liblua is installed and determines where
|
||||
# the include files and libraries are.
|
||||
#
|
||||
# This code sets the following variables:
|
||||
@@ -61,8 +61,8 @@ ELSE(LUA51_INCLUDE_PATH AND LUA51_LIBRARY)
|
||||
)
|
||||
|
||||
FIND_LIBRARY(
|
||||
LUALIB50_LIBRARY NAMES lualib50 lualib5.0 lualib-5.0 lualib
|
||||
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
|
||||
LUALIB50_LIBRARY NAMES lualib50 lualib5.0 lualib-5.0 lualib
|
||||
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
|
||||
PATH_SUFFIXES lua50 lua5.0 lua-5.0 lua
|
||||
)
|
||||
|
||||
|
||||
+16
-2
@@ -23,11 +23,25 @@ FIND_PATH(NCURSES_INCLUDE_PATH
|
||||
PATHS /usr/include /usr/local/include /usr/pkg/include
|
||||
)
|
||||
|
||||
FIND_LIBRARY(NCURSES_LIBRARY
|
||||
NAMES ncursesw ncurses
|
||||
FIND_LIBRARY(NCURSESW_LIBRARY
|
||||
NAMES ncursesw
|
||||
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
|
||||
)
|
||||
|
||||
IF (NCURSESW_LIBRARY)
|
||||
SET(NCURSES_LIBRARY ${NCURSESW_LIBRARY})
|
||||
ELSE(NCURSESW_LIBRARY)
|
||||
FIND_LIBRARY(NCURSES_LIBRARY
|
||||
NAMES ncurses
|
||||
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
|
||||
)
|
||||
IF (NCURSES_LIBRARY)
|
||||
MESSAGE("*** WARNING:\n"
|
||||
"*** ncursesw library not found! Falling back to \"ncurses\"\n"
|
||||
"*** Be careful, UTF-8 display may not work properly if your locale is UTF-8.")
|
||||
ENDIF(NCURSES_LIBRARY)
|
||||
ENDIF(NCURSESW_LIBRARY)
|
||||
|
||||
IF (NCURSES_INCLUDE_PATH AND NCURSES_LIBRARY)
|
||||
SET(NCURSES_FOUND TRUE)
|
||||
ENDIF(NCURSES_INCLUDE_PATH AND NCURSES_LIBRARY)
|
||||
|
||||
@@ -57,7 +57,7 @@ IF(PERL_EXECUTABLE)
|
||||
STRING(REPLACE "\n" "" PERL_CFLAGS "${PERL_CFLAGS}")
|
||||
STRING(REPLACE "\n" "" PERL_LFLAGS "${PERL_LFLAGS}")
|
||||
|
||||
FIND_PATH(PERL_INCLUDE_PATH
|
||||
FIND_PATH(PERL_INCLUDE_PATH
|
||||
NAMES perl.h
|
||||
PATHS ${PERL_INTERNAL_DIR}
|
||||
)
|
||||
|
||||
@@ -72,13 +72,13 @@
|
||||
#
|
||||
# Redistribution and use, with or without modification, are permitted
|
||||
# provided that the following conditions are met:
|
||||
#
|
||||
#
|
||||
# 1. Redistributions must retain the above copyright notice, this
|
||||
# list of conditions and the following disclaimer.
|
||||
# 2. The name of the author may not be used to endorse or promote
|
||||
# products derived from this software without specific prior
|
||||
# written permission.
|
||||
#
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
@@ -232,7 +232,7 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix)
|
||||
|
||||
# create the final query which is of the format:
|
||||
# * --atleast-version <version> <pkg-name>
|
||||
# * --exact-version <version> <pkg-name>
|
||||
# * --exact-version <version> <pkg-name>
|
||||
# * --max-version <version> <pkg-name>
|
||||
# * --exists <pkg-name>
|
||||
if (_pkg_check_modules_pkg_op)
|
||||
@@ -352,7 +352,7 @@ macro(pkg_search_module _prefix _module0)
|
||||
endif(NOT ${_prefix}_FOUND)
|
||||
|
||||
_pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})
|
||||
endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND)
|
||||
endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND)
|
||||
endmacro(pkg_search_module)
|
||||
|
||||
### Local Variables:
|
||||
|
||||
@@ -29,7 +29,7 @@ IF(PYTHON_FOUND)
|
||||
SET(PYTHON_FIND_QUIETLY TRUE)
|
||||
ENDIF(PYTHON_FOUND)
|
||||
|
||||
FIND_PROGRAM(PYTHON_EXECUTABLE
|
||||
FIND_PROGRAM(PYTHON_EXECUTABLE
|
||||
NAMES python python2.6 python2.5 python2.4 python2.3 python2.2
|
||||
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
|
||||
)
|
||||
|
||||
@@ -28,7 +28,7 @@ IF(RUBY_FOUND)
|
||||
SET(RUBY_FIND_QUIETLY TRUE)
|
||||
ENDIF(RUBY_FOUND)
|
||||
|
||||
FIND_PROGRAM(RUBY_EXECUTABLE
|
||||
FIND_PROGRAM(RUBY_EXECUTABLE
|
||||
NAMES ruby ruby1.9 ruby19 ruby1.8 ruby18 ruby1.6 ruby16
|
||||
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
|
||||
)
|
||||
|
||||
+19
-19
@@ -18,11 +18,11 @@
|
||||
# - The stub libraries are now found in FindTclStub.cmake
|
||||
# => they were only useful for people writing Tcl/Tk extensions.
|
||||
# - TCL_LIBRARY_DEBUG and TK_LIBRARY_DEBUG were removed.
|
||||
# => these libs are not packaged by default with Tcl/Tk distributions.
|
||||
# => these libs are not packaged by default with Tcl/Tk distributions.
|
||||
# Even when Tcl/Tk is built from source, several flavors of debug libs
|
||||
# are created and there is no real reason to pick a single one
|
||||
# specifically (say, amongst tcl84g, tcl84gs, or tcl84sgx).
|
||||
# Let's leave that choice to the user by allowing him to assign
|
||||
# specifically (say, amongst tcl84g, tcl84gs, or tcl84sgx).
|
||||
# Let's leave that choice to the user by allowing him to assign
|
||||
# TCL_LIBRARY to any Tcl library, debug or not.
|
||||
# - TK_INTERNAL_PATH was removed.
|
||||
# => this ended up being only a Win32 variable, and there is a lot of
|
||||
@@ -40,28 +40,28 @@ INCLUDE(FindTclsh)
|
||||
|
||||
GET_FILENAME_COMPONENT(TCL_TCLSH_PATH "${TCL_TCLSH}" PATH)
|
||||
GET_FILENAME_COMPONENT(TCL_TCLSH_PATH_PARENT "${TCL_TCLSH_PATH}" PATH)
|
||||
STRING(REGEX REPLACE
|
||||
STRING(REGEX REPLACE
|
||||
"^.*tclsh([0-9]\\.*[0-9]).*$" "\\1" TCL_TCLSH_VERSION "${TCL_TCLSH}")
|
||||
|
||||
GET_FILENAME_COMPONENT(TCL_INCLUDE_PATH_PARENT "${TCL_INCLUDE_PATH}" PATH)
|
||||
|
||||
GET_FILENAME_COMPONENT(TCL_LIBRARY_PATH "${TCL_LIBRARY}" PATH)
|
||||
GET_FILENAME_COMPONENT(TCL_LIBRARY_PATH_PARENT "${TCL_LIBRARY_PATH}" PATH)
|
||||
STRING(REGEX REPLACE
|
||||
STRING(REGEX REPLACE
|
||||
"^.*tcl([0-9]\\.*[0-9]).*$" "\\1" TCL_VERSION "${TCL_LIBRARY}")
|
||||
|
||||
SET(TCL_POSSIBLE_LIB_PATHS
|
||||
"${TCL_INCLUDE_PATH_PARENT}/lib"
|
||||
"${TCL_LIBRARY_PATH}"
|
||||
"${TCL_TCLSH_PATH_PARENT}/lib"
|
||||
/usr/lib
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
)
|
||||
|
||||
IF(WIN32)
|
||||
GET_FILENAME_COMPONENT(
|
||||
ActiveTcl_CurrentVersion
|
||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]"
|
||||
ActiveTcl_CurrentVersion
|
||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]"
|
||||
NAME)
|
||||
SET(TCLTK_POSSIBLE_LIB_PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
|
||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/lib"
|
||||
@@ -72,20 +72,20 @@ IF(WIN32)
|
||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/lib"
|
||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/lib"
|
||||
"$ENV{ProgramFiles}/Tcl/Lib"
|
||||
"C:/Program Files/Tcl/lib"
|
||||
"C:/Tcl/lib"
|
||||
"C:/Program Files/Tcl/lib"
|
||||
"C:/Tcl/lib"
|
||||
)
|
||||
ENDIF(WIN32)
|
||||
|
||||
FIND_LIBRARY(TCL_LIBRARY
|
||||
NAMES
|
||||
tcl
|
||||
NAMES
|
||||
tcl
|
||||
tcl${TCL_VERSION} tcl${TCL_TCLSH_VERSION}
|
||||
tcl86 tcl8.6
|
||||
tcl85 tcl8.5
|
||||
tcl84 tcl8.4
|
||||
tcl83 tcl8.3
|
||||
tcl82 tcl8.2
|
||||
tcl86 tcl8.6
|
||||
tcl85 tcl8.5
|
||||
tcl84 tcl8.4
|
||||
tcl83 tcl8.3
|
||||
tcl82 tcl8.2
|
||||
tcl80 tcl8.0
|
||||
PATHS ${TCL_POSSIBLE_LIB_PATHS}
|
||||
)
|
||||
@@ -104,7 +104,7 @@ ENDIF(Tcl_FRAMEWORKS)
|
||||
SET(TCL_POSSIBLE_INCLUDE_PATHS
|
||||
"${TCL_LIBRARY_PATH_PARENT}/include"
|
||||
"${TCL_INCLUDE_PATH}"
|
||||
${TCL_FRAMEWORK_INCLUDES}
|
||||
${TCL_FRAMEWORK_INCLUDES}
|
||||
"${TCL_TCLSH_PATH_PARENT}/include"
|
||||
/usr/include
|
||||
/usr/local/include
|
||||
@@ -140,7 +140,7 @@ IF(WIN32)
|
||||
)
|
||||
ENDIF(WIN32)
|
||||
|
||||
FIND_PATH(TCL_INCLUDE_PATH
|
||||
FIND_PATH(TCL_INCLUDE_PATH
|
||||
NAMES tcl.h
|
||||
PATHS ${TCL_POSSIBLE_INCLUDE_PATHS}
|
||||
)
|
||||
|
||||
+104
-67
@@ -18,10 +18,11 @@
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ(2.56)
|
||||
AC_INIT(WeeChat, 0.3.1, flashcode@flashtux.org)
|
||||
AC_INIT(WeeChat, 0.3.2, flashcode@flashtux.org)
|
||||
AC_CONFIG_SRCDIR([src/core/weechat.c])
|
||||
AM_CONFIG_HEADER(config.h)
|
||||
AM_INIT_AUTOMAKE([weechat], [0.3.1])
|
||||
AM_INIT_AUTOMAKE([weechat], [0.3.2])
|
||||
LICENSE="GPL3"
|
||||
|
||||
# Checks for programs
|
||||
AC_PROG_CC
|
||||
@@ -96,6 +97,7 @@ AC_CHECK_FUNCS([gethostbyname gethostname getsockname gettimeofday inet_ntoa mem
|
||||
AH_VERBATIM([PREFIX], [#undef PREFIX])
|
||||
AH_VERBATIM([WEECHAT_LIBDIR], [#undef WEECHAT_LIBDIR])
|
||||
AH_VERBATIM([WEECHAT_SHAREDIR], [#undef WEECHAT_SHAREDIR])
|
||||
AH_VERBATIM([HAVE_GCRYPT], [#undef HAVE_GCRYPT])
|
||||
AH_VERBATIM([HAVE_GNUTLS], [#undef HAVE_GNUTLS])
|
||||
AH_VERBATIM([HAVE_FLOCK], [#undef HAVE_FLOCK])
|
||||
AH_VERBATIM([PLUGIN_ALIAS], [#undef PLUGIN_ALIAS])
|
||||
@@ -120,6 +122,7 @@ AC_ARG_ENABLE(ncurses, [ --disable-ncurses turn off ncurses interfac
|
||||
AC_ARG_ENABLE(wxwidgets, [ --enable-wxwidgets turn on WxWidgets interface (default=off)],enable_wxwidgets=$enableval,enable_wxwidgets=no)
|
||||
AC_ARG_ENABLE(gtk, [ --enable-gtk turn on Gtk interface (default=off)],enable_gtk=$enableval,enable_gtk=no)
|
||||
AC_ARG_ENABLE(qt, [ --enable-qt turn on Qt interface (default=off)],enable_qt=$enableval,enable_qt=no)
|
||||
AC_ARG_ENABLE(gcrypt, [ --disable-gcrypt turn off gcrypt support (default=compiled if found)],enable_gcrypt=$enableval,enable_gcrypt=yes)
|
||||
AC_ARG_ENABLE(gnutls, [ --disable-gnutls turn off gnutls support (default=compiled if found)],enable_gnutls=$enableval,enable_gnutls=yes)
|
||||
AC_ARG_ENABLE(largefile, [ --disable-largefile turn off Large File Support (default=on)],enable_largefile=$enableval,enable_largefile=yes)
|
||||
AC_ARG_ENABLE(alias, [ --disable-alias turn off Alias plugin (default=compiled)],enable_alias=$enableval,enable_alias=yes)
|
||||
@@ -251,15 +254,15 @@ if test "x$ac_found_iconv_header" = "xyes" ; then
|
||||
ICONV_LFLAGS="-liconv"
|
||||
LIBS="$LIBS $ICONV_LFLAGS"
|
||||
fi
|
||||
AC_MSG_CHECKING(for iconv usability in programs)
|
||||
AC_MSG_CHECKING(for iconv usability in programs)
|
||||
AC_TRY_RUN([
|
||||
#include <iconv.h>
|
||||
int main(int argc, char **argv) {
|
||||
iconv_t conv = iconv_open("ISO8859-1", "UTF-8");
|
||||
#include <iconv.h>
|
||||
int main(int argc, char **argv) {
|
||||
iconv_t conv = iconv_open("ISO8859-1", "UTF-8");
|
||||
if (conv != (iconv_t) -1) {
|
||||
return 0;
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
return 1;
|
||||
}],iconv_found="yes")
|
||||
if test "x$iconv_found" = "xno" ; then
|
||||
AC_MSG_RESULT(no)
|
||||
@@ -308,7 +311,7 @@ if test "x$enable_aspell" = "xyes" ; then
|
||||
AC_CHECK_HEADER(aspell.h,ac_found_aspell_header="yes",ac_found_aspell_header="no")
|
||||
AC_CHECK_LIB(aspell,new_aspell_speller,ac_found_aspell_lib="yes",ac_found_aspell_lib="no")
|
||||
|
||||
AC_MSG_CHECKING(for aspell headers and librairies)
|
||||
AC_MSG_CHECKING(for aspell headers and librairies)
|
||||
if test "x$ac_found_aspell_header" = "xno" -o "x$ac_found_aspell_lib" = "xno" ; then
|
||||
AC_MSG_RESULT(no)
|
||||
AC_MSG_WARN([
|
||||
@@ -318,8 +321,8 @@ if test "x$enable_aspell" = "xyes" ; then
|
||||
enable_aspell="no"
|
||||
not_found="$not_found aspell"
|
||||
else
|
||||
AC_MSG_RESULT(yes)
|
||||
ASPELL_LFLAGS="$ASPELL_LFLAGS -laspell"
|
||||
AC_MSG_RESULT(yes)
|
||||
ASPELL_LFLAGS="$ASPELL_LFLAGS -laspell"
|
||||
fi
|
||||
else
|
||||
not_asked="$not_asked aspell"
|
||||
@@ -413,7 +416,7 @@ if test "x$enable_perl" = "xyes" ; then
|
||||
enable_perl="no"
|
||||
not_found="$not_found perl"
|
||||
else
|
||||
PERL_VERSION=`perl -V:version | sed "s/version='\(.*\)';/\1/"`
|
||||
PERL_VERSION=`perl -V:version | sed "s/version='\(.*\)';/\1/"`
|
||||
AC_MSG_CHECKING(for Perl headers files)
|
||||
|
||||
PERL_HEADER_TEST=`PT=perltest.c ; echo "#include <EXTERN.h>" > $PT; echo "#include <perl.h>" >> $PT; echo "#include <XSUB.h>" >> $PT ; echo "int main() { return 0; }" >> $PT ; $CC -Wall $PT -o $PT.out $($PERL -MExtUtils::Embed -e ccopts) 1>/dev/null 2>&1; echo $?; rm -f $PT $PT.out 1>/dev/null 2>&1`
|
||||
@@ -423,7 +426,7 @@ if test "x$enable_perl" = "xyes" ; then
|
||||
AC_MSG_RESULT(found)
|
||||
AC_MSG_CHECKING(for Perl library)
|
||||
PERL_LIB_TEST=`PT=perltest.c ; echo "int main() { return 0; }" > $PT ; $CC -Wall $PT -o $PT.out $($PERL -MExtUtils::Embed -e ldopts) 1>/dev/null 2>&1; echo $?; rm -f $PT $PT.out 1>/dev/null 2>&1`
|
||||
if test "x$PERL_LIB_TEST" = "x0" ; then
|
||||
if test "x$PERL_LIB_TEST" = "x0" ; then
|
||||
PERL_LFLAGS=`$PERL -MExtUtils::Embed -e ldopts`
|
||||
AC_MSG_RESULT(found)
|
||||
else
|
||||
@@ -489,7 +492,7 @@ if test "x$enable_python" = "xyes" ; then
|
||||
AC_MSG_RESULT(found)
|
||||
else
|
||||
AC_MSG_WARN([
|
||||
*** Python library couldn't be found on your system.
|
||||
*** Python library couldn't be found on your system.
|
||||
*** Try to install it with your software package manager.
|
||||
*** WeeChat will be built without Python support.])
|
||||
enable_python="no"
|
||||
@@ -528,7 +531,7 @@ if test "x$enable_ruby" = "xyes" ; then
|
||||
enable_ruby="no"
|
||||
not_found="$not_found ruby"
|
||||
else
|
||||
RUBY_VERSION=`$RUBY -rrbconfig -e "puts Config::CONFIG[['ruby_version']]"`
|
||||
RUBY_VERSION=`$RUBY -rrbconfig -e "puts Config::CONFIG[['ruby_version']]"`
|
||||
if test "$RUBY_VERSION" = "1.9.0"; then
|
||||
AC_MSG_WARN([
|
||||
*** Ruby header files have been found, but they're of the version 1.9.0.
|
||||
@@ -590,41 +593,41 @@ if test "x$enable_lua" = "xyes" ; then
|
||||
PKGCONFIG=""
|
||||
AC_CHECK_PROGS(PKGCONFIG, pkg-config)
|
||||
if test "x$PKGCONFIG" != "x"; then
|
||||
AC_MSG_CHECKING(for Lua headers and librairies with pkg-config)
|
||||
echo
|
||||
for l in "$lua_suffix" "" "51" "5.1" "50" "5.0" ; do
|
||||
pkgconfig_lua_found=`$PKGCONFIG --exists lua$l 2>/dev/null`
|
||||
if test "x$?" = "x0" ; then
|
||||
LUA_VERSION=`$PKGCONFIG --modversion lua$l`
|
||||
AC_MSG_CHECKING(for Lua headers and librairies with pkg-config)
|
||||
echo
|
||||
for l in "$lua_suffix" "" "51" "5.1" "50" "5.0" ; do
|
||||
pkgconfig_lua_found=`$PKGCONFIG --exists lua$l 2>/dev/null`
|
||||
if test "x$?" = "x0" ; then
|
||||
LUA_VERSION=`$PKGCONFIG --modversion lua$l`
|
||||
LUA_CFLAGS="$LUA_CFLAGS "`$PKGCONFIG --cflags lua$l`
|
||||
LUA_LFLAGS="$LUA_LFLAGS "`$PKGCONFIG --libs lua$l`
|
||||
|
||||
pkgconfig_lualib_found=`$PKGCONFIG --exists lualib$l 2>/dev/null`
|
||||
if test "x$?" = "x0"; then
|
||||
LUA_CFLAGS="$LUA_CFLAGS "`$PKGCONFIG --cflags lualib$l`
|
||||
LUA_LFLAGS="$LUA_LFLAGS "`$PKGCONFIG --libs lualib$l`
|
||||
fi
|
||||
pkgconfig_lualib_found=`$PKGCONFIG --exists lualib$l 2>/dev/null`
|
||||
if test "x$?" = "x0"; then
|
||||
LUA_CFLAGS="$LUA_CFLAGS "`$PKGCONFIG --cflags lualib$l`
|
||||
LUA_LFLAGS="$LUA_LFLAGS "`$PKGCONFIG --libs lualib$l`
|
||||
fi
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
|
||||
LUACONFIG=""
|
||||
AC_CHECK_PROGS(LUACONFIG, lua-config lua-config51 lua-config5.1 lua-config50 lua-config5.0)
|
||||
if test "x$LUACONFIG" != "x" ; then
|
||||
AC_MSG_CHECKING(for Lua headers and librairies with lua-config)
|
||||
echo
|
||||
echo
|
||||
LUA_CFLAGS=`$LUACONFIG --include`
|
||||
LUA_LFLAGS=`$LUACONFIG --libs`
|
||||
LUA_VERSION="5.0.x"
|
||||
LUA_VERSION="5.0.x"
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
|
||||
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
|
||||
AC_MSG_CHECKING(for Lua headers and librairies)
|
||||
echo
|
||||
echo
|
||||
AC_CHECK_HEADER(lua.h,ac_found_lua_header="yes",ac_found_lua_header="no")
|
||||
AC_CHECK_HEADER(lualib.h,ac_found_liblua_header="yes",ac_found_liblua_header="no")
|
||||
if test "x$ac_found_lua_header" = "xyes" -a "x$ac_found_liblua_header" = "xyes"; then
|
||||
@@ -633,31 +636,31 @@ if test "x$enable_lua" = "xyes" ; then
|
||||
for l in "$lua_suffix" "" "51" "5.1" "50" "5.0" ; do
|
||||
AC_CHECK_LIB(lua$l,lua_call,ac_found_lua_lib="yes",ac_found_lua_lib="no")
|
||||
if test "x$ac_found_lua_lib" = "xyes" ; then
|
||||
LUA_VERSION=">=5.1.0"
|
||||
LUA_VERSION=">=5.1.0"
|
||||
|
||||
LUA_LFLAGS="$LDFLAGS -llua$l -lm"
|
||||
|
||||
ac2_save_LDFLAGS="$LDFLAGS"
|
||||
LDFLAGS="$LDFLAGS -llua$l -lm"
|
||||
|
||||
LUA_LFLAGS="$LDFLAGS -llua$l -lm"
|
||||
|
||||
ac2_save_LDFLAGS="$LDFLAGS"
|
||||
LDFLAGS="$LDFLAGS -llua$l -lm"
|
||||
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
|
||||
LDFLAGS="$LDFLAGS -ldl"
|
||||
fi
|
||||
|
||||
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
|
||||
LDFLAGS="$LDFLAGS -ldl"
|
||||
fi
|
||||
AC_CHECK_LIB(lualib$l,luaL_openlib,ac_found_liblua_lib="yes",ac_found_liblua_lib="no")
|
||||
if test "x$ac_found_liblua_lib" = "xyes" ; then
|
||||
LUA_VERSION="5.0.x"
|
||||
|
||||
LUA_LFLAGS="$LUA_LFLAGS -llualib$l"
|
||||
|
||||
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
|
||||
LUA_LFLAGS="$LUA_LFLAGS -ldl"
|
||||
fi
|
||||
fi
|
||||
|
||||
AC_CHECK_LIB(lualib$l,luaL_openlib,ac_found_liblua_lib="yes",ac_found_liblua_lib="no")
|
||||
if test "x$ac_found_liblua_lib" = "xyes" ; then
|
||||
LUA_VERSION="5.0.x"
|
||||
|
||||
LUA_LFLAGS="$LUA_LFLAGS -llualib$l"
|
||||
|
||||
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
|
||||
LUA_LFLAGS="$LUA_LFLAGS -ldl"
|
||||
fi
|
||||
fi
|
||||
|
||||
LDFLAGS="$ac2_save_LDFLAGS"
|
||||
break
|
||||
fi
|
||||
LDFLAGS="$ac2_save_LDFLAGS"
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
@@ -738,24 +741,54 @@ else
|
||||
not_asked="$not_asked xfer"
|
||||
fi
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# gcrypt
|
||||
# ------------------------------------------------------------------------------
|
||||
|
||||
if test "x$enable_gcrypt" = "xyes" ; then
|
||||
AC_CHECK_HEADER(gcrypt.h,ac_found_gcrypt_header="yes",ac_found_gcrypt_header="no")
|
||||
AC_CHECK_LIB(gcrypt,gcry_check_version,ac_found_gcrypt_lib="yes",ac_found_gcrypt_lib="no")
|
||||
|
||||
AC_MSG_CHECKING(for gcrypt headers and librairies)
|
||||
if test "x$ac_found_gcrypt_header" = "xno" -o "x$ac_found_gcrypt_lib" = "xno" ; then
|
||||
AC_MSG_RESULT(no)
|
||||
AC_MSG_WARN([
|
||||
*** libgcrypt was not found. You may want to get it from ftp://ftp.gnupg.org/gcrypt/libgcrypt/
|
||||
*** WeeChat will be built without gcrypt support.
|
||||
*** Some features like SASL authentication with IRC server using mechanism DH-BLOWFISH will be disabled.])
|
||||
enable_gcrypt="no"
|
||||
not_found="$not_found gcrypt"
|
||||
else
|
||||
AC_MSG_RESULT(yes)
|
||||
GCRYPT_CFLAGS=`libgcrypt-config --cflags`
|
||||
GCRYPT_LFLAGS=`libgcrypt-config --libs`
|
||||
AC_SUBST(GCRYPT_CFLAGS)
|
||||
AC_SUBST(GCRYPT_LFLAGS)
|
||||
AC_DEFINE(HAVE_GCRYPT)
|
||||
CFLAGS="$CFLAGS -DHAVE_GCRYPT"
|
||||
fi
|
||||
else
|
||||
not_asked="$not_asked gcrypt"
|
||||
fi
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# gnutls
|
||||
# ------------------------------------------------------------------------------
|
||||
|
||||
if test "x$enable_gnutls" = "xyes" ; then
|
||||
AC_CHECK_HEADER(gnutls/gnutls.h,ac_found_gnutls_header="yes",ac_found_gnutls_header="no")
|
||||
AC_CHECK_LIB(gnutls,gnutls_global_init,ac_found_gnutls_lib="yes",ac_found_gnutls_lib="no")
|
||||
|
||||
AC_MSG_CHECKING(for gnutls headers and librairies)
|
||||
if test "x$ac_found_gnutls_header" = "xno" -o "x$ac_found_gnutls_lib" = "xno" ; then
|
||||
AC_MSG_RESULT(no)
|
||||
AC_MSG_WARN([
|
||||
AC_CHECK_HEADER(gnutls/gnutls.h,ac_found_gnutls_header="yes",ac_found_gnutls_header="no")
|
||||
AC_CHECK_LIB(gnutls,gnutls_global_init,ac_found_gnutls_lib="yes",ac_found_gnutls_lib="no")
|
||||
|
||||
AC_MSG_CHECKING(for gnutls headers and librairies)
|
||||
if test "x$ac_found_gnutls_header" = "xno" -o "x$ac_found_gnutls_lib" = "xno" ; then
|
||||
AC_MSG_RESULT(no)
|
||||
AC_MSG_WARN([
|
||||
*** libgnutls was not found. You may want to get it from ftp://ftp.gnutls.org/pub/gnutls/
|
||||
*** WeeChat will be built without GnuTLS support.])
|
||||
enable_gnutls="no"
|
||||
not_found="$not_found gnutls"
|
||||
enable_gnutls="no"
|
||||
not_found="$not_found gnutls"
|
||||
else
|
||||
AC_MSG_RESULT(yes)
|
||||
AC_MSG_RESULT(yes)
|
||||
GNUTLS_CFLAGS=`pkg-config gnutls --cflags`
|
||||
GNUTLS_LFLAGS=`pkg-config gnutls --libs`
|
||||
AC_SUBST(GNUTLS_CFLAGS)
|
||||
@@ -841,13 +874,13 @@ if test "x$enable_doc" = "xyes" ; then
|
||||
;;
|
||||
esac
|
||||
else
|
||||
enable_doc="no"
|
||||
enable_doc="no"
|
||||
fi
|
||||
if test -z "$ASCIIDOC"; then
|
||||
not_found="$not_found asciidoc"
|
||||
fi
|
||||
if test -z "$SOURCEHIGHLIGHT"; then
|
||||
not_found="$not_found source-highlight(needed by asciidoc)"
|
||||
not_found="$not_found source-highlight(needed by asciidoc)"
|
||||
fi
|
||||
AC_SUBST(DOC_ASCIIDOC8)
|
||||
AC_SUBST(ASCIIDOC)
|
||||
@@ -919,19 +952,20 @@ netbsd*)
|
||||
fi
|
||||
CFLAGS="$CFLAGS $CPPFLAGS"
|
||||
;;
|
||||
gnu*)
|
||||
gnu*)
|
||||
LDFLAGS="$LDFLAGS -lpthread"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
CFLAGS="$CFLAGS -DWEECHAT_VERSION=\\\"$VERSION\\\""
|
||||
CFLAGS="$CFLAGS -DWEECHAT_VERSION=\\\"$VERSION\\\" -DWEECHAT_LICENSE=\\\"$LICENSE\\\""
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# output Makefiles
|
||||
# ------------------------------------------------------------------------------
|
||||
|
||||
AM_CONDITIONAL(HAVE_GCRYPT, test "$enable_gcrypt" = "yes")
|
||||
AM_CONDITIONAL(HAVE_GNUTLS, test "$enable_gnutls" = "yes")
|
||||
AM_CONDITIONAL(HAVE_FLOCK, test "$enable_flock" = "yes")
|
||||
AM_CONDITIONAL(GUI_NCURSES, test "$enable_ncurses" = "yes")
|
||||
@@ -1058,6 +1092,9 @@ if test "x$enable_xfer" = "xyes"; then
|
||||
fi
|
||||
|
||||
listoptional=""
|
||||
if test "x$enable_gcrypt" = "xyes"; then
|
||||
listoptional="$listoptional gcrypt"
|
||||
fi
|
||||
if test "x$enable_gnutls" = "xyes"; then
|
||||
listoptional="$listoptional gnutls"
|
||||
fi
|
||||
|
||||
Vendored
+1
-1
@@ -12,7 +12,7 @@ builddir/Makefile:
|
||||
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
|
||||
|
||||
build: build-stamp
|
||||
build-stamp: builddir/Makefile
|
||||
build-stamp: builddir/Makefile
|
||||
dh_testdir
|
||||
$(MAKE) -C builddir
|
||||
touch $@
|
||||
|
||||
+1
-1
@@ -18,4 +18,4 @@ SUBDIRS = . en fr pl de ru ja it
|
||||
|
||||
man_MANS = weechat-curses.1
|
||||
|
||||
EXTRA_DIST = $(man_MANS) CMakeLists.txt
|
||||
EXTRA_DIST = $(man_MANS) docgen.pl CMakeLists.txt
|
||||
|
||||
+3
-3
@@ -17,9 +17,9 @@
|
||||
docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_faq.de.txt \
|
||||
weechat_quickstart.de.txt \
|
||||
weechat_tester.de.txt
|
||||
weechat_faq.de.txt \
|
||||
weechat_quickstart.de.txt \
|
||||
weechat_tester.de.txt
|
||||
|
||||
all-local: weechat_faq.de.html \
|
||||
weechat_quickstart.de.html \
|
||||
|
||||
+293
-188
@@ -1,8 +1,9 @@
|
||||
WeeChat FAQ (Frequently Asked Questions)
|
||||
========================================
|
||||
WeeChat FAQ (häufig gestellte Fragen)
|
||||
=====================================
|
||||
FlashCode <flashcode@flashtux.org>
|
||||
|
||||
|
||||
[[general]]
|
||||
Allgemein
|
||||
---------
|
||||
|
||||
@@ -14,224 +15,166 @@ Weshalb WeeChat? - X-Chat und Irssi sind sehr gut...
|
||||
Weil WeeChat schlank ist und neue Funktionen besitzt.
|
||||
Einige Funktionen (Version > = 0.3.x):
|
||||
|
||||
* Unterstützung mehrerer Protokolle durch Erweiterungen (IRC, Jabber)
|
||||
* Unterstützung verschiedener Protokolle durch Erweiterungen (IRC, Jabber)
|
||||
* mehrere Remote GUIs als Ergänzung zu Curses (in Kürze)
|
||||
* in mehreren Sprachen verfügbar
|
||||
* Erweiterungsfähig durch Erweiterungen (C, Perl, Python, Ruby, Lua, Tcl)
|
||||
* den eigenen Bedürfnissen anpassbar, durch Erweiterungen (C, Perl, Python, Ruby, Lua, Tcl)
|
||||
* Buffer mit unabhängigem Inhalt
|
||||
* Filterung der Anzeige mittels Tags und regulären Ausdrücken
|
||||
* horizontale und vertikale Teilung der Fenster
|
||||
* anpass- und erweiterbare Leisten
|
||||
* horizontale und vertikale Einteilung der Fenster
|
||||
* anpassbare und erweiterbare Leisten
|
||||
* Nickliste in allen GUI's verfügbar
|
||||
* inkrementelle Textsuche in Buffern, zu Highlights springen
|
||||
* FIFO Pipe für Fernsteuerung
|
||||
* Unterstützung für Aspell
|
||||
* Unterstützung von Aspell
|
||||
* Doppelter Zeichensatz (Kodierung/Dekodierung)
|
||||
* Neuentwicklung (basiert auf keinem anderem Programm)
|
||||
* Lauffähig auf einer Vielzahl von Plattformen
|
||||
* lauffähig auf einer Vielzahl von Plattformen
|
||||
* 100% GPL und Frei
|
||||
|
||||
Weitere Informationen gibt es auf der folgenden Internetseite:
|
||||
http://www.weechat.org/features
|
||||
|
||||
|
||||
[[compilation_install]]
|
||||
Kompilierung / Installation
|
||||
---------------------------
|
||||
|
||||
|
||||
[[gui]]
|
||||
Ich habe gehört, es gibt mehrere GUIs für WeeChat. Wie kann ich diese kompilieren bzw nutzen?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Ich habe gehört es gibt mehrere GUIs für WeeChat. Wie kann ich diese kompilieren bzw nutzen?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Zur Zeit ist nur die GUI für Curses verfügbar.
|
||||
Zur Zeit ist nur eine GUI für Curses verfügbar.
|
||||
|
||||
Andere GUIs (zur Zeit in der Entwicklung) werden als Remote Clients verfügbar
|
||||
sein.
|
||||
|
||||
|
||||
[[compile_git]]
|
||||
Ich kann WeeChat nach Cloning des git Repository nicht kompilieren - warum?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Ich kann WeeChat nach Cloning des git Repository nicht kompilieren - weshalb?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Der empfohlene Weg WeeChat zu komilieren ist die Nutzung von cmake.
|
||||
Der empfohlene Weg um WeeChat zu kompilieren ist die Nutzung von cmake.
|
||||
|
||||
Falls Du mit Hilfe der autotools kompilierst (also nicht cmake), stelle sicher,
|
||||
dass Du die neueste Version von autoconf und automake besitzt (WeeChat wird mit
|
||||
autoconf 2.61 und automake 1.10.1 entwickelt).
|
||||
Falls Du WeeChat mit Hilfe der autotools kompilieren solltest (also nicht cmake),
|
||||
stelle sicher, dass Du die neueste Version von autoconf und automake besitzt
|
||||
(WeeChat wird mit autoconf 2.61 und automake 1.10.1 entwickelt).
|
||||
|
||||
Der andere Weg ist, das "Entwickler-Paket" zu installieren, dieses hat weniger
|
||||
Abhängigkeiten. Dieses Paket wird quasi täglich aus dem git Repository erstellt.
|
||||
Beachte, dass dieses Paket nicht immer exakt mit dem git Repository übereinstimmt
|
||||
und daher auch weniger brauchbar sein kann als wenn man selbst das Repository
|
||||
klont und daraus Updates installiert.
|
||||
|
||||
|
||||
WeeChat anwenden
|
||||
----------------
|
||||
Die zweite Möglichkeit besteht darin das "Entwickler-Paket" zu installieren. Dies
|
||||
besitzt weniger Abhängigkeiten. Das Paket wird quasi täglich aus dem git Repository erstellt.
|
||||
Beachte, dass dieses Paket nicht immer exakt mit dem git Repository übereinstimmen muss
|
||||
und daher auch weniger brauchbar sein kann, im Gegensatz zu der Methode dass man selbst
|
||||
das Repository klont und daraus Updates installiert.
|
||||
|
||||
|
||||
[[lost]]
|
||||
Ich habe WeeChat gestartet, komme aber nicht mehr weiter - was kann ich tun?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Um Hilfe zu erhalten, gebe `/help` ein. Hilfe zu einem Befehl erhälst Du durch
|
||||
die Eingabe von: `help Befehlsname`.
|
||||
Um Hilfe zu erhalten, nutze den `/help` Befehl. Eine Hilfe zu einem Befehl erhältst
|
||||
Du durch die Eingabe von: `/help Befehlsname`.
|
||||
Befehle sowie die Belegung der jeweiligen Tasten sind in der Dokumentation
|
||||
aufgeführt.
|
||||
FIXME: (Tip: Mit den Tasten <Bild-hoch>/<Bild-runter> kannst Du die Anzeige
|
||||
scrollen)
|
||||
(Tipp: Mit den Tasten <Bild-hoch>/<Bild-runter> kannst Du die Anzeige scrollen)
|
||||
|
||||
Neue Benutzer sollten unbedingt die 'quickstart'-Anleitung lesen (siehe
|
||||
Dokumentation auf der Internetseite).
|
||||
|
||||
|
||||
[[buffer_vs_window]]
|
||||
Ich habe von "Buffern" und "Fenstern" gehört - was ist der Unterschied?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Ein 'Buffer' besteht aus einer Nummer, einem Namen, anzuzeigenden Zeilen (und
|
||||
anderen Daten)
|
||||
|
||||
Ein 'Fenster' ist ein Bildschirmbereich der Buffer darstellt. Es ist möglich
|
||||
den Bildschirm in mehrere Fenster aufzuteilen.
|
||||
|
||||
Jedes Fenster stellt einen Buffer dar. Ein Buffer kann unsichtbar sein (er wird
|
||||
nicht durch ein Fenster angezeigt), oder durch ein sowie mehrere Fenster
|
||||
angezeigt werden.
|
||||
[[display]]
|
||||
Anzeige
|
||||
-------
|
||||
|
||||
|
||||
[[charset]]
|
||||
Teilweise fehlen bei Zeichen die Akzente, was kann ich tun?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Teilweise fehlen den Zeichen die Akzente. Wie kann ich das korrigieren?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Dies ist ein bekanntes Problem, bitte lese nachfolgendes sorgfältig und
|
||||
prüfe *alle* aufgezeigten Lösungsmöglichkeiten.
|
||||
Dies ist ein bekanntes Problem. Bitte lese deshalb die nachfolgende Erklärung
|
||||
sorgfältig durch und überprüfe *alle* aufgezeigten Lösungsmöglichkeiten.
|
||||
|
||||
Für Versionen < 0.2.3, bitte auf die neueste stabile Version upgraden.
|
||||
Für Versionen < 0.2.3: Bitte auf die neueste stabile Version von WeeChat wechseln.
|
||||
|
||||
Für Versionen > = 0.2.3:
|
||||
|
||||
* prüfe, dass weechat-curses mit libncursesw gelinkt ist (Warnung: nötig bei den
|
||||
meißten Distributionen - jedoch nicht bei allen):
|
||||
`ldd /path/to/weechat-curses`
|
||||
* prüfe mit dem Befehl `/plugin`, dass die "Charset" Erweiterung geladen ist (falls
|
||||
nicht, benötigst Du wahrscheinlich noch das Paket "weechat-plugins")
|
||||
* prüfe die Ausgabe des Befehls /charset (auf dem Server-Buffer). Du solltest
|
||||
'ISO-XXXXXX' oder 'UTF-8' für den Terminal Zeichensatz sehen. Falls Du
|
||||
'ANSI_X3.4-1968' oder andere Werte siehst, ist Deine Einstellung der locale
|
||||
möglicherweise falsch.
|
||||
* setzen des globalen decode Wertes, z.B.:
|
||||
* überprüfe, ob weechat-curses mit libncursesw verlinkt ist (Warnung: nötig bei den
|
||||
meisten Distributionen - jedoch nicht bei allen): `ldd /path/to/weechat-curses`
|
||||
* prüfe mit dem Befehl `/plugin`, ob die "Charset" Erweiterung geladen ist (falls
|
||||
dies nicht der Fall sein sollte benötigst Du wahrscheinlich noch das Paket "weechat-plugins")
|
||||
* überprüfe die Ausgabe des `/charset` Befehls (im Server-Buffer). Du solltest
|
||||
'ISO-XXXXXX' oder 'UTF-8' für den Terminal Zeichensatz als Antwort erhalten. Falls Du
|
||||
'ANSI_X3.4-1968' oder einen anderen Wert bekommen solltest, ist Deine Einstellung der
|
||||
locale möglicherweise falsch.
|
||||
* Einstellen des globalen decode Wertes, z.B.:
|
||||
** WeeChat < = 0.2.6: `/setp charset.global.decode = ISO-8859-15`
|
||||
** WeeChat > = 0.3.x: `/set charset.default.decode "ISO-8859-15"`
|
||||
* Falls Du UTF-8 locale nutzt:
|
||||
** prüfe, ob Dein Terminal UTF-8 fähig ist (der empfohlene Terminal für UTF-8
|
||||
ist rxvt-unicode)
|
||||
** Solltest Du screen nutzten, prüfe ob er im UTF-8 Modus läuft
|
||||
("`defutf8 on`" in der Datei ~/.screenrc oder `screen -U` zum Sarten von
|
||||
** Solltest Du screen nutzten, prüfe ob dieser im UTF-8 Modus läuft
|
||||
("`defutf8 on`" in der Datei ~/.screenrc oder `screen -U` zum Starten von
|
||||
screen)
|
||||
|
||||
[NOTE]
|
||||
Die Nutzung der UTF-8 locale wird für WeeChat empfohlen. Nutzt Du jedoch ISO
|
||||
oder andere locale, bitte vergewissere Dich dann, dass *alle* Deine
|
||||
Einstellungen (Terminal, screen, ...) sich auch auf ISO beziehen und *nicht* auf
|
||||
UTF-8.
|
||||
Für Weechat wird die Nutzung von UTF-8 locale empfohlen. Nutzt Du jedoch ISO
|
||||
oder andere locale, bitte vergewissere Dich, dass *alle* Deine Einstellungen
|
||||
(Terminal, screen, ...) sich auch auf ISO beziehen und *nicht* auf UTF-8.
|
||||
|
||||
|
||||
[[bars_background]]
|
||||
Leisten, z.B. Titel und Status sind nicht ausgefüllt, die Hintergrundfarbe endet direkt nach dem Text, warum?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Bars, z.B. Titel und Status haben keine Hintergrundfarbe bzw. diese endet direkt nach dem Text, warum?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Dies kann durch einen falschen Wert der Variablen TERM Deiner Shell verursacht
|
||||
werden (schaue Dir die Ausgabe von `echo $TERM` in Deinem Terminal an).
|
||||
Dies kann durch einen falschen Wert in der Variablen TERM Deiner Shell verursacht
|
||||
werden. Bitte überprüfe die Ausgabe von `echo $TERM` in Deinem Terminal.
|
||||
|
||||
Abhängig davon wo Du WeeChat startest, solltest Du folgenden Wert haben:
|
||||
Abhängig davon von wo WeeChat startet wird, solltest Du folgenden Wert haben:
|
||||
|
||||
* falls WeeChat lokal oder auf einem entfernten Rechner läuft, je nach benutztem
|
||||
Terminal: 'xterm', 'rxvt', ...
|
||||
* falls WeeChat unter screen läuft, sollte der Wert 'screen' sein.
|
||||
|
||||
Wenn nötig korrigiere den Wert Deiner Variablen TERM: `export TERM="xxx"`.
|
||||
Falls nötig korrigiere den Wert Deiner Variablen TERM: `export TERM="xxx"`.
|
||||
|
||||
|
||||
[[screen_weird_chars]]
|
||||
Wenn ich Weechat unter screen nutze, habe ich merkwürdige Zeichen, wie kann ich dies beheben?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Wenn ich Weechat unter screen nutze habe ich merkwürdige Zeichen, wie kann ich dies beheben?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Dies kann durch einen falschen Wert der Variablen TERM Deiner Shell verursacht
|
||||
werden (schaue Dir die Ausgabe von `echo $TERM` in Deinem Terminal an).
|
||||
Dies kann durch einen falschen Wert in der TERM-Variable Deiner Shell verursacht
|
||||
werden. Bitte überprüfe die Ausgabe von `echo $TERM` in Deinem Terminal.
|
||||
|
||||
Als Beispiel, 'xterm-color' könnte solche merkwürdigen Zeichen produzieren,
|
||||
nutzte stattdessen 'xterm' - die ist ok (wie mehrer andere Werte).
|
||||
Als Beispiel, 'xterm-color' könnte solche merkwürdigen Zeichen produzieren.
|
||||
Nutzte stattdessen lieber 'xterm'.
|
||||
|
||||
Wenn nötig korrigiere den Wert Deiner Variablen TERM: `export TERM="xxx"`.
|
||||
Falls nötig korrigiere den Wert Deiner TERM-Variable: `export TERM="xxx"`.
|
||||
|
||||
|
||||
[[key_bindings]]
|
||||
Wie kann ich die Tastaturbelegung anpassen?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[buffer_vs_window]]
|
||||
Ich habe von "Buffern" und "Fenstern" gehört - Worin besteht der Unterschied?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Die Tasten werden mit dem Befehl /key belegt.
|
||||
Ein 'Buffer' besteht aus einer Nummer, besitzt einem Namen, hat Zeilen die angezeigt
|
||||
werden (und noch anderen Daten).
|
||||
|
||||
Per Voreinstellung kannst Du mit der Tastenkombination Meta-k (normal Alt-k) den
|
||||
Code der jeweiligen Taste herausfinden und in die Eingabezeile einfügen.
|
||||
Ein 'Fenster' ist ein Bildschirmbereich der Buffer darstellt. Es ist möglich
|
||||
den Bildschirm in mehrere Fenster aufzuteilen.
|
||||
|
||||
|
||||
[[openbsd_plugins]]
|
||||
Ich benutze BSD, und WeeChat lädt keine Erweiterungen - warum?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Unter BSD Enden die Dateinamen der Erweiterungen mit ".so.0.0" (".so" bei Linux).
|
||||
|
||||
Um dies zu beheben muss folgendes konfiguriert werden:
|
||||
|
||||
* WeeChat < = 0.2.6: +
|
||||
`/set plugins_extension = ".so.0.0"`
|
||||
* WeeChat > = 0.3.x: +
|
||||
`/set weechat.plugin.extension ".so.0.0"`
|
||||
|
||||
Danach: `/plugin autoload`.
|
||||
|
||||
|
||||
[[scripts]]
|
||||
Wie kann ich Perl/Python/Ruby/Lua/Tcl Skripten laden? Sind Skripten kompatibel zu anderen IRC-Clients?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Benutze die Befehle: `/perl`, `/python`, `/ruby`, `/lua` und `/tcl` um Skripten
|
||||
zu laden (Voreingestellter Pfad zu den Skripten: '~/.weechat/<Skriptsprache>/').
|
||||
|
||||
Die Skripten sind mit den anderer IRC-Clients nicht kompatibel.
|
||||
|
||||
Anmerkung:
|
||||
|
||||
* Skripten, die sich unter '~/.weechat/<Skriptsprache>/autoload/' befinden, werden
|
||||
beim Start von WeeChat automatisch geladen.
|
||||
* Eine 'tcl' Erweiterung ist ab version > = 0.3.x verfügbar.
|
||||
|
||||
|
||||
[[change_locale_without_quit]]
|
||||
Ich möchte die Sprache der Meldungen, die WeeChat ausgibt, ändern ohne WeeChat zu verlassen. Ist dies möglich?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Ja, dazu kannst Du das Python-Skript shell.py verwenden (erhältlich auf der
|
||||
Internetseite). Nach dem laden des Skripts führe folgende Befehle aus:
|
||||
|
||||
/shell setenv LANG=en_US.UTF-8
|
||||
/upgrade
|
||||
|
||||
Hierdurch erhält man für das Terminal englische, UTF-8 kodierte Meldungen.
|
||||
Benutzer von ISO-Kodierungen können folgendes eingeben:
|
||||
`/shell setenv LANG=en_US`.
|
||||
Jedes Fenster stellt einen Buffer dar. Ein Buffer kann unsichtbar sein (er wird
|
||||
in einem Fenster nicht angezeigt). Oder ein Buffer wird durch ein oder mehrere Fenster
|
||||
angezeigt.
|
||||
|
||||
|
||||
[[terminal_copy_paste]]
|
||||
Wie kann ich einen Text kopieren und einfügen ohne das die Nickliste auch eingefügt wird?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Wie kann ich einen Text kopieren und einfügen ohne das die Nickliste mit eingefügt wird?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Du kannst hierzu ein Terminal nutzen, welches Block-Selektierung erlaubt
|
||||
(wie rxvt-unicode, konsole, gnome-terminal, ...). Im Normalfall erfolgt diese
|
||||
mittels der Tasten ctrl + alt in Verbindung mit der Auswahl durch die Maus.
|
||||
Hierzu kannst Du ein Terminal nutzen welches Block-Auswahl erlaubt (wie z.B. rxvt-unicode,
|
||||
konsole, gnome-terminal, ...). Im Normalfall erfolgt die Markierung mittels der Tasten
|
||||
ctrl + alt in Verbindung mit der Auswahl durch die Maus.
|
||||
|
||||
Eine andere Lösung ist, die Nickliste nach oben oder unten zu verschieben, z.B.:
|
||||
Eine andere Lösung ist, die Nickliste nach oben oder unten zu verschieben:
|
||||
|
||||
* WeeChat < = 0.2.6: +
|
||||
`set look_nicklist_position = top`
|
||||
@@ -240,13 +183,13 @@ Eine andere Lösung ist, die Nickliste nach oben oder unten zu verschieben, z.B.
|
||||
|
||||
|
||||
[[urls]]
|
||||
Wie kann ich eine URL aufrufen, die einen Zeilenumbruch besitzt?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Wie kann ich eine URL aufrufen die einen Zeilenumbruch besitzt?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Da WeeChat sowohl die Uhrzeit als auch einen Präfix für jede Zeile darstellt und
|
||||
man optional auch noch Bars nutzen kann, die das Chatfenster zusätzlich
|
||||
verkleinern, kann es passieren das sehr lange URLs abgeschnitten und nicht mehr
|
||||
aufgerufen werden können.
|
||||
verkleinern, kann es passieren dass sehr lange URLs abgeschnitten und dadurch nicht
|
||||
mehr aufgerufen werden können.
|
||||
|
||||
Deshalb sollte man eines der folgenden Skripten nutzen:
|
||||
|
||||
@@ -261,34 +204,89 @@ tinyurl.py::
|
||||
shortenurl.py::
|
||||
URLs werden durch einen Internet-Dienst gekürzt.
|
||||
|
||||
Liste der Skripten die sich mit URLs befassen: http://www.weechat.org/scripts/stable/tag/url
|
||||
Eine Liste der Skripten die sich mit URLs befassen: http://www.weechat.org/scripts/stable/tag/url
|
||||
|
||||
|
||||
[[highlight_notification]]
|
||||
Wie kann ich informiert werden, wenn jemand in einem Channel highlightet
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[change_locale_without_quit]]
|
||||
Ich möchte die Sprache der Meldungen die WeeChat ausgibt ändern, ohne WeeChat zu verlassen. Ist dies möglich?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
((A.d.Ü) highlight bedeutet, dass der eigene Nick z.B. im Channel genannt wird,
|
||||
der Nick dessen der ihn schrieb wird farblich hervorgehoben)
|
||||
Ja, dazu kannst Du das Python-Skript shell.py verwenden (erhältlich auf der
|
||||
Internetseite). Nach dem laden des Skripts führe folgende Befehle aus:
|
||||
|
||||
Abhängig der WeeChat Version:
|
||||
/shell setenv LANG=en_US.UTF-8
|
||||
/upgrade
|
||||
|
||||
* WeeChat < = 0.2.6: nutze das Skript 'sound.pl' (verfügbar auf der Skript-Site),
|
||||
und nehme Einstellungen für einen System-Befehl (um einen Klang zu spielen,
|
||||
eine Meldung anzuzeigen, ...) mit folgendem Befehl vor: +
|
||||
`/setp perl.sound.cmd_highlight = "/path/to/command arguments"`
|
||||
* WeeChat > = 0.3.x: nutze das Skript 'launcher.pl' (verfügbar auf der Skript-Site),
|
||||
und nehme Einstellungen für einen System-Befehl (um einen Klang zu spielen,
|
||||
eine Meldung anzuzeigen, ...) mit folgendem Befehl vor: +
|
||||
`/set plugins.var.perl.launcher.signal.weechat_highlight "/path/to/command arguments"`
|
||||
Hierdurch erhält man für das Terminal englische, UTF-8 kodierte Meldungen.
|
||||
Benutzer von ISO-Kodierungen können folgendes eingeben:
|
||||
`/shell setenv LANG=en_US`.
|
||||
|
||||
Es gibt noch andere Skripten, die über solche Ereignisse informieren , bitte
|
||||
besuche dazu die Skripten-Webseite: http://www.weechat.org/scripts/
|
||||
|
||||
[[key_bindings]]
|
||||
Tastaturbelegung
|
||||
----------------
|
||||
|
||||
|
||||
[[meta_keys]]
|
||||
Aus welchem Grund funktionieren manche meta keys (alt + key) nicht?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Wenn Du einen Terminal wie xterm oder uxterm nutzten solltest werden einige
|
||||
meta keys standardmäßig nicht unterstützt.
|
||||
In diesem Fall sollte folgende Zeile der Konfigurationsdatei '~/.Xresources'
|
||||
hinzugefügt werden:
|
||||
|
||||
* für xterm:
|
||||
----------------------------------------
|
||||
XTerm*metaSendsEscape: true
|
||||
----------------------------------------
|
||||
* für uxterm:
|
||||
----------------------------------------
|
||||
UXTerm*metaSendsEscape: true
|
||||
----------------------------------------
|
||||
|
||||
Danach muss resources neu geladen werden (`xrdb -override ~/.Xresources`) oder
|
||||
man startet X neu.
|
||||
|
||||
|
||||
[[customize_key_bindings]]
|
||||
Wie kann ich die Tastaturbelegung anpassen?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Die Tasten werden mit dem Befehl `/key` belegt.
|
||||
|
||||
Mit der voreingestellten Tastenkombination Meta-k (normal Alt-k) kann man sich den
|
||||
Code der jeweiligen Taste anzeigen lassen und in die Eingabezeile einfügen.
|
||||
|
||||
|
||||
[[irc]]
|
||||
IRC
|
||||
---
|
||||
|
||||
|
||||
[[ignore_vs_filter]]
|
||||
Was ist der Unterschied zwischen dem Befehl /ignore und /filter?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Der Befehl `/ignore` ist ein IRC-Befehl und beeinflusst somit nur die IRC-Buffer
|
||||
(Server und Channel).
|
||||
Durch den Befehl kann man bestimmte Nicks oder Hostnamen von Usern eines Servers oder
|
||||
von Channels ignorieren (Der Befehl wird nicht auf den Inhalt der Meldung angewandt).
|
||||
Zutreffende Meldungen werden, bevor sie angezeigt werden, von der IRC-Erweiterung gelöscht
|
||||
(Du wirst sie niemals zu Gesicht bekommen).
|
||||
|
||||
Der Befehl `/filter` ist ein Kern-Befehl (A.d.Ü.: wird in WeeChat ausgeführt und
|
||||
nicht an den Server gesendet) und beeinflußt somit jeden Buffer.
|
||||
Dieser Befehl eröffnet die Möglichkeit bestimmte Zeilen in Buffern, mittels Tags und
|
||||
regulären Ausdrücken nach Präfix und Zeileninhalt zu filtern.
|
||||
Die Darstellung von gefilterte Zeilen wird nur unterdrückt, die Zeilen werden nicht gelöscht.
|
||||
Du kannst diese Zeilen sichtbar machen indem Du den Filter deaktivierst (Voreinstellung zum
|
||||
aktivieren/deaktivieren der Filter: Alt-Taste + "=").
|
||||
|
||||
|
||||
[[filter_irc_join_part_quit]]
|
||||
Wie kann ich join/part/quit Meldungen der IRC Channels filtern (A.d.ü.: unterdrücken)?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Wie kann ich join/part/quit Meldungen in den IRC Channels filtern (A.d.ü.: unterdrücken)?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Entsprechend der WeeChat-Version:
|
||||
|
||||
@@ -309,70 +307,177 @@ Entsprechend der WeeChat-Version:
|
||||
`/filter add jpk * irc_join,irc_part,irc_quit *` +
|
||||
(Hilfe mit: `/help filter`)
|
||||
|
||||
[[ignore_vs_filter]]
|
||||
Was ist der Unterschied zwischen den Befehlen /ignore und /filter?
|
||||
|
||||
[[filter_voice_messages]]
|
||||
Wie kann ich voice Nachrichten filtern (z.B. auf Bitlbee Servern)?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Der Befehl `/ignore` ist ein IRC-Befehl und beeinflußt somit nur die IRC-Buffer
|
||||
(Server und Channel).
|
||||
Durch den Befehl kann man bestimmte Nicks oder Hostnamen von Usern eines Servers oder
|
||||
Channels ignorieren (Der Befehl wird nicht auf den Inhalt der Meldung angewandt).
|
||||
Passende Meldungen werden von dem IRC-Plugin vor der Anzeige gelöscht (Du wirst
|
||||
sie niemals zu Gesicht bekommen).
|
||||
Voice Nachrichten zu filtern ist nicht einfach, da der Voice-Modus mit anderen
|
||||
Modi in der IRC Nachricht kombiniert werden kann.
|
||||
|
||||
Der Befehl `/filter` ist ein Kern-Befehl (A.d.Ü.: wird in WeeChat ausgeführt und
|
||||
nicht an den Server gesendet) und beeinflußt somit jeden Buffer.
|
||||
Dieser Befehl eröffnet die Möglichkeit bestimmte Zeilen in Buffern, mittels Tags und
|
||||
regulären Ausdrücken nach Präfix und Zeileninhalt zu filtern.
|
||||
Gefilterte Zeilen werden nur unsichtbar - nicht gelöscht. Sehen kannst Du sie
|
||||
wenn Du den Filter deaktivierst (Voreinstellung zum Aktivieren/Deaktivieren der
|
||||
Filter: Alt-Taste + "=").
|
||||
Falls Du Voice Nachrichten z.B. bei Bitlbee unterdrücken möchtest da diese
|
||||
dazu genutzt werden um den Abwesenheitsstatus anderer User anzuzeigen und Du nicht
|
||||
von diesen Mitteilungen überflutet werden möchtest, kannst Du WeeChat anweisen
|
||||
den Nick der abwesend ist in einer speziellen Farbe darzustellen.
|
||||
|
||||
Im Channel '&bitlbee':
|
||||
----------------------------------------
|
||||
set away_devoice false
|
||||
----------------------------------------
|
||||
|
||||
Um in WeeChat anzeigen zu lassen welche Nicks abwesend sind siehe:
|
||||
<<color_away_nicks,abwesende Nicks>>.
|
||||
|
||||
|
||||
[[color_away_nicks]]
|
||||
Wie kann ich mir Nicks in der Nickliste anzeigen lassen, die abwesend sind?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Dazu musst Du in der Option 'irc.network.away_check' ein Zeitintervall, in Minuten,
|
||||
angeben die zwischen zwei Überprüfungen liegen soll.
|
||||
|
||||
Mit der Option 'irc.network.away_check_max_nicks' kann festgelegt werden in welchen
|
||||
Channels eine Überprüfung stattfinden soll. Hierbei stellt der angegebene Wert die
|
||||
maximale Anzahl an Nicks in einem Channel dar, die den Channel gleichzeitig besuchen.
|
||||
|
||||
In folgendem Beispiel wird der Abwesenheitsstatus alle fünf Minuten überprüft. Dabei
|
||||
werden aber nur Channels berücksichtigt die nicht mehr als 25 Teilnehmer haben:
|
||||
|
||||
----------------------------------------
|
||||
/set irc.network.away_check 5
|
||||
/set irc.network.away_check_max_nicks 25
|
||||
----------------------------------------
|
||||
|
||||
|
||||
[[highlight_notification]]
|
||||
Wie kann ich mich darüber informieren lassen falls mich jemand in einem Channel highlighted
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
((A.d.Ü) Highlight bedeutet, dass der eigene Nick-Name im Channel genannt wird. Ich also
|
||||
direkt, persönlich, angesprochen werde. Der Nick der Person die mich anschreibt wird dabei
|
||||
farblich hervorgehoben)
|
||||
|
||||
Die Einstellung geschieht abhängig von der WeeChat Version:
|
||||
|
||||
* WeeChat < = 0.2.6: nutze das Skript 'sound.pl' (verfügbar auf der Skript-Seite),
|
||||
und nehme Einstellungen für einen System-Befehl (um einen Klang abzuspielen,
|
||||
eine Meldung anzuzeigen, ...) mit folgendem Befehl vor: +
|
||||
`/setp perl.sound.cmd_highlight = "/path/to/command arguments"`
|
||||
* WeeChat > = 0.3.x: nutze das Skript 'launcher.pl' (verfügbar auf der Skript-Seite),
|
||||
und nehme Einstellungen für einen System-Befehl (um einen Klang abzuspielen,
|
||||
eine Meldung anzuzeigen, ...) mit folgendem Befehl vor: +
|
||||
`/set plugins.var.perl.launcher.signal.weechat_highlight "/path/to/command arguments"`
|
||||
|
||||
Es gibt noch andere Skripten, die über verschiedene Ereignisse informieren , bitte
|
||||
besuche dazu die Skripten-Webseite: http://www.weechat.org/scripts/
|
||||
|
||||
|
||||
[[plugins_scripts]]
|
||||
Erweiterungen / Skripten
|
||||
------------------------
|
||||
|
||||
|
||||
[[openbsd_plugins]]
|
||||
Ich benutze OpenBSD und WeeChat lädt keine Erweiterungen - weshalb?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Unter OpenBSD enden die Dateinamen von Erweiterungen mit ".so.0.0" (".so" bei Linux).
|
||||
|
||||
Um dies zu beheben muss folgendes konfiguriert werden:
|
||||
|
||||
* WeeChat < = 0.2.6: +
|
||||
`/set plugins_extension = ".so.0.0"`
|
||||
* WeeChat > = 0.3.x: +
|
||||
`/set weechat.plugin.extension ".so.0.0"`
|
||||
|
||||
Danach: `/plugin autoload`.
|
||||
|
||||
|
||||
[[load_scripts]]
|
||||
Wie kann ich Perl/Python/Ruby/Lua/Tcl Skripten laden? Sind Skripten kompatibel zu anderen IRC-Clients?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Die Skripten für WeeChat sind mit anderer IRC-Clients nicht kompatibel und vice versa.
|
||||
|
||||
Um Skripten zu laden nutze den Befehl für die jeweilige Skriptsprache:
|
||||
`/perl`, `/python`, `/ruby`, `/lua` und `/tcl`
|
||||
|
||||
|
||||
Anmerkung:
|
||||
|
||||
* Voreingestellter Pfad der Skripten: '~/.weechat/<Skriptsprache>/'
|
||||
* Skripten die sich im Verzeichnis '~/.weechat/<Skriptsprache>/autoload/' befinden werden
|
||||
beim Start von WeeChat automatisch geladen.
|
||||
* Eine 'tcl' Erweiterung ist ab Version > = 0.3.0 verfügbar.
|
||||
|
||||
|
||||
[[settings]]
|
||||
Einstellungen
|
||||
-------------
|
||||
|
||||
|
||||
[[memory_usage]]
|
||||
Wie kann ich WeeChat dazu bringen weniger Speicher zu verbrauchen?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Du kannst folgende Tipps umsetzen damit WeeChat weniger Speicher benötigt:
|
||||
|
||||
* nutze die aktuelle Version (man kann davon ausgehen das eine aktuelle Version
|
||||
weniger Speicherlecks besitzt, als eine ältere Version)
|
||||
* lade keine Erweiterungen die Du nicht benötigst. Zum Beispiel: ASpell, Fifo,
|
||||
Logger, Perl, Python, Ruby, Lua, Tcl, Xfer (wird für DCC benötigst)
|
||||
* lade nur Skripten die Du auch benutzt
|
||||
* nutze einen kleineren Wert für die Option 'weechat.history.max_lines' (Anzahl
|
||||
der Zeilen die für jeden Buffer im Speicher gehalten werden soll)
|
||||
* nutze einen kleineren Wert für die Option 'weechat.history.max_commands' (Anzahl
|
||||
des Verlaufsspeichers, für Befehle, die im Speicher gehalten werden sollen)
|
||||
|
||||
|
||||
[[development]]
|
||||
Entwicklung
|
||||
-----------
|
||||
|
||||
|
||||
[[bug_task_patch]]
|
||||
Was mache ich um Fehler zu melden, nach neuen Funktionen zu fragen oder Patches einzusenden?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Was kann ich machen falls ich einen Fehler gefunden habe, nach neuen Funktionen fragen oder Patches einsenden möchte?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Es gibt drei Möglichkeiten:
|
||||
|
||||
. Du kannst zu uns in den IRC kommen: 'irc.freenode.net', channel '#weechat'
|
||||
. Du kannst die Internetseite savannah nutzen:
|
||||
* Fehler melden: https://savannah.nongnu.org/bugs/?group=weechat
|
||||
* Nach einer neuen Funktion fragen: https://savannah.nongnu.org/task/?group=weechat
|
||||
* Patch senden: https://savannah.nongnu.org/patch/?group=weechat
|
||||
* Einen Fehler melden: https://savannah.nongnu.org/bugs/?group=weechat
|
||||
* Einen Verbesserungsvorschlag machen: https://savannah.nongnu.org/task/?group=weechat
|
||||
* Einen Patch einsenden: https://savannah.nongnu.org/patch/?group=weechat
|
||||
. Du kannst den Entwicklern mailen, entsprechende Mail-Adressen auf der Supportseite:
|
||||
http://www.weechat.org/about
|
||||
(Um emails an die "support" Mailing-Liste zu schicken, kannst Du diese abonnieren)
|
||||
|
||||
|
||||
[[supported_os]]
|
||||
Auf welchen Plattformen läuft WeeChat? Wird es noch auf anderen Betriebssystemen portiert?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Auf welchen Plattformen läuft WeeChat? Wird es noch auf andere Betriebssystemen portiert?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Die gesamte Liste gibt es unter: http://www.weechat.org/download
|
||||
Eine vollständige Liste der Portierungen findest Du unter: http://www.weechat.org/download
|
||||
|
||||
Wir geben unser Bestes um WeeChat auf möglichst vielen Plattformen lauffähig zu
|
||||
machen. Um WeeChat auf Betriebssystemen zu testen, zu denen wir keinen Zugang
|
||||
haben, ist Hilfe willkommenen.
|
||||
Wir geben unser Bestes um WeeChat auf möglichst viele Plattformen zu portieren.
|
||||
Aber um WeeChat auf Betriebssystemen zu testen, zu denen wir keinen Zugang haben,
|
||||
ist Hilfe gerne gesehen.
|
||||
|
||||
|
||||
[[help_developers]]
|
||||
Ich möchte den Entwicklern von WeeChat helfen. Was kann ich tun?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Es gibt einiges zu tun z.B. Testen, Programmieren, Dokumentation, ...
|
||||
Es gibt einiges zu tun z.B. testen, programmieren, Dokumentation, ...
|
||||
|
||||
Bitte kontaktiere uns via IRC oder email, schaue auf die Support-Seite:
|
||||
http://www.weechat.org/about
|
||||
|
||||
|
||||
[[donate]]
|
||||
Kann ich Geld oder Anderes an die Entwickler von WeeChat spenden?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Kann ich Geld oder anderes an die WeeChat Entwickler spenden?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Du kannst uns Geld zur Unterstützung der weitern Entwicklung spenden.
|
||||
Du kannst uns Geld zur Unterstützung der weiteren Entwicklung spenden.
|
||||
Details hierzu gibt es auf: http://www.weechat.org/donate
|
||||
|
||||
@@ -89,11 +89,11 @@ Setzen eigener IRC-Server Optionen
|
||||
|
||||
WeeChat verwendet Vorgabewerte für alle Server (so genannte "fall backs") falls
|
||||
Du keine eigenen Werte für entsprechende Server-Optionen bestimmst.
|
||||
Diese Vorgabeoptionen sind "irc.server_default.*".
|
||||
Diese Vorgabeoptionen sind "irc.server_default.*".
|
||||
|
||||
Für jede Server-Option benutzt WeeChat den entsprechend gesetzten Wert - falls
|
||||
definiert (nicht "null"). Andernfalls verwendet WeeChat Vorgabewerte
|
||||
("irc.server_default.xxx").
|
||||
("irc.server_default.xxx").
|
||||
|
||||
Als Beispiel erwähnt seien die Vorgabe (default) nicks, die auf dem Un*x Login
|
||||
basieren. Diese können nun für oftc-Server mittels folgendem Befehl
|
||||
@@ -215,7 +215,7 @@ Belegungen kennen:
|
||||
- 'alt + A': springe zum Puffer mit Aktivität (aus der Hotlist)
|
||||
|
||||
Gemäß Deiner Tastatur und/oder Deinen Bedürfnissen kannst Du jede Taste mittels
|
||||
des Befehls `/key` neu mit einem Befehl belegen.
|
||||
des Befehls `/key` neu mit einem Befehl belegen.
|
||||
Eine nützliche Tastenkombination um Tastencodes zu ermitteln ist meta-k (alt-k).
|
||||
|
||||
Beispiel, Belegung von meta-y (alt-y) mit dem Befehl `/buffer close`:
|
||||
|
||||
@@ -54,7 +54,7 @@ Du könntest Dich ja dazu entscheiden es manuell zu bauen (empfohlen):
|
||||
* die GIT Version kann parallel zur stabilen Version gebaut und installiert
|
||||
werden.
|
||||
* Du benötigst keine Root-Rechte, und opfern brauchst Du Deine stabile Version
|
||||
von WeeChat auch nicht.
|
||||
von WeeChat auch nicht.
|
||||
|
||||
[[get_sources]]
|
||||
Beschaffe und baue die Quellen
|
||||
|
||||
+68
-20
@@ -53,7 +53,7 @@ my $version = "0.1";
|
||||
my $default_path = "~/src/weechat/doc";
|
||||
|
||||
# list of locales for which we want to build XML doc files to include
|
||||
my @locale_list = qw(en_US fr_FR it_IT);
|
||||
my @all_locale_list = qw(en_US fr_FR it_IT);
|
||||
|
||||
# all commands/options/.. of following plugins will produce a file
|
||||
# non-listed plugins will be ignored
|
||||
@@ -96,19 +96,33 @@ my @ignore_infolists_plugins = ();
|
||||
|
||||
# completions to ignore
|
||||
my @ignore_completions_plugins = ();
|
||||
my @ignore_completions_items = ("jabber.*",
|
||||
my @ignore_completions_items = ("docgen.*",
|
||||
"jabber.*",
|
||||
"weeget.*");
|
||||
|
||||
# for gettext
|
||||
my $d;
|
||||
|
||||
# -------------------------------[ init ]--------------------------------------
|
||||
|
||||
weechat::register("docgen", "FlashCode <flashcode\@flashtux.org>", $version,
|
||||
"GPL", "Doc generator for WeeChat 0.3.x", "", "");
|
||||
weechat::hook_command("docgen", "Doc generator", "", "", "", "docgen", "");
|
||||
"GPL3", "Doc generator for WeeChat 0.3.x", "", "");
|
||||
weechat::hook_command("docgen", "Doc generator",
|
||||
"[locales]",
|
||||
"locales: list of locales to build (by default build all locales)",
|
||||
"%(docgen_locales)|%*", "docgen", "");
|
||||
weechat::hook_completion("docgen_locales", "locales for docgen", "docgen_completion", "");
|
||||
weechat::config_set_plugin("path", $default_path)
|
||||
if (weechat::config_get_plugin("path") eq "");
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
# gettext
|
||||
sub weechat_gettext
|
||||
{
|
||||
return $d->get($_[0]);
|
||||
}
|
||||
|
||||
# get list of commands in a hash with 3 indexes: plugin, command, xxx
|
||||
sub get_commands
|
||||
{
|
||||
@@ -197,6 +211,7 @@ sub get_infos
|
||||
if ($ignore ne 1)
|
||||
{
|
||||
$infos{$plugin}{$info_name}{"description"} = weechat::infolist_string($infolist, "description");
|
||||
$infos{$plugin}{$info_name}{"args_description"} = weechat::infolist_string($infolist, "args_description");
|
||||
}
|
||||
}
|
||||
weechat::infolist_free($infolist);
|
||||
@@ -227,6 +242,8 @@ sub get_infolists
|
||||
if ($ignore ne 1)
|
||||
{
|
||||
$infolists{$plugin}{$infolist_name}{"description"} = weechat::infolist_string($infolist, "description");
|
||||
$infolists{$plugin}{$infolist_name}{"pointer_description"} = weechat::infolist_string($infolist, "pointer_description");
|
||||
$infolists{$plugin}{$infolist_name}{"args_description"} = weechat::infolist_string($infolist, "args_description");
|
||||
}
|
||||
}
|
||||
weechat::infolist_free($infolist);
|
||||
@@ -285,6 +302,11 @@ sub escape_table
|
||||
# build XML doc files (command /docgen)
|
||||
sub docgen
|
||||
{
|
||||
my ($data, $buffer, $args) = ($_[0], $_[1], $_[2]);
|
||||
|
||||
my @locale_list = @all_locale_list;
|
||||
@locale_list = split(/ /, $args) if ($args ne "");
|
||||
|
||||
my %plugin_commands = get_commands();
|
||||
my %plugin_options = get_options();
|
||||
my %plugin_infos = get_infos();
|
||||
@@ -301,6 +323,7 @@ sub docgen
|
||||
my $num_files = 0;
|
||||
my $num_files_updated = 0;
|
||||
my $filename = "";
|
||||
|
||||
foreach my $locale (@locale_list)
|
||||
{
|
||||
my $num_files_commands = 0;
|
||||
@@ -315,7 +338,7 @@ sub docgen
|
||||
my $num_files_completions_updated = 0;
|
||||
|
||||
setlocale(LC_MESSAGES, $locale.".UTF-8");
|
||||
my $d = Locale::gettext->domain_raw("weechat");
|
||||
$d = Locale::gettext->domain_raw("weechat");
|
||||
$d->codeset("UTF-8");
|
||||
$d->dir(weechat::info_get("weechat_localedir", ""));
|
||||
|
||||
@@ -414,21 +437,21 @@ sub docgen
|
||||
}
|
||||
if ($type eq "string")
|
||||
{
|
||||
$values = $d->get("any string") if ($max <= 0);
|
||||
$values = $d->get("any char") if ($max == 1);
|
||||
$values = $d->get("any string")." (".$d->get("max chars").": ".$max.")" if ($max > 1);
|
||||
$values = weechat_gettext("any string") if ($max <= 0);
|
||||
$values = weechat_gettext("any char") if ($max == 1);
|
||||
$values = weechat_gettext("any string")." (".weechat_gettext("max chars").": ".$max.")" if ($max > 1);
|
||||
$default_value = "\"".escape_string($default_value)."\"";
|
||||
}
|
||||
if ($type eq "color")
|
||||
{
|
||||
$values = $d->get("a color name");
|
||||
$values = weechat_gettext("a color name");
|
||||
}
|
||||
|
||||
print FILE "* *".$config.".".$section.".".$option."*\n";
|
||||
print FILE "** ".$d->get("description").": ".$description."\n";
|
||||
print FILE "** ".$d->get("type").": ".$type_nls."\n";
|
||||
print FILE "** ".$d->get("values").": ".$values." "
|
||||
."(".$d->get("default value").": ".$default_value.")\n\n";
|
||||
print FILE "** ".weechat_gettext("description").": ".$description."\n";
|
||||
print FILE "** ".weechat_gettext("type").": ".$type_nls."\n";
|
||||
print FILE "** ".weechat_gettext("values").": ".$values." "
|
||||
."(".weechat_gettext("default value").": ".$default_value.")\n\n";
|
||||
}
|
||||
}
|
||||
#weechat::print("", "docgen: file ok: '$filename'");
|
||||
@@ -457,18 +480,22 @@ sub docgen
|
||||
$filename = $dir."plugin_api/infos.txt";
|
||||
if (open(FILE, ">".$filename.".tmp"))
|
||||
{
|
||||
print FILE "[width=\"65%\",cols=\"^1,^2,8\",options=\"header\"]\n";
|
||||
print FILE "[width=\"100%\",cols=\"^1,^2,6,6\",options=\"header\"]\n";
|
||||
print FILE "|========================================\n";
|
||||
print FILE "| ".$d->get("Plugin")." | ".$d->get("Name")." | ".$d->get("Description")."\n";
|
||||
print FILE "| ".weechat_gettext("Plugin")." | ".weechat_gettext("Name")
|
||||
." | ".weechat_gettext("Description")." | ".weechat_gettext("Arguments")."\n\n";
|
||||
foreach my $plugin (sort keys %plugin_infos)
|
||||
{
|
||||
foreach my $info (sort keys %{$plugin_infos{$plugin}})
|
||||
{
|
||||
my $description = $plugin_infos{$plugin}{$info}{"description"};
|
||||
$description = $d->get($description) if ($description ne "");
|
||||
my $args_description = $plugin_infos{$plugin}{$info}{"args_description"};
|
||||
$args_description = $d->get($args_description) if ($args_description ne "");
|
||||
$args_description = "-" if ($args_description eq "");
|
||||
|
||||
print FILE "| ".escape_table($plugin)." | ".escape_table($info)
|
||||
." | ".escape_table($description)."\n\n";
|
||||
." | ".escape_table($description)." | ".escape_table($args_description)."\n\n";
|
||||
}
|
||||
}
|
||||
print FILE "|========================================\n";
|
||||
@@ -497,18 +524,27 @@ sub docgen
|
||||
$filename = $dir."plugin_api/infolists.txt";
|
||||
if (open(FILE, ">".$filename.".tmp"))
|
||||
{
|
||||
print FILE "[width=\"65%\",cols=\"^1,^2,8\",options=\"header\"]\n";
|
||||
print FILE "[width=\"100%\",cols=\"^1,^2,5,5,5\",options=\"header\"]\n";
|
||||
print FILE "|========================================\n";
|
||||
print FILE "| ".$d->get("Plugin")." | ".$d->get("Name")." | ".$d->get("Description")."\n";
|
||||
print FILE "| ".weechat_gettext("Plugin")." | ".weechat_gettext("Name")
|
||||
." | ".weechat_gettext("Description")." | ".weechat_gettext("Pointer")
|
||||
." | ".weechat_gettext("Arguments")."\n\n";
|
||||
foreach my $plugin (sort keys %plugin_infolists)
|
||||
{
|
||||
foreach my $infolist (sort keys %{$plugin_infolists{$plugin}})
|
||||
{
|
||||
my $description = $plugin_infolists{$plugin}{$infolist}{"description"};
|
||||
$description = $d->get($description) if ($description ne "");
|
||||
my $pointer_description = $plugin_infolists{$plugin}{$infolist}{"pointer_description"};
|
||||
$pointer_description = $d->get($pointer_description) if ($pointer_description ne "");
|
||||
$pointer_description = "-" if ($pointer_description eq "");
|
||||
my $args_description = $plugin_infolists{$plugin}{$infolist}{"args_description"};
|
||||
$args_description = $d->get($args_description) if ($args_description ne "");
|
||||
$args_description = "-" if ($args_description eq "");
|
||||
|
||||
print FILE "| ".escape_table($plugin)." | ".escape_table($infolist)
|
||||
." | ".escape_table($description)."\n\n";
|
||||
." | ".escape_table($description)." | ".escape_table($pointer_description)
|
||||
." | ".escape_table($args_description)."\n\n";
|
||||
}
|
||||
}
|
||||
print FILE "|========================================\n";
|
||||
@@ -539,7 +575,8 @@ sub docgen
|
||||
{
|
||||
print FILE "[width=\"65%\",cols=\"^1,^2,8\",options=\"header\"]\n";
|
||||
print FILE "|========================================\n";
|
||||
print FILE "| ".$d->get("Plugin")." | ".$d->get("Name")." | ".$d->get("Description")."\n";
|
||||
print FILE "| ".weechat_gettext("Plugin")." | ".weechat_gettext("Name")
|
||||
." | ".weechat_gettext("Description")."\n\n";
|
||||
foreach my $plugin (sort keys %plugin_completions)
|
||||
{
|
||||
foreach my $completion_item (sort keys %{$plugin_completions{$plugin}})
|
||||
@@ -601,3 +638,14 @@ sub docgen
|
||||
|
||||
return weechat::WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
sub docgen_completion
|
||||
{
|
||||
my ($data, $completion_item, $buffer, $completion) = ($_[0], $_[1], $_[2], $_[3]);
|
||||
|
||||
foreach my $locale (@all_locale_list)
|
||||
{
|
||||
weechat::hook_completion_list_add($completion, $locale, 0, weechat::WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
return weechat::WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
+8
-8
@@ -17,14 +17,14 @@
|
||||
docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_user.en.txt \
|
||||
weechat_plugin_api.en.txt \
|
||||
weechat_scripting.en.txt \
|
||||
weechat_faq.en.txt \
|
||||
weechat_quickstart.en.txt \
|
||||
weechat_tester.en.txt \
|
||||
$(wildcard autogen/user/*.txt) \
|
||||
$(wildcard autogen/plugin_api/*.txt)
|
||||
weechat_user.en.txt \
|
||||
weechat_plugin_api.en.txt \
|
||||
weechat_scripting.en.txt \
|
||||
weechat_faq.en.txt \
|
||||
weechat_quickstart.en.txt \
|
||||
weechat_tester.en.txt \
|
||||
$(wildcard autogen/user/*.txt) \
|
||||
$(wildcard autogen/plugin_api/*.txt)
|
||||
|
||||
all-local: weechat_user.en.html \
|
||||
weechat_plugin_api.en.html \
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[width="65%",cols="^1,^2,8",options="header"]
|
||||
|========================================
|
||||
| Plugin | Name | Description
|
||||
|
||||
| alias | alias | list of aliases
|
||||
|
||||
| aspell | aspell_langs | list of supported langs for aspell
|
||||
@@ -53,6 +54,10 @@
|
||||
|
||||
| weechat | bars_options | options for bars
|
||||
|
||||
| weechat | buffer_properties_get | properties that can be read on a buffer
|
||||
|
||||
| weechat | buffer_properties_set | properties that can be set on a buffer
|
||||
|
||||
| weechat | buffers_names | names of buffers
|
||||
|
||||
| weechat | buffers_numbers | numbers of buffers
|
||||
@@ -77,6 +82,8 @@
|
||||
|
||||
| weechat | keys_codes | key codes
|
||||
|
||||
| weechat | keys_codes_for_reset | key codes that can be reset (keys added, redefined or removed)
|
||||
|
||||
| weechat | nicks | nicks in nicklist of current buffer
|
||||
|
||||
| weechat | plugins_commands | commands defined by plugins
|
||||
|
||||
@@ -1,58 +1,59 @@
|
||||
[width="65%",cols="^1,^2,8",options="header"]
|
||||
[width="100%",cols="^1,^2,5,5,5",options="header"]
|
||||
|========================================
|
||||
| Plugin | Name | Description
|
||||
| alias | alias | list of aliases
|
||||
| Plugin | Name | Description | Pointer | Arguments
|
||||
|
||||
| irc | irc_channel | list of channels for an IRC server
|
||||
| alias | alias | list of aliases | alias pointer (optional) | alias name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| irc | irc_ignore | list of IRC ignores
|
||||
| irc | irc_channel | list of channels for an IRC server | channel pointer (optional) | server name
|
||||
|
||||
| irc | irc_nick | list of nicks for an IRC channel
|
||||
| irc | irc_ignore | list of IRC ignores | ignore pointer (optional) | -
|
||||
|
||||
| irc | irc_server | list of IRC servers
|
||||
| irc | irc_nick | list of nicks for an IRC channel | nick pointer (optional) | server,channel,nick (channel and nick are optional)
|
||||
|
||||
| logger | logger_buffer | list of logger buffers
|
||||
| irc | irc_server | list of IRC servers | server pointer (optional) | server name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| lua | lua_script | list of scripts
|
||||
| logger | logger_buffer | list of logger buffers | logger pointer (optional) | -
|
||||
|
||||
| perl | perl_script | list of scripts
|
||||
| lua | lua_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| python | python_script | list of scripts
|
||||
| perl | perl_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| relay | relay | list of relay clients
|
||||
| python | python_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| ruby | ruby_script | list of scripts
|
||||
| relay | relay | list of relay clients | relay pointer (optional) | -
|
||||
|
||||
| tcl | tcl_script | list of scripts
|
||||
| ruby | ruby_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| weechat | bar | list of bars
|
||||
| tcl | tcl_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| weechat | bar_item | list of bar items
|
||||
| weechat | bar | list of bars | bar pointer (optional) | bar name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| weechat | bar_window | list of bar windows
|
||||
| weechat | bar_item | list of bar items | bar item pointer (optional) | bar item name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| weechat | buffer | list of buffers
|
||||
| weechat | bar_window | list of bar windows | bar window pointer (optional) | -
|
||||
|
||||
| weechat | buffer_lines | lines of a buffer
|
||||
| weechat | buffer | list of buffers | buffer pointer (optional) | buffer name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| weechat | filter | list of filters
|
||||
| weechat | buffer_lines | lines of a buffer | buffer pointer | -
|
||||
|
||||
| weechat | history | history of commands
|
||||
| weechat | filter | list of filters | - | filter name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| weechat | hook | list of hooks
|
||||
| weechat | history | history of commands | buffer pointer (if not set, return global history) (optional) | -
|
||||
|
||||
| weechat | hotlist | list of buffers in hotlist
|
||||
| weechat | hook | list of hooks | - | hook type: command, timer, .. (optional)
|
||||
|
||||
| weechat | key | list of key bindings
|
||||
| weechat | hotlist | list of buffers in hotlist | - | -
|
||||
|
||||
| weechat | nicklist | nicks in nicklist for a buffer
|
||||
| weechat | key | list of key bindings | - | -
|
||||
|
||||
| weechat | option | list of options
|
||||
| weechat | nicklist | nicks in nicklist for a buffer | buffer pointer | nick_xxx or group_xxx to get only nick/group xxx (optional)
|
||||
|
||||
| weechat | plugin | list of plugins
|
||||
| weechat | option | list of options | - | option name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| weechat | window | list of windows
|
||||
| weechat | plugin | list of plugins | plugin pointer (optional) | plugin name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| xfer | xfer | list of xfer
|
||||
| weechat | window | list of windows | window pointer (optional) | window name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| xfer | xfer | list of xfer | xfer pointer (optional) | -
|
||||
|
||||
|========================================
|
||||
|
||||
@@ -1,42 +1,47 @@
|
||||
[width="65%",cols="^1,^2,8",options="header"]
|
||||
[width="100%",cols="^1,^2,6,6",options="header"]
|
||||
|========================================
|
||||
| Plugin | Name | Description
|
||||
| fifo | fifo_filename | name of FIFO pipe
|
||||
| Plugin | Name | Description | Arguments
|
||||
|
||||
| irc | irc_buffer | get buffer pointer for an IRC server/channel
|
||||
| fifo | fifo_filename | name of FIFO pipe | -
|
||||
|
||||
| irc | irc_is_channel | 1 if string is an IRC channel
|
||||
| irc | irc_buffer | get buffer pointer for an IRC server/channel/nick | server,channel,nick (channel and nicks are optional)
|
||||
|
||||
| irc | irc_nick | get current nick on a server
|
||||
| irc | irc_is_channel | 1 if string is a valid IRC channel name | channel name
|
||||
|
||||
| irc | irc_nick_color | get nick color
|
||||
| irc | irc_is_nick | 1 if string is a valid IRC nick name | nickname
|
||||
|
||||
| irc | irc_nick_from_host | get nick from IRC host
|
||||
| irc | irc_nick | get current nick on a server | server name
|
||||
|
||||
| weechat | charset_internal | WeeChat internal charset
|
||||
| irc | irc_nick_color | get nick color | nickname
|
||||
|
||||
| weechat | charset_terminal | terminal charset
|
||||
| irc | irc_nick_from_host | get nick from IRC host | IRC host (like `:nick!name@server.com`)
|
||||
|
||||
| weechat | date | WeeChat compilation date
|
||||
| weechat | charset_internal | WeeChat internal charset | -
|
||||
|
||||
| weechat | dir_separator | directory separator
|
||||
| weechat | charset_terminal | terminal charset | -
|
||||
|
||||
| weechat | filters_enabled | 1 if filters are enabled
|
||||
| weechat | date | WeeChat compilation date | -
|
||||
|
||||
| weechat | inactivity | keyboard inactivity (seconds)
|
||||
| weechat | dir_separator | directory separator | -
|
||||
|
||||
| weechat | version | WeeChat version
|
||||
| weechat | filters_enabled | 1 if filters are enabled | -
|
||||
|
||||
| weechat | weechat_dir | WeeChat directory
|
||||
| weechat | inactivity | keyboard inactivity (seconds) | -
|
||||
|
||||
| weechat | weechat_libdir | WeeChat "lib" directory
|
||||
| weechat | version | WeeChat version | -
|
||||
|
||||
| weechat | weechat_localedir | WeeChat "locale" directory
|
||||
| weechat | version_number | WeeChat version (as number) | -
|
||||
|
||||
| weechat | weechat_sharedir | WeeChat "share" directory
|
||||
| weechat | weechat_dir | WeeChat directory | -
|
||||
|
||||
| weechat | weechat_site | WeeChat site
|
||||
| weechat | weechat_libdir | WeeChat "lib" directory | -
|
||||
|
||||
| weechat | weechat_site_download | WeeChat site, download page
|
||||
| weechat | weechat_localedir | WeeChat "locale" directory | -
|
||||
|
||||
| weechat | weechat_sharedir | WeeChat "share" directory | -
|
||||
|
||||
| weechat | weechat_site | WeeChat site | -
|
||||
|
||||
| weechat | weechat_site_download | WeeChat site, download page | -
|
||||
|
||||
|========================================
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
• *`/alias`* `[alias_name [command [arguments]]]`::
|
||||
• *`/alias`* `[[-completion completion] alias_name [command [arguments]]]`::
|
||||
|
||||
........................................
|
||||
create an alias for a command
|
||||
|
||||
completion: completion for alias (optional, by default completion is done with target command)
|
||||
alias_name: name of alias (can start or end with "*" for alias listing)
|
||||
command: command name (many commands can be separated by semicolons)
|
||||
arguments: arguments for command
|
||||
@@ -19,5 +20,15 @@
|
||||
$nick: current nick
|
||||
$channel: current channel
|
||||
$server: current server
|
||||
|
||||
To remove an alias, use command /unalias.
|
||||
|
||||
Examples:
|
||||
alias /split to split window horizontally:
|
||||
/alias split /window splith
|
||||
alias /hello to say "hello" on all channels but not on #weechat:
|
||||
/alias hello /allchan -exclude=#weechat msg * hello
|
||||
alias /forcejoin to send IRC command "forcejoin" with completion of /sajoin:
|
||||
/alias -completion %%sajoin forcejoin /quote forcejoin
|
||||
........................................
|
||||
|
||||
|
||||
@@ -41,15 +41,6 @@
|
||||
/allserv away I'm away
|
||||
........................................
|
||||
|
||||
• *`/away`* `[-all] [message]`::
|
||||
|
||||
........................................
|
||||
toggle away status
|
||||
|
||||
-all: toggle away status on all connected servers
|
||||
message: message for away (if no message is given, away status is removed)
|
||||
........................................
|
||||
|
||||
• *`/ban`* `[channel] [nickname [nickname ...]]`::
|
||||
|
||||
........................................
|
||||
@@ -59,12 +50,13 @@
|
||||
nickname: user or host to ban
|
||||
........................................
|
||||
|
||||
• *`/connect`* `[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname[/port] [-option[=value]] [-nooption]]`::
|
||||
• *`/connect`* `[-all [-nojoin] | -open [-nojoin] | servername [servername ...] [-nojoin] | hostname[/port] [-option[=value]] [-nooption]]`::
|
||||
|
||||
........................................
|
||||
connect to IRC server(s)
|
||||
|
||||
-all: connect to all servers
|
||||
-all: connect to all servers defined in configuration
|
||||
-open: connect to all opened servers that are not currently connected
|
||||
servername: internal server name to connect (server must have been created by /server add)
|
||||
-nojoin: do not join any channel (even if autojoin is enabled on server)
|
||||
hostname: hostname (or IP) of a server
|
||||
@@ -107,6 +99,12 @@
|
||||
action: 'send' (file) or 'chat'
|
||||
nickname: nickname to send file or chat
|
||||
file: filename (on local host)
|
||||
|
||||
Examples:
|
||||
chat with nick "toto":
|
||||
/dcc chat toto
|
||||
send file "/home/foo/bar.txt" to nick "toto":
|
||||
/dcc send toto /home/foo/bar.txt
|
||||
........................................
|
||||
|
||||
• *`/dehalfop`* `[nickname [nickname]]`::
|
||||
@@ -224,9 +222,11 @@
|
||||
nickname: nickname to kick and ban
|
||||
comment: comment for kick
|
||||
|
||||
It is possible to kick/ban with a mask, nick will be extracted from mask and replaced by "*", for example:
|
||||
/kickban toto!*@host.com
|
||||
will ban "*!*@host.com" and then kick "toto".
|
||||
It is possible to kick/ban with a mask, nick will be extracted from mask and replaced by "*".
|
||||
|
||||
Example:
|
||||
ban "*!*@host.com" and then kick "toto":
|
||||
/kickban toto!*@host.com
|
||||
........................................
|
||||
|
||||
• *`/kill`* `nickname comment`::
|
||||
@@ -247,13 +247,22 @@
|
||||
server_mask: list of servers must match this mask
|
||||
........................................
|
||||
|
||||
• *`/list`* `[channel[,channel] [server]]`::
|
||||
• *`/list`* `[channel[,channel] [server] [-re regexp]]`::
|
||||
|
||||
........................................
|
||||
list channels and their topic
|
||||
|
||||
channel: channel to list (a regexp is allowed)
|
||||
server: server name
|
||||
channel: channel to list
|
||||
server: server name
|
||||
regexp: regular expression used to filter results
|
||||
|
||||
Examples:
|
||||
list all channels on server (can be very slow on large networks):
|
||||
/list
|
||||
list channel #weechat:
|
||||
/list #weechat
|
||||
list all channels beginning with "#weechat" (can be very slow on large networks):
|
||||
/list -re #weechat.*
|
||||
........................................
|
||||
|
||||
• *`/lusers`* `[mask [target]]`::
|
||||
@@ -265,6 +274,12 @@
|
||||
target: server for forwarding request
|
||||
........................................
|
||||
|
||||
• *`/map`*::
|
||||
|
||||
........................................
|
||||
show a graphical map of the IRC network
|
||||
........................................
|
||||
|
||||
• *`/me`* `message`::
|
||||
|
||||
........................................
|
||||
@@ -479,11 +494,11 @@
|
||||
........................................
|
||||
list, add or remove IRC servers
|
||||
|
||||
list: list servers (no parameter implies this list)
|
||||
list: list servers (without argument, this list is displayed)
|
||||
listfull: list servers with detailed info for each server
|
||||
add: create a new server
|
||||
servername: server name, for internal and display use
|
||||
hostname: name or IP address of server, with optional port (default: 6667)
|
||||
hostname: name or IP address of server, with optional port (default: 6667), many addresses can be separated by a comma
|
||||
temp: create temporary server (not saved)
|
||||
option: set option for server (for boolean option, value can be omitted)
|
||||
nooption: set boolean option to 'off' (for example: -nossl)
|
||||
@@ -500,6 +515,7 @@
|
||||
/server add oftc irc.oftc.net/6697 -ssl -autoconnect
|
||||
/server add oftc6 irc6.oftc.net/6697 -ipv6 -ssl
|
||||
/server add freenode2 chat.eu.freenode.net/6667,chat.us.freenode.net/6667
|
||||
/server add freenode3 irc.freenode.net -password=mypass
|
||||
/server copy oftc oftcbis
|
||||
/server rename oftc newoftc
|
||||
/server del freenode
|
||||
|
||||
@@ -43,11 +43,6 @@
|
||||
** type: integer
|
||||
** values: off, local, channel (default value: local)
|
||||
|
||||
* *irc.look.display_channel_modes*
|
||||
** description: display channel modes in "buffer_name" bar item
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *irc.look.display_ctcp_blocked*
|
||||
** description: display CTCP message even if it is blocked
|
||||
** type: boolean
|
||||
@@ -63,11 +58,6 @@
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *irc.look.display_nick_modes*
|
||||
** description: display nick modes in "input_prompt" bar item
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *irc.look.display_old_topic*
|
||||
** description: display old topic when channel topic is changed
|
||||
** type: boolean
|
||||
@@ -83,11 +73,31 @@
|
||||
** type: string
|
||||
** values: any string (default value: "irc_privmsg,irc_notice")
|
||||
|
||||
* *irc.look.item_channel_modes*
|
||||
** description: display channel modes in "buffer_name" bar item
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *irc.look.item_channel_modes_hide_key*
|
||||
** description: hide channel key if modes are displayed in "buffer_name" bar item (this will hide all channel modes arguments if mode +k is set on channel)
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *irc.look.item_display_server*
|
||||
** description: name of bar item where IRC server is displayed (for status bar)
|
||||
** type: integer
|
||||
** values: buffer_plugin, buffer_name (default value: buffer_plugin)
|
||||
|
||||
* *irc.look.item_nick_modes*
|
||||
** description: display nick modes in "input_prompt" bar item
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *irc.look.item_nick_prefix*
|
||||
** description: display nick prefix in "input_prompt" bar item
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *irc.look.msgbuffer_fallback*
|
||||
** description: default target buffer for msgbuffer options when target is private and that private buffer is not found
|
||||
** type: integer
|
||||
@@ -123,6 +133,11 @@
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *irc.look.part_closes_buffer*
|
||||
** description: close buffer when /part is issued on a channel
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *irc.look.raw_messages*
|
||||
** description: number of IRC raw messages to save in memory when raw data buffer is closed (messages will be displayed when opening raw data buffer)
|
||||
** type: integer
|
||||
@@ -141,13 +156,23 @@
|
||||
* *irc.look.smart_filter*
|
||||
** description: filter join/part/quit messages for a nick if not speaking for some minutes on channel (you must create a filter on tag "irc_smart_filter")
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *irc.look.smart_filter_delay*
|
||||
** description: delay for filtering join/part/quit messages (in minutes)
|
||||
** type: integer
|
||||
** values: 1 .. 10080 (default value: 5)
|
||||
|
||||
* *irc.look.smart_filter_join*
|
||||
** description: enable smart filter for "join" messages
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *irc.look.smart_filter_quit*
|
||||
** description: enable smart filter for "part" and "quit" messages
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *irc.look.topic_strip_colors*
|
||||
** description: strip colors in topic (used only when displaying buffer title)
|
||||
** type: boolean
|
||||
@@ -183,6 +208,11 @@
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *irc.network.connection_timeout*
|
||||
** description: timeout (in seconds) between TCP connection to server and message 001 received, if this timeout is reached before 001 message is received, WeeChat will disconnect from server
|
||||
** type: integer
|
||||
** values: 1 .. 3600 (default value: 60)
|
||||
|
||||
* *irc.network.default_msg_part*
|
||||
** description: default part message (leaving channel) ("%v" will be replaced by WeeChat version in string)
|
||||
** type: string
|
||||
@@ -288,6 +318,26 @@
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *irc.server_default.sasl_mechanism*
|
||||
** description: mechanism for SASL authentication
|
||||
** type: integer
|
||||
** values: plain, dh-blowfish (default value: plain)
|
||||
|
||||
* *irc.server_default.sasl_password*
|
||||
** description: password for SASL authentication
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *irc.server_default.sasl_timeout*
|
||||
** description: timeout (in seconds) before giving up SASL authentication
|
||||
** type: integer
|
||||
** values: 1 .. 3600 (default value: 15)
|
||||
|
||||
* *irc.server_default.sasl_username*
|
||||
** description: username for SASL authentication
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *irc.server_default.ssl*
|
||||
** description: use SSL for server communication
|
||||
** type: boolean
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
/logger set 5
|
||||
disable logging for current buffer:
|
||||
/logger disable
|
||||
|
||||
set level to 3 for all IRC buffers:
|
||||
/set logger.level.irc 3
|
||||
disable logging for main WeeChat buffer:
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *logger.file.mask*
|
||||
** description: default file name mask for log files (format is "directory/to/file" or "file", without first "/" because "path" option is used to build complete path to file); local buffer variables are permitted
|
||||
** description: default file name mask for log files (format is "directory/to/file" or "file", without first "/" because "path" option is used to build complete path to file); local buffer variables are permitted; date specifiers are permitted (see man strftime)
|
||||
** type: string
|
||||
** values: any string (default value: "$plugin.$name.weechatlog")
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *logger.file.path*
|
||||
** description: path for WeeChat log files ("%h" will be replaced by WeeChat home, "~/.weechat" by default)
|
||||
** description: path for WeeChat log files; "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default); date specifiers are permitted (see man strftime)
|
||||
** type: string
|
||||
** values: any string (default value: "%h/logs/")
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/lua`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] | [unload [name]]`::
|
||||
• *`/lua`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload [name]] | [unload [name]]`::
|
||||
|
||||
........................................
|
||||
list/load/unload scripts
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/perl`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] | [unload [name]]`::
|
||||
• *`/perl`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload [name]] | [unload [name]]`::
|
||||
|
||||
........................................
|
||||
list/load/unload scripts
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/python`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] | [unload [name]]`::
|
||||
• *`/python`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload [name]] | [unload [name]]`::
|
||||
|
||||
........................................
|
||||
list/load/unload scripts
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/ruby`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] | [unload [name]]`::
|
||||
• *`/ruby`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload [name]] | [unload [name]]`::
|
||||
|
||||
........................................
|
||||
list/load/unload scripts
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/tcl`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] | [unload [name]]`::
|
||||
• *`/tcl`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload [name]] | [unload [name]]`::
|
||||
|
||||
........................................
|
||||
list/load/unload scripts
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
• *`/away`* `[-all] [message]`::
|
||||
|
||||
........................................
|
||||
toggle away status
|
||||
|
||||
-all: toggle away status on all connected servers
|
||||
message: message for away (if no message is given, away status is removed)
|
||||
........................................
|
||||
|
||||
• *`/bar`* `[add barname type[,cond1,cond2,...] position size separator item1,item2,...] | [default] | [del barname|-all] | [set barname option value] | [hide|show|toggle barname] | [scroll barname buffer scroll_value] | [list] | [listfull] | [listitems]`::
|
||||
|
||||
........................................
|
||||
@@ -44,7 +53,7 @@
|
||||
/bar scroll nicklist * ye
|
||||
........................................
|
||||
|
||||
• *`/buffer`* `[clear [number | -merged | -all] | move number | merge number | unmerge [number] | close [n1[-n2]] | list | notify level | localvar | set property value | number | name]`::
|
||||
• *`/buffer`* `[clear [number | -merged | -all] | move number | merge number | unmerge [number] | close [n1[-n2]] | list | notify level | localvar | set property value | get property | number | name]`::
|
||||
|
||||
........................................
|
||||
manage buffers
|
||||
@@ -55,7 +64,7 @@
|
||||
(by default ctrl-x switches between merged buffers)
|
||||
unmerge: unmerge buffer from other buffers which have same number
|
||||
close: close buffer (number/range is optional)
|
||||
list: list buffers (no parameter implies this list)
|
||||
list: list buffers (without argument, this list is displayed)
|
||||
notify: set notify level for current buffer: this level determines whether buffer will be added to hotlist or not:
|
||||
none: never
|
||||
highlight: for highlights only
|
||||
@@ -64,6 +73,7 @@
|
||||
reset: reset to default value (all)
|
||||
localvar: display local variables for current buffer
|
||||
set: set a property for current buffer
|
||||
get: display a property of current buffer
|
||||
number: jump to buffer by number, possible prefix:
|
||||
'+': relative jump, add number to current
|
||||
'-': relative jump, sub number to current
|
||||
@@ -71,15 +81,22 @@
|
||||
name: jump to buffer by (partial) name
|
||||
|
||||
Examples:
|
||||
clear current buffer: /buffer clear
|
||||
clear all buffers: /buffer clear -all
|
||||
move buffer: /buffer move 5
|
||||
merge with core buffer: /buffer merge 1
|
||||
unmerge buffer: /buffer unmerge
|
||||
close current buffer: /buffer close
|
||||
close buffers 5 to 7: /buffer close 5-7
|
||||
jump to #weechat: /buffer #weechat
|
||||
jump to next buffer: /buffer +1
|
||||
clear current buffer:
|
||||
/buffer clear
|
||||
move buffer to number 5:
|
||||
/buffer move 5
|
||||
merge with core buffer:
|
||||
/buffer merge 1
|
||||
unmerge buffer:
|
||||
/buffer unmerge
|
||||
close current buffer:
|
||||
/buffer close
|
||||
close buffers 5 to 7:
|
||||
/buffer close 5-7
|
||||
jump to #weechat:
|
||||
/buffer #weechat
|
||||
jump to next buffer:
|
||||
/buffer +1
|
||||
........................................
|
||||
|
||||
• *`/command`* `plugin command`::
|
||||
@@ -124,11 +141,18 @@
|
||||
|
||||
The default key alt+'=' toggles filtering on/off.
|
||||
|
||||
Tags most commonly used:
|
||||
no_filter, no_highlight, log0..log9 (log level),
|
||||
notify_message, notify_private, notify_highlight,
|
||||
irc_xxx (xxx is command name or number, see /server raw), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info.
|
||||
|
||||
Examples:
|
||||
use IRC smart filter for join/part/quit messages:
|
||||
/filter add irc_smart * irc_smart_filter *
|
||||
filter all IRC join/part/quit messages:
|
||||
/filter add joinquit * irc_join,irc_part,irc_quit *
|
||||
filter nicks displayed when joining channels or with /names:
|
||||
/filter add nicks * irc_366 *
|
||||
filter nick "toto" on IRC channel #weechat:
|
||||
/filter add toto irc.freenode.#weechat * toto\t
|
||||
filter lines containing word "spam":
|
||||
@@ -155,7 +179,7 @@
|
||||
value: number of history entries to show
|
||||
........................................
|
||||
|
||||
• *`/input`* `return | complete_next | complete_previous | search_next | delete_previous_char | delete_next_char | delete_previous_word | delete_next_word | delete_beginning_of_line | delete_end_of_line | delete_line | clipboard_paste | transpose_chars | move_beginning_of_line | move_end_of_line | move_previous_char | move_next_char | move_previous_word | move_next_word | history_previous | history_next | history_global_previous | history_global_next | jump_smart | jump_last_buffer | jump_previously_visited_buffer | jump_next_visited_buffer | hotlist_clear | grab_key | grab_key_command | scroll_unread | set_unread | set_unread_current_buffer | insert [args]`::
|
||||
• *`/input`* `return | complete_next | complete_previous | search_next | delete_previous_char | delete_next_char | delete_previous_word | delete_next_word | delete_beginning_of_line | delete_end_of_line | delete_line | clipboard_paste | transpose_chars | move_beginning_of_line | move_end_of_line | move_previous_char | move_next_char | move_previous_word | move_next_word | history_previous | history_next | history_global_previous | history_global_next | jump_smart | jump_last_buffer | jump_previously_visited_buffer | jump_next_visited_buffer | hotlist_clear | grab_key | grab_key_command | scroll_unread | set_unread | set_unread_current_buffer | switch_active_buffer | switch_active_buffer_previous | insert [args]`::
|
||||
|
||||
........................................
|
||||
functions for command line
|
||||
@@ -163,17 +187,29 @@
|
||||
This command is used by key bindings or plugins.
|
||||
........................................
|
||||
|
||||
• *`/key`* `[bind key [command [args]]] | [unbind key] | [reset -yes] | [missing]`::
|
||||
• *`/key`* `[list | listdefault | listdiff] | [bind key [command [args]]] | [unbind key] | [reset key] | [resetall -yes] | [missing]`::
|
||||
|
||||
........................................
|
||||
bind/unbind keys
|
||||
|
||||
bind: bind a command to a key or display command bound to key
|
||||
unbind: remove a key binding
|
||||
reset: restore bindings to the default values and delete ALL personal bindings (use carefully!)
|
||||
missing: add missing keys (using default bindings)
|
||||
list: list all current keys (without argument, this list is displayed)
|
||||
listdefault: list default keys
|
||||
listdiff: list differences between current and default keys (keys added, redefined or deleted)
|
||||
bind: bind a command to a key or display command bound to key
|
||||
unbind: remove a key binding
|
||||
reset: reset a key to default binding
|
||||
resetall: restore bindings to the default values and delete ALL personal bindings (use carefully!)
|
||||
missing: add missing keys (using default bindings), useful after installing new WeeChat version
|
||||
|
||||
When binding a command to a key, it is recommended to use key alt+k (or Esc then k), and then press the key to bind: this will insert key code in command line.
|
||||
|
||||
Examples:
|
||||
key alt-x to toggle nicklist bar:
|
||||
/key bind meta-x /bar toggle nicklist
|
||||
key alt-r to jump to #weechat IRC channel:
|
||||
/key bind meta-r /buffer #weechat
|
||||
restore default binding for key alt-r:
|
||||
/key reset meta-r
|
||||
........................................
|
||||
|
||||
• *`/layout`* `[[save | apply | reset] [buffers | windows]]`::
|
||||
@@ -190,6 +226,28 @@
|
||||
Without argument, this command displays saved layout.
|
||||
........................................
|
||||
|
||||
• *`/mute`* `[-current | -buffer name | -all] command`::
|
||||
|
||||
........................................
|
||||
execute a command silently
|
||||
|
||||
-current: no output on curent buffer
|
||||
-buffer: no output on specified buffer
|
||||
name: full buffer name (examples: "irc.server.freenode", "irc.freenode.#weechat")
|
||||
-all: no output on ALL buffers
|
||||
command: command to execute silently (a '/' is automatically added if not found at beginning of command)
|
||||
|
||||
If no target is specified (-current, -buffer or -all), then default is to mute WeeChat core buffer only.
|
||||
|
||||
Examples:
|
||||
config save:
|
||||
/mute save
|
||||
message to current IRC channel:
|
||||
/mute -current msg * hi!
|
||||
message to #weechat channel:
|
||||
/mute -buffer irc.freenode.#weechat msg #weechat hi!
|
||||
........................................
|
||||
|
||||
• *`/plugin`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload [name]] | [unload [name]]`::
|
||||
|
||||
........................................
|
||||
@@ -301,20 +359,22 @@
|
||||
This command run again a WeeChat binary, so it should have been compiled or installed with a package manager before running this command.
|
||||
........................................
|
||||
|
||||
• *`/uptime`* `[-o]`::
|
||||
• *`/uptime`* `[-o | -ol]`::
|
||||
|
||||
........................................
|
||||
show WeeChat uptime
|
||||
|
||||
-o: send uptime to current buffer as input
|
||||
-o: send uptime to current buffer as input (english string)
|
||||
-ol: send uptime to current buffer as input (translated string)
|
||||
........................................
|
||||
|
||||
• *`/version`* `[-o]`::
|
||||
• *`/version`* `[-o | -ol]`::
|
||||
|
||||
........................................
|
||||
show WeeChat version and compilation date
|
||||
|
||||
-o: send version to current buffer as input
|
||||
-o: send version to current buffer as input (english string)
|
||||
-ol: send version to current buffer as input (translated string)
|
||||
........................................
|
||||
|
||||
• *`/wait`* `number[unit] command`::
|
||||
@@ -333,9 +393,12 @@
|
||||
Note: command is executed on buffer where /wait was executed (if buffer is not found (for example if it has been closed before execution of command), then command is executed on WeeChat core buffer).
|
||||
|
||||
Examples:
|
||||
join channel in 10 sec: /wait 10 /join #test
|
||||
set away in 15 min: /wait 15m /away -all I'm away
|
||||
say 'hello' in 2 min: /wait 2m hello
|
||||
join channel in 10 sec:
|
||||
/wait 10 /join #test
|
||||
set away in 15 min:
|
||||
/wait 15m /away -all I'm away
|
||||
say 'hello' in 2 min:
|
||||
/wait 2m hello
|
||||
........................................
|
||||
|
||||
• *`/window`* `[list | -1 | +1 | b# | up | down | left | right | splith [pct] | splitv [pct] | resize pct | merge [all] | page_up | page_down | refresh | scroll | scroll_up | scroll_down | scroll_top | scroll_bottom | scroll_previous_highlight | scroll_next_highlight | zoom]`::
|
||||
@@ -343,7 +406,7 @@
|
||||
........................................
|
||||
manage windows
|
||||
|
||||
list: list opened windows (no parameter implies this list)
|
||||
list: list opened windows (without argument, this list is displayed)
|
||||
-1: jump to previous window
|
||||
+1: jump to next window
|
||||
b#: jump to next window displaying buffer number #
|
||||
@@ -355,7 +418,6 @@
|
||||
splitv: split current window vertically
|
||||
resize: resize window size, new size is <pct> percentage of parent window
|
||||
merge: merge window with another (all = keep only one window)
|
||||
|
||||
page_up: scroll one page up
|
||||
page_down: scroll one page down
|
||||
refresh: refresh screen
|
||||
@@ -371,9 +433,13 @@
|
||||
For splith and splitv, pct is a percentage which represents size of new window, computed with current window as size reference. For example 25 means create a new window with size = current_size / 4
|
||||
|
||||
Examples:
|
||||
jump to window displaying buffer #1: /window b1
|
||||
scroll 2 lines up: /window scroll -2
|
||||
scroll 2 days up: /window scroll -2d
|
||||
scroll to beginning of current day: /window scroll -d
|
||||
jump to window displaying buffer #1:
|
||||
/window b1
|
||||
scroll 2 lines up:
|
||||
/window scroll -2
|
||||
scroll 2 days up:
|
||||
/window scroll -2d
|
||||
scroll to beginning of current day:
|
||||
/window scroll -d
|
||||
........................................
|
||||
|
||||
|
||||
@@ -208,10 +208,10 @@
|
||||
** type: color
|
||||
** values: a color name (default value: green)
|
||||
|
||||
* *weechat.color.nicklist_more*
|
||||
** description: text color for '+' when scrolling nicks in nicklist
|
||||
* *weechat.color.nicklist_offline*
|
||||
** description: text color for offline nicknames
|
||||
** type: color
|
||||
** values: a color name (default value: lightmagenta)
|
||||
** values: a color name (default value: blue)
|
||||
|
||||
* *weechat.color.nicklist_prefix1*
|
||||
** description: text color for prefix #1 in nicklist
|
||||
@@ -364,7 +364,7 @@
|
||||
** values: none, highlight, message, all (default value: all)
|
||||
|
||||
* *weechat.look.buffer_time_format*
|
||||
** description: time format for buffers
|
||||
** description: time format for each line displayed in buffers
|
||||
** type: string
|
||||
** values: any string (default value: "%H:%M:%S")
|
||||
|
||||
@@ -378,6 +378,11 @@
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *weechat.look.command_chars*
|
||||
** description: chars used to determine if input string is a command or not: input must start with one of these chars; the slash ("/") is always considered as command prefix (example: ".$")
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *weechat.look.day_change*
|
||||
** description: display special message when day changes
|
||||
** type: boolean
|
||||
@@ -523,6 +528,11 @@
|
||||
** type: integer
|
||||
** values: none, line, dotted-line, char (default value: dotted-line)
|
||||
|
||||
* *weechat.look.read_marker_always_show*
|
||||
** description: always show read marker, even if it is after last buffer line
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *weechat.look.save_config_on_exit*
|
||||
** description: save configuration file on exit
|
||||
** type: boolean
|
||||
@@ -553,13 +563,18 @@
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *weechat.look.time_format*
|
||||
** description: time format for dates converted to strings and displayed in messages
|
||||
** type: string
|
||||
** values: any string (default value: "%a, %d %b %Y %T")
|
||||
|
||||
* *weechat.network.gnutls_ca_file*
|
||||
** description: file containing the certificate authorities
|
||||
** type: string
|
||||
** values: any string (default value: "%h/ssl/CAs.pem")
|
||||
|
||||
* *weechat.plugin.autoload*
|
||||
** description: comma separated list of plugins to load automatically at startup, "*" means all plugins found (names may be partial, for example "perl" is ok for "perl.so")
|
||||
** description: comma separated list of plugins to load automatically at startup, "*" means all plugins found, a name beginning with "!" is a negative value to prevent a plugin from being loaded, names can start or end with "*" to match several plugins (examples: "*" or "*,!lua,!tcl")
|
||||
** type: string
|
||||
** values: any string (default value: "*")
|
||||
|
||||
@@ -603,8 +618,3 @@
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *weechat.startup.weechat_slogan*
|
||||
** description: WeeChat slogan (if empty, slogan is not used)
|
||||
** type: string
|
||||
** values: any string (default value: "le client de discussion le plus geek !")
|
||||
|
||||
|
||||
+195
-96
@@ -3,6 +3,7 @@ WeeChat FAQ (Frequently Asked Questions)
|
||||
FlashCode <flashcode@flashtux.org>
|
||||
|
||||
|
||||
[[general]]
|
||||
General
|
||||
-------
|
||||
|
||||
@@ -34,6 +35,7 @@ Some features (version > = 0.3.x):
|
||||
More info on this page: http://www.weechat.org/features
|
||||
|
||||
|
||||
[[compilation_install]]
|
||||
Compilation / install
|
||||
---------------------
|
||||
|
||||
@@ -57,16 +59,12 @@ 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 "devel package", which needs less dependencies.
|
||||
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.
|
||||
|
||||
|
||||
Using WeeChat
|
||||
-------------
|
||||
|
||||
|
||||
[[lost]]
|
||||
I've launched WeeChat, but I'm lost, what can I do?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -78,18 +76,9 @@ It's recommended for new users to read the quickstart guide (see the doc page
|
||||
on the website).
|
||||
|
||||
|
||||
[[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.
|
||||
[[display]]
|
||||
Display
|
||||
-------
|
||||
|
||||
|
||||
[[charset]]
|
||||
@@ -153,60 +142,18 @@ which is ok (like many other values).
|
||||
If needed, fix your TERM variable: `export TERM="xxx"`.
|
||||
|
||||
|
||||
[[key_bindings]]
|
||||
How can I customize key bindings?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[buffer_vs_window]]
|
||||
I heard about "buffers" and "windows", what's the difference?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Key bindings are customizable with /key command.
|
||||
A 'buffer' is composed by a number, a name, lines displayed (and some other
|
||||
data).
|
||||
|
||||
Default key Meta-k (usually Alt-k) lets you grab key code and insert it in
|
||||
command line.
|
||||
A 'window' is a screen area which displays a buffer. It is possible to split
|
||||
your screen into many windows.
|
||||
|
||||
|
||||
[[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`.
|
||||
|
||||
|
||||
[[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.x.
|
||||
|
||||
|
||||
[[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`.
|
||||
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]]
|
||||
@@ -247,23 +194,75 @@ shortenurl.py::
|
||||
List of scripts about URLs: http://www.weechat.org/scripts/stable/tag/url
|
||||
|
||||
|
||||
[[highlight_notification]]
|
||||
How can I be warned when someone highlights me on a channel?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[change_locale_without_quit]]
|
||||
I want to change the language used by WeeChat for messages, but without exiting WeeChat, is it possible?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
According to WeeChat version:
|
||||
Yes, you have to use a python script, shell.py (available on WeeChat website)
|
||||
and issue these commands when script is loaded:
|
||||
|
||||
* 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"`
|
||||
/shell setenv LANG=en_US.UTF-8
|
||||
/upgrade
|
||||
|
||||
Many other scripts exist for notification, please look at plugins/scripts page:
|
||||
http://www.weechat.org/scripts
|
||||
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]]
|
||||
@@ -290,24 +289,124 @@ According to WeeChat version:
|
||||
(`/help filter` for help)
|
||||
|
||||
|
||||
[[ignore_vs_filter]]
|
||||
What is the difference between the /ignore and /filter commands?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[filter_voice_messages]]
|
||||
How can I filter voice messages (eg on Bitlbee server)?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
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).
|
||||
It's not easy to filter voice messages, because voice mode can be set with other
|
||||
modes in same IRC message.
|
||||
|
||||
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).
|
||||
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.network.away_check' to a positive value (minutes
|
||||
between each check of away nicks).
|
||||
|
||||
You can set option 'irc.network.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.network.away_check 5
|
||||
/set irc.network.away_check_max_nicks 25
|
||||
----------------------------------------
|
||||
|
||||
|
||||
[[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
|
||||
-----------
|
||||
|
||||
|
||||
@@ -681,6 +681,20 @@ int match3 = weechat_string_match ("abcdef", "*def", 0); /* == 1 */
|
||||
int match4 = weechat_string_match ("abcdef", "*de*", 0); /* == 1 */
|
||||
----------------------------------------
|
||||
|
||||
Script (Python):
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
match = weechat.string_match(string, mask, case_sensitive)
|
||||
|
||||
# examples
|
||||
match1 = weechat.string_match("abcdef", "abc*", 0) # 1
|
||||
match2 = weechat.string_match("abcdef", "*dd*", 0) # 0
|
||||
match3 = weechat.string_match("abcdef", "*def", 0) # 1
|
||||
match4 = weechat.string_match("abcdef", "*de*", 0) # 1
|
||||
----------------------------------------
|
||||
|
||||
weechat_string_replace
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -809,6 +823,17 @@ C example:
|
||||
int hl = weechat_string_has_highlight ("my test string", "test,word2"); /* == 1 */
|
||||
----------------------------------------
|
||||
|
||||
Script (Python):
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
highlight = weechat.string_has_highlight(string, highlight_words)
|
||||
|
||||
# example
|
||||
highlight = weechat.string_has_highlight("my test string", "test,word2") # 1
|
||||
----------------------------------------
|
||||
|
||||
weechat_string_mask_to_regex
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -840,6 +865,17 @@ char *str_regex = weechat_string_mask_to_regex ("test*mask");
|
||||
free (str_regex);
|
||||
----------------------------------------
|
||||
|
||||
Script (Python):
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
regex = weechat.string_mask_to_regex(mask)
|
||||
|
||||
# example
|
||||
regex = weechat.string_mask_to_regex("test*mask") # "test.*mask"
|
||||
----------------------------------------
|
||||
|
||||
weechat_string_split
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -866,9 +902,9 @@ Arguments:
|
||||
Return value:
|
||||
|
||||
* array of strings, NULL if problem (must be freed by calling
|
||||
<<_weechat_string_free_split>> after use)
|
||||
<<_weechat_string_free_split,weechat_string_free_split>> after use)
|
||||
|
||||
Examples:
|
||||
C examples:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
@@ -907,7 +943,8 @@ void weechat_string_free_split (char **split_string);
|
||||
|
||||
Arguments:
|
||||
|
||||
* 'split_string': string split by function <<_weechat_string_split>>
|
||||
* 'split_string': string split by function
|
||||
<<_weechat_string_split,weechat_string_split>>
|
||||
|
||||
C example:
|
||||
|
||||
@@ -935,7 +972,8 @@ char *weechat_string_build_with_split_string (char **split_string,
|
||||
|
||||
Arguments:
|
||||
|
||||
* 'split_string': string split by function <<_weechat_string_split>>
|
||||
* 'split_string': string split by function
|
||||
<<_weechat_string_split,weechat_string_split>>
|
||||
* 'separator': string used to separate strings
|
||||
|
||||
Return value:
|
||||
@@ -976,7 +1014,7 @@ Arguments:
|
||||
Return value:
|
||||
|
||||
* array of strings, NULL if problem (must be freed by calling
|
||||
<<_weechat_free_split_command>> after use)
|
||||
<<_weechat_free_split_command,weechat_free_split_command>> after use)
|
||||
|
||||
C example:
|
||||
|
||||
@@ -1003,7 +1041,8 @@ void weechat_string_free_split_command (char **split_command);
|
||||
|
||||
Arguments:
|
||||
|
||||
* 'split_command': command split by <<_weechat_string_split_command>>
|
||||
* 'split_command': command split by
|
||||
<<_weechat_string_split_command,weechat_string_split_command>>
|
||||
|
||||
C example:
|
||||
|
||||
@@ -1035,7 +1074,7 @@ Return value:
|
||||
|
||||
* formatted string (must be freed by calling "free" after use)
|
||||
|
||||
Examples:
|
||||
C examples:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
@@ -1082,7 +1121,7 @@ Return value:
|
||||
|
||||
* string without color (must be freed by calling "free" after use)
|
||||
|
||||
Examples:
|
||||
C examples:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
@@ -1108,6 +1147,149 @@ str = weechat.string_remove_color(string, replacement)
|
||||
str = weechat.string_remove_color(my_string, "?")
|
||||
----------------------------------------
|
||||
|
||||
weechat_string_encode_base64
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Encode a string in base64.
|
||||
|
||||
Prototype:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
void weechat_string_encode_base64 (const char *from, int length, char *to);
|
||||
----------------------------------------
|
||||
|
||||
Arguments:
|
||||
|
||||
* 'from': string to encode
|
||||
* 'length': length of string to encode (for example `strlen(from)`)
|
||||
* 'to': pointer to string to store result (must be long enough, result is
|
||||
longer than initial string)
|
||||
|
||||
C example:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
char *string = "abcdefgh", result[128];
|
||||
weechat_string_encode_base64 (string, strlen (string), result);
|
||||
/* result == "YWJjZGVmZ2g=" */
|
||||
----------------------------------------
|
||||
|
||||
weechat_string_decode_base64
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Decode a base64 string.
|
||||
|
||||
Prototype:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
int weechat_string_decode_base64 (const char *from, char *to);
|
||||
----------------------------------------
|
||||
|
||||
Arguments:
|
||||
|
||||
* 'from': string to decode
|
||||
* 'to': pointer to string to store result (must be long enough, result is
|
||||
shorter than initial string)
|
||||
|
||||
Return value:
|
||||
|
||||
* length of string stored in *to (does not count final '\0')
|
||||
|
||||
C example:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
char *string = "YWJjZGVmZ2g=", result[128];
|
||||
int length;
|
||||
length = weechat_string_decode_base64 (string, result);
|
||||
/* length == 8, result == "abcdefgh" */
|
||||
----------------------------------------
|
||||
|
||||
weechat_string_is_command_char
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Check if first char of string is a command char (default command char is '/').
|
||||
|
||||
Prototype:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
int weechat_string_is_command_char (const char *string);
|
||||
----------------------------------------
|
||||
|
||||
Arguments:
|
||||
|
||||
* 'string': string
|
||||
|
||||
Return value:
|
||||
|
||||
* 1 if first char of string is a command char, otherwise 0
|
||||
|
||||
C examples:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
int command_char1 = weechat_string_is_command_char ("/test"); /* == 1 */
|
||||
int command_char2 = weechat_string_is_command_char ("test"); /* == 0 */
|
||||
----------------------------------------
|
||||
|
||||
Script (Python):
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
is_cmdchar = weechat.string_is_command_char(string)
|
||||
|
||||
# examples
|
||||
command_char1 = weechat.string_is_command_char("/test") # == 1
|
||||
command_char2 = weechat.string_is_command_char("test") # == 0
|
||||
----------------------------------------
|
||||
|
||||
weechat_string_input_for_buffer
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Return pointer to input text for buffer (pointer inside "string" argument), or
|
||||
NULL if it's a command.
|
||||
|
||||
Prototype:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
const char *weechat_string_input_for_buffer (const char *string);
|
||||
----------------------------------------
|
||||
|
||||
Arguments:
|
||||
|
||||
* 'string': string
|
||||
|
||||
Return value:
|
||||
|
||||
* pointer into "string", or NULL
|
||||
|
||||
C examples:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
const char *str1 = weechat_string_input_for_buffer ("test"); /* "test" */
|
||||
const char *str2 = weechat_string_input_for_buffer ("/test"); /* NULL */
|
||||
const char *str3 = weechat_string_input_for_buffer ("//test"); /* "/test" */
|
||||
----------------------------------------
|
||||
|
||||
Script (Python):
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
str = weechat.string_input_for_buffer(string)
|
||||
|
||||
# examples
|
||||
str1 = weechat.string_input_for_buffer("test") # "test"
|
||||
str2 = weechat.string_input_for_buffer("/test") # ""
|
||||
str3 = weechat.string_input_for_buffer("//test") # "/test"
|
||||
----------------------------------------
|
||||
|
||||
[[utf-8]]
|
||||
UTF-8
|
||||
~~~~~
|
||||
@@ -1718,8 +1900,8 @@ Util
|
||||
|
||||
Some useful functions.
|
||||
|
||||
weechat_timeval_cmp
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
weechat_util_timeval_cmp
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Compare two "timeval" structures.
|
||||
|
||||
@@ -1727,7 +1909,7 @@ Prototype:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
int weechat_timeval_cmp (struct timeval *tv1, struct timeval *tv2);
|
||||
int weechat_util_timeval_cmp (struct timeval *tv1, struct timeval *tv2);
|
||||
----------------------------------------
|
||||
|
||||
Arguments:
|
||||
@@ -1745,14 +1927,14 @@ C example:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
if (weechat_timeval_cmp (&tv1, &tv2) > 0)
|
||||
if (weechat_util_timeval_cmp (&tv1, &tv2) > 0)
|
||||
{
|
||||
/* tv1 > tv2 */
|
||||
}
|
||||
----------------------------------------
|
||||
|
||||
weechat_timeval_diff
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
weechat_util_timeval_diff
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Return difference (in milliseconds) between two "timeval" structures.
|
||||
|
||||
@@ -1760,7 +1942,7 @@ Prototype:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
long weechat_timeval_diff (struct timeval *tv1, struct timeval *tv2);
|
||||
long weechat_util_timeval_diff (struct timeval *tv1, struct timeval *tv2);
|
||||
----------------------------------------
|
||||
|
||||
Arguments:
|
||||
@@ -1776,11 +1958,11 @@ C example:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
long diff = weechat_timeval_diff (&tv1, &tv2);
|
||||
long diff = weechat_util_timeval_diff (&tv1, &tv2);
|
||||
----------------------------------------
|
||||
|
||||
weechat_timeval_add
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
weechat_util_timeval_add
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Add interval (in milliseconds) to a timeval structure.
|
||||
|
||||
@@ -1788,7 +1970,7 @@ Prototype:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
void weechat_timeval_add (struct timeval *tv, long interval);
|
||||
void weechat_util_timeval_add (struct timeval *tv, long interval);
|
||||
----------------------------------------
|
||||
|
||||
Arguments:
|
||||
@@ -1800,7 +1982,32 @@ C example:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
weechat_timeval_add (&tv, 2000); /* add 2 seconds */
|
||||
weechat_util_timeval_add (&tv, 2000); /* add 2 seconds */
|
||||
----------------------------------------
|
||||
|
||||
weechat_util_get_time_string
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Get date/time as a string built with "strftime".
|
||||
|
||||
Prototype:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
char *weechat_util_get_time_string (const time_t *date);
|
||||
----------------------------------------
|
||||
|
||||
Arguments:
|
||||
|
||||
* 'date': pointer to date
|
||||
|
||||
C example:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
time_t date = time (NULL);
|
||||
weechat_printf (NULL, "date: %s",
|
||||
weechat_util_get_time_string (&date));
|
||||
----------------------------------------
|
||||
|
||||
[[sorted_lists]]
|
||||
@@ -2339,9 +2546,10 @@ Return value:
|
||||
|
||||
[NOTE]
|
||||
File is NOT created on disk by this function. It will be created by call to
|
||||
function <<_weechat_write_config>>. You should call this function only after
|
||||
adding some sections (with <<_weechat_config_new_section>>) and options (with
|
||||
<<_weechat_config_new_option>>).
|
||||
function <<_weechat_write_config,weechat_write_config>>.
|
||||
You should call this function only after adding some sections (with
|
||||
<<_weechat_config_new_section,weechat_config_new_section>>) and options (with
|
||||
<<_weechat_config_new_option,weechat_config_new_option>>).
|
||||
|
||||
C example:
|
||||
|
||||
@@ -2492,7 +2700,8 @@ my_section_write_cb (void *data, struct t_config_file *config_file,
|
||||
{
|
||||
/* ... */
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
return WEECHAT_CONFIG_WRITE_OK;
|
||||
/* return WEECHAT_CONFIG_WRITE_ERROR; */
|
||||
}
|
||||
|
||||
int
|
||||
@@ -2501,7 +2710,8 @@ my_section_write_default_cb (void *data, struct t_config_file *config_file,
|
||||
{
|
||||
/* ... */
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
return WEECHAT_CONFIG_WRITE_OK;
|
||||
/* return WEECHAT_CONFIG_WRITE_ERROR; */
|
||||
}
|
||||
|
||||
int
|
||||
@@ -2511,7 +2721,8 @@ my_section_create_option_cb (void *data, struct t_config_file *config_file,
|
||||
{
|
||||
/* ... */
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
return WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE;
|
||||
/* return WEECHAT_CONFIG_OPTION_SET_ERROR; */
|
||||
}
|
||||
|
||||
int
|
||||
@@ -2521,7 +2732,8 @@ my_section_delete_option_cb (void *data, struct t_config_file *config_file,
|
||||
{
|
||||
/* ... */
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
return WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED;
|
||||
/* return WEECHAT_CONFIG_OPTION_UNSET_ERROR; */
|
||||
}
|
||||
|
||||
/* standard section, user can not add/delete options */
|
||||
@@ -2563,19 +2775,19 @@ def my_section_read_cb(data, config_file, section, option_name, value):
|
||||
|
||||
def my_section_write_cb(data, config_file, section_name):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
return weechat.WEECHAT_CONFIG_WRITE_OK
|
||||
|
||||
def my_section_write_default_cb(data, config_file, section_name):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
return weechat.WEECHAT_CONFIG_WRITE_OK
|
||||
|
||||
def my_section_create_option_cb(data, config_file, section, option_name, value):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
return weechat.WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE
|
||||
|
||||
def my_section_delete_option_cb(data, config_file, section, option):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
return weechat.WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED
|
||||
|
||||
section = weechat.config_new_section(config_file, "section1", 1, 1,
|
||||
"my_section_read_cb", "",
|
||||
@@ -3114,7 +3326,7 @@ Arguments:
|
||||
|
||||
[NOTE]
|
||||
You can set value to null only if it is allowed for option (see
|
||||
<<_weechat_config_new_option>>).
|
||||
<<_weechat_config_new_option,weechat_config_new_option>>).
|
||||
|
||||
Return value:
|
||||
|
||||
@@ -3337,7 +3549,7 @@ Script (Python):
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
weechat.config_option_is_null(option)
|
||||
is_null = weechat.config_option_is_null(option)
|
||||
|
||||
# example
|
||||
if weechat.config_option_is_null(option):
|
||||
@@ -3384,7 +3596,7 @@ Script (Python):
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
weechat.config_option_default_is_null(option)
|
||||
is_null = weechat.config_option_default_is_null(option)
|
||||
|
||||
# example
|
||||
if weechat.config_option_default_is_null(option):
|
||||
@@ -4831,9 +5043,7 @@ def my_command_cb(data, buffer, args):
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
hook = weechat.hook_command("myfilter", "description of myfilter",
|
||||
"[list] | [enable|disable|toggle [name]] | "
|
||||
"[add name plugin.buffer tags regex] | "
|
||||
"[del name|-all]",
|
||||
"[list] | [enable|disable|toggle [name]] | [add name plugin.buffer tags regex] | [del name|-all]",
|
||||
"description of arguments...",
|
||||
"list"
|
||||
" || enable %(filters_names)"
|
||||
@@ -4862,7 +5072,7 @@ struct t_hook *weechat_hook_command_run (const char *command,
|
||||
|
||||
Arguments:
|
||||
|
||||
* 'command': command to hook, may start or end with "*" as joker
|
||||
* 'command': command to hook, can start or end with "*" as joker
|
||||
* 'callback': function called when command is run, arguments:
|
||||
** 'void *data': pointer
|
||||
** 'struct t_gui_buffer *buffer': buffer where command is executed
|
||||
@@ -5163,7 +5373,7 @@ struct t_hook *weechat_hook_connect (const char *proxy,
|
||||
int (*callback)(void *data,
|
||||
int status,
|
||||
int gnutls_rc,
|
||||
const char *errpr,
|
||||
const char *error,
|
||||
const char *ip_address),
|
||||
void *callback_data);
|
||||
----------------------------------------
|
||||
@@ -5180,6 +5390,7 @@ Arguments:
|
||||
* 'gnutls_cb': GnuTLS callback (optional)
|
||||
* 'gnutls_dhkey_size': size of the key used during the Diffie-Hellman Key
|
||||
Exchange (GnuTLS)
|
||||
* 'local_hostname': local hostname to use for connection (optional)
|
||||
* 'callback': function called when connection is ok or failed, arguments:
|
||||
** 'void *data': pointer
|
||||
** 'int status': connection status:
|
||||
@@ -5389,17 +5600,27 @@ Arguments:
|
||||
|
||||
* 'signal': signal to catch, can begin or end with "*":
|
||||
|
||||
[width="80%",cols="^1,^3,^3,5",options="header"]
|
||||
[width="100%",cols="^1,^3,^4,5",options="header"]
|
||||
|========================================
|
||||
| Plugin | Signal | Arguments | Description
|
||||
|
||||
| irc | xxx,irc_in_yyy ^1^ | string: message |
|
||||
irc message from server (before irc plugin uses it)
|
||||
| irc | xxx,irc_in_yyy ^(1)^ | string: message |
|
||||
irc message from server (before irc plugin uses it,
|
||||
signal sent only if message is *not* ignored)
|
||||
|
||||
| irc | xxx,irc_in2_yyy ^1^ | string: message |
|
||||
irc message from server (after irc plugin uses it)
|
||||
| irc | xxx,irc_in2_yyy ^(1)^ | string: message |
|
||||
irc message from server (after irc plugin uses it,
|
||||
signal sent only if message is *not* ignored)
|
||||
|
||||
| irc | xxx,irc_out_yyy ^1^ | string: message |
|
||||
| irc | xxx,irc_raw_in_yyy ^(1)^ | string: message |
|
||||
irc message from server (before irc plugin uses it,
|
||||
signal sent even if message is ignored)
|
||||
|
||||
| irc | xxx,irc_raw_in2_yyy ^(1)^ | string: message |
|
||||
irc message from server (after irc plugin uses it,
|
||||
signal sent even if message is ignored)
|
||||
|
||||
| irc | xxx,irc_out_yyy ^(1)^ | string: message |
|
||||
irc message sent to server
|
||||
|
||||
| irc | irc_ctcp | string: message |
|
||||
@@ -5477,6 +5698,9 @@ Arguments:
|
||||
| weechat | buffer_type_changed | pointer: buffer |
|
||||
type of buffer changed
|
||||
|
||||
| weechat | day_changed | string: new date, format: "2010-01-31" |
|
||||
day of system date has changed
|
||||
|
||||
| weechat | debug_dump | - |
|
||||
dump request
|
||||
|
||||
@@ -5513,8 +5737,17 @@ Arguments:
|
||||
| weechat | key_pressed | string: key pressed |
|
||||
key pressed
|
||||
|
||||
| weechat | nicklist_changed | - |
|
||||
nicklist has changed
|
||||
| weechat | nicklist_group_added | string: buffer pointer + "," + group name |
|
||||
group added in nicklist
|
||||
|
||||
| weechat | nicklist_group_removed | string: buffer pointer + "," + group name |
|
||||
group removed from nicklist
|
||||
|
||||
| weechat | nicklist_nick_added | string: buffer pointer + "," + nick name |
|
||||
nick added in nicklist
|
||||
|
||||
| weechat | nicklist_nick_removed | string: buffer pointer + "," + nick name |
|
||||
nick removed from nicklist
|
||||
|
||||
| weechat | partial_completion | - |
|
||||
partial completion happened
|
||||
@@ -5563,10 +5796,13 @@ Arguments:
|
||||
|
||||
| xfer | xfer_resume_ready | pointer: infolist with xfer info |
|
||||
xfer resume ready
|
||||
|
||||
| xfer | xfer_ended | pointer: infolist with xfer info |
|
||||
xfer has ended
|
||||
|========================================
|
||||
|
||||
[NOTE]
|
||||
^1^ 'xxx' is IRC server name, 'yyy' is IRC command name.
|
||||
^(1)^ 'xxx' is IRC server name, 'yyy' is IRC command name.
|
||||
|
||||
* 'callback': function called when signal is received, arguments:
|
||||
** 'void *data': pointer
|
||||
@@ -5607,7 +5843,7 @@ Script (Python):
|
||||
hook = weechat.hook_signal(signal, callback, callback_data)
|
||||
|
||||
# example
|
||||
def my_signal_cb(data, signal, type_data, signal_data):
|
||||
def my_signal_cb(data, signal, signal_data):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
@@ -5631,7 +5867,8 @@ void weechat_hook_signal_send (const char *signal, const char *type_data,
|
||||
Arguments:
|
||||
|
||||
* 'signal': signal to send
|
||||
* 'type_data': type of data sent with signal (see <<_weechat_hook_signal>>)
|
||||
* 'type_data': type of data sent with signal (see
|
||||
<<_weechat_hook_signal,weechat_hook_signal>>)
|
||||
* 'signal_data': data sent with signal
|
||||
|
||||
C example:
|
||||
@@ -5724,6 +5961,7 @@ Prototype:
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
struct t_hook *weechat_hook_completion (const char *completion_item,
|
||||
const char *description,
|
||||
int (*callback)(void *data,
|
||||
const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
@@ -5735,13 +5973,15 @@ Arguments:
|
||||
|
||||
* 'completion_item': name of completion item, after you can use '%(name)' in
|
||||
a command hooked (argument 'completion')
|
||||
* 'description': description of completion
|
||||
* 'callback': function called when completion item is used (user is completing
|
||||
something using this item), artuments:
|
||||
** 'void *data': pointer
|
||||
** 'const char *completion_item': name of completion item
|
||||
** 'struct t_gui_buffer *buffer': buffer where completion is made
|
||||
** 'struct t_gui_completion *completion': structure used to add words for
|
||||
completion (see <<_weechat_hook_completion_list_add>>)
|
||||
completion (see
|
||||
<<_weechat_hook_completion_list_add,weechat_hook_completion_list_add>>)
|
||||
* 'callback_data': pointer given to callback when it is called by WeeChat
|
||||
|
||||
[NOTE]
|
||||
@@ -5770,6 +6010,7 @@ my_completion_cb (void *data, const char *completion_item,
|
||||
}
|
||||
|
||||
struct t_hook *my_completion_hook = weechat_hook_completion ("plugin_item",
|
||||
"my custom completion!",
|
||||
&my_completion_cb, NULL);
|
||||
----------------------------------------
|
||||
|
||||
@@ -5778,7 +6019,7 @@ Script (Python):
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
hook = weechat.hook_completion(completion_item, callback, callback_data)
|
||||
hook = weechat.hook_completion(completion_item, description, callback, callback_data)
|
||||
|
||||
# example
|
||||
def my_completion_cb(data, completion_item, buffer, completion):
|
||||
@@ -5786,7 +6027,8 @@ def my_completion_cb(data, completion_item, buffer, completion):
|
||||
weechat.hook_completion_list_add(completion, "test_word2", 0, weechat.WEECHAT_LIST_POS_SORT)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
hook = weechat.hook_completion("plugin_item", "my_completion_cb", "")
|
||||
hook = weechat.hook_completion("plugin_item", "my custom completion!",
|
||||
"my_completion_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
weechat_hook_completion_list_add
|
||||
@@ -5814,7 +6056,7 @@ Arguments:
|
||||
** 'WEECHAT_LIST_POS_BEGINNING': beginning of list
|
||||
** 'WEECHAT_LIST_POS_END': end of list
|
||||
|
||||
C example: see <<_weechat_hook_completion>>.
|
||||
C example: see <<_weechat_hook_completion,weechat_hook_completion>>.
|
||||
|
||||
Script (Python):
|
||||
|
||||
@@ -5871,21 +6113,26 @@ Arguments:
|
||||
any string |
|
||||
string with IRC color codes, or without color
|
||||
|
||||
| irc | irc_in_xxx ^1^ |
|
||||
| irc | irc_in_xxx ^(1)^ |
|
||||
server name |
|
||||
content of message received from IRC server |
|
||||
new content of message
|
||||
|
||||
| irc | irc_out_xxx ^1^ |
|
||||
| irc | irc_out_xxx ^(1)^ |
|
||||
server name |
|
||||
content of message about to be sent to IRC server |
|
||||
new content of message
|
||||
|
||||
| weechat | bar_condition_yyy ^2^ |
|
||||
| weechat | bar_condition_yyy ^(2)^ |
|
||||
string with window pointer ("0x123..") |
|
||||
empty string |
|
||||
"1" to display bar, "0" to hide it
|
||||
|
||||
| weechat | history_add |
|
||||
string with buffer pointer ("0x123..") |
|
||||
input buffer (from user) to add in command history (buffer and global) |
|
||||
string added to command history
|
||||
|
||||
| weechat | input_text_content |
|
||||
string with buffer pointer ("0x123..") |
|
||||
input buffer (from user) |
|
||||
@@ -5908,8 +6155,8 @@ Arguments:
|
||||
|========================================
|
||||
|
||||
[NOTE]
|
||||
^1^ 'xxx' is IRC command name. +
|
||||
^2^ 'yyy' is bar name.
|
||||
^(1)^ 'xxx' is IRC command name. +
|
||||
^(2)^ 'yyy' is bar name.
|
||||
|
||||
* 'callback': function called when modifier is used, arguments:
|
||||
** 'void *data': pointer
|
||||
@@ -6021,6 +6268,7 @@ Prototype:
|
||||
----------------------------------------
|
||||
struct t_hook *weechat_hook_info (const char *info_name,
|
||||
const char *description,
|
||||
const char *args_description,
|
||||
const char *(*callback)(void *data,
|
||||
const char *info_name,
|
||||
const char *arguments),
|
||||
@@ -6031,6 +6279,7 @@ Arguments:
|
||||
|
||||
* 'info_name': name of info
|
||||
* 'description': description
|
||||
* 'args_description': description of arguments (optional, can be NULL)
|
||||
* 'callback': function called when info is asked, arguments:
|
||||
** 'void *data': pointer
|
||||
** 'const char *info_name': name of info
|
||||
@@ -6054,8 +6303,9 @@ my_info_cb (void *data, const char *info_name, const char *arguments)
|
||||
|
||||
/* add info "my_info" */
|
||||
struct t_hook *my_info_hook = weechat_hook_info ("my_info",
|
||||
"Some info",
|
||||
&my_info_cb, NULL);
|
||||
"Some info",
|
||||
"Info about arguments",
|
||||
&my_info_cb, NULL);
|
||||
----------------------------------------
|
||||
|
||||
Script (Python):
|
||||
@@ -6063,13 +6313,14 @@ Script (Python):
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
hook = weechat.hook_info(info_name, description, callback, callback_data)
|
||||
hook = weechat.hook_info(info_name, description, args_description, callback, callback_data)
|
||||
|
||||
# example
|
||||
def my_info_cb(data, info_name, arguments):
|
||||
return "some_info"
|
||||
|
||||
hook = weechat.hook_info("my_info", "Some info", "my_info_cb", "")
|
||||
hook = weechat.hook_info("my_info", "Some info", "Info about arguments",
|
||||
"my_info_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
weechat_hook_infolist
|
||||
@@ -6083,6 +6334,8 @@ Prototype:
|
||||
----------------------------------------
|
||||
struct t_hook *weechat_hook_infolist (const char *infolist_name,
|
||||
const char *description,
|
||||
const char *pointer_description,
|
||||
const char *args_description,
|
||||
const char *(*callback)(void *data,
|
||||
const char *infolist_name,
|
||||
void *pointer,
|
||||
@@ -6094,6 +6347,8 @@ Arguments:
|
||||
|
||||
* 'infolist_name': name of infolist
|
||||
* 'description': description
|
||||
* 'pointer_description': description of pointer (optional, can be NULL)
|
||||
* 'args_description': description of arguments (optional, can be NULL)
|
||||
* 'callback': function called when infolist is asked, arguments:
|
||||
** 'void *data': pointer
|
||||
** 'const char *infolist_name': name of infolist
|
||||
@@ -6125,6 +6380,8 @@ my_infolist_cb (void *data, const char *infolist_name, void *pointer,
|
||||
/* add infolist "my_infolist" */
|
||||
struct t_hook *my_infolist = weechat_hook_infolist ("my_infolist",
|
||||
"Infolist with some data",
|
||||
"Info about pointer",
|
||||
"Info about arguments",
|
||||
&my_infolist_cb, NULL);
|
||||
----------------------------------------
|
||||
|
||||
@@ -6133,7 +6390,8 @@ Script (Python):
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
hook = weechat.hook_infolist(infolist_name, description, callback, callback_data)
|
||||
hook = weechat.hook_infolist(infolist_name, description, pointer_description,
|
||||
args_description, callback, callback_data)
|
||||
|
||||
# example
|
||||
def my_infolist_cb(data, infolist_name, pointer, arguments):
|
||||
@@ -6141,7 +6399,9 @@ def my_infolist_cb(data, infolist_name, pointer, arguments):
|
||||
# ...
|
||||
return my_infolist
|
||||
|
||||
hook = weechat.hook_infolist("my_infolist", "Infolist with some data", "my_infolist_cb", "")
|
||||
hook = weechat.hook_infolist("my_infolist", "Infolist with some data",
|
||||
"Info about pointer", "Info about arguments",
|
||||
"my_infolist_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
weechat_unhook
|
||||
@@ -6585,20 +6845,36 @@ Arguments:
|
||||
* 'buffer': buffer pointer
|
||||
* 'property': property name:
|
||||
** 'number': number of buffer (starts with 1)
|
||||
** 'num_displayed': number of windows displaying buffer
|
||||
** 'layout_number': number of buffer saved in layout
|
||||
** 'type': buffer type (0: formatted, 1: free content)
|
||||
** 'notify': notify level for buffer
|
||||
** 'num_displayed': number of windows displaying buffer
|
||||
** 'active': 1 if buffer is active, 0 if buffer is merged and not selected
|
||||
** 'print_hooks_enabled': 1 if print hooks are enabled, otherwise 0
|
||||
** 'lines_hidden': 1 if at least one line is hidden on buffer (filtered), or 0
|
||||
if all lines are displayed
|
||||
** 'prefix_max_length': max length for prefix in this buffer
|
||||
** 'time_for_each_line': 1 if time is displayed for each line in buffer
|
||||
(default), otherwise 0
|
||||
** 'nicklist': 1 if nicklist is enabled, otherwise 0
|
||||
** 'nicklist_case_sensitive': 1 if nicks are case sensitive, otherwise 0
|
||||
** 'nicklist_max_length': max length for a nick
|
||||
** 'nicklist_display_groups': 1 if groups are displayed, otherwise 0
|
||||
** 'nicklist_visible_count': number of nicks/groups displayed
|
||||
** 'input': 1 if input is enabled, otherwise 0
|
||||
** 'input_get_unknown_commands': 1 if unknown commands are sent to input
|
||||
callback, otherwise 0
|
||||
** 'input_size': input size (in bytes)
|
||||
** 'input_length': input length (number of chars)
|
||||
** 'input_pos': cursor position in buffer input
|
||||
** 'input_1st_display': first char displayed on screen
|
||||
** 'num_history': number of commands in history
|
||||
** 'text_search': text search type:
|
||||
*** 0: no search at this moment
|
||||
*** 1: backward search (direction: oldest messages)
|
||||
*** 2: forward search (direction: newest messages)
|
||||
** 'text_search_exact': 1 if text search is case sensitive
|
||||
** 'text_search_found': 1 if text found, otherwise 0
|
||||
** 'input_pos': cursor position in buffer input
|
||||
|
||||
Return value:
|
||||
|
||||
@@ -6644,8 +6920,11 @@ Arguments:
|
||||
buffer)
|
||||
** 'name': name of buffer
|
||||
** 'short_name': short name of buffer
|
||||
** 'tilte': title of buffer
|
||||
** 'title': title of buffer
|
||||
** 'input': input text
|
||||
** 'text_search_input': input saved before text search
|
||||
** 'highlight_words': list of words to highlight
|
||||
** 'highlight_tags': list of tags to highlight
|
||||
** 'localvar_xxx': get content of local variable "xxx" (replace "xxx" by the
|
||||
name of variable to read)
|
||||
|
||||
@@ -6746,7 +7025,7 @@ Arguments:
|
||||
"-": disable hotlist (global setting, buffer pointer is not used) +
|
||||
priority: add buffer to hotlist with this priority
|
||||
|
||||
| unread | (N/A) |
|
||||
| unread | - |
|
||||
set unread marker after last line of buffer
|
||||
|
||||
| display | "1", "auto" |
|
||||
@@ -6769,14 +7048,14 @@ Arguments:
|
||||
| notify | "0", "1", "2", "3" |
|
||||
set notify level for buffer: "0" = never add to hotlist, "1" = add for
|
||||
highlights only, "2" = add for highlights and messages, "3" = add for all
|
||||
messages
|
||||
messages
|
||||
|
||||
| title | any string |
|
||||
set new title for buffer
|
||||
|
||||
| time_for_each_line | "0" or "1" |
|
||||
"0" to hide time for all lines in buffer, "1" to see time for all lines
|
||||
(default for a new buffer)
|
||||
(default for a new buffer)
|
||||
|
||||
| nicklist | "0" or "1" |
|
||||
"0" to remove nicklist for buffer, "1" to add nicklist for buffer
|
||||
@@ -6790,7 +7069,14 @@ Arguments:
|
||||
| highlight_words | "-" or comma separated list of words |
|
||||
"-" is a special value to disable any highlight on this buffer, or comma
|
||||
separated list of words to highlight in this buffer, for example:
|
||||
"abc,def,ghi"
|
||||
"abc,def,ghi"
|
||||
|
||||
| highlight_words_add | comma separated list of words |
|
||||
comma separated list of words to highlight in this buffer, these words are
|
||||
added to existing highlighted words in buffer
|
||||
|
||||
| highlight_words_del | comma separated list of words |
|
||||
comma separated list of words to remove from highlighted words on buffer
|
||||
|
||||
| highlight_tags | comma separated list of tags |
|
||||
comma separated list of tags to highlight in this buffer
|
||||
@@ -6799,7 +7085,7 @@ Arguments:
|
||||
bind a new key 'xxx', specific to this buffer, value is command to execute
|
||||
for this key
|
||||
|
||||
| key_unbind_xxx | (N/A) |
|
||||
| key_unbind_xxx | - |
|
||||
unbind key 'xxx' for this buffer
|
||||
|
||||
| input | any string |
|
||||
@@ -6817,7 +7103,7 @@ Arguments:
|
||||
set new value for local variable 'xxx' (variable is created if it does not
|
||||
exist)
|
||||
|
||||
| localvar_del_xxx | (N/A) |
|
||||
| localvar_del_xxx | - |
|
||||
remove local variable 'xxx'
|
||||
|========================================
|
||||
|
||||
@@ -7822,7 +8108,7 @@ Arguments:
|
||||
* 'bar': bar pointer
|
||||
* 'property': name, hidden, priority, conditions, position, filling_top_bottom,
|
||||
filling_left_right, size, size_max, color_fg, color_delim, color_bg,
|
||||
separator, items (see <<_weechat_bar_new>>)
|
||||
separator, items (see <<_weechat_bar_new,weechat_bar_new>>)
|
||||
* 'value': new value for property
|
||||
|
||||
Return value:
|
||||
@@ -8092,7 +8378,7 @@ weechat_printf (NULL, "Current WeeChat version is: %s (compiled on %s)",
|
||||
weechat_info_get ("version", NULL),
|
||||
weechat_info_get ("date", NULL));
|
||||
weechat_printf (NULL, "WeeChat home is: %s",
|
||||
weechat_info_get ("weechat_dir"));
|
||||
weechat_info_get ("weechat_dir", NULL));
|
||||
----------------------------------------
|
||||
|
||||
Script (Python):
|
||||
@@ -8105,7 +8391,7 @@ value = weechat.info_get(info_name, arguments)
|
||||
# example
|
||||
weechat.prnt("", "Current WeeChat version is: %s (compiled on %s)"
|
||||
% (weechat.info_get("version", ""), weechat.info_get("date", ""))
|
||||
weechat.prnt("", "WeeChat home is: %s" % weechat.info_get("weechat_dir"))
|
||||
weechat.prnt("", "WeeChat home is: %s" % weechat.info_get("weechat_dir", ""))
|
||||
----------------------------------------
|
||||
|
||||
[[infolists]]
|
||||
@@ -8920,9 +9206,9 @@ Prototype:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
struct t_upgrade_file *weechat_upgrade_write_object (struct t_upgrade_file *upgrade_file,
|
||||
int object_id,
|
||||
struct t_infolist *infolist);
|
||||
int weechat_upgrade_write_object (struct t_upgrade_file *upgrade_file,
|
||||
int object_id,
|
||||
struct t_infolist *infolist);
|
||||
----------------------------------------
|
||||
|
||||
Arguments:
|
||||
@@ -8954,7 +9240,7 @@ Script (Python):
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
weechat.upgrade_write_object(upgrade_file, object_id, infolist)
|
||||
rc = weechat.upgrade_write_object(upgrade_file, object_id, infolist)
|
||||
|
||||
# example
|
||||
weechat.upgrade_write_object(upgrade_file, 1, infolist)
|
||||
@@ -8969,12 +9255,12 @@ Prototype:
|
||||
|
||||
[source,C]
|
||||
----------------------------------------
|
||||
struct t_upgrade_file *weechat_upgrade_read (struct t_upgrade_file *upgrade_file,
|
||||
int (*callback_read)(void *data,
|
||||
struct t_upgrade_file *upgrade_file,
|
||||
int object_id,
|
||||
struct t_infolist *infolist),
|
||||
void *callback_read_data);
|
||||
int weechat_upgrade_read (struct t_upgrade_file *upgrade_file,
|
||||
int (*callback_read)(void *data,
|
||||
struct t_upgrade_file *upgrade_file,
|
||||
int object_id,
|
||||
struct t_infolist *infolist),
|
||||
void *callback_read_data);
|
||||
----------------------------------------
|
||||
|
||||
Arguments:
|
||||
@@ -9009,7 +9295,7 @@ Script (Python):
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# prototype
|
||||
weechat.upgrade_read(upgrade_file, callback_read, callback_read_data)
|
||||
rc = weechat.upgrade_read(upgrade_file, callback_read, callback_read_data)
|
||||
|
||||
# example
|
||||
def my_upgrade_read_cb(upgrade_file, object_id, infolist):
|
||||
|
||||
+522
-204
@@ -46,9 +46,9 @@ Some things are specific to languages:
|
||||
* tcl:
|
||||
** functions are called with `weechat::xxx arg1 arg2 ...`
|
||||
|
||||
[[register]]
|
||||
Register
|
||||
~~~~~~~~
|
||||
[[register_function]]
|
||||
Register function
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
All WeeChat scripts must "register" themselves to WeeChat, and this must be
|
||||
first WeeChat function called in script.
|
||||
@@ -71,10 +71,6 @@ Arguments:
|
||||
* 'charset': string, script charset (optional, if your script is UTF-8, you
|
||||
can use blank value here, because UTF-8 is default charset)
|
||||
|
||||
[[script_example]]
|
||||
Script example
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
Example of script, for each language:
|
||||
|
||||
* perl:
|
||||
@@ -139,11 +135,11 @@ You have to use command, depending on language:
|
||||
You can make link in directory 'language/autoload' to autoload script when
|
||||
WeeChat is starting.
|
||||
|
||||
For example with perl:
|
||||
For example with Python:
|
||||
|
||||
----------------------------------------
|
||||
$ cd ~/.weechat/perl/autoload
|
||||
$ ln -s ../script.pl
|
||||
$ cd ~/.weechat/python/autoload
|
||||
$ ln -s ../script.py
|
||||
----------------------------------------
|
||||
|
||||
[[differences_with_c_api]]
|
||||
@@ -156,8 +152,8 @@ in API: prototype, arguments, return values, examples.
|
||||
|
||||
It's important to make difference between a 'plugin' and a 'script': a
|
||||
'plugin' is a binary file compiled and loaded with command `/plugin`, whereas
|
||||
a 'script' is a text file loaded with a plugin like 'perl' with command
|
||||
`/perl`.
|
||||
a 'script' is a text file loaded with a plugin like 'python' with command
|
||||
`/python`.
|
||||
|
||||
When your script 'test.py' calls a WeeChat API function, path is like that:
|
||||
|
||||
@@ -176,6 +172,7 @@ previous path:
|
||||
WeeChat core -------> python plugin (python.so) -------> test.py
|
||||
........................................
|
||||
|
||||
[[pointers]]
|
||||
Pointers
|
||||
~~~~~~~~
|
||||
|
||||
@@ -202,6 +199,7 @@ In many functions, for speed reasons, WeeChat does not check if your pointer
|
||||
is correct or not. It's your job to check you're giving a valid pointer,
|
||||
otherwise you may see a nice crash report ;)
|
||||
|
||||
[[callbacks]]
|
||||
Callbacks
|
||||
~~~~~~~~~
|
||||
|
||||
@@ -230,206 +228,526 @@ Script API
|
||||
For more information about functions in API, please read
|
||||
'WeeChat Plugin API Reference'.
|
||||
|
||||
[[script_api_functions]]
|
||||
Functions
|
||||
~~~~~~~~~
|
||||
|
||||
List of functions in script API:
|
||||
|
||||
* general:
|
||||
** 'register'
|
||||
* plugins:
|
||||
** 'plugin_get_name'
|
||||
* strings:
|
||||
** 'charset_set'
|
||||
** 'iconv_to_internal'
|
||||
** 'iconv_from_internal'
|
||||
** 'gettext'
|
||||
** 'ngettext'
|
||||
** 'string_remove_color'
|
||||
* directories:
|
||||
** 'mkdir_home'
|
||||
** 'mkdir'
|
||||
** 'mkdir_parents'
|
||||
* sorted lists:
|
||||
** 'list_new'
|
||||
** 'list_add'
|
||||
** 'list_search'
|
||||
** 'list_casesearch'
|
||||
** 'list_get'
|
||||
** 'list_set'
|
||||
** 'list_next'
|
||||
** 'list_prev'
|
||||
** 'list_string'
|
||||
** 'list_size'
|
||||
** 'list_remove'
|
||||
** 'list_remove_all'
|
||||
** 'list_free'
|
||||
* configuration files:
|
||||
** 'config_new'
|
||||
** 'config_new_section'
|
||||
** 'config_search_section'
|
||||
** 'config_new_option'
|
||||
** 'config_search_option'
|
||||
** 'config_string_to_boolean'
|
||||
** 'config_option_reset'
|
||||
** 'config_option_set'
|
||||
** 'config_option_set_null'
|
||||
** 'config_option_unset'
|
||||
** 'config_option_rename'
|
||||
** 'config_option_is_null'
|
||||
** 'config_option_default_is_null'
|
||||
** 'config_boolean'
|
||||
** 'config_boolean_default'
|
||||
** 'config_integer'
|
||||
** 'config_integer_default'
|
||||
** 'config_string'
|
||||
** 'config_string_default'
|
||||
** 'config_color'
|
||||
** 'config_color_default'
|
||||
** 'config_write_option'
|
||||
** 'config_write_line'
|
||||
** 'config_write'
|
||||
** 'config_read'
|
||||
** 'config_reload'
|
||||
** 'config_option_free'
|
||||
** 'config_section_free_options'
|
||||
** 'config_section_free'
|
||||
** 'config_free'
|
||||
** 'config_get'
|
||||
** 'config_get_plugin'
|
||||
** 'config_is_set_plugin'
|
||||
** 'config_set_plugin'
|
||||
** 'config_unset_plugin'
|
||||
* display:
|
||||
** 'prefix'
|
||||
** 'color'
|
||||
** 'print' (for python: 'prnt')
|
||||
** 'print_date_tags' (for python: 'prnt_date_tags')
|
||||
** 'print_y' (for python: 'prnt_y')
|
||||
** 'log_print'
|
||||
* hooks:
|
||||
** 'hook_command'
|
||||
** 'hook_command_run'
|
||||
** 'hook_timer'
|
||||
** 'hook_fd'
|
||||
** 'hook_process'
|
||||
** 'hook_connect'
|
||||
** 'hook_print'
|
||||
** 'hook_signal'
|
||||
** 'hook_signal_send'
|
||||
** 'hook_config'
|
||||
** 'hook_completion'
|
||||
** 'hook_completion_list_add'
|
||||
** 'hook_modifier'
|
||||
** 'hook_modifier_exec'
|
||||
** 'hook_info'
|
||||
** 'hook_infolist'
|
||||
** 'unhook'
|
||||
** 'unhook_all'
|
||||
* buffers:
|
||||
** 'buffer_new'
|
||||
** 'current_buffer'
|
||||
** 'buffer_search'
|
||||
** 'buffer_search_main'
|
||||
** 'buffer_clear'
|
||||
** 'buffer_close'
|
||||
** 'buffer_merge'
|
||||
** 'buffer_unmerge'
|
||||
** 'buffer_get_integer'
|
||||
** 'buffer_get_string'
|
||||
** 'buffer_get_pointer'
|
||||
** 'buffer_set'
|
||||
** 'buffer_string_replace_local_var'
|
||||
* windows:
|
||||
** 'current_window'
|
||||
** 'window_get_integer'
|
||||
** 'window_get_pointer'
|
||||
** 'window_set_title'
|
||||
* nicklist:
|
||||
** 'nicklist_add_group'
|
||||
** 'nicklist_search_group'
|
||||
** 'nicklist_add_nick'
|
||||
** 'nicklist_search_nick'
|
||||
** 'nicklist_remove_group'
|
||||
** 'nicklist_remove_nick'
|
||||
** 'nicklist_remove_all'
|
||||
* bars:
|
||||
** 'bar_item_search'
|
||||
** 'bar_item_new'
|
||||
** 'bar_item_update'
|
||||
** 'bar_item_remove'
|
||||
** 'bar_search'
|
||||
** 'bar_new'
|
||||
** 'bar_set'
|
||||
** 'bar_update'
|
||||
** 'bar_remove'
|
||||
* commands:
|
||||
** 'command'
|
||||
* infos:
|
||||
** 'info_get'
|
||||
* infolists:
|
||||
** 'infolist_new'
|
||||
** 'infolist_new_item'
|
||||
** 'infolist_new_var_integer'
|
||||
** 'infolist_new_var_string'
|
||||
** 'infolist_new_var_pointer'
|
||||
** 'infolist_new_var_time'
|
||||
** 'infolist_get'
|
||||
** 'infolist_next'
|
||||
** 'infolist_prev'
|
||||
** 'infolist_reset_item_cursor'
|
||||
** 'infolist_fields'
|
||||
** 'infolist_integer'
|
||||
** 'infolist_string'
|
||||
** 'infolist_pointer'
|
||||
** 'infolist_time'
|
||||
** 'infolist_free'
|
||||
* upgrade:
|
||||
** 'upgrade_new'
|
||||
** 'upgrade_write_object'
|
||||
** 'upgrade_read'
|
||||
** 'upgrade_close'
|
||||
[width="100%",cols="^1,10",options="header"]
|
||||
|========================================
|
||||
| Category | Functions
|
||||
| general |
|
||||
register
|
||||
| plugins |
|
||||
plugin_get_name
|
||||
| strings |
|
||||
charset_set, iconv_to_internal, iconv_from_internal, gettext, ngettext, +
|
||||
string_match, string_has_highlight, string_mask_to_regex,
|
||||
string_remove_color, string_is_command_char, string_input_for_buffer
|
||||
| directories |
|
||||
mkdir_home, mkdir, mkdir_parents
|
||||
| sorted lists |
|
||||
list_new, list_add, list_search, list_casesearch, list_get, list_set,
|
||||
list_next, list_prev, list_string, list_size, list_remove, list_remove_all,
|
||||
list_free
|
||||
| configuration files |
|
||||
config_new, config_new_section, config_search_section, config_new_option,
|
||||
config_search_option, +
|
||||
config_string_to_boolean, config_option_reset, config_option_set,
|
||||
config_option_set_null, config_option_unset, config_option_rename,
|
||||
config_option_is_null, config_option_default_is_null, +
|
||||
config_boolean, config_boolean_default, config_integer, config_integer_default,
|
||||
config_string, config_string_default, config_color, config_color_default, +
|
||||
config_write_option, config_write_line, config_write, config_read,
|
||||
config_reload, +
|
||||
config_option_free, config_section_free_options, config_section_free,
|
||||
config_free, +
|
||||
config_get, config_get_plugin, config_is_set_plugin, config_set_plugin,
|
||||
config_unset_plugin
|
||||
| display |
|
||||
prefix, color, print (for python: prnt), print_date_tags (for python:
|
||||
prnt_date_tags), print_y (for python: prnt_y), log_print
|
||||
| hooks |
|
||||
hook_command, hook_command_run, hook_timer, hook_fd, hook_process,
|
||||
hook_connect, hook_print, hook_signal, hook_signal_send, hook_config,
|
||||
hook_completion, hook_completion_list_add, hook_modifier, hook_modifier_exec,
|
||||
hook_info, hook_infolist, unhook, unhook_all
|
||||
| buffers |
|
||||
buffer_new, current_buffer, buffer_search, buffer_search_main, buffer_clear,
|
||||
buffer_close, buffer_merge, buffer_unmerge, buffer_get_integer,
|
||||
buffer_get_string, buffer_get_pointer, buffer_set,
|
||||
buffer_string_replace_local_var
|
||||
| windows |
|
||||
current_window, window_get_integer, window_get_string, window_get_pointer,
|
||||
window_set_title
|
||||
| nicklist |
|
||||
nicklist_add_group, nicklist_search_group, nicklist_add_nick,
|
||||
nicklist_search_nick, nicklist_remove_group, nicklist_remove_nick,
|
||||
nicklist_remove_all
|
||||
| bars |
|
||||
bar_item_search, bar_item_new, bar_item_update, bar_item_remove, bar_search,
|
||||
bar_new, bar_set, bar_update, bar_remove
|
||||
| commands |
|
||||
command
|
||||
| infos |
|
||||
info_get
|
||||
| infolists |
|
||||
infolist_new, infolist_new_item, infolist_new_var_integer,
|
||||
infolist_new_var_string, infolist_new_var_pointer, infolist_new_var_time, +
|
||||
infolist_get, infolist_next, infolist_prev, infolist_fields, infolist_integer,
|
||||
infolist_string, infolist_pointer, infolist_time, infolist_free
|
||||
| upgrade |
|
||||
upgrade_new, upgrade_write_object, upgrade_read, upgrade_close
|
||||
|========================================
|
||||
|
||||
[[script_api_constants]]
|
||||
Constants
|
||||
~~~~~~~~~
|
||||
|
||||
List of constants in script API:
|
||||
|
||||
* 'WEECHAT_RC_OK'
|
||||
* 'WEECHAT_RC_OK_EAT'
|
||||
* 'WEECHAT_RC_ERROR'
|
||||
* 'WEECHAT_CONFIG_READ_OK'
|
||||
* 'WEECHAT_CONFIG_READ_MEMORY_ERROR'
|
||||
* 'WEECHAT_CONFIG_READ_FILE_NOT_FOUND'
|
||||
* 'WEECHAT_CONFIG_WRITE_OK'
|
||||
* 'WEECHAT_CONFIG_WRITE_ERROR'
|
||||
* 'WEECHAT_CONFIG_WRITE_MEMORY_ERROR'
|
||||
* 'WEECHAT_CONFIG_OPTION_SET_OK_CHANGED'
|
||||
* 'WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE'
|
||||
* 'WEECHAT_CONFIG_OPTION_SET_ERROR'
|
||||
* 'WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND'
|
||||
* 'WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET'
|
||||
* 'WEECHAT_CONFIG_OPTION_UNSET_OK_RESET'
|
||||
* 'WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED'
|
||||
* 'WEECHAT_CONFIG_OPTION_UNSET_ERROR'
|
||||
* 'WEECHAT_LIST_POS_SORT'
|
||||
* 'WEECHAT_LIST_POS_BEGINNING'
|
||||
* 'WEECHAT_LIST_POS_END'
|
||||
* 'WEECHAT_HOTLIST_LOW'
|
||||
* 'WEECHAT_HOTLIST_MESSAGE'
|
||||
* 'WEECHAT_HOTLIST_PRIVATE'
|
||||
* 'WEECHAT_HOTLIST_HIGHLIGHT'
|
||||
* 'WEECHAT_HOOK_PROCESS_RUNNING'
|
||||
* 'WEECHAT_HOOK_PROCESS_ERROR'
|
||||
* 'WEECHAT_HOOK_CONNECT_OK'
|
||||
* 'WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND'
|
||||
* 'WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND'
|
||||
* 'WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED'
|
||||
* 'WEECHAT_HOOK_CONNECT_PROXY_ERROR'
|
||||
* 'WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR'
|
||||
* 'WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR'
|
||||
* 'WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR'
|
||||
* 'WEECHAT_HOOK_CONNECT_MEMORY_ERROR'
|
||||
* 'WEECHAT_HOOK_SIGNAL_STRING'
|
||||
* 'WEECHAT_HOOK_SIGNAL_INT'
|
||||
* 'WEECHAT_HOOK_SIGNAL_POINTER'
|
||||
[width="100%",cols="^1,10",options="header"]
|
||||
|========================================
|
||||
| Category | Constants
|
||||
| return codes |
|
||||
WEECHAT_RC_OK, WEECHAT_RC_OK_EAT, WEECHAT_RC_ERROR
|
||||
| configuration files |
|
||||
WEECHAT_CONFIG_READ_OK, WEECHAT_CONFIG_READ_MEMORY_ERROR,
|
||||
WEECHAT_CONFIG_READ_FILE_NOT_FOUND, WEECHAT_CONFIG_WRITE_OK,
|
||||
WEECHAT_CONFIG_WRITE_ERROR, WEECHAT_CONFIG_WRITE_MEMORY_ERROR, +
|
||||
WEECHAT_CONFIG_OPTION_SET_OK_CHANGED, WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE,
|
||||
WEECHAT_CONFIG_OPTION_SET_ERROR, WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND,
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET, WEECHAT_CONFIG_OPTION_UNSET_OK_RESET,
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED, WEECHAT_CONFIG_OPTION_UNSET_ERROR
|
||||
| sorted lists |
|
||||
WEECHAT_LIST_POS_SORT, WEECHAT_LIST_POS_BEGINNING, WEECHAT_LIST_POS_END
|
||||
| hotlist |
|
||||
WEECHAT_HOTLIST_LOW, WEECHAT_HOTLIST_MESSAGE, WEECHAT_HOTLIST_PRIVATE,
|
||||
WEECHAT_HOTLIST_HIGHLIGHT
|
||||
| hook process |
|
||||
WEECHAT_HOOK_PROCESS_RUNNING, WEECHAT_HOOK_PROCESS_ERROR
|
||||
| hook connect |
|
||||
WEECHAT_HOOK_CONNECT_OK, WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND,
|
||||
WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND, WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED,
|
||||
WEECHAT_HOOK_CONNECT_PROXY_ERROR, WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR,
|
||||
WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR, WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR,
|
||||
WEECHAT_HOOK_CONNECT_MEMORY_ERROR
|
||||
| hook signal |
|
||||
WEECHAT_HOOK_SIGNAL_STRING, WEECHAT_HOOK_SIGNAL_INT, WEECHAT_HOOK_SIGNAL_POINTER
|
||||
|========================================
|
||||
|
||||
[[common_tasks]]
|
||||
Common tasks
|
||||
------------
|
||||
|
||||
This chapter shows some common tasks, with examples.
|
||||
Only partial things in API are used here, for full reference, see see
|
||||
'WeeChat Plugin API Reference'.
|
||||
|
||||
[[buffers]]
|
||||
Buffers
|
||||
~~~~~~~
|
||||
|
||||
[[buffers_display_messages]]
|
||||
Display messages
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
An empty string is often used to work with WeeChat core buffer. For other
|
||||
buffers, you must give pointer (as string, see <<pointers,pointers>>).
|
||||
|
||||
Examples:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# display "hello" on core buffer
|
||||
weechat.prnt("", "hello")
|
||||
|
||||
# display prefix "==>" and message "hello" on current buffer
|
||||
# (prefix and message must be separated by tab)
|
||||
weechat.prnt(weechat.current_buffer(), "==>\thello")
|
||||
|
||||
# display error message on core buffer (with error prefix)
|
||||
weechat.prnt("", "%swrong arguments" % weechat.prefix("error"))
|
||||
|
||||
# display message with color on core buffer
|
||||
weechat.prnt("", "text %syellow on blue" % weechat.color("yellow,blue"))
|
||||
|
||||
# search buffer and display message
|
||||
# (full name of buffer is plugin.name, for example: "irc.freenode.#weechat")
|
||||
buffer = weechat.buffer_search("irc", "freenode.#weechat")
|
||||
weechat.prnt(buffer, "message on #weechat channel")
|
||||
|
||||
# other solution to find an IRC buffer (better)
|
||||
# (note that server and channel are separated by a comma)
|
||||
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
|
||||
weechat.prnt(buffer, "message on #weechat channel")
|
||||
----------------------------------------
|
||||
|
||||
[NOTE]
|
||||
Print function is called `print` in Perl/Ruby/Lua/Tcl and `prnt` in Python.
|
||||
|
||||
[[buffers_send_text]]
|
||||
Send text to buffer
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
You can send text or command to a buffer. This is exactly like if you type text
|
||||
on command line and press [Enter].
|
||||
|
||||
Examples:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# execute command "/help" on core buffer
|
||||
weechat.command("", "/help")
|
||||
|
||||
# send "hello" to #weechat IRC channel (users on channel will see message)
|
||||
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
|
||||
weechat.command(buffer, "hello")
|
||||
----------------------------------------
|
||||
|
||||
[[buffers_new]]
|
||||
Create new buffer
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
You can create a new buffer in your script, then use it for displaying messages.
|
||||
|
||||
Two callbacks can be called (they are optional): one for input data (when you
|
||||
type some text and press [Enter] on buffer), the other is called when buffer is
|
||||
closed (for example by `/buffer close`).
|
||||
|
||||
Example:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# callback for data received in input
|
||||
def buffer_input_cb(data, buffer, input_data):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# callback called when buffer is closed
|
||||
def buffer_close_cb(data, buffer):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# create buffer
|
||||
buffer = weechat.buffer_new("mybuffer", "buffer_input_cb", "", "buffer_close_cb", "")
|
||||
|
||||
# set title
|
||||
weechat.buffer_set(buffer, "title", "This is title for my buffer.")
|
||||
|
||||
# disable logging, by setting local variable "no_log" to "1"
|
||||
weechat.buffer_set(buffer, "localvar_set_no_log", "1")
|
||||
----------------------------------------
|
||||
|
||||
[[buffers_properties]]
|
||||
Buffer properties
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
You can read buffer properties, as string, integer or pointer.
|
||||
|
||||
Examples:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
buffer = weechat.current_buffer()
|
||||
|
||||
number = weechat.buffer_get_integer(buffer, "number")
|
||||
name = weechat.buffer_get_string(buffer, "name")
|
||||
short_name = weechat.buffer_get_string(buffer, "short_name")
|
||||
----------------------------------------
|
||||
|
||||
It is possible to add, read or delete local variables in buffer:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# add local variable
|
||||
weechat.buffer_set(buffer, "localvar_set_myvar", "my_value")
|
||||
|
||||
# read local variable
|
||||
myvar = weechat.buffer_get_string(buffer, "localvar_myvar")
|
||||
|
||||
# delete local variable
|
||||
weechat.buffer_set(buffer, "localvar_del_myvar", "")
|
||||
----------------------------------------
|
||||
|
||||
To see local variables of a buffer, do this command in WeeChat:
|
||||
|
||||
----------------------------------------
|
||||
/buffer localvar
|
||||
----------------------------------------
|
||||
|
||||
[[hooks]]
|
||||
Hooks
|
||||
~~~~~
|
||||
|
||||
[[hook_command]]
|
||||
Add new command
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
Add a custom command with `hook_command`. You can use a custom completion
|
||||
template to complete arguments of your command.
|
||||
|
||||
Example:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
def my_command_cb(data, buffer, args):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
hook = weechat.hook_command("myfilter", "description of myfilter",
|
||||
"[list] | [enable|disable|toggle [name]] | [add name plugin.buffer tags regex] | [del name|-all]",
|
||||
"description of arguments...",
|
||||
"list"
|
||||
" || enable %(filters_names)"
|
||||
" || disable %(filters_names)"
|
||||
" || toggle %(filters_names)"
|
||||
" || add %(filters_names) %(buffers_plugins_names)|*"
|
||||
" || del %(filters_names)|-all",
|
||||
"my_command_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
And then in WeeChat:
|
||||
|
||||
----------------------------------------
|
||||
/help myfilter
|
||||
|
||||
/myfilter arguments...
|
||||
----------------------------------------
|
||||
|
||||
[[hook_timer]]
|
||||
Add a timer
|
||||
^^^^^^^^^^^
|
||||
|
||||
Add a timer with `hook_timer`.
|
||||
|
||||
Example:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
def timer_cb(data, remaining_calls):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# timer called each minute when second is 00
|
||||
weechat.hook_timer(60 * 1000, 60, 0, "timer_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
[[hook_process]]
|
||||
Run a background process
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
You can run a background process with `hook_process`. Your callback will be
|
||||
called when data is ready. It may be called many times.
|
||||
|
||||
For the last call to your callback, 'rc' is set to 0 or positive value, it's
|
||||
return code of command.
|
||||
|
||||
Example:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# Display versions of Linux kernels.
|
||||
kernel_txt = ""
|
||||
|
||||
def kernel_process_cb(data, command, rc, stdout, stderr):
|
||||
""" Callback reading command output. """
|
||||
global kernel_txt
|
||||
if stdout != "":
|
||||
kernel_txt += stdout
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", kernel_txt)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process("python -c \"import urllib; " \
|
||||
"print urllib.urlopen('http://www.kernel.org/kdist/finger_banner').read()\"",
|
||||
10 * 1000, "kernel_process_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
[[config_options]]
|
||||
Config / options
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
[[config_options_set_script]]
|
||||
Set options for script
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Function `config_is_set_plugin` is used to check if an option is set or not,
|
||||
and `config_set_plugin` to set option.
|
||||
|
||||
Example:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
script_options = {
|
||||
"option1" : "value1",
|
||||
"option2" : "value2",
|
||||
"option3" : "value3",
|
||||
}
|
||||
for option, default_value in script_options.iteritems():
|
||||
if not weechat.config_is_set_plugin(option):
|
||||
weechat.config_set_plugin(option, default_value)
|
||||
----------------------------------------
|
||||
|
||||
[[config_options_detect_changes]]
|
||||
Detect changes
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
You must use `hook_config` to be notified if user changes some script options.
|
||||
|
||||
Example:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
SCRIPT_NAME = "myscript"
|
||||
|
||||
# ...
|
||||
|
||||
def config_cb(data, option, value):
|
||||
""" Callback called when a script option is changed. """
|
||||
# for example, read all script options to script variables...
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# ...
|
||||
|
||||
weechat.hook_config("plugins.var.python." + SCRIPT_NAME + ".*", "config_cb", "")
|
||||
# for other languages, change "python" with your language ("perl", "ruby", "lua" or "tcl")
|
||||
----------------------------------------
|
||||
|
||||
[[config_options_weechat]]
|
||||
Read WeeChat options
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Function `config_get` returns pointer to option. Then, depending on option type,
|
||||
you must call `config_string`, `config_boolean`, `config_integer` or
|
||||
`config_color`.
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# string
|
||||
weechat.prnt("", "value of option weechat.look.item_time_format is: %s"
|
||||
% (weechat.config_string(weechat.config_get("weechat.look.item_time_format"))))
|
||||
|
||||
# boolean
|
||||
weechat.prnt("", "value of option weechat.look.day_change is: %d"
|
||||
% (weechat.config_boolean(weechat.config_get("weechat.look.day_change"))))
|
||||
|
||||
# integer
|
||||
weechat.prnt("", "value of option weechat.look.scroll_page_percent is: %d"
|
||||
% (weechat.config_integer(weechat.config_get("weechat.look.scroll_page_percent"))))
|
||||
|
||||
# color
|
||||
weechat.prnt("", "value of option weechat.color.chat_delimiters is: %s"
|
||||
% (weechat.config_color(weechat.config_get("weechat.color.chat_delimiters"))))
|
||||
----------------------------------------
|
||||
|
||||
[[irc]]
|
||||
IRC
|
||||
~~~
|
||||
|
||||
[[irc_catch_messages]]
|
||||
Catch messages
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
IRC plugin sends two signals for a message received (`xxx` is IRC internal
|
||||
server name, `yyy` is IRC command name like JOIN, QUIT, PRIVMSG, 301, ..):
|
||||
|
||||
xxxx,irc_in_yyy::
|
||||
signal sent before processing message
|
||||
|
||||
xxx,irc_in2_yyy::
|
||||
signal sent after processing message
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
def join_cb(data, signal, signal_data):
|
||||
# signal is for example: "freenode,irc_in2_join"
|
||||
# signal_data is IRC message, for example: ":nick!user@host JOIN :#channel"
|
||||
nick = weechat.info_get("irc_nick_from_host", signal_data)
|
||||
server = signal.split(",")[0]
|
||||
channel = signal_data.split(":")[-1]
|
||||
buffer = weechat.info_get("irc_buffer", "%s,%s" % (server, channel))
|
||||
if buffer:
|
||||
weechat.prnt(buffer, "Eheh, %s has joined this channel!" % nick)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# it is useful here to use "*" as server, to catch JOIN messages on all IRC
|
||||
# servers
|
||||
weechat.hook_signal("*,irc_in2_join", "join_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
[[infos]]
|
||||
Infos
|
||||
~~~~~
|
||||
|
||||
[[infos_weechat_version]]
|
||||
WeeChat version
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
The best way to check version is to ask "version_number" and make integer
|
||||
comparison with hexidecimal version number.
|
||||
|
||||
Example:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
version = weechat.info_get("version_number", "") or 0
|
||||
if int(version) >= 0x00030200:
|
||||
weechat.prnt("", "This is WeeChat 0.3.2 or newer")
|
||||
else:
|
||||
weechat.prnt("", "This is WeeChat 0.3.1 or older")
|
||||
----------------------------------------
|
||||
|
||||
[NOTE]
|
||||
Versions < = 0.3.1.1 return empty string for 'info_get("version_number")' so you
|
||||
must check that value returned is *not* empty.
|
||||
|
||||
To get version as string:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# this will display for example "Version 0.3.2"
|
||||
weechat.prnt("", "Version %s" % weechat.info_get("version", ""))
|
||||
----------------------------------------
|
||||
|
||||
[[infos_other]]
|
||||
Other infos
|
||||
^^^^^^^^^^^
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# WeeChat home directory, for example: "/home/xxxx/.weechat"
|
||||
weechat.prnt("", "WeeChat home dir: %s" % weechat.info_get("weechat_dir", ""))
|
||||
|
||||
# keyboard inactivity
|
||||
weechat.prnt("", "Inactivity since %s seconds" % weechat.info_get("inactivity", ""))
|
||||
----------------------------------------
|
||||
|
||||
[[infolists]]
|
||||
Infolists
|
||||
~~~~~~~~~
|
||||
|
||||
[[infolists_read]]
|
||||
Read an infolist
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
You can read infolist built by WeeChat or other plugins.
|
||||
|
||||
Example:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# read infolist "buffer", to get list of buffers
|
||||
infolist = weechat.infolist_get("buffer", "", "")
|
||||
if infolist:
|
||||
while weechat.infolist_next(infolist):
|
||||
name = weechat.infolist_string(infolist, "name")
|
||||
weechat.prnt("", "buffer: %s" % name)
|
||||
weechat.infolist_free(infolist)
|
||||
----------------------------------------
|
||||
|
||||
[IMPORTANT]
|
||||
Don't forget to call `infolist_free` to free memory used by infolist, because
|
||||
WeeChat will not automatically free memory.
|
||||
|
||||
+264
-27
@@ -59,10 +59,14 @@ Binary packages
|
||||
|
||||
Binary packages are available for many distributions, including:
|
||||
|
||||
* Debian (or any Debian compatible distribution): `apt-get install weechat`
|
||||
* Debian (or any Debian compatible distribution):
|
||||
`apt-get install weechat-curses`
|
||||
* Mandriva/RedHat (or any RPM compatible distribution):
|
||||
`rpm -i /path/to/weechat-x.y.z-1.i386.rpm`
|
||||
* Gentoo: `emerge weechat`
|
||||
* Arch Linux: `pacman -S weechat`
|
||||
* Fedora Core: `yum install weechat`
|
||||
* Sourcemage: `cast weechat`
|
||||
|
||||
Some additional packages may be useful, like weechat-plugins.
|
||||
|
||||
@@ -75,9 +79,39 @@ Source package
|
||||
|
||||
WeeChat can be compiled with cmake or autotools (cmake is recommended way).
|
||||
|
||||
[[dependencies]]
|
||||
Dependencies
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Following table shows list of packages that are required or optional to
|
||||
compile WeeChat.
|
||||
|
||||
[width="80%",cols="4,^2,13",options="header"]
|
||||
|========================================
|
||||
| Package ^(1)^ | Required | Feature
|
||||
| cmake | *yes* | build (autotools still possible, but cmake is recommended)
|
||||
| libncursesw5-dev ^(2)^ | *yes* | ncurses interface
|
||||
| libgcrypt11-dev | no | SASL authentication with IRC server using DH-BLOWFISH mechanism
|
||||
| libgnutls-dev | no | SSL connection to IRC server
|
||||
| libaspell-dev | no | aspell plugin
|
||||
| libperl-dev | no | perl plugin
|
||||
| python-dev | no | python plugin
|
||||
| ruby1.8-dev | no | ruby plugin
|
||||
| liblua5.1-0-dev | no | lua plugin
|
||||
| tcl-dev | no | tcl plugin
|
||||
| asciidoc (>= 8.2) | no | build documentation (HTML files)
|
||||
| source-highlight | no | syntax highlight for sources in HTML documentation
|
||||
|========================================
|
||||
|
||||
[NOTE]
|
||||
^(1)^ Name comes from the Debian GNU/Linux distribution, versions and package
|
||||
names may be different in different distributions and versions. +
|
||||
^(2)^ WeeChat can compile with libncurses5-dev, but it is *NOT* recommended (you
|
||||
will have display bugs with wide chars).
|
||||
|
||||
[[compile_with_cmake]]
|
||||
With cmake
|
||||
^^^^^^^^^^
|
||||
Compile with cmake
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
* Installation in system directories (requires 'root' privileges):
|
||||
|
||||
@@ -100,8 +134,8 @@ $ make install
|
||||
----------------------------------------
|
||||
|
||||
[[compile_with_autotools]]
|
||||
With autotools
|
||||
^^^^^^^^^^^^^^
|
||||
Compile with autotools
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
* Installation in system directories (requires 'root' privileges):
|
||||
|
||||
@@ -138,7 +172,97 @@ If you're using autotools (and not cmake), execute this script:
|
||||
$ ./autogen.sh
|
||||
----------------------------------------
|
||||
|
||||
Then follow instructions for source package (see <<source_package>>).
|
||||
Then follow instructions for source package (see
|
||||
<<source_package,source package>>).
|
||||
|
||||
[[report_crashes]]
|
||||
Report crashes
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
If you experienced crashes, or if you want to report any future WeeChat crash,
|
||||
you have to:
|
||||
|
||||
* compile it with debug info (or install binary package with debug info)
|
||||
* enable 'core' files on your system
|
||||
* install gdb
|
||||
|
||||
[[debug_info]]
|
||||
Debug info
|
||||
^^^^^^^^^^
|
||||
|
||||
If you're compiling with cmake:
|
||||
|
||||
----------------------------------------
|
||||
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
|
||||
----------------------------------------
|
||||
|
||||
If you're compiling with autotools, debug is default (`--with-debug=1`).
|
||||
|
||||
If you installed a binary package, then install package 'weechat-dbg'.
|
||||
|
||||
[[core_files]]
|
||||
Core files
|
||||
^^^^^^^^^^
|
||||
|
||||
To enable 'core' files, you have to use `ulimit` command.
|
||||
|
||||
For example under Linux with 'bash' shell, add this line to your `~/.bashrc`:
|
||||
|
||||
----------------------------------------
|
||||
ulimit -c unlimited
|
||||
----------------------------------------
|
||||
|
||||
Or max size:
|
||||
|
||||
----------------------------------------
|
||||
ulimit -c 200000
|
||||
----------------------------------------
|
||||
|
||||
[[gdb_backtrace]]
|
||||
Get backtrace with gdb
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
When WeeChat crashes, your system will create a file 'core' or 'core.12345'
|
||||
('12345' is process id).
|
||||
This file is created in directory where you have run WeeChat (this is *not*
|
||||
directory where WeeChat is installed!).
|
||||
|
||||
For example if 'weechat-curses' is installed in '/usr/bin/' and 'core' file is
|
||||
in '/home/xxx/', then run gdb with this command:
|
||||
|
||||
----------------------------------------
|
||||
gdb /usr/bin/weechat-curses /home/xxx/core
|
||||
----------------------------------------
|
||||
|
||||
Then under gdb, use command `bt` to display backtrace.
|
||||
You will see something like that:
|
||||
|
||||
----------------------------------------
|
||||
(gdb) bt
|
||||
#0 0xffffe424 in __kernel_vsyscall ()
|
||||
#1 0xb76208e0 in raise () from /lib/i686/cmov/libc.so.6
|
||||
#2 0xb7623e15 in abort () from /lib/i686/cmov/libc.so.6
|
||||
#3 0x08083940 in weechat_shutdown (return_code=1, crash=1) at /some_path/src/core/weechat.c:357
|
||||
#4 0x08098aaa in debug_sigsegv () at /some_path/src/core/wee-debug.c:155
|
||||
#5 <signal handler called>
|
||||
#6 0xb7656681 in vsnprintf () from /lib/i686/cmov/libc.so.6
|
||||
#7 0xb763dd22 in snprintf () from /lib/i686/cmov/libc.so.6
|
||||
#8 0xb7258674 in irc_protocol_cmd_join (server=0x8165138, command=0xb727c187 "join", argc=3, argv=0x889e840, argv_eol=0x889e858)
|
||||
at /some_path/src/plugins/irc/irc-protocol.c:520
|
||||
#9 0xb7265c6e in irc_protocol_recv_command (server=0x8165138, entire_line=0x889e7e0 ":nick!nick@127.0.0.1 JOIN :#test",
|
||||
command=0x889d080 "JOIN") at /some_path/src/plugins/irc/irc-protocol.c:4077
|
||||
#10 0xb726a2c6 in irc_server_msgq_flush () at /some_path/src/plugins/irc/irc-server.c:1614
|
||||
#11 0xb726a4da in irc_server_recv_cb (data=0x8165138, fd=8) at /some_path/src/plugins/irc/irc-server.c:1691
|
||||
#12 0x0809a797 in hook_fd_exec (read_fds=0xbfcf8074, write_fds=0xbfcf7ff4, exception_fds=0xbfcf7f74)
|
||||
at /some_path/src/core/wee-hook.c:1133
|
||||
#13 0x08060af0 in gui_main_loop () at /some_path/src/gui/curses/gui-curses-main.c:330
|
||||
#14 0x08083b10 in main (argc=3, argv=0xbfcf81d4) at /some_path/src/core/weechat.c:419
|
||||
----------------------------------------
|
||||
|
||||
You must report this trace to developers, and tell them what action caused this
|
||||
crash.
|
||||
|
||||
Thank you for your help!
|
||||
|
||||
|
||||
[[usage]]
|
||||
@@ -171,6 +295,9 @@ Command line arguments:
|
||||
-p, --no-plugin::
|
||||
Disable plugins auto-load
|
||||
|
||||
-s, --no-script::
|
||||
Disable scripts auto-load
|
||||
|
||||
-v, --version::
|
||||
Display WeeChat version
|
||||
|
||||
@@ -188,7 +315,8 @@ created, with default options. The default configuration file is:
|
||||
'~/.weechat/weechat.conf'.
|
||||
|
||||
You can edit this file at your convenience to configure WeeChat or you can set
|
||||
parameters with `/set` command in WeeChat (see <<weechat_commands>>).
|
||||
parameters with `/set` command in WeeChat (see
|
||||
<<weechat_commands,WeeChat commands>>).
|
||||
|
||||
[[screen_layout]]
|
||||
Screen layout
|
||||
@@ -677,24 +805,25 @@ attribute.
|
||||
|
||||
Color codes for ^Cc are:
|
||||
|
||||
[width="20%",cols="^1m,2"]
|
||||
[width="35%",cols="^1m,3,3",options="header"]
|
||||
|========================================
|
||||
| 00 | white
|
||||
| 01 | black
|
||||
| 02 | dark blue
|
||||
| 03 | dark green
|
||||
| 04 | light red
|
||||
| 05 | dark red
|
||||
| 06 | magenta
|
||||
| 07 | orange
|
||||
| 08 | yellow
|
||||
| 09 | light green
|
||||
| 10 | cyan
|
||||
| 11 | light cyan
|
||||
| 12 | light blue
|
||||
| 13 | light magenta
|
||||
| 14 | gray
|
||||
| 15 | light gray (white)
|
||||
| Code | IRC | WeeChat (curses)
|
||||
| 00 | white | white
|
||||
| 01 | black | black
|
||||
| 02 | dark blue | blue
|
||||
| 03 | dark green | green
|
||||
| 04 | light red | lightred
|
||||
| 05 | dark red | red
|
||||
| 06 | magenta | magenta
|
||||
| 07 | orange | brown
|
||||
| 08 | yellow | yellow
|
||||
| 09 | light green | lightgreen
|
||||
| 10 | cyan | cyan
|
||||
| 11 | light cyan | lightcyan
|
||||
| 12 | light blue | lightblue
|
||||
| 13 | light magenta | lightmagenta
|
||||
| 14 | gray | default
|
||||
| 15 | light gray | white
|
||||
|========================================
|
||||
|
||||
Example: display of "hello everybody!" with "hello" in light blue bold and
|
||||
@@ -710,7 +839,9 @@ WeeChat options (weechat.conf)
|
||||
|
||||
include::autogen/user/weechat_options.txt[]
|
||||
|
||||
Colors for Curses GUI are:
|
||||
[[curses_colors]]
|
||||
Colors for Curses GUI
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
[width="50%",cols="^3m,8"]
|
||||
|========================================
|
||||
@@ -777,7 +908,7 @@ Examples to load, unload or list plugins:
|
||||
|
||||
Default plugins are:
|
||||
|
||||
[width="50%",cols=">1s,5",options="header"]
|
||||
[width="50%",cols="^1,5",options="header"]
|
||||
|========================================
|
||||
| Plugin | Description
|
||||
| alias | Define alias for commands
|
||||
@@ -998,7 +1129,7 @@ IRC plugin
|
||||
The IRC plugin is designed to chat through IRC protocol with other people.
|
||||
|
||||
It is multi-servers, and offers all supported IRC commands including DCC chat
|
||||
and file transfer (via xfer plugin, see <<xfer_plugin>>).
|
||||
and file transfer (via xfer plugin, see <<xfer_plugin,Xfer plugin>>).
|
||||
|
||||
[[irc_command_line_options]]
|
||||
Command line options
|
||||
@@ -1029,6 +1160,111 @@ Commands
|
||||
|
||||
include::autogen/user/irc_commands.txt[]
|
||||
|
||||
[[irc_ssl_certificates]]
|
||||
SSL certificates
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
When connecting to IRC server with SSL, WeeChat checks by default that the
|
||||
connection is fully trusted.
|
||||
|
||||
Some options are used to control SSL connection:
|
||||
|
||||
weechat.network.gnutls_ca_file::
|
||||
path to file with certificate authorities (by default: "%h/ssl/CAs.pem")
|
||||
|
||||
irc.server.xxx.ssl_cert::
|
||||
SSL certificate file used to automatically identify your nick (for example
|
||||
CertFP on oftc, see below)
|
||||
|
||||
irc.server.xxx.ssl_dhkey_size::
|
||||
size of the key used during the Diffie-Hellman Key Exchange (by default:
|
||||
2048)
|
||||
|
||||
irc.server.xxx.ssl_verify::
|
||||
check that the SSL connection is fully trusted (on by default)
|
||||
|
||||
[NOTE]
|
||||
Option "ssl_verify" is on by default, so verification is strict and may fail,
|
||||
even if it was ok with versions prior to 0.3.1.
|
||||
|
||||
[[irc_connect_oftc_with_certificate]]
|
||||
First example: connect to oftc and check certificate
|
||||
++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
* Import certificate in shell:
|
||||
|
||||
----------------------------------------
|
||||
$ mkdir ~/.weechat/ssl
|
||||
$ wget -O ~/.weechat/ssl/CAs.pem http://www.spi-inc.org/secretary/spi-cacert.crt
|
||||
----------------------------------------
|
||||
|
||||
Note: it is possible to concatenate many certificates in file CAs.pem.
|
||||
|
||||
* In WeeChat, with "oftc" server already created:
|
||||
|
||||
----------------------------------------
|
||||
/connect oftc
|
||||
----------------------------------------
|
||||
|
||||
[[irc_connect_oftc_with_certfp]]
|
||||
Second example: connect to oftc using CertFP
|
||||
++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
* Create certificate in shell:
|
||||
|
||||
----------------------------------------
|
||||
$ openssl req -nodes -newkey rsa:2048 -keyout nick.key -x509 -days 365 -out nick.cer
|
||||
$ cat nick.cer nick.key > ~/.weechat/ssl/nick.pem
|
||||
----------------------------------------
|
||||
|
||||
* In WeeChat, with "oftc" server already created:
|
||||
|
||||
----------------------------------------
|
||||
/set irc.server.oftc.ssl_cert "%h/ssl/nick.pem"
|
||||
/connect oftc
|
||||
/msg nickserv cert add
|
||||
----------------------------------------
|
||||
|
||||
For more information, look at http://www.oftc.net/oftc/NickServ/CertFP
|
||||
|
||||
[[irc_smart_filter_join_part_quit]]
|
||||
Smart filter for join/part/quit messages
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
A smart filter is available to filter join/part/quit messages when nick did not
|
||||
say something during past X minutes on channel.
|
||||
|
||||
Smart filter is enabled by default, but you must add a filter to hide lines on
|
||||
buffers, for example:
|
||||
|
||||
----------------------------------------
|
||||
/filter add irc_smart * irc_smart_filter *
|
||||
----------------------------------------
|
||||
|
||||
It is possible to create filter for one channel only or channels beginning with
|
||||
same name (see `/help filter`):
|
||||
|
||||
----------------------------------------
|
||||
/filter add irc_smart_weechat irc.freenode.#weechat irc_smart_filter *
|
||||
/filter add irc_smart_weechats irc.freenode.#weechat* irc_smart_filter *
|
||||
----------------------------------------
|
||||
|
||||
You can hide only join or part/quit with following options:
|
||||
|
||||
----------------------------------------
|
||||
/set irc.look.smart_filter_join on
|
||||
/set irc.look.smart_filter_quit on
|
||||
----------------------------------------
|
||||
|
||||
You can setup delay (in minutes):
|
||||
|
||||
----------------------------------------
|
||||
/set irc.look.smart_filter_delay 5
|
||||
----------------------------------------
|
||||
|
||||
If a nick did not speak during last 5 minutes, its join and/or part/quit will be
|
||||
hidden on channel.
|
||||
|
||||
[[irc_ctcp_replies]]
|
||||
CTCP replies
|
||||
^^^^^^^^^^^^
|
||||
@@ -1130,6 +1366,7 @@ Non-exhaustive list of IRC messages or alias that you can customize:
|
||||
| wallops | | wallops
|
||||
| 221 | | user mode string
|
||||
| 275 | whois | whois (secure connection)
|
||||
| 301 | whois | whois (away)
|
||||
| 303 | | ison
|
||||
| 305 | unaway | unaway
|
||||
| 306 | away | away
|
||||
|
||||
+8
-8
@@ -17,14 +17,14 @@
|
||||
docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_user.fr.txt \
|
||||
weechat_plugin_api.fr.txt \
|
||||
weechat_scripting.fr.txt \
|
||||
weechat_faq.fr.txt \
|
||||
weechat_quickstart.fr.txt \
|
||||
weechat_tester.fr.txt \
|
||||
$(wildcard autogen/user/*.txt) \
|
||||
$(wildcard autogen/plugin_api/*.txt)
|
||||
weechat_user.fr.txt \
|
||||
weechat_plugin_api.fr.txt \
|
||||
weechat_scripting.fr.txt \
|
||||
weechat_faq.fr.txt \
|
||||
weechat_quickstart.fr.txt \
|
||||
weechat_tester.fr.txt \
|
||||
$(wildcard autogen/user/*.txt) \
|
||||
$(wildcard autogen/plugin_api/*.txt)
|
||||
|
||||
all-local: weechat_user.fr.html \
|
||||
weechat_plugin_api.fr.html \
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[width="65%",cols="^1,^2,8",options="header"]
|
||||
|========================================
|
||||
| Plugin | Name | Description
|
||||
| Extension | Nom | Description
|
||||
|
||||
| alias | alias | liste des alias
|
||||
|
||||
| aspell | aspell_langs | liste des langues supportées pour aspell
|
||||
@@ -53,6 +54,10 @@
|
||||
|
||||
| weechat | bars_options | options pour les barres
|
||||
|
||||
| weechat | buffer_properties_get | propriétés qui peuvent être lues sur un tampon
|
||||
|
||||
| weechat | buffer_properties_set | propriétés qui peuvent être changées sur un tampon
|
||||
|
||||
| weechat | buffers_names | noms des tampons
|
||||
|
||||
| weechat | buffers_numbers | numéros des tampons
|
||||
@@ -77,6 +82,8 @@
|
||||
|
||||
| weechat | keys_codes | codes des touches
|
||||
|
||||
| weechat | keys_codes_for_reset | codes des touches pouvant être réinitialisées (touches ajoutées, redéfinies ou supprimées)
|
||||
|
||||
| weechat | nicks | pseudos dans la liste des pseudos du tampon courant
|
||||
|
||||
| weechat | plugins_commands | commandes définies par les extensions
|
||||
|
||||
@@ -1,58 +1,59 @@
|
||||
[width="65%",cols="^1,^2,8",options="header"]
|
||||
[width="100%",cols="^1,^2,5,5,5",options="header"]
|
||||
|========================================
|
||||
| Plugin | Name | Description
|
||||
| alias | alias | liste des alias
|
||||
| Extension | Nom | Description | Pointeur | Paramètres
|
||||
|
||||
| irc | irc_channel | liste des canaux pour un serveur IRC
|
||||
| alias | alias | liste des alias | pointeur vers l'alias (optionnel) | nom d'alias (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| irc | irc_ignore | liste des ignores IRC
|
||||
| irc | irc_channel | liste des canaux pour un serveur IRC | pointeur vers le canal (optionnel) | nom de serveur
|
||||
|
||||
| irc | irc_nick | liste des pseudos pour un canal IRC
|
||||
| irc | irc_ignore | liste des ignores IRC | pointeur vers l'ignore (optionnel) | -
|
||||
|
||||
| irc | irc_server | liste des serveurs IRC
|
||||
| irc | irc_nick | liste des pseudos pour un canal IRC | pointeur vers le pseudo (optionnel) | serveur,canal,pseudo (canal et pseudo sont optionnels)
|
||||
|
||||
| logger | logger_buffer | liste des enregistreurs de tampons (loggers)
|
||||
| irc | irc_server | liste des serveurs IRC | pointeur vers le serveur (optionnel) | nom de serveur (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| lua | lua_script | liste des scripts
|
||||
| logger | logger_buffer | liste des enregistreurs de tampons (loggers) | pointeur vers le logger (optionnel) | -
|
||||
|
||||
| perl | perl_script | liste des scripts
|
||||
| lua | lua_script | liste des scripts | pointeur vers le script (optionnel) | nom de script (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| python | python_script | liste des scripts
|
||||
| perl | perl_script | liste des scripts | pointeur vers le script (optionnel) | nom de script (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| relay | relay | liste des clients pour le relai
|
||||
| python | python_script | liste des scripts | pointeur vers le script (optionnel) | nom de script (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| ruby | ruby_script | liste des scripts
|
||||
| relay | relay | liste des clients pour le relai | pointeur vers le relay (optionnel) | -
|
||||
|
||||
| tcl | tcl_script | liste des scripts
|
||||
| ruby | ruby_script | liste des scripts | pointeur vers le script (optionnel) | nom de script (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| weechat | bar | liste des barres
|
||||
| tcl | tcl_script | liste des scripts | pointeur vers le script (optionnel) | nom de script (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| weechat | bar_item | liste des objets de barres
|
||||
| weechat | bar | liste des barres | pointeur vers la barre (optionnel) | nom de barre (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| weechat | bar_window | liste des fenêtres de barre
|
||||
| weechat | bar_item | liste des objets de barres | pointeur vers l'objet de barre (optionnel) | nom d'objet de barre (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| weechat | buffer | liste des tampons
|
||||
| weechat | bar_window | liste des fenêtres de barre | pointeur vers la fenêtre de barre (optionnel) | -
|
||||
|
||||
| weechat | buffer_lines | lignes d'un tampon
|
||||
| weechat | buffer | liste des tampons | pointeur vers le tampon (optionnel) | nom de tampon (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| weechat | filter | liste des filtres
|
||||
| weechat | buffer_lines | lignes d'un tampon | pointeur vers le tampon | -
|
||||
|
||||
| weechat | history | historique des commandes
|
||||
| weechat | filter | liste des filtres | - | nom de filtre (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| weechat | hook | liste des hooks
|
||||
| weechat | history | historique des commandes | pointeur vers le tampon (si non défini, retourne l'historique global) (optionnel) | -
|
||||
|
||||
| weechat | hotlist | liste des tampons dans la hotlist
|
||||
| weechat | hook | liste des hooks | - | type de hook: command, timer, .. (optionnel)
|
||||
|
||||
| weechat | key | liste des associations de touches
|
||||
| weechat | hotlist | liste des tampons dans la hotlist | - | -
|
||||
|
||||
| weechat | nicklist | pseudos dans la liste des pseudos pour un tampon
|
||||
| weechat | key | liste des associations de touches | - | -
|
||||
|
||||
| weechat | option | liste des options
|
||||
| weechat | nicklist | pseudos dans la liste des pseudos pour un tampon | pointeur vers le tampon | nick_xxx ou group_xxx pour avoir seulement le pseudo/groupe xxx (optionnel)
|
||||
|
||||
| weechat | plugin | liste des extensions
|
||||
| weechat | option | liste des options | - | nom d'option (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| weechat | window | liste des fenêtres
|
||||
| weechat | plugin | liste des extensions | pointeur vers l'extension (optionnel) | nom d'extension (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| xfer | xfer | liste des xfer
|
||||
| weechat | window | liste des fenêtres | pointeur vers la fenêtre (optionnel) | nom de fenêtre (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| xfer | xfer | liste des xfer | pointeur vers le xfer (optionnel) | -
|
||||
|
||||
|========================================
|
||||
|
||||
@@ -1,42 +1,47 @@
|
||||
[width="65%",cols="^1,^2,8",options="header"]
|
||||
[width="100%",cols="^1,^2,6,6",options="header"]
|
||||
|========================================
|
||||
| Plugin | Name | Description
|
||||
| fifo | fifo_filename | nom du tube FIFO
|
||||
| Extension | Nom | Description | Paramètres
|
||||
|
||||
| irc | irc_buffer | retourne le pointeur vers le tampon pour un serveur/canal IRC
|
||||
| fifo | fifo_filename | nom du tube FIFO | -
|
||||
|
||||
| irc | irc_is_channel | 1 si la chaîne est un canal IRC
|
||||
| irc | irc_buffer | retourne le pointeur vers le tampon pour un serveur/canal/pseudo IRC | serveur,canal,pseudo (canal et pseudo sont optionnels)
|
||||
|
||||
| irc | irc_nick | retourne le pseudo utilisé actuellement sur un serveur
|
||||
| irc | irc_is_channel | 1 si la chaîne est un nom de canal IRC valide | nom de canal
|
||||
|
||||
| irc | irc_nick_color | retourne la couleur du pseudo
|
||||
| irc | irc_is_nick | 1 si la chaîne est un pseudo IRC valide | pseudo
|
||||
|
||||
| irc | irc_nick_from_host | retourne le pseudo à partir d'un host IRC
|
||||
| irc | irc_nick | retourne le pseudo utilisé actuellement sur un serveur | nom de serveur
|
||||
|
||||
| weechat | charset_internal | charset interne à WeeChat
|
||||
| irc | irc_nick_color | retourne la couleur du pseudo | pseudo
|
||||
|
||||
| weechat | charset_terminal | charset du terminal
|
||||
| irc | irc_nick_from_host | retourne le pseudo à partir d'un host IRC | host IRC (comme `:pseudo!nom@serveur.com`)
|
||||
|
||||
| weechat | date | date de compilation de WeeChat
|
||||
| weechat | charset_internal | charset interne à WeeChat | -
|
||||
|
||||
| weechat | dir_separator | séparateur de répertoire
|
||||
| weechat | charset_terminal | charset du terminal | -
|
||||
|
||||
| weechat | filters_enabled | 1 si les filtres sont activés
|
||||
| weechat | date | date de compilation de WeeChat | -
|
||||
|
||||
| weechat | inactivity | inactivité du clavier (secondes)
|
||||
| weechat | dir_separator | séparateur de répertoire | -
|
||||
|
||||
| weechat | version | version de WeeChat
|
||||
| weechat | filters_enabled | 1 si les filtres sont activés | -
|
||||
|
||||
| weechat | weechat_dir | répertoire de WeeChat
|
||||
| weechat | inactivity | inactivité du clavier (secondes) | -
|
||||
|
||||
| weechat | weechat_libdir | répertoire "lib" de WeeChat
|
||||
| weechat | version | version de WeeChat | -
|
||||
|
||||
| weechat | weechat_localedir | répertoire "locale" de WeeChat
|
||||
| weechat | version_number | version de WeeChat (sous forme de nombre) | -
|
||||
|
||||
| weechat | weechat_sharedir | répertoire "share" de WeeChat
|
||||
| weechat | weechat_dir | répertoire de WeeChat | -
|
||||
|
||||
| weechat | weechat_site | site WeeChat
|
||||
| weechat | weechat_libdir | répertoire "lib" de WeeChat | -
|
||||
|
||||
| weechat | weechat_site_download | site WeeChat, page de téléchargement
|
||||
| weechat | weechat_localedir | répertoire "locale" de WeeChat | -
|
||||
|
||||
| weechat | weechat_sharedir | répertoire "share" de WeeChat | -
|
||||
|
||||
| weechat | weechat_site | site WeeChat | -
|
||||
|
||||
| weechat | weechat_site_download | site WeeChat, page de téléchargement | -
|
||||
|
||||
|========================================
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
• *`/alias`* `[nom_alias [commande [paramètres]]]`::
|
||||
• *`/alias`* `[[-completion complétion] nom_alias [commande [paramètres]]]`::
|
||||
|
||||
........................................
|
||||
créer un alias pour une commande
|
||||
|
||||
complétion: complétion pour l'alias (optionnel, par défaut la complétion se fait avec la commande cible)
|
||||
nom_alias: nom de l'alias (peut démarrer ou se terminer par "*" pour une liste d'alias)
|
||||
commande: nom de la commande (plusieurs commandes peuvent être séparées par des point-virgules)
|
||||
paramètres: paramètres pour la commande
|
||||
|
||||
Sans paramètre, cette commande liste tous les alias définis.
|
||||
|
||||
Note: dans la commande, les variables spéciales sont remplacées :
|
||||
Note : dans la commande, les variables spéciales sont remplacées :
|
||||
$n: paramètre 'n' (entre 1 et 9)
|
||||
$-m: paramètres de 1 à 'm'
|
||||
$n-: paramètres de 'n' au dernier
|
||||
@@ -19,5 +20,15 @@
|
||||
$nick: pseudo courant
|
||||
$channel: canal courant
|
||||
$server: serveur courant
|
||||
|
||||
Pour supprimer un alias, utilisez la commande /unalias.
|
||||
|
||||
Exemples:
|
||||
alias /split pour diviser la fenêtre horizontalement :
|
||||
/alias split /window splith
|
||||
alias /hello pour dire "hello" sur tous les canaux mais pas sur #weechat :
|
||||
/alias hello /allchan -exclude=#weechat msg * hello
|
||||
alias /forcejoin pour envoyer la commande IRC "forcejoin" avec la complétion de /sajoin :
|
||||
/alias -completion %%sajoin forcejoin /quote forcejoin
|
||||
........................................
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
commande: commande à exécuter
|
||||
paramètres: paramètres pour la commande
|
||||
|
||||
Exemples :
|
||||
Exemples:
|
||||
exécuter '/me teste' sur tous les canaux :
|
||||
/allchan me teste
|
||||
dire 'bonjour' partout sauf sur #weechat :
|
||||
@@ -34,22 +34,13 @@
|
||||
commande: commande à exécuter
|
||||
paramètres: paramètres pour la commande
|
||||
|
||||
Exemples :
|
||||
Exemples:
|
||||
changer de pseudo sur tous les serveurs :
|
||||
/allserv nick newnick
|
||||
positionner l'absence sur tous les serveurs :
|
||||
/allserv away Je suis absent
|
||||
........................................
|
||||
|
||||
• *`/away`* `[-all] [message]`::
|
||||
|
||||
........................................
|
||||
basculer le statut absent
|
||||
|
||||
-all: basculer le statut absent sur tous les serveurs connectés
|
||||
message: message pour l'absence (si pas de message donné, le statut d'absence est supprimé)
|
||||
........................................
|
||||
|
||||
• *`/ban`* `[canal] [pseudo [pseudo ...]]`::
|
||||
|
||||
........................................
|
||||
@@ -59,12 +50,13 @@
|
||||
pseudo: pseudo ou hôte pour le bannissement
|
||||
........................................
|
||||
|
||||
• *`/connect`* `[-all [-nojoin] | nom_serveur [nom_serveur ...] [-nojoin] | nom[/port] [-option[=valeur]] [-nooption]]`::
|
||||
• *`/connect`* `[-all [-nojoin] | -open [-nojoin] | nom_serveur [nom_serveur ...] [-nojoin] | nom[/port] [-option[=valeur]] [-nooption]]`::
|
||||
|
||||
........................................
|
||||
se connecter à un/plusieurs serveur(s) IRC
|
||||
|
||||
-all: se reconnecter à tous les serveurs
|
||||
-all: se connecter à tous les serveurs définis dans la configuration
|
||||
-open: se connecter à tous les serveurs ouverts qui ne sont pas actuellement connectés
|
||||
nom_serveur: nom du serveur interne pour se connecter (le serveur doit avoir été créé par /server add)
|
||||
-nojoin: ne rejoindre aucun canal (même si l'autojoin est activé pour le serveur)
|
||||
nom: nom (ou adresse IP) d'un serveur
|
||||
@@ -107,6 +99,12 @@
|
||||
action: 'send' (envoi de fichier) ou 'chat' (discussion)
|
||||
pseudo: pseudo pour envoyer le fichier ou discuter
|
||||
fichier: nom du fichier (sur la machine locale)
|
||||
|
||||
Exemples:
|
||||
discuter avec le pseudo "toto":
|
||||
/dcc chat toto
|
||||
envoyer le fichier "/home/foo/bar.txt" au pseudo "toto":
|
||||
/dcc send toto /home/foo/bar.txt
|
||||
........................................
|
||||
|
||||
• *`/dehalfop`* `[pseudo [pseudo]]`::
|
||||
@@ -224,9 +222,11 @@
|
||||
pseudo: pseudo à éliminer et bannir
|
||||
commentaire: commentaire pour l'élimination
|
||||
|
||||
Il est possible d'émiliner/bannir avec un masque, le pseudo sera extrait du masque et remplacé par "*", par exemple :
|
||||
/kickban toto!*@host.com
|
||||
bannira "*!*@host.com" puis éliminera "toto".
|
||||
Il est possible d'émiliner/bannir avec un masque, le pseudo sera extrait du masque et remplacé par "*".
|
||||
|
||||
Exemple:
|
||||
bannit "*!*@host.com" puis élimine "toto":
|
||||
/kickban toto!*@host.com
|
||||
........................................
|
||||
|
||||
• *`/kill`* `pseudo commentaire`::
|
||||
@@ -247,13 +247,22 @@
|
||||
masque_serveur: liste des serveurs correspondant au masque
|
||||
........................................
|
||||
|
||||
• *`/list`* `[canal[,canal] [serveur]]`::
|
||||
• *`/list`* `[canal[,canal] [serveur] [-re regexp]]`::
|
||||
|
||||
........................................
|
||||
lister les canaux et leur titre
|
||||
|
||||
canal: canal à lister (une expression régulière est acceptée)
|
||||
canal: canal à lister
|
||||
serveur: nom du serveur
|
||||
regexp: expression régulière utilisée pour filtrer les résultats
|
||||
|
||||
Exemples:
|
||||
lister tous les canaux du serveur (peut être très lent pour les grands réseaux):
|
||||
/list
|
||||
lister le canal #weechat:
|
||||
/list #weechat
|
||||
lister tous les canaux commençant par "#weechat" (peut être très lent pour les grands réseaux):
|
||||
/list -re #weechat.*
|
||||
........................................
|
||||
|
||||
• *`/lusers`* `[masque [cible]]`::
|
||||
@@ -265,6 +274,12 @@
|
||||
cible: serveur pour faire suivre la requête
|
||||
........................................
|
||||
|
||||
• *`/map`*::
|
||||
|
||||
........................................
|
||||
afficher une carte graphique du réseau IRC
|
||||
........................................
|
||||
|
||||
• *`/me`* `message`::
|
||||
|
||||
........................................
|
||||
@@ -479,11 +494,11 @@
|
||||
........................................
|
||||
liste, ajoute ou retire des serveurs IRC
|
||||
|
||||
list: afficher les serveurs (pas de paramètre implique cette liste)
|
||||
list: afficher les serveurs (sans paramètre, cette liste est affichée)
|
||||
listfull: afficher les serveurs avec de l'info détaillée pour chaque
|
||||
add: créer un nouveau serveur
|
||||
nom_serveur: nom du serveur, pour usage interne et affichage
|
||||
nom: nom ou adresse IP du serveur avec port en option (defaut: 6667)
|
||||
nom: nom ou adresse IP du serveur avec port en option (defaut: 6667), plusieurs addresses peuvent être séparées par une virgule
|
||||
temp: créer un serveur temporaire (non sauvé)
|
||||
option: définir l'option pour le serveur (pour une option booléenne, la valeur peut être omise)
|
||||
nooption: définir l'option booléenne à 'off' (par exemple: -nossl)
|
||||
@@ -500,6 +515,7 @@
|
||||
/server add oftc irc.oftc.net/6697 -ssl -autoconnect
|
||||
/server add oftc6 irc6.oftc.net/6697 -ipv6 -ssl
|
||||
/server add freenode2 chat.eu.freenode.net/6667,chat.us.freenode.net/6667
|
||||
/server add freenode3 irc.freenode.net -password=mypass
|
||||
/server copy oftc oftcbis
|
||||
/server rename oftc newoftc
|
||||
/server del freenode
|
||||
|
||||
@@ -43,11 +43,6 @@
|
||||
** type: entier
|
||||
** valeurs: off, local, channel (valeur par défaut: local)
|
||||
|
||||
* *irc.look.display_channel_modes*
|
||||
** description: affiche les modes du canal dans l'objet de barre "buffer_name"
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *irc.look.display_ctcp_blocked*
|
||||
** description: afficher le message CTCP même s'il est bloqué
|
||||
** type: booléen
|
||||
@@ -63,11 +58,6 @@
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *irc.look.display_nick_modes*
|
||||
** description: affiche les modes du pseudo dans l'objet de barre "input_prompt"
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *irc.look.display_old_topic*
|
||||
** description: afficher l'ancien titre lorsque le titre du canal est changé
|
||||
** type: booléen
|
||||
@@ -83,11 +73,31 @@
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "irc_privmsg,irc_notice")
|
||||
|
||||
* *irc.look.item_channel_modes*
|
||||
** description: affiche les modes du canal dans l'objet de barre "buffer_name"
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *irc.look.item_channel_modes_hide_key*
|
||||
** description: cacher la clé du canal si les modes sont affichés dans l'objet de barre "buffer_name" (cela cachera tous les paramètres des modes du canal si le mode +k est défini sur le canal)
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *irc.look.item_display_server*
|
||||
** description: nom de l'objet de barre où est affiché le serveur IRC (pour la barre de statut)
|
||||
** type: entier
|
||||
** valeurs: buffer_plugin, buffer_name (valeur par défaut: buffer_plugin)
|
||||
|
||||
* *irc.look.item_nick_modes*
|
||||
** description: affiche les modes du pseudo dans l'objet de barre "input_prompt"
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *irc.look.item_nick_prefix*
|
||||
** description: affiche le préfixe du pseudo dans l'objet de barre "input_prompt"
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *irc.look.msgbuffer_fallback*
|
||||
** description: tampon cible par défaut pour les options msgbuffer quand la cible est "private" et que le tampon privé n'est pas trouvé
|
||||
** type: entier
|
||||
@@ -123,6 +133,11 @@
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *irc.look.part_closes_buffer*
|
||||
** description: fermer le tampon lorsque /part est exécuté sur un canal
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *irc.look.raw_messages*
|
||||
** description: nombre de messages IRC bruts à sauvegarder en mémoire lorsque le tampon des données brutes est fermé (ces messages seront affichés lors de l'ouverture du tampon des données brutes)
|
||||
** type: entier
|
||||
@@ -141,13 +156,23 @@
|
||||
* *irc.look.smart_filter*
|
||||
** description: filtrer les messages join/part/quit pour un pseudo s'il n'a pas parlé pendant quelques minutes sur le canal (vous devez créer un filtre sur le tag "irc_smart_filter")
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *irc.look.smart_filter_delay*
|
||||
** description: délai pour filtrer les messages join/part/quit (en minutes)
|
||||
** type: entier
|
||||
** valeurs: 1 .. 10080 (valeur par défaut: 5)
|
||||
|
||||
* *irc.look.smart_filter_join*
|
||||
** description: activer le filtre intelligent pour les messages "join"
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *irc.look.smart_filter_quit*
|
||||
** description: activer le filtre intelligent pour les messages "part" et "quit"
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *irc.look.topic_strip_colors*
|
||||
** description: supprimer les couleurs dans le titre (utilisé seulement lors de l'affichage du titre du tampon)
|
||||
** type: booléen
|
||||
@@ -183,6 +208,11 @@
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *irc.network.connection_timeout*
|
||||
** description: délai d'attente (en secondes) entre la connexion TCP au serveur et la réception du message 001, si ce délai est atteint avant que le message 001 soit reçu, WeeChat se déconnectera du serveur
|
||||
** type: entier
|
||||
** valeurs: 1 .. 3600 (valeur par défaut: 60)
|
||||
|
||||
* *irc.network.default_msg_part*
|
||||
** description: message par défaut pour le part (en quittant un canal) ("%v" sera remplacé par la version de WeeChat dans la chaîne)
|
||||
** type: chaîne
|
||||
@@ -288,6 +318,26 @@
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *irc.server_default.sasl_mechanism*
|
||||
** description: mécanisme pour l'authentification SASL
|
||||
** type: entier
|
||||
** valeurs: plain, dh-blowfish (valeur par défaut: plain)
|
||||
|
||||
* *irc.server_default.sasl_password*
|
||||
** description: mot de passe pour l'authentification SASL
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *irc.server_default.sasl_timeout*
|
||||
** description: délai d'attende maximum (en secondes) avant d'abandonner l'authentification SASL
|
||||
** type: entier
|
||||
** valeurs: 1 .. 3600 (valeur par défaut: 15)
|
||||
|
||||
* *irc.server_default.sasl_username*
|
||||
** description: nom d'utilisateur pour l'authentification SASL
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *irc.server_default.ssl*
|
||||
** description: utiliser SSL pour la communication avec le serveur
|
||||
** type: booléen
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *logger.file.mask*
|
||||
** description: masque de fichier par défaut pour les fichiers de log (le format est "repertoire/vers/fichier" ou "fichier", sans le premier "/" car l'option "path" est utilisée pour construire le chemin complet vers le fichier); les variables locales du tampon sont permises
|
||||
** description: masque de fichier par défaut pour les fichiers de log (le format est "repertoire/vers/fichier" ou "fichier", sans le premier "/" car l'option "path" est utilisée pour construire le chemin complet vers le fichier); les variables locales du tampon sont permises; les caractères de formatage de date sont autorisés (voir man strftime)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "$plugin.$name.weechatlog")
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *logger.file.path*
|
||||
** description: chemin pour les fichiers de log WeeChat ("%h" sera remplacé par le répertoire de base WeeChat, par défaut: "~/.weechat")
|
||||
** description: chemin pour les fichiers de log WeeChat; "%h" au début de la chaîne est remplacé par le répertoire de base WeeChat (par défaut: "~/.weechat"); les caractères de formatage de date sont autorisés (voir man strftime)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "%h/logs/")
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
** valeurs: toute chaîne (valeur par défaut: "_")
|
||||
|
||||
* *logger.file.time_format*
|
||||
** description: format de date/heure utilisé dans les fichiers log (voir strftime(3) pour le format de date/heure)
|
||||
** description: format de date/heure utilisé dans les fichiers log (voir man strftime pour le format de date/heure)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "%Y-%m-%d %H:%M:%S")
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/lua`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]`::
|
||||
• *`/lua`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload [nom]] | [unload [nom]]`::
|
||||
|
||||
........................................
|
||||
liste/charge/décharge des scripts
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/perl`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]`::
|
||||
• *`/perl`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload [nom]] | [unload [nom]]`::
|
||||
|
||||
........................................
|
||||
liste/charge/décharge des scripts
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/python`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]`::
|
||||
• *`/python`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload [nom]] | [unload [nom]]`::
|
||||
|
||||
........................................
|
||||
liste/charge/décharge des scripts
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/ruby`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]`::
|
||||
• *`/ruby`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload [nom]] | [unload [nom]]`::
|
||||
|
||||
........................................
|
||||
liste/charge/décharge des scripts
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/tcl`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]`::
|
||||
• *`/tcl`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload [nom]] | [unload [nom]]`::
|
||||
|
||||
........................................
|
||||
liste/charge/décharge des scripts
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
• *`/away`* `[-all] [message]`::
|
||||
|
||||
........................................
|
||||
basculer le statut absent
|
||||
|
||||
-all: basculer le statut absent sur tous les serveurs connectés
|
||||
message: message pour l'absence (si pas de message donné, le statut d'absence est supprimé)
|
||||
........................................
|
||||
|
||||
• *`/bar`* `[add nombarre type[,cond1,cond2,...] position taille separateur objet1,objet2,...] | [default] | [del nombarre|-all] | [set nombarre option valeur] | [hide|show|toggle nombarre] | [scroll nombarre tampon valeur_scroll] | [list] | [listfull] | [listitems]`::
|
||||
|
||||
........................................
|
||||
@@ -44,7 +53,7 @@
|
||||
/bar scroll nicklist * ye
|
||||
........................................
|
||||
|
||||
• *`/buffer`* `[clear [nombre | -merged | -all] | move nombre | merge nombre | unmerge [nombre] | close [n1[-n2]] | list | notify niveau | localvar | set propriété valeur | nombre | nom]`::
|
||||
• *`/buffer`* `[clear [nombre | -merged | -all] | move nombre | merge nombre | unmerge [nombre] | close [n1[-n2]] | list | notify niveau | localvar | set propriété valeur | get propriété | nombre | nom]`::
|
||||
|
||||
........................................
|
||||
gestion des tampons
|
||||
@@ -55,7 +64,7 @@
|
||||
(par défaut ctrl-x bascule entre les tampons mélangés)
|
||||
unmerge: détache le tampon courant des autres tampons portant le même numéro
|
||||
close: ferme le tampon (nombre/intervalle optionnel)
|
||||
list: liste les tampons ouverts (pas de paramètre affiche cette liste)
|
||||
list: liste les tampons ouverts (sans paramètre, cette liste est affichée)
|
||||
notify: définit le niveau de notification pour le tampon courant: ce niveau détermine si le buffer doit être ajouté à la hotlist ou pas:
|
||||
none: jamais
|
||||
highlight: pour les highlights seulement
|
||||
@@ -64,6 +73,7 @@
|
||||
reset: réinitialise à valeur par défaut (all)
|
||||
localvar: affiche la liste des variables locales pour le tampon courant
|
||||
set: modifier une propriété du tampon courant
|
||||
get: afficher une propriété du tampon courant
|
||||
nombre: saute au tampon qui a ce numéro, préfixe possible:
|
||||
'+': saut relatif, ajoute le numéro au courant,
|
||||
'-': saut relatif, soustrait le numéro au courant,
|
||||
@@ -71,15 +81,22 @@
|
||||
nom: saute au tampon par nom (partiel)
|
||||
|
||||
Exemples:
|
||||
effacer le tampon courant: /buffer clear
|
||||
effacer tous les tampons: /buffer clear -all
|
||||
déplacer le tampon: /buffer move 5
|
||||
mélanger avec le tampon core: /buffer merge 1
|
||||
détacher le tampon: /buffer unmerge
|
||||
fermer le tampon courant: /buffer close
|
||||
fermer les tampons 5 à 7: /buffer close 5-7
|
||||
aller sur #weechat: /buffer #weechat
|
||||
aller au tampon suivant: /buffer +1
|
||||
effacer le tampon courant:
|
||||
/buffer clear
|
||||
déplacer le tampon vers le numéro 5:
|
||||
/buffer move 5
|
||||
mélanger avec le tampon core:
|
||||
/buffer merge 1
|
||||
détacher le tampon:
|
||||
/buffer unmerge
|
||||
fermer le tampon courant:
|
||||
/buffer close
|
||||
fermer les tampons 5 à 7:
|
||||
/buffer close 5-7
|
||||
aller sur #weechat:
|
||||
/buffer #weechat
|
||||
aller au tampon suivant:
|
||||
/buffer +1
|
||||
........................................
|
||||
|
||||
• *`/command`* `extension commande`::
|
||||
@@ -124,11 +141,18 @@
|
||||
|
||||
La touche par défaut alt+'=' active/désactive le filtrage.
|
||||
|
||||
Les tags les plus couramment utilisés:
|
||||
no_filter, no_highlight, log0..log9 (niveau de log),
|
||||
notify_message, notify_private, notify_highlight,
|
||||
irc_xxx (xxx est un nom de commande ou nombre, voir /server raw), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info.
|
||||
|
||||
Exemples:
|
||||
utiliser le filtre intelligent IRC pour les messages join/part/quit:
|
||||
/filter add irc_smart * irc_smart_filter *
|
||||
filtrer tous les messages IRC join/part/quit:
|
||||
/filter add joinquit * irc_join,irc_part,irc_quit *
|
||||
filtrer les pseudos afficher en rejoignant les canaux ou avec /names:
|
||||
/filter add nicks * irc_366 *
|
||||
filtrer le pseudo "toto" sur le canal IRC #weechat:
|
||||
/filter add toto irc.freenode.#weechat * toto\t
|
||||
filtrer les lignes contenant le mot "spam":
|
||||
@@ -155,7 +179,7 @@
|
||||
valeur: nombre d'entrées dans l'historique à afficher
|
||||
........................................
|
||||
|
||||
• *`/input`* `return | complete_next | complete_previous | search_next | delete_previous_char | delete_next_char | delete_previous_word | delete_next_word | delete_beginning_of_line | delete_end_of_line | delete_line | clipboard_paste | transpose_chars | move_beginning_of_line | move_end_of_line | move_previous_char | move_next_char | move_previous_word | move_next_word | history_previous | history_next | history_global_previous | history_global_next | jump_smart | jump_last_buffer | jump_previously_visited_buffer | jump_next_visited_buffer | hotlist_clear | grab_key | grab_key_command | scroll_unread | set_unread | set_unread_current_buffer | insert [args]`::
|
||||
• *`/input`* `return | complete_next | complete_previous | search_next | delete_previous_char | delete_next_char | delete_previous_word | delete_next_word | delete_beginning_of_line | delete_end_of_line | delete_line | clipboard_paste | transpose_chars | move_beginning_of_line | move_end_of_line | move_previous_char | move_next_char | move_previous_word | move_next_word | history_previous | history_next | history_global_previous | history_global_next | jump_smart | jump_last_buffer | jump_previously_visited_buffer | jump_next_visited_buffer | hotlist_clear | grab_key | grab_key_command | scroll_unread | set_unread | set_unread_current_buffer | switch_active_buffer | switch_active_buffer_previous | insert [args]`::
|
||||
|
||||
........................................
|
||||
fonctions pour la ligne de commande
|
||||
@@ -163,17 +187,29 @@
|
||||
Cette commande est utilisée par les associations de touches ou les extensions.
|
||||
........................................
|
||||
|
||||
• *`/key`* `[bind touche [commande [args]]] | [unbind touche] | [reset -yes] | [missing]`::
|
||||
• *`/key`* `[list | listdefault | listdiff] | [bind touche [commande [args]]] | [unbind touche] | [reset touche] | [resetall -yes] | [missing]`::
|
||||
|
||||
........................................
|
||||
associer/libérer des touches
|
||||
|
||||
bind: associer une commande à une touche ou afficher la commande associée à la touche
|
||||
unbind: supprimer l'association à une touche
|
||||
reset: restaure les touches aux valeurs par défaut et supprime TOUTES les touches personnelles (utiliser avec précaution !)
|
||||
missing: ajoute les touches manquantes (en utilisant les touches par défaut)
|
||||
list: affiche toutes les touches courantes (sans paramètre, cette liste est affichée)
|
||||
listdefault: affiche les touches par défaut
|
||||
listdiff: affiche les différences entre les touches courantes et celles par défaut (touches ajoutées, redéfinies ou supprimées)
|
||||
bind: associe une commande à une touche ou affiche la commande associée à la touche
|
||||
unbind: supprime l'association à une touche
|
||||
reset: réinitialise une touche à son association par défaut
|
||||
resetall: restaure les touches aux valeurs par défaut et supprime TOUTES les touches personnelles (utiliser avec précaution !)
|
||||
missing: ajoute les touches manquantes (en utilisant les touches par défaut), pratique après installation d'une nouvelle version de WeeChat
|
||||
|
||||
Lors de l'association d'une commande à une touche, il est recommandé d'utiliser la touche alt+k (ou Echap puis k), et puis de presser la touche à associer: cela insère le code de la touche dans la ligne de commande.
|
||||
|
||||
Exemples:
|
||||
touche alt-x pour activer/désactiver la liste des pseudos:
|
||||
/key bind meta-x /bar toggle nicklist
|
||||
touche alt-r pour aller sur le canal IRC #weechat:
|
||||
/key bind meta-r /buffer #weechat
|
||||
restaure l'association par défaut pour la touche alt-r:
|
||||
/key reset meta-r
|
||||
........................................
|
||||
|
||||
• *`/layout`* `[[save | apply | reset] [buffers | windows]]`::
|
||||
@@ -190,6 +226,28 @@
|
||||
Sans paramètre, cette commande affiche la disposition sauvegardée.
|
||||
........................................
|
||||
|
||||
• *`/mute`* `[-current | -buffer nom | -all] commande`::
|
||||
|
||||
........................................
|
||||
exécuter une commande silencieusement
|
||||
|
||||
-current: pas d'affichage sur le tampon courant
|
||||
-buffer: pas d'affichage sur le tampon spécifié
|
||||
nom: nom complet du tampon (exemples: "irc.server.freenode", "irc.freenode.#weechat")
|
||||
-all: pas d'affichage sur TOUS les tampons
|
||||
commande: commande à exécuter silencieusement (un '/' est automatiquement ajouté s'il n'est pas trouvé au début de la commande)
|
||||
|
||||
Si aucune cible n'est spécifiée (-current, -buffer ou -all), alors par défaut seul le tampon core WeeChat sera silencieux.
|
||||
|
||||
Exemples:
|
||||
sauvegarde configuration:
|
||||
/mute save
|
||||
message au canal IRC courant:
|
||||
/mute -current msg * bonjour !
|
||||
message au canal #weechat:
|
||||
/mute -buffer irc.freenode.#weechat msg #weechat bonjour !
|
||||
........................................
|
||||
|
||||
• *`/plugin`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload [nom]] | [unload [nom]]`::
|
||||
|
||||
........................................
|
||||
@@ -301,20 +359,22 @@
|
||||
Cette commande lance à nouveau un binaire WeeChat, il doit donc avoir été compilé ou installé via un gestionnaire de paquet avant de lancer cette commande.
|
||||
........................................
|
||||
|
||||
• *`/uptime`* `[-o]`::
|
||||
• *`/uptime`* `[-o | -ol]`::
|
||||
|
||||
........................................
|
||||
montrer l'uptime de WeeChat
|
||||
|
||||
-o: envoyer l'uptime sur le tampon courant comme entrée
|
||||
-o: envoyer l'uptime sur le tampon courant comme entrée (chaîne en anglais)
|
||||
-ol: envoyer l'uptime sur le tampon courant comme entrée (chaîne traduite)
|
||||
........................................
|
||||
|
||||
• *`/version`* `[-o]`::
|
||||
• *`/version`* `[-o | -ol]`::
|
||||
|
||||
........................................
|
||||
afficher la version de WeeChat et la date de compilation
|
||||
|
||||
-o: envoyer la version sur le tampon courant comme entrée
|
||||
-o: envoyer la version sur le tampon courant comme entrée (chaîne en anglais)
|
||||
-ol: envoyer la version sur le tampon courant comme entrée (chaîne traduite)
|
||||
........................................
|
||||
|
||||
• *`/wait`* `nombre[unité] commande`::
|
||||
@@ -330,12 +390,15 @@
|
||||
h: heures
|
||||
commande: commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')
|
||||
|
||||
Note: la commande est exécutée sur le tampon où /wait a été exécuté (si le tampon n'est pas trouvé, alors la commande est exécutée sur le tampon WeeChat principal).
|
||||
Note : la commande est exécutée sur le tampon où /wait a été exécuté (si le tampon n'est pas trouvé, alors la commande est exécutée sur le tampon WeeChat principal).
|
||||
|
||||
Exemples:
|
||||
rejoindre le canal dans 10 sec: /wait 10 /join #test
|
||||
passer absent dans 15 min: /wait 15m /away -all I'm away
|
||||
dire 'bonjour' dans 2 min: /wait 2m bonjour
|
||||
rejoindre le canal dans 10 sec:
|
||||
/wait 10 /join #test
|
||||
passer absent dans 15 min:
|
||||
/wait 15m /away -all I'm away
|
||||
dire 'bonjour' dans 2 min:
|
||||
/wait 2m bonjour
|
||||
........................................
|
||||
|
||||
• *`/window`* `[list | -1 | +1 | b# | up | down | left | right | splith [pct] | splitv [ptc] | resize pct | merge [all] | page_up | page_down | refresh | scroll | scroll_up | scroll_down | scroll_top | scroll_bottom | scroll_previous_highlight | scroll_next_highlight | zoom]`::
|
||||
@@ -343,7 +406,7 @@
|
||||
........................................
|
||||
gestion des fenêtres
|
||||
|
||||
list: liste les fenêtres ouvertes (pas de paramètre affiche cette liste)
|
||||
list: liste les fenêtres ouvertes (sans paramètre, cette liste est affichée)
|
||||
-1: saute à la fenêtre précédente
|
||||
+1: saute à la fenêtre suivante
|
||||
b#: saute à la fenêtre affichant le tampon #
|
||||
@@ -370,9 +433,13 @@
|
||||
Pour splith et splitv, pct est un pourcentage qui représente la taille de la nouvelle fenêtre, calculée par rapport à la taille de la fenêtre courante. Par exemple 25 signifie créer une fenêtre qui a pour taille: taille_courante / 4
|
||||
|
||||
Exemples:
|
||||
sauter à la fenêtre affichant le tampon 1: /window b1
|
||||
défilement de 2 lignes vers le haut: /window scroll -2
|
||||
défilement de 2 jours vers le haut: /window scroll -2d
|
||||
défilement jusqu'au début du jour courant: /window scroll -d
|
||||
sauter à la fenêtre affichant le tampon 1:
|
||||
/window b1
|
||||
défilement de 2 lignes vers le haut:
|
||||
/window scroll -2
|
||||
défilement de 2 jours vers le haut:
|
||||
/window scroll -2d
|
||||
défilement jusqu'au début du jour courant:
|
||||
/window scroll -d
|
||||
........................................
|
||||
|
||||
|
||||
@@ -208,10 +208,10 @@
|
||||
** type: couleur
|
||||
** valeurs: un nom de couleur (valeur par défaut: green)
|
||||
|
||||
* *weechat.color.nicklist_more*
|
||||
** description: couleur du texte pour les '+' lors du défilement des pseudos dans la liste des pseudos
|
||||
* *weechat.color.nicklist_offline*
|
||||
** description: couleur du texte pour les pseudos déconnectés
|
||||
** type: couleur
|
||||
** valeurs: un nom de couleur (valeur par défaut: lightmagenta)
|
||||
** valeurs: un nom de couleur (valeur par défaut: blue)
|
||||
|
||||
* *weechat.color.nicklist_prefix1*
|
||||
** description: couleur du texte pour le préfixe n°1 de la liste des pseudos
|
||||
@@ -364,7 +364,7 @@
|
||||
** valeurs: none, highlight, message, all (valeur par défaut: all)
|
||||
|
||||
* *weechat.look.buffer_time_format*
|
||||
** description: format de date/heure pour les tampons
|
||||
** description: format de date/heure pour chaque ligne affichée dans les tampons
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "%H:%M:%S")
|
||||
|
||||
@@ -378,6 +378,11 @@
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *weechat.look.command_chars*
|
||||
** description: caractères utilisés pour déterminer si la chaîne entrée est une commande ou non: l'entrée doit démarrer avec un de ces caractères; le slash ("/") est toujours considéré comme un préfixe de commande (exemple: ".$")
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *weechat.look.day_change*
|
||||
** description: affiche un message quand le jour change
|
||||
** type: booléen
|
||||
@@ -523,6 +528,11 @@
|
||||
** type: entier
|
||||
** valeurs: none, line, dotted-line, char (valeur par défaut: dotted-line)
|
||||
|
||||
* *weechat.look.read_marker_always_show*
|
||||
** description: toujours afficher le marqueur de lecture, même s'il est après la dernière ligne du tampon
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *weechat.look.save_config_on_exit*
|
||||
** description: sauvegarder la configuration en quittant
|
||||
** type: booléen
|
||||
@@ -553,13 +563,18 @@
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *weechat.look.time_format*
|
||||
** description: format de date/heure pour les dates converties en chaînes et affichées dans les messages
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "%a, %d %b %Y %T")
|
||||
|
||||
* *weechat.network.gnutls_ca_file*
|
||||
** description: fichier contenant les autorités de certification
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "%h/ssl/CAs.pem")
|
||||
|
||||
* *weechat.plugin.autoload*
|
||||
** description: liste des extensions à charger automatiquement au démarrage, "*" signifie toutes (séparées par des virgules, les noms peuvent être partiels, par exemple "perl" est ok pour "perl.so")
|
||||
** description: liste des extensions à charger automatiquement au démarrage (séparées par des virgules), "*" signifie toutes les extensions trouvées, un nom commençant par "!" est une valeur négative pour empêcher une extension d'être chargée, les noms peuvent commencer ou se terminer par "*" pour indiquer plusieurs extensions (exemples: "*" ou "*,!lua,!tcl")
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "*")
|
||||
|
||||
@@ -603,8 +618,3 @@
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *weechat.startup.weechat_slogan*
|
||||
** description: slogan WeeChat (si vide, le slogan ne sera pas utilisé)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "le client de discussion le plus geek !")
|
||||
|
||||
|
||||
+200
-99
@@ -34,6 +34,7 @@ Quelques fonctionnalités (version > = 0.3.x) :
|
||||
Plus d'infos sur cette page : http://www.weechat.org/features
|
||||
|
||||
|
||||
[[compilation_install]]
|
||||
Compilation / installation
|
||||
--------------------------
|
||||
|
||||
@@ -65,10 +66,6 @@ git et qu'il est moins pratique que de cloner la base git pour installer des
|
||||
mises à jour.
|
||||
|
||||
|
||||
Utilisation de WeeChat
|
||||
----------------------
|
||||
|
||||
|
||||
[[lost]]
|
||||
J'ai lancé WeeChat, mais je suis perdu, que puis-je faire ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -80,19 +77,9 @@ Il est recommandé pour les nouveaux utilisateurs de lire le guide de démarrage
|
||||
rapide (voir la page de doc sur le site).
|
||||
|
||||
|
||||
[[buffer_vs_window]]
|
||||
J'ai entendu parler de "buffer" et "window", quelle est la différence ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Un tampon ('buffer') est composé d'un numéro, un nom, des lignes affichées
|
||||
(ainsi que d'autres données).
|
||||
|
||||
Une fenêtre ('window') est une zone de l'écran affichant un tampon. Il est
|
||||
possible de découper l'écran horizontaleent ou verticalement en plusieurs
|
||||
fenêtres.
|
||||
|
||||
Chaque fenêtre affiche un tampon. Un tampon peut être caché (affiché par
|
||||
aucune fenêtre) ou affiché par une ou plusieurs fenêtres.
|
||||
[[display]]
|
||||
Affichage
|
||||
---------
|
||||
|
||||
|
||||
[[charset]]
|
||||
@@ -159,61 +146,19 @@ Par exemple 'xterm-color' provoque ce genre de problèmes, utilisez
|
||||
Si besoin, corrigez la variable TERM : `export TERM="xxx"`.
|
||||
|
||||
|
||||
[[key_bindings]]
|
||||
Comment puis-je configurer les raccourcis clavier ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[buffer_vs_window]]
|
||||
J'ai entendu parler de "buffer" et "window", quelle est la différence ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Les raccourcis clavier sont modifiables avec la commande /key.
|
||||
Un tampon ('buffer') est composé d'un numéro, un nom, des lignes affichées
|
||||
(ainsi que d'autres données).
|
||||
|
||||
La touche par défaut Meta-k (souvent Alt-k) permet de capturer le code d'une
|
||||
touche et de l'inclure dans la ligne de commande.
|
||||
Une fenêtre ('window') est une zone de l'écran affichant un tampon. Il est
|
||||
possible de découper l'écran horizontaleent ou verticalement en plusieurs
|
||||
fenêtres.
|
||||
|
||||
|
||||
[[openbsd_plugins]]
|
||||
J'utilise OpenBSD et WeeChat ne charge aucune extension, pourquoi ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sous OpenBSD, le nom des extensions se termine par ".so.0.0" (".so" sous
|
||||
Linux).
|
||||
|
||||
Vous devez configurer ça :
|
||||
|
||||
* avec WeeChat < = 0.2.6 : +
|
||||
`/set plugins_extension = ".so.0.0"`
|
||||
* avec WeeChat > = 0.3.x : +
|
||||
`/set weechat.plugin.extension ".so.0.0"`
|
||||
|
||||
Puis: `/plugin autoload`.
|
||||
|
||||
|
||||
[[scripts]]
|
||||
Comment puis-je charger des scripts Perl/Python/Ruby/Lua/Tcl ? Les scripts sont-ils compatibles avec d'autres clients IRC ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Les commandes `/perl`, `/python`, `/ruby`, `/lua` et `/tcl` permettent de
|
||||
charger les scripts (le chemin par défaut est '~/.weechat/<langage>/').
|
||||
|
||||
Les scripts ne sont pas compatibles avec d'autres clients IRC.
|
||||
|
||||
Notes :
|
||||
|
||||
* les scripts dans '~/.weechat/<langage>/autoload/' sont automatiquement chargés
|
||||
par WeeChat lorsqu'il démarre.
|
||||
* l'extension 'tcl' est disponible à partir de la version 0.3.x.
|
||||
|
||||
|
||||
[[change_locale_without_quit]]
|
||||
Je souhaite changer la langue des messages affichés par WeeChat, mais sans quitter WeeChat, est-ce possible ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Oui, il faut utiliser le script python shell.py (disponible sur le site de
|
||||
WeeChat) et taper ces commandes une fois le script chargé :
|
||||
|
||||
/shell setenv LANG=fr_FR.UTF-8
|
||||
/upgrade
|
||||
|
||||
Pour avoir des messages anglais avec encodage UTF-8 pour le terminal, pour les
|
||||
utilisateurs en ISO, vous pouvez taper : `/shell setenv LANG=fr_FR`.
|
||||
Chaque fenêtre affiche un tampon. Un tampon peut être caché (affiché par
|
||||
aucune fenêtre) ou affiché par une ou plusieurs fenêtres.
|
||||
|
||||
|
||||
[[terminal_copy_paste]]
|
||||
@@ -258,23 +203,78 @@ Liste des scripts manipulant des URLs :
|
||||
http://www.weechat.org/scripts/stable/tag/url
|
||||
|
||||
|
||||
[[highlight_notification]]
|
||||
Comment être averti lorsque quelqu'un prononce mon pseudo sur un canal ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[change_locale_without_quit]]
|
||||
Je souhaite changer la langue des messages affichés par WeeChat, mais sans quitter WeeChat, est-ce possible ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Selon la version de WeeChat :
|
||||
Oui, il faut utiliser le script python shell.py (disponible sur le site de
|
||||
WeeChat) et taper ces commandes une fois le script chargé :
|
||||
|
||||
* avec WeeChat < = 0.2.6 : utilisez le script 'sound.pl' (disponible sur la
|
||||
page des scripts), puis configurez une commande système (jouant un son,
|
||||
affichant un message à l'écran, etc...) comme ceci : +
|
||||
`/setp perl.sound.cmd_highlight = "/chemin/vers/commande parametres"`
|
||||
* avec WeeChat > = 0.3.x : utilisez le script 'launcher.pl' (disponible sur la
|
||||
page des scripts), puis configurez une commande système (jouant un son,
|
||||
affichant un message à l'écran, etc...) comme ceci : +
|
||||
`/set plugins.var.perl.launcher.signal.weechat_highlight "/chemin/vers/commande parametres"`
|
||||
/shell setenv LANG=fr_FR.UTF-8
|
||||
/upgrade
|
||||
|
||||
De nombreux autres scripts de notification existent, merci de consulter la
|
||||
liste des extensions/scripts : http://www.weechat.org/scripts
|
||||
Pour avoir des messages anglais avec encodage UTF-8 pour le terminal, pour les
|
||||
utilisateurs en ISO, vous pouvez taper : `/shell setenv LANG=fr_FR`.
|
||||
|
||||
|
||||
[[key_bindings]]
|
||||
Raccourcis clavier
|
||||
------------------
|
||||
|
||||
|
||||
[[meta_keys]]
|
||||
Quelques touches meta (alt + touche) ne fonctionnent pas, pourquoi ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Si vous utilisez certains terminaux comme xterm ou uxterm, quelques touches
|
||||
meta ne fonctionnent pas par défaut. Vous pouvez ajouter cette ligne dans le
|
||||
fichier '~/.Xresources':
|
||||
|
||||
* pour xterm:
|
||||
----------------------------------------
|
||||
XTerm*metaSendsEscape: true
|
||||
----------------------------------------
|
||||
* pour uxterm:
|
||||
----------------------------------------
|
||||
UXTerm*metaSendsEscape: true
|
||||
----------------------------------------
|
||||
|
||||
Puis recharger les ressources (`xrdb -override ~/.Xresources`) ou redémarrez X.
|
||||
|
||||
|
||||
[[customize_key_bindings]]
|
||||
Comment puis-je configurer les raccourcis clavier ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Les raccourcis clavier sont modifiables avec la commande `/key`.
|
||||
|
||||
La touche par défaut Meta-k (souvent Alt-k) permet de capturer le code d'une
|
||||
touche et de l'inclure dans la ligne de commande.
|
||||
|
||||
|
||||
[[irc]]
|
||||
IRC
|
||||
---
|
||||
|
||||
|
||||
[[ignore_vs_filter]]
|
||||
Quelle est la différence entre les commandes /ignore et /filter ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
La commande `/ignore` est une commande IRC, donc elle s'applique uniquement aux
|
||||
tampons IRC (serveurs et canaux).
|
||||
Elle permet d'ignorer des pseudos ou nom d'hôtes pour un serveur ou un canal
|
||||
(la commande ne s'applique pas au contenu des messages).
|
||||
Les messages corespondants sont supprimés par l'extension IRC avant affichage
|
||||
(donc vous ne les verrez jamais).
|
||||
|
||||
La commande `/filter` est une commande "core", donc elle s'applique à n"importe
|
||||
quel tampon.
|
||||
Elle permet de filtrer des lignes dans les tampons à l'aide de tags ou
|
||||
d'expression régulière pour le préfixe et contenu de la ligne.
|
||||
Les lignes filtrées sont simplement cachées, pas supprimées, et il est possible
|
||||
de les voir en désactivant les filtres (par défaut, la touche alt + "="
|
||||
active/désactive les filtres).
|
||||
|
||||
|
||||
[[filter_irc_join_part_quit]]
|
||||
@@ -302,26 +302,127 @@ Selon la version de WeeChat :
|
||||
(`/help filter` pour l'aide)
|
||||
|
||||
|
||||
[[ignore_vs_filter]]
|
||||
Quelle est la différence entre les commandes /ignore et /filter ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[filter_voice_messages]]
|
||||
Comment puis-je filtrer les messages voice (par exemple sur le serveur Bitlbee) ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
La commande `/ignore` est une commande IRC, donc elle s'applique uniquement aux
|
||||
tampons IRC (serveurs et canaux).
|
||||
Elle permet d'ignorer des pseudos ou nom d'hôtes pour un serveur ou un canal
|
||||
(la commande ne s'applique pas au contenu des messages).
|
||||
Les messages corespondants sont supprimés par l'extension IRC avant affichage
|
||||
(donc vous ne les verrez jamais).
|
||||
Il n'est pas facile de filtrer les messages voice, car le mode voice peut être
|
||||
positionné avec d'autres modes dans le même message IRC.
|
||||
|
||||
La commande `/filter` est une commande "core", donc elle s'applique à n"importe
|
||||
quel tampon.
|
||||
Elle permet de filtrer des lignes dans les tampons à l'aide de tags ou
|
||||
d'expression régulière pour le préfixe et contenu de la ligne.
|
||||
Les lignes filtrées sont simplement cachées, pas supprimées, et il est possible
|
||||
de les voir en désactivant les filtres (par défaut, la touche alt + "="
|
||||
active/désactive les filtres).
|
||||
Si vous souhaitez faire cela, c'est probablement parce que Bitlbee utilise le
|
||||
voice pour montrer les utilisateurs absents, et vous recevez plein de messages
|
||||
voice. Par conséquent, vous pouvez changer cela et laisser WeeChat utiliser une
|
||||
couleur spéciale pour les pseudos absents dans la liste des pseudos.
|
||||
|
||||
Sur le canal '&bitlbee', faites :
|
||||
----------------------------------------
|
||||
set away_devoice false
|
||||
----------------------------------------
|
||||
|
||||
Pour vérifier les pseudos absents dans WeeChat, voir la question à propos des
|
||||
<<color_away_nicks,pseudos absents>>.
|
||||
|
||||
|
||||
[[color_away_nicks]]
|
||||
Comment puis-je voir les pseudos absents dans la liste des pseudos ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Vous devez positionner l'option 'irc.network.away_check' avec une valeur
|
||||
positive (minutes entre chaque vérification des pseudos absents).
|
||||
|
||||
Vous pouvez aussi positionner l'option 'irc.network.away_check_max_nicks' pour
|
||||
limiter la vérification d'absence sur les petits canaux seulement.
|
||||
|
||||
Par exemple, pour vérifier les pseudos absents toutes les 5 minutes, pour les
|
||||
canaux avec maximum 25 pseudos :
|
||||
|
||||
----------------------------------------
|
||||
/set irc.network.away_check 5
|
||||
/set irc.network.away_check_max_nicks 25
|
||||
----------------------------------------
|
||||
|
||||
|
||||
[[highlight_notification]]
|
||||
Comment être averti lorsque quelqu'un prononce mon pseudo sur un canal ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Selon la version de WeeChat :
|
||||
|
||||
* avec WeeChat < = 0.2.6 : utilisez le script 'sound.pl' (disponible sur la
|
||||
page des scripts), puis configurez une commande système (jouant un son,
|
||||
affichant un message à l'écran, etc...) comme ceci : +
|
||||
`/setp perl.sound.cmd_highlight = "/chemin/vers/commande parametres"`
|
||||
* avec WeeChat > = 0.3.x : utilisez le script 'launcher.pl' (disponible sur la
|
||||
page des scripts), puis configurez une commande système (jouant un son,
|
||||
affichant un message à l'écran, etc...) comme ceci : +
|
||||
`/set plugins.var.perl.launcher.signal.weechat_highlight "/chemin/vers/commande parametres"`
|
||||
|
||||
De nombreux autres scripts de notification existent, merci de consulter la
|
||||
liste des extensions/scripts : http://www.weechat.org/scripts
|
||||
|
||||
|
||||
[[plugins_scripts]]
|
||||
Extensions / scripts
|
||||
--------------------
|
||||
|
||||
|
||||
[[openbsd_plugins]]
|
||||
J'utilise OpenBSD et WeeChat ne charge aucune extension, pourquoi ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sous OpenBSD, le nom des extensions se termine par ".so.0.0" (".so" sous
|
||||
Linux).
|
||||
|
||||
Vous devez configurer ça :
|
||||
|
||||
* avec WeeChat < = 0.2.6 : +
|
||||
`/set plugins_extension = ".so.0.0"`
|
||||
* avec WeeChat > = 0.3.x : +
|
||||
`/set weechat.plugin.extension ".so.0.0"`
|
||||
|
||||
Puis: `/plugin autoload`.
|
||||
|
||||
|
||||
[[load_scripts]]
|
||||
Comment puis-je charger des scripts Perl/Python/Ruby/Lua/Tcl ? Les scripts sont-ils compatibles avec d'autres clients IRC ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Les commandes `/perl`, `/python`, `/ruby`, `/lua` et `/tcl` permettent de
|
||||
charger les scripts (le chemin par défaut est '~/.weechat/<langage>/').
|
||||
|
||||
Les scripts ne sont pas compatibles avec d'autres clients IRC.
|
||||
|
||||
Notes :
|
||||
|
||||
* les scripts dans '~/.weechat/<langage>/autoload/' sont automatiquement chargés
|
||||
par WeeChat lorsqu'il démarre.
|
||||
* l'extension 'tcl' est disponible à partir de la version 0.3.0.
|
||||
|
||||
|
||||
[[settings]]
|
||||
Réglages
|
||||
--------
|
||||
|
||||
|
||||
[[memory_usage]]
|
||||
Comment configurer WeeChat pour consommer moins de mémoire ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Vous pouvez essayer les astuces suivantes pour consommer moins de mémoire :
|
||||
|
||||
* utiliser la dernière version stable (elle est supposée avoir moins de fuites
|
||||
de mémoire que les versions plus anciennes)
|
||||
* ne pas charger les extensions si vous ne les utilisez pas, par exemple :
|
||||
aspell, fifo, logger, perl, python, ruby, lua, tcl, xfer (utilisé pour les
|
||||
DCC)
|
||||
* charger uniquement les scripts dont vous avez vraiment besoin
|
||||
* réduire la valeur de l'option 'weechat.history.max_lines' (nombre de lignes
|
||||
sauvées en mémoire pour chaque tampon)
|
||||
* réduire la valeur de l'option 'weechat.history.max_commands' (nombre de
|
||||
commandes utilisateur sauvées en mémoire)
|
||||
|
||||
|
||||
[[development]]
|
||||
Développement
|
||||
-------------
|
||||
|
||||
|
||||
+503
-211
File diff suppressed because it is too large
Load Diff
+533
-204
@@ -47,9 +47,9 @@ Quelques choses sont spécifiques aux langages :
|
||||
* tcl :
|
||||
** les fonctions sont appelées par `weechat::xxx arg1 arg2 ...`
|
||||
|
||||
[[register]]
|
||||
Register
|
||||
~~~~~~~~
|
||||
[[register_function]]
|
||||
Fonction register
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
Tous les scripts WeeChat doivent s'enregistrer ("register") auprès de WeeChat,
|
||||
et cela doit être la première fonction WeeChat appelée dans le script.
|
||||
@@ -74,11 +74,7 @@ Paramètres :
|
||||
est UTF-8, vous pouvez utiliser une valeur vide ici, car UTF-8 est le jeu de
|
||||
caractères par défaut)
|
||||
|
||||
[[script_example]]
|
||||
Exemple de script
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
Exemple de script, pour chaque langage :
|
||||
Exemple, pour chaque langage :
|
||||
|
||||
* perl :
|
||||
|
||||
@@ -142,11 +138,11 @@ Vous devez utiliser la commande, dépendant du langage :
|
||||
Vous pouvez faire un lien dans le répertoire 'langage/autoload' pour charger
|
||||
automatiquement le script quand WeeChat démarre.
|
||||
|
||||
Par exemple en perl :
|
||||
Par exemple en Python :
|
||||
|
||||
----------------------------------------
|
||||
$ cd ~/.weechat/perl/autoload
|
||||
$ ln -s ../script.pl
|
||||
$ cd ~/.weechat/python/autoload
|
||||
$ ln -s ../script.py
|
||||
----------------------------------------
|
||||
|
||||
[[differences_with_c_api]]
|
||||
@@ -160,7 +156,7 @@ chaque fonction de l'API : prototype, paramètres, valeurs de retour, exemples.
|
||||
Il est important de bien faire la différence entre une 'extension' et un
|
||||
'script' : une 'extension' est un fichier binaire compilé et chargé avec la
|
||||
commande `/plugin`, tandis qu'un 'script' est un fichier texte chargé par une
|
||||
extension comme 'perl' par la commande `perl`.
|
||||
extension comme 'pyhton' par la commande `/python`.
|
||||
|
||||
Quand votre script 'test.py' appelle une fonction de l'API WeeChat, le chemin
|
||||
est le suivant :
|
||||
@@ -180,6 +176,7 @@ est inversé :
|
||||
WeeChat core -------> extension plugin (python.so) -------> test.py
|
||||
........................................
|
||||
|
||||
[[pointers]]
|
||||
Pointeurs
|
||||
~~~~~~~~~
|
||||
|
||||
@@ -209,6 +206,7 @@ si votre pointeur est correct ou pas. Il est de votre responsabilité de
|
||||
vérifier que vous donnez un pointeur valide, sinon vous pourriez voir un joli
|
||||
rapport de crash ;)
|
||||
|
||||
[[callbacks]]
|
||||
Callbacks
|
||||
~~~~~~~~~
|
||||
|
||||
@@ -239,206 +237,537 @@ API script
|
||||
Pour plus d'informations sur les fonctions de l'API, merci de consulter la
|
||||
'Référence API Extension WeeChat'.
|
||||
|
||||
[[script_api_functions]]
|
||||
Fonctions
|
||||
~~~~~~~~~
|
||||
|
||||
Liste des fonctions de l'API script :
|
||||
|
||||
* général :
|
||||
** 'register'
|
||||
* extensions :
|
||||
** 'plugin_get_name'
|
||||
* chaînes :
|
||||
** 'charset_set'
|
||||
** 'iconv_to_internal'
|
||||
** 'iconv_from_internal'
|
||||
** 'gettext'
|
||||
** 'ngettext'
|
||||
** 'string_remove_color'
|
||||
* répertoires :
|
||||
** 'mkdir_home'
|
||||
** 'mkdir'
|
||||
** 'mkdir_parents'
|
||||
* listes triées :
|
||||
** 'list_new'
|
||||
** 'list_add'
|
||||
** 'list_search'
|
||||
** 'list_casesearch'
|
||||
** 'list_get'
|
||||
** 'list_set'
|
||||
** 'list_next'
|
||||
** 'list_prev'
|
||||
** 'list_string'
|
||||
** 'list_size'
|
||||
** 'list_remove'
|
||||
** 'list_remove_all'
|
||||
** 'list_free'
|
||||
* fichiers de configuration :
|
||||
** 'config_new'
|
||||
** 'config_new_section'
|
||||
** 'config_search_section'
|
||||
** 'config_new_option'
|
||||
** 'config_search_option'
|
||||
** 'config_string_to_boolean'
|
||||
** 'config_option_reset'
|
||||
** 'config_option_set'
|
||||
** 'config_option_set_null'
|
||||
** 'config_option_unset'
|
||||
** 'config_option_rename'
|
||||
** 'config_option_is_null'
|
||||
** 'config_option_default_is_null'
|
||||
** 'config_boolean'
|
||||
** 'config_boolean_default'
|
||||
** 'config_integer'
|
||||
** 'config_integer_default'
|
||||
** 'config_string'
|
||||
** 'config_string_default'
|
||||
** 'config_color'
|
||||
** 'config_color_default'
|
||||
** 'config_write_option'
|
||||
** 'config_write_line'
|
||||
** 'config_write'
|
||||
** 'config_read'
|
||||
** 'config_reload'
|
||||
** 'config_option_free'
|
||||
** 'config_section_free_options'
|
||||
** 'config_section_free'
|
||||
** 'config_free'
|
||||
** 'config_get'
|
||||
** 'config_get_plugin'
|
||||
** 'config_is_set_plugin'
|
||||
** 'config_set_plugin'
|
||||
** 'config_unset_plugin'
|
||||
* affichage :
|
||||
** 'prefix'
|
||||
** 'color'
|
||||
** 'print' (pour python : 'prnt')
|
||||
** 'print_date_tags' (pour python : 'prnt_date_tags')
|
||||
** 'print_y' (pour python : 'prnt_y')
|
||||
** 'log_print'
|
||||
* hooks :
|
||||
** 'hook_command'
|
||||
** 'hook_command_run'
|
||||
** 'hook_timer'
|
||||
** 'hook_fd'
|
||||
** 'hook_process'
|
||||
** 'hook_connect'
|
||||
** 'hook_print'
|
||||
** 'hook_signal'
|
||||
** 'hook_signal_send'
|
||||
** 'hook_config'
|
||||
** 'hook_completion'
|
||||
** 'hook_completion_list_add'
|
||||
** 'hook_modifier'
|
||||
** 'hook_modifier_exec'
|
||||
** 'hook_info'
|
||||
** 'hook_infolist'
|
||||
** 'unhook'
|
||||
** 'unhook_all'
|
||||
* tampons :
|
||||
** 'buffer_new'
|
||||
** 'current_buffer'
|
||||
** 'buffer_search'
|
||||
** 'buffer_search_main'
|
||||
** 'buffer_clear'
|
||||
** 'buffer_close'
|
||||
** 'buffer_merge'
|
||||
** 'buffer_unmerge'
|
||||
** 'buffer_get_integer'
|
||||
** 'buffer_get_string'
|
||||
** 'buffer_get_pointer'
|
||||
** 'buffer_set'
|
||||
** 'buffer_string_replace_local_var'
|
||||
* fenêtres :
|
||||
** 'current_window'
|
||||
** 'window_get_integer'
|
||||
** 'window_get_pointer'
|
||||
** 'window_set_title'
|
||||
* liste des pseudos :
|
||||
** 'nicklist_add_group'
|
||||
** 'nicklist_search_group'
|
||||
** 'nicklist_add_nick'
|
||||
** 'nicklist_search_nick'
|
||||
** 'nicklist_remove_group'
|
||||
** 'nicklist_remove_nick'
|
||||
** 'nicklist_remove_all'
|
||||
* barres :
|
||||
** 'bar_item_search'
|
||||
** 'bar_item_new'
|
||||
** 'bar_item_update'
|
||||
** 'bar_item_remove'
|
||||
** 'bar_search'
|
||||
** 'bar_new'
|
||||
** 'bar_set'
|
||||
** 'bar_update'
|
||||
** 'bar_remove'
|
||||
* commandes :
|
||||
** 'command'
|
||||
* infos :
|
||||
** 'info_get'
|
||||
* infolists :
|
||||
** 'infolist_new'
|
||||
** 'infolist_new_item'
|
||||
** 'infolist_new_var_integer'
|
||||
** 'infolist_new_var_string'
|
||||
** 'infolist_new_var_pointer'
|
||||
** 'infolist_new_var_time'
|
||||
** 'infolist_get'
|
||||
** 'infolist_next'
|
||||
** 'infolist_prev'
|
||||
** 'infolist_reset_item_cursor'
|
||||
** 'infolist_fields'
|
||||
** 'infolist_integer'
|
||||
** 'infolist_string'
|
||||
** 'infolist_pointer'
|
||||
** 'infolist_time'
|
||||
** 'infolist_free'
|
||||
* mise à jour :
|
||||
** 'upgrade_new'
|
||||
** 'upgrade_write_object'
|
||||
** 'upgrade_read'
|
||||
** 'upgrade_close'
|
||||
[width="100%",cols="^1,10",options="header"]
|
||||
|========================================
|
||||
| Catégorie | Fonctions
|
||||
| général |
|
||||
register
|
||||
| extensions |
|
||||
plugin_get_name
|
||||
| chaînes |
|
||||
charset_set, iconv_to_internal, iconv_from_internal, gettext, ngettext, +
|
||||
string_match, string_has_highlight, string_mask_to_regex,
|
||||
string_remove_color, string_is_command_char, string_input_for_buffer
|
||||
| répertoires |
|
||||
mkdir_home, mkdir, mkdir_parents
|
||||
| listes triées |
|
||||
list_new, list_add, list_search, list_casesearch, list_get, list_set,
|
||||
list_next, list_prev, list_string, list_size, list_remove, list_remove_all,
|
||||
list_free
|
||||
| fichiers de configuration |
|
||||
config_new, config_new_section, config_search_section, config_new_option,
|
||||
config_search_option, +
|
||||
config_string_to_boolean, config_option_reset, config_option_set,
|
||||
config_option_set_null, config_option_unset, config_option_rename,
|
||||
config_option_is_null, config_option_default_is_null, +
|
||||
config_boolean, config_boolean_default, config_integer, config_integer_default,
|
||||
config_string, config_string_default, config_color, config_color_default, +
|
||||
config_write_option, config_write_line, config_write, config_read,
|
||||
config_reload, +
|
||||
config_option_free, config_section_free_options, config_section_free,
|
||||
config_free, +
|
||||
config_get, config_get_plugin, config_is_set_plugin, config_set_plugin,
|
||||
config_unset_plugin
|
||||
| affichage |
|
||||
prefix, color, print (for python: prnt), print_date_tags (for python:
|
||||
prnt_date_tags), print_y (for python: prnt_y), log_print
|
||||
| hooks |
|
||||
hook_command, hook_command_run, hook_timer, hook_fd, hook_process,
|
||||
hook_connect, hook_print, hook_signal, hook_signal_send, hook_config,
|
||||
hook_completion, hook_completion_list_add, hook_modifier, hook_modifier_exec,
|
||||
hook_info, hook_infolist, unhook, unhook_all
|
||||
| tampons |
|
||||
buffer_new, current_buffer, buffer_search, buffer_search_main, buffer_clear,
|
||||
buffer_close, buffer_merge, buffer_unmerge, buffer_get_integer,
|
||||
buffer_get_string, buffer_get_pointer, buffer_set,
|
||||
buffer_string_replace_local_var
|
||||
| fenêtres |
|
||||
current_window, window_get_integer, window_get_string, window_get_pointer,
|
||||
window_set_title
|
||||
| liste des pseudos |
|
||||
nicklist_add_group, nicklist_search_group, nicklist_add_nick,
|
||||
nicklist_search_nick, nicklist_remove_group, nicklist_remove_nick,
|
||||
nicklist_remove_all
|
||||
| barres |
|
||||
bar_item_search, bar_item_new, bar_item_update, bar_item_remove, bar_search,
|
||||
bar_new, bar_set, bar_update, bar_remove
|
||||
| commandes |
|
||||
command
|
||||
| infos |
|
||||
info_get
|
||||
| infolists |
|
||||
infolist_new, infolist_new_item, infolist_new_var_integer,
|
||||
infolist_new_var_string, infolist_new_var_pointer, infolist_new_var_time, +
|
||||
infolist_get, infolist_next, infolist_prev, infolist_fields, infolist_integer,
|
||||
infolist_string, infolist_pointer, infolist_time, infolist_free
|
||||
| mise à jour |
|
||||
upgrade_new, upgrade_write_object, upgrade_read, upgrade_close
|
||||
|========================================
|
||||
|
||||
[[script_api_constants]]
|
||||
Constantes
|
||||
~~~~~~~~~~
|
||||
|
||||
Liste des constantes de l'API script :
|
||||
|
||||
* 'WEECHAT_RC_OK'
|
||||
* 'WEECHAT_RC_OK_EAT'
|
||||
* 'WEECHAT_RC_ERROR'
|
||||
* 'WEECHAT_CONFIG_READ_OK'
|
||||
* 'WEECHAT_CONFIG_READ_MEMORY_ERROR'
|
||||
* 'WEECHAT_CONFIG_READ_FILE_NOT_FOUND'
|
||||
* 'WEECHAT_CONFIG_WRITE_OK'
|
||||
* 'WEECHAT_CONFIG_WRITE_ERROR'
|
||||
* 'WEECHAT_CONFIG_WRITE_MEMORY_ERROR'
|
||||
* 'WEECHAT_CONFIG_OPTION_SET_OK_CHANGED'
|
||||
* 'WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE'
|
||||
* 'WEECHAT_CONFIG_OPTION_SET_ERROR'
|
||||
* 'WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND'
|
||||
* 'WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET'
|
||||
* 'WEECHAT_CONFIG_OPTION_UNSET_OK_RESET'
|
||||
* 'WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED'
|
||||
* 'WEECHAT_CONFIG_OPTION_UNSET_ERROR'
|
||||
* 'WEECHAT_LIST_POS_SORT'
|
||||
* 'WEECHAT_LIST_POS_BEGINNING'
|
||||
* 'WEECHAT_LIST_POS_END'
|
||||
* 'WEECHAT_HOTLIST_LOW'
|
||||
* 'WEECHAT_HOTLIST_MESSAGE'
|
||||
* 'WEECHAT_HOTLIST_PRIVATE'
|
||||
* 'WEECHAT_HOTLIST_HIGHLIGHT'
|
||||
* 'WEECHAT_HOOK_PROCESS_RUNNING'
|
||||
* 'WEECHAT_HOOK_PROCESS_ERROR'
|
||||
* 'WEECHAT_HOOK_CONNECT_OK'
|
||||
* 'WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND'
|
||||
* 'WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND'
|
||||
* 'WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED'
|
||||
* 'WEECHAT_HOOK_CONNECT_PROXY_ERROR'
|
||||
* 'WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR'
|
||||
* 'WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR'
|
||||
* 'WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR'
|
||||
* 'WEECHAT_HOOK_CONNECT_MEMORY_ERROR'
|
||||
* 'WEECHAT_HOOK_SIGNAL_STRING'
|
||||
* 'WEECHAT_HOOK_SIGNAL_INT'
|
||||
* 'WEECHAT_HOOK_SIGNAL_POINTER'
|
||||
[width="100%",cols="^1,10",options="header"]
|
||||
|========================================
|
||||
| Catégorie | Constantes
|
||||
| codes retour |
|
||||
WEECHAT_RC_OK, WEECHAT_RC_OK_EAT, WEECHAT_RC_ERROR
|
||||
| fichiers de configuration |
|
||||
WEECHAT_CONFIG_READ_OK, WEECHAT_CONFIG_READ_MEMORY_ERROR,
|
||||
WEECHAT_CONFIG_READ_FILE_NOT_FOUND, WEECHAT_CONFIG_WRITE_OK,
|
||||
WEECHAT_CONFIG_WRITE_ERROR, WEECHAT_CONFIG_WRITE_MEMORY_ERROR, +
|
||||
WEECHAT_CONFIG_OPTION_SET_OK_CHANGED, WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE,
|
||||
WEECHAT_CONFIG_OPTION_SET_ERROR, WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND,
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET, WEECHAT_CONFIG_OPTION_UNSET_OK_RESET,
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED, WEECHAT_CONFIG_OPTION_UNSET_ERROR
|
||||
| listes triées |
|
||||
WEECHAT_LIST_POS_SORT, WEECHAT_LIST_POS_BEGINNING, WEECHAT_LIST_POS_END
|
||||
| hotlist |
|
||||
WEECHAT_HOTLIST_LOW, WEECHAT_HOTLIST_MESSAGE, WEECHAT_HOTLIST_PRIVATE,
|
||||
WEECHAT_HOTLIST_HIGHLIGHT
|
||||
| hook process |
|
||||
WEECHAT_HOOK_PROCESS_RUNNING, WEECHAT_HOOK_PROCESS_ERROR
|
||||
| hook connect |
|
||||
WEECHAT_HOOK_CONNECT_OK, WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND,
|
||||
WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND, WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED,
|
||||
WEECHAT_HOOK_CONNECT_PROXY_ERROR, WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR,
|
||||
WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR, WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR,
|
||||
WEECHAT_HOOK_CONNECT_MEMORY_ERROR
|
||||
| hook signal |
|
||||
WEECHAT_HOOK_SIGNAL_STRING, WEECHAT_HOOK_SIGNAL_INT, WEECHAT_HOOK_SIGNAL_POINTER
|
||||
|========================================
|
||||
|
||||
[[common_tasks]]
|
||||
Tâches courantes
|
||||
----------------
|
||||
|
||||
Ce chapitre montre quelques tâches courantes, avec des exemples.
|
||||
Seule une partie de l'API est utilisée ici, pour une référence complète, voir la
|
||||
'Référence API Extension WeeChat'.
|
||||
|
||||
[[buffers]]
|
||||
Tampons
|
||||
~~~~~~~
|
||||
|
||||
[[buffers_display_messages]]
|
||||
Afficher des messages
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Une chaîne vide est souvent utilisée pour travailler avec le tampon core WeeChat.
|
||||
Pour les autres tampons, vous devez passer un pointeur (sous forme de chaîne,
|
||||
voir <<pointers,pointeurs>>).
|
||||
|
||||
Exemples :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# afficher "bonjour" sur le tampon core
|
||||
weechat.prnt("", "bonjour")
|
||||
|
||||
# afficher le préfixe "==>" et le message "bonjour" sur le tampon courant
|
||||
# (le préfixe et le message doivent être séparés par une tabulation)
|
||||
weechat.prnt(weechat.current_buffer(), "==>\tbonjour")
|
||||
|
||||
# afficher un message d'erreur sur le tampon core (avec le préfixe d'erreur)
|
||||
weechat.prnt("", "%smauvais paramètres" % weechat.prefix("error"))
|
||||
|
||||
# afficher un message avec de la couleur sur le tampon core
|
||||
weechat.prnt("", "texte %sjaune sur bleu" % weechat.color("yellow,blue"))
|
||||
|
||||
# chercher un tampon et afficher un message
|
||||
# (le nom complet d'un tampon est extension.nom, par exemple : "irc.freenode.#weechat")
|
||||
buffer = weechat.buffer_search("irc", "freenode.#weechat")
|
||||
weechat.prnt(buffer, "message sur le canal #weechat")
|
||||
|
||||
# autre solution pour chercher un tampon IRC (meilleure)
|
||||
# (notez que le serveur et le canal sont séparés par une virgule)
|
||||
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
|
||||
weechat.prnt(buffer, "message sur le canal #weechat")
|
||||
----------------------------------------
|
||||
|
||||
[NOTE]
|
||||
La fonction d'affichage est appelée `print` en Perl/Ruby/Lua/Tcl et `prnt` en
|
||||
Python.
|
||||
|
||||
[[buffers_send_text]]
|
||||
Envoyer du texte au tampon
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Vous pouvez envoyer du texte ou une commande à un tampon. C'est exactement comme
|
||||
si vous tapiez le texte sur la ligne de commande et que vous pressiez [Enter].
|
||||
|
||||
Exemples :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# exécuter la commande "/help" sur le tampon core
|
||||
weechat.command("", "/help")
|
||||
|
||||
# envoyer "bonjour" au canal IRC #weechat (les utilisateurs sur le canal verront le message)
|
||||
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
|
||||
weechat.command(buffer, "bonjour")
|
||||
----------------------------------------
|
||||
|
||||
[[buffers_new]]
|
||||
Créer un nouveau tampon
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Vous pouvez créer un nouveau tampon dans votre script, et l'utiliser pour
|
||||
afficher des messages.
|
||||
|
||||
Deux "callbacks" peuvent être appelés (ils sont optionnels) : un pour les données
|
||||
en entrée (quand vous tapez du texte et pressez [Enter] sur le tampon), l'autre
|
||||
est appelé lorsque le tampon est fermé (par exemple avec `/buffer close`).
|
||||
|
||||
Exemple :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# callback pour les données reçues en entrée
|
||||
def buffer_input_cb(data, buffer, input_data):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# callback appelé lorsque le tampon est fermé
|
||||
def buffer_close_cb(data, buffer):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# créer le tampon
|
||||
buffer = weechat.buffer_new("montampon", "buffer_input_cb", "", "buffer_close_cb", "")
|
||||
|
||||
# définir le titre
|
||||
weechat.buffer_set(buffer, "title", "Ceci est le titre du tampon.")
|
||||
|
||||
# désactiver l'enregistrement (log), en définissant la variable locale "no_log" à "1"
|
||||
weechat.buffer_set(buffer, "localvar_set_no_log", "1")
|
||||
----------------------------------------
|
||||
|
||||
[[buffers_properties]]
|
||||
Propriétés du tampon
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Vous pouvez lire des propriétés du tampon, sous forme de chaîne, entier ou
|
||||
pointeur.
|
||||
|
||||
Exemples :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
buffer = weechat.current_buffer()
|
||||
|
||||
number = weechat.buffer_get_integer(buffer, "number")
|
||||
name = weechat.buffer_get_string(buffer, "name")
|
||||
short_name = weechat.buffer_get_string(buffer, "short_name")
|
||||
----------------------------------------
|
||||
|
||||
Il est possible d'ajouter, lire ou supprimer des variables locales dans le
|
||||
tampon :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# ajouter une variable locale
|
||||
weechat.buffer_set(buffer, "localvar_set_myvar", "my_value")
|
||||
|
||||
# lire une variable locale
|
||||
myvar = weechat.buffer_get_string(buffer, "localvar_myvar")
|
||||
|
||||
# supprimer une variable locale
|
||||
weechat.buffer_set(buffer, "localvar_del_myvar", "")
|
||||
----------------------------------------
|
||||
|
||||
Pour voir les variables locales d'un tampon, exécutez cette commande dans
|
||||
WeeChat :
|
||||
|
||||
----------------------------------------
|
||||
/buffer localvar
|
||||
----------------------------------------
|
||||
|
||||
[[hooks]]
|
||||
Hooks
|
||||
~~~~~
|
||||
|
||||
[[hook_command]]
|
||||
Ajouter une nouvelle commande
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Ajoutez une nouvelle commande avec `hook_command`. Vous pouvez utiliser une
|
||||
complétion personnalisée pour compléter les paramètres de votre commande.
|
||||
|
||||
Exemple :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
def my_command_cb(data, buffer, args):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
hook = weechat.hook_command("monfiltre", "description de mon filtre",
|
||||
"[list] | [enable|disable|toggle [name]] | [add name plugin.buffer tags regex] | [del name|-all]",
|
||||
"description des paramètres...",
|
||||
"list"
|
||||
" || enable %(filters_names)"
|
||||
" || disable %(filters_names)"
|
||||
" || toggle %(filters_names)"
|
||||
" || add %(filters_names) %(buffers_plugins_names)|*"
|
||||
" || del %(filters_names)|-all",
|
||||
"my_command_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
Puis sous WeeChat :
|
||||
|
||||
----------------------------------------
|
||||
/help monfiltre
|
||||
|
||||
/monfiltre paramètres...
|
||||
----------------------------------------
|
||||
|
||||
[[hook_timer]]
|
||||
Ajouter un timer
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
Ajoutez un timer avec `hook_timer`.
|
||||
|
||||
Exemple :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
def timer_cb(data, remaining_calls):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# timer appelé chaque minute quand la seconde est 00
|
||||
weechat.hook_timer(60 * 1000, 60, 0, "timer_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
[[hook_process]]
|
||||
Lancer un processus en tâche de fond
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Vous pouvez lancer un processus en tâche de fond avec `hook_process`. Votre
|
||||
"callback" sera appelé quand des données seront prêtes. Il peut être appelé
|
||||
plusieurs fois.
|
||||
|
||||
Pour le dernier appel à votre "callback", 'rc' est positionné à 0 ou une valeur
|
||||
positive, c'est le code retour de la commande.
|
||||
|
||||
Exemple :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# Afficher la version des noyaux Linux.
|
||||
kernel_txt = ""
|
||||
|
||||
def kernel_process_cb(data, command, rc, stdout, stderr):
|
||||
""" Callback qui lit la sortie de la commande. """
|
||||
global kernel_txt
|
||||
if stdout != "":
|
||||
kernel_txt += stdout
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", kernel_txt)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process("python -c \"import urllib; " \
|
||||
"print urllib.urlopen('http://www.kernel.org/kdist/finger_banner').read()\"",
|
||||
10 * 1000, "kernel_process_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
[[config_options]]
|
||||
Config / options
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
[[config_options_set_script]]
|
||||
Définir des options pour le script
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
La fonction `config_is_set_plugin` est utilisée pour vérifier si une option est
|
||||
définie ou pas, et `config_set_plugin` pour définir une option.
|
||||
|
||||
Exemple :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
script_options = {
|
||||
"option1" : "valeur1",
|
||||
"option2" : "valeur2",
|
||||
"option3" : "valeur3",
|
||||
}
|
||||
for option, default_value in script_options.iteritems():
|
||||
if not weechat.config_is_set_plugin(option):
|
||||
weechat.config_set_plugin(option, default_value)
|
||||
----------------------------------------
|
||||
|
||||
[[config_options_detect_changes]]
|
||||
Détecter des changements
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Vous devez utiliser `hook_config` pour être notifié si l'utilisateur modifie
|
||||
certaines options du script.
|
||||
|
||||
Exemple :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
SCRIPT_NAME = "monscript"
|
||||
|
||||
# ...
|
||||
|
||||
def config_cb(data, option, value):
|
||||
""" Callback appelé lorsqu'une option du script est modifiée. """
|
||||
# par exemple, relire toutes les options du script dans des variables du script...
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# ...
|
||||
|
||||
weechat.hook_config("plugins.var.python." + SCRIPT_NAME + ".*", "config_cb", "")
|
||||
# pour les autres languages, remplacez "python" par le language ("perl", "ruby", "lua" ou "tcl")
|
||||
----------------------------------------
|
||||
|
||||
[[config_options_weechat]]
|
||||
Lire les options WeeChat
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
La fonction `config_get` retourne un pointeur vers une option. Ensuite, en
|
||||
fonction du type de l'option, il faut appeler `config_string`, `config_boolean`,
|
||||
`config_integer` ou `config_color`.
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# chaîne
|
||||
weechat.prnt("", "la valeur de l'option weechat.look.item_time_format est : %s"
|
||||
% (weechat.config_string(weechat.config_get("weechat.look.item_time_format"))))
|
||||
|
||||
# booléen
|
||||
weechat.prnt("", "la valeur de l'option weechat.look.day_change est : %d"
|
||||
% (weechat.config_boolean(weechat.config_get("weechat.look.day_change"))))
|
||||
|
||||
# entier
|
||||
weechat.prnt("", "la valeur de l'option weechat.look.scroll_page_percent est : %d"
|
||||
% (weechat.config_integer(weechat.config_get("weechat.look.scroll_page_percent"))))
|
||||
|
||||
# couleur
|
||||
weechat.prnt("", "la valeur de l'option weechat.color.chat_delimiters est : %s"
|
||||
% (weechat.config_color(weechat.config_get("weechat.color.chat_delimiters"))))
|
||||
----------------------------------------
|
||||
|
||||
[[irc]]
|
||||
IRC
|
||||
~~~
|
||||
|
||||
[[irc_catch_messages]]
|
||||
Intercepter des messages
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
L'extension IRC envoie deux signaux pour un message reçu (`xxx` est le nom
|
||||
interne du serveur IRC, `yyy` est le nom de la commande IRC comme JOIN, QUIT,
|
||||
PRIVMSG, 301, ..):
|
||||
|
||||
xxxx,irc_in_yyy::
|
||||
signal envoyé avant traitement du message
|
||||
|
||||
xxx,irc_in2_yyy::
|
||||
message sent après traitement du message
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
def join_cb(data, signal, signal_data):
|
||||
# signal est par exemple : "freenode,irc_in2_join"
|
||||
# signal_data est le message IRC, par exemple : ":nick!user@host JOIN :#canal"
|
||||
nick = weechat.info_get("irc_nick_from_host", signal_data)
|
||||
server = signal.split(",")[0]
|
||||
channel = signal_data.split(":")[-1]
|
||||
buffer = weechat.info_get("irc_buffer", "%s,%s" % (server, channel))
|
||||
if buffer:
|
||||
weechat.prnt(buffer, "Eheh, %s a rejoint le canal !" % nick)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# il est pratique ici d'utiliser "*" comme serveur, pour intercepter les
|
||||
# messages JOIN de tous les serveurs IRC
|
||||
weechat.hook_signal("*,irc_in2_join", "join_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
[[infos]]
|
||||
Infos
|
||||
~~~~~
|
||||
|
||||
[[infos_weechat_version]]
|
||||
Version de WeeChat
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Le meilleur moyen de vérifier la version est de demander "version_number" et de
|
||||
faire une comparaison entre nombre entiers avec la version hexadécimale de la
|
||||
version.
|
||||
|
||||
Exemple :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
version = weechat.info_get("version_number", "") or 0
|
||||
if int(version) >= 0x00030200:
|
||||
weechat.prnt("", "C'est WeeChat 0.3.2 ou plus récent")
|
||||
else:
|
||||
weechat.prnt("", "C'est WeeChat 0.3.1 ou plus ancien")
|
||||
----------------------------------------
|
||||
|
||||
[NOTE]
|
||||
Les versions < = 0.3.1.1 retournent une chaîne vide pour
|
||||
'info_get("version_number")', donc vous devez vérifier que la valeur de retour
|
||||
n'est *pas* vide.
|
||||
|
||||
Pour obtenir la version sous forme de chaîne :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# ceci affichera par exemple "Version 0.3.2"
|
||||
weechat.prnt("", "Version %s" % weechat.info_get("version", ""))
|
||||
----------------------------------------
|
||||
|
||||
[[infos_other]]
|
||||
Autres infos
|
||||
^^^^^^^^^^^^
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# répertoire de WeeChat, par exemple : "/home/xxxx/.weechat"
|
||||
weechat.prnt("", "Répertoire WeeChat : %s" % weechat.info_get("weechat_dir", ""))
|
||||
|
||||
# inactivité clavier
|
||||
weechat.prnt("", "Inactivité depuis %s secondes" % weechat.info_get("inactivity", ""))
|
||||
----------------------------------------
|
||||
|
||||
[[infolists]]
|
||||
Infolists
|
||||
~~~~~~~~~
|
||||
|
||||
[[infolists_read]]
|
||||
Lire une infolist
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
Vous pouvez lire une infolist construite par WeeChat ou d'autres extensions.
|
||||
|
||||
Exemple :
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# lecture de l'infolist "buffer", pour avoir la liste des tampons
|
||||
infolist = weechat.infolist_get("buffer", "", "")
|
||||
if infolist:
|
||||
while weechat.infolist_next(infolist):
|
||||
name = weechat.infolist_string(infolist, "name")
|
||||
weechat.prnt("", "buffer: %s" % name)
|
||||
weechat.infolist_free(infolist)
|
||||
----------------------------------------
|
||||
|
||||
[IMPORTANT]
|
||||
N'oubliez pas d'appeler `infolist_free` pour libérer la mémoire utilisée par
|
||||
l'infolist, car WeeChat ne libère par automatiquement cette mémoire.
|
||||
|
||||
+271
-28
@@ -60,10 +60,14 @@ Paquets binaires
|
||||
|
||||
Les paquets binaires sont disponibles pour beaucoup de distributions, dont :
|
||||
|
||||
* Debian (ou toute distribution compatible Debian) : `apt-get install weechat`
|
||||
* Debian (ou toute distribution compatible Debian) :
|
||||
`apt-get install weechat-curses`
|
||||
* Mandriva/RedHat (ou toute distribution compatible avec les RPM) :
|
||||
`rpm -i /path/to/weechat-x.y.z-1.i386.rpm`
|
||||
* Gentoo : `emerge weechat`
|
||||
* Arch Linux : `pacman -S weechat`
|
||||
* Fedora Core : `yum install weechat`
|
||||
* Sourcemage : `cast weechat`
|
||||
|
||||
Des paquets additionnels peuvent être utiles également, comme weechat-plugins.
|
||||
|
||||
@@ -77,9 +81,39 @@ Paquet source
|
||||
WeeChat peut être compilé avec cmake ou les autotools (cmake est la méthode
|
||||
recommandée).
|
||||
|
||||
[[dependencies]]
|
||||
Dépendances
|
||||
^^^^^^^^^^^
|
||||
|
||||
Le tableau suivant liste les paquets qui sont requis ou optionnels pour
|
||||
compiler WeeChat.
|
||||
|
||||
[width="80%",cols="4,^2,13",options="header"]
|
||||
|========================================
|
||||
| Paquet ^(1)^ | Requis | Fonctionnalité
|
||||
| cmake | *oui* | construction (autotools toujours possible, mais cmake est recommandé)
|
||||
| libncursesw5-dev ^(2)^ | *oui* | interface ncurses
|
||||
| libgcrypt11-dev | non | authentification SASL avec le serveur IRC, en utilisant le mécanisme DH-BLOWFISH
|
||||
| libgnutls-dev | non | connexion SSL au serveur IRC
|
||||
| libaspell-dev | non | extension aspell
|
||||
| libperl-dev | non | extension perl
|
||||
| python-dev | non | extension python
|
||||
| ruby1.8-dev | non | extension ruby
|
||||
| liblua5.1-0-dev | non | extension lua
|
||||
| tcl-dev | non | extension tcl
|
||||
| asciidoc (>= 8.2) | non | construction de la documentation (fichiers HTML)
|
||||
| source-highlight | non | coloration des sources dans la documentation HTML
|
||||
|========================================
|
||||
|
||||
[NOTE]
|
||||
^(1)^ Le nom provient de la distribution GNU/Linux Debian, la version dans le
|
||||
nom du paquet peut être différente. +
|
||||
^(2)^ WeeChat peut compiler avec libncurses5-dev, mais ce n'est *PAS* recommandé
|
||||
(vous aurez des bugs d'affichage avec les caractères larges).
|
||||
|
||||
[[compile_with_cmake]]
|
||||
Avec cmake
|
||||
^^^^^^^^^^
|
||||
Compilation avec cmake
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
* Installation dans les répertoires systèmes (nécessite les droits 'root') :
|
||||
|
||||
@@ -102,8 +136,8 @@ $ make install
|
||||
----------------------------------------
|
||||
|
||||
[[compile_with_autotools]]
|
||||
Avec autotools
|
||||
^^^^^^^^^^^^^^
|
||||
Compilation avec autotools
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
* Installation dans les répertoires systèmes (nécessite les droits 'root') :
|
||||
|
||||
@@ -140,7 +174,100 @@ Si vous utilisez les autotools (et non cmake), exécutez ce script :
|
||||
$ ./autogen.sh
|
||||
----------------------------------------
|
||||
|
||||
Suivez alors les instructions du paquet source (voir <<source_package>>).
|
||||
Suivez alors les instructions du paquet source (voir
|
||||
<<source_package,paquet source>>).
|
||||
|
||||
[[report_crashes]]
|
||||
Rapporter les plantages
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Si vous avez eu des plantages, ou si vous souhaitez rapporter tout plantage
|
||||
futur de WeeChat, vous devez :
|
||||
|
||||
* compiler avec les infos de debug (ou installer un paquet binaire avec les
|
||||
infos de debug)
|
||||
* activer les fichiers 'core' sur votre système
|
||||
* installer gdb
|
||||
|
||||
[[debug_info]]
|
||||
Infos de debug
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
Si vous compilez avec cmake :
|
||||
|
||||
----------------------------------------
|
||||
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
|
||||
----------------------------------------
|
||||
|
||||
Si vous compilez avec les autotools, le debug est par défaut (`--with-debug=1`).
|
||||
|
||||
Si vous avez installé un paquet binaire, alors installez le paquet
|
||||
'weechat-dbg'.
|
||||
|
||||
[[core_files]]
|
||||
Fichiers core
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
Pour activer les fichiers 'core', vous devez utiliser la commande `ulimit`.
|
||||
|
||||
Par exemple sous Linux avec le shell 'bash', ajoutez cette ligne dans votre
|
||||
`~/.bashrc`:
|
||||
|
||||
----------------------------------------
|
||||
ulimit -c unlimited
|
||||
----------------------------------------
|
||||
|
||||
Ou une taille maximum :
|
||||
|
||||
----------------------------------------
|
||||
ulimit -c 200000
|
||||
----------------------------------------
|
||||
|
||||
[[gdb_backtrace]]
|
||||
Obtenir la trace avec gdb
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Lorsque WeeChat se plante, votre système génère un fichier 'core' ou
|
||||
'core.12345' ('12345' est l'identifiant du processus).
|
||||
Ce fichier est créé dans le répertoire où vous avez lancé WeeChat (ce n'est
|
||||
*pas* le répertoire où WeeChat est installé !).
|
||||
|
||||
Par exemple si 'weechat-curses' est installé dans '/usr/bin/' et que le fichier
|
||||
'core' est dans '/home/xxx/', alors lancez gdb avec cette commande :
|
||||
|
||||
----------------------------------------
|
||||
gdb /usr/bin/weechat-curses /home/xxx/core
|
||||
----------------------------------------
|
||||
|
||||
Puis sous gdb, utilisez la commande `bt` pour afficher la trace.
|
||||
Vous verrez quelque chose comme ceci :
|
||||
|
||||
----------------------------------------
|
||||
(gdb) bt
|
||||
#0 0xffffe424 in __kernel_vsyscall ()
|
||||
#1 0xb76208e0 in raise () from /lib/i686/cmov/libc.so.6
|
||||
#2 0xb7623e15 in abort () from /lib/i686/cmov/libc.so.6
|
||||
#3 0x08083940 in weechat_shutdown (return_code=1, crash=1) at /some_path/src/core/weechat.c:357
|
||||
#4 0x08098aaa in debug_sigsegv () at /some_path/src/core/wee-debug.c:155
|
||||
#5 <signal handler called>
|
||||
#6 0xb7656681 in vsnprintf () from /lib/i686/cmov/libc.so.6
|
||||
#7 0xb763dd22 in snprintf () from /lib/i686/cmov/libc.so.6
|
||||
#8 0xb7258674 in irc_protocol_cmd_join (server=0x8165138, command=0xb727c187 "join", argc=3, argv=0x889e840, argv_eol=0x889e858)
|
||||
at /some_path/src/plugins/irc/irc-protocol.c:520
|
||||
#9 0xb7265c6e in irc_protocol_recv_command (server=0x8165138, entire_line=0x889e7e0 ":nick!nick@127.0.0.1 JOIN :#test",
|
||||
command=0x889d080 "JOIN") at /some_path/src/plugins/irc/irc-protocol.c:4077
|
||||
#10 0xb726a2c6 in irc_server_msgq_flush () at /some_path/src/plugins/irc/irc-server.c:1614
|
||||
#11 0xb726a4da in irc_server_recv_cb (data=0x8165138, fd=8) at /some_path/src/plugins/irc/irc-server.c:1691
|
||||
#12 0x0809a797 in hook_fd_exec (read_fds=0xbfcf8074, write_fds=0xbfcf7ff4, exception_fds=0xbfcf7f74)
|
||||
at /some_path/src/core/wee-hook.c:1133
|
||||
#13 0x08060af0 in gui_main_loop () at /some_path/src/gui/curses/gui-curses-main.c:330
|
||||
#14 0x08083b10 in main (argc=3, argv=0xbfcf81d4) at /some_path/src/core/weechat.c:419
|
||||
----------------------------------------
|
||||
|
||||
Vous devez envoyer cette trace aux développeurs, et leur indiquer quelle action
|
||||
a été la cause de ce plantage.
|
||||
|
||||
Merci pour votre aide !
|
||||
|
||||
|
||||
[[usage]]
|
||||
@@ -149,7 +276,7 @@ Utilisation
|
||||
|
||||
[[running_weechat]]
|
||||
Lancer WeeChat
|
||||
~~~~~~~~~~~~~
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
Paramètres de ligne de commande :
|
||||
|
||||
@@ -174,6 +301,9 @@ Paramètres de ligne de commande :
|
||||
-p, --no-plugin::
|
||||
Supprimer le chargement automatique des extensions au démarrage
|
||||
|
||||
-s, --no-script::
|
||||
Supprimer le chargement automatique des scripts au démarrage
|
||||
|
||||
-v, --version::
|
||||
Afficher la version de WeeChat
|
||||
|
||||
@@ -192,7 +322,7 @@ Le fichier de configuration par défaut est : '~/.weechat/weechat.conf'.
|
||||
|
||||
Vous pouvez éditer ce fichier pour configurer WeeChat à votre convenance ou
|
||||
vous pouvez modifier les paramètres dans WeeChat avec la commande `/set`
|
||||
(voir <<weechat_commands>>).
|
||||
(voir <<weechat_commands,commandes WeeChat>>).
|
||||
|
||||
[[screen_layout]]
|
||||
Organisation de l'écran
|
||||
@@ -695,24 +825,25 @@ l'attribut défini.
|
||||
|
||||
Les codes couleur pour ^Cc sont :
|
||||
|
||||
[width="20%",cols="^1m,2"]
|
||||
[width="35%",cols="^1m,3,3",options="header"]
|
||||
|========================================
|
||||
| 00 | blanc
|
||||
| 01 | noir
|
||||
| 02 | bleu foncé
|
||||
| 03 | vert foncé
|
||||
| 04 | rouge clair
|
||||
| 05 | rouge foncé
|
||||
| 06 | violet
|
||||
| 07 | orange
|
||||
| 08 | jaune
|
||||
| 09 | vert clair
|
||||
| 10 | cyan
|
||||
| 11 | cyan clair
|
||||
| 12 | bleu clair
|
||||
| 13 | violet clair
|
||||
| 14 | gris
|
||||
| 15 | gris clair (blanc)
|
||||
| Code | IRC | WeeChat (curses)
|
||||
| 00 | blanc | white
|
||||
| 01 | noir | black
|
||||
| 02 | bleu foncé | blue
|
||||
| 03 | vert foncé | green
|
||||
| 04 | rouge clair | lightred
|
||||
| 05 | rouge foncé | red
|
||||
| 06 | violet | magenta
|
||||
| 07 | orange | brown
|
||||
| 08 | jaune | yellow
|
||||
| 09 | vert clair | lightgreen
|
||||
| 10 | cyan | cyan
|
||||
| 11 | cyan clair | lightcyan
|
||||
| 12 | bleu clair | lightblue
|
||||
| 13 | violet clair | lightmagenta
|
||||
| 14 | gris | default
|
||||
| 15 | gris clair | white
|
||||
|========================================
|
||||
|
||||
Exemple : affichage de "bonjour tout le monde !" avec "bonjour" en bleu clair
|
||||
@@ -728,7 +859,9 @@ Options WeeChat (weechat.conf)
|
||||
|
||||
include::autogen/user/weechat_options.txt[]
|
||||
|
||||
Les couleurs pour l'interface Curses sont :
|
||||
[[curses_colors]]
|
||||
Couleurs pour l'interface Curses
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
[width="50%",cols="^3m,8"]
|
||||
|========================================
|
||||
@@ -797,7 +930,7 @@ Exemples pour charger, décharger et afficher les extensions :
|
||||
|
||||
Les extensions par défaut sont :
|
||||
|
||||
[width="50%",cols=">1s,5",options="header"]
|
||||
[width="50%",cols="^1,5",options="header"]
|
||||
|========================================
|
||||
| Extension | Description
|
||||
| alias | Définir des alias pour les commandes
|
||||
@@ -1032,7 +1165,7 @@ protocole IRC.
|
||||
|
||||
Elle est multi-serveurs, et offre toutes les commandes IRC supportées, y
|
||||
compris la discussion directe (DCC chat) et le transfert de fichier DCC
|
||||
(via l'extension xfer, voir <<xfer_plugin>>).
|
||||
(via l'extension xfer, voir <<xfer_plugin,extension Xfer>>).
|
||||
|
||||
[[irc_command_line_options]]
|
||||
Options de ligne de commande
|
||||
@@ -1063,6 +1196,115 @@ Commandes
|
||||
|
||||
include::autogen/user/irc_commands.txt[]
|
||||
|
||||
[[irc_ssl_certificates]]
|
||||
Certificats SSL
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
Lors de la connexion à un serveur IRC avec SSL, WeeChat vérifie par défaut que
|
||||
la connexion est entièrement de confiance.
|
||||
|
||||
Quelques options sont utilisées pour contrôler la connexion SSL :
|
||||
|
||||
weechat.network.gnutls_ca_file::
|
||||
chemin vers le fichier avec les certificats de confiance (par défaut :
|
||||
"%h/ssl/CAs.pem")
|
||||
|
||||
irc.server.xxx.ssl_cert::
|
||||
fichier de certificat SSL utilisé pour authentifier automatiquement votre
|
||||
pseudo (par exemple CertFP sur oftc, voir ci-dessous)
|
||||
|
||||
irc.server.xxx.ssl_dhkey_size::
|
||||
taille de clé utilisée pour l'échange de clé Diffie-Hellman (par défaut :
|
||||
2048)
|
||||
|
||||
irc.server.xxx.ssl_verify::
|
||||
vérifier que la connexion SSL est entièrement de confiance (activé par
|
||||
défaut)
|
||||
|
||||
[NOTE]
|
||||
L'option "ssl_verify" est activée par défaut, donc la vérification est stricte
|
||||
et peut échouer, même si cela pouvait être ok dans les versions inférieures à
|
||||
0.3.1.
|
||||
|
||||
[[irc_connect_oftc_with_certificate]]
|
||||
Premier exemple : se connecter à oftc en vérifiant le certificat
|
||||
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
* Importer le certificat sous le shell :
|
||||
|
||||
----------------------------------------
|
||||
$ mkdir ~/.weechat/ssl
|
||||
$ wget -O ~/.weechat/ssl/CAs.pem http://www.spi-inc.org/secretary/spi-cacert.crt
|
||||
----------------------------------------
|
||||
|
||||
Note: il est possible de concaténer plusieurs certificats dans une le fichier
|
||||
CAs.pem.
|
||||
|
||||
* Sous WeeChat, avec le serveur "oftc" déjà créé :
|
||||
|
||||
----------------------------------------
|
||||
/connect oftc
|
||||
----------------------------------------
|
||||
|
||||
[[irc_connect_oftc_with_certfp]]
|
||||
Second exemple : se connecter à oftc en utilisant CertFP
|
||||
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
* Créer le certificat sous le shell :
|
||||
|
||||
----------------------------------------
|
||||
$ openssl req -nodes -newkey rsa:2048 -keyout nick.key -x509 -days 365 -out nick.cer
|
||||
$ cat nick.cer nick.key > ~/.weechat/ssl/nick.pem
|
||||
----------------------------------------
|
||||
|
||||
* Sous WeeChat, avec le serveur "oftc" déjà créé :
|
||||
|
||||
----------------------------------------
|
||||
/set irc.server.oftc.ssl_cert "%h/ssl/nick.pem"
|
||||
/connect oftc
|
||||
/msg nickserv cert add
|
||||
----------------------------------------
|
||||
|
||||
Pour plus d'informations, consulter http://www.oftc.net/oftc/NickServ/CertFP
|
||||
|
||||
[[irc_smart_filter_join_part_quit]]
|
||||
Filtre intelligent pour les messages join/part/quit
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Un filtre intelligent est disponible pour filtrer les messages join/part/quit
|
||||
lorsque le pseudo n'a rien dit durant les X dernières minutes sur le canal.
|
||||
|
||||
Le filtre intelligent est activé par défaut, mais vous devez ajouter un filtre
|
||||
pour cacher les lignes sur les tampons, par exemple :
|
||||
|
||||
----------------------------------------
|
||||
/filter add irc_smart * irc_smart_filter *
|
||||
----------------------------------------
|
||||
|
||||
Il est possible de créer un filtre pour un canal seulement ou plusieurs canaux
|
||||
commençant par le même nom (voir `/help filter`) :
|
||||
|
||||
----------------------------------------
|
||||
/filter add irc_smart_weechat irc.freenode.#weechat irc_smart_filter *
|
||||
/filter add irc_smart_weechats irc.freenode.#weechat* irc_smart_filter *
|
||||
----------------------------------------
|
||||
|
||||
Vous pouvez cacher seulement les join ou part/quit avec les options suivantes :
|
||||
|
||||
----------------------------------------
|
||||
/set irc.look.smart_filter_join on
|
||||
/set irc.look.smart_filter_quit on
|
||||
----------------------------------------
|
||||
|
||||
Vous pouvez modifier le délai (en minutes) :
|
||||
|
||||
----------------------------------------
|
||||
/set irc.look.smart_filter_delay 5
|
||||
----------------------------------------
|
||||
|
||||
Si le pseudo n'a pas parlé durant les 5 dernières minutes, ses join et/ou
|
||||
part/quit seront cachés sur le canal.
|
||||
|
||||
[[irc_ctcp_replies]]
|
||||
Réponses CTCP
|
||||
^^^^^^^^^^^^^
|
||||
@@ -1166,6 +1408,7 @@ Liste non exhaustive des messages ou alias que vous pouvez paramétrer :
|
||||
| wallops | | wallops
|
||||
| 221 | | chaîne de mode utilisateur
|
||||
| 275 | whois | whois (connexion sécurisée)
|
||||
| 301 | whois | whois (absent)
|
||||
| 303 | | ison
|
||||
| 305 | unaway | non absent
|
||||
| 306 | away | absent
|
||||
|
||||
@@ -26,6 +26,29 @@ ADD_CUSTOM_COMMAND(
|
||||
ADD_CUSTOM_TARGET(doc-user-it ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.it.html)
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.it.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# plugin API reference
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.it.html
|
||||
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a toc-title='Indice' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.it.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.it.txt
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.it.txt
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/autogen/plugin_api/*.txt
|
||||
COMMENT "Building weechat_plugin_api.it.html"
|
||||
)
|
||||
ADD_CUSTOM_TARGET(doc-plugin-api-it ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.it.html)
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.it.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# scripting guide
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.it.html
|
||||
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a toc-title='Indice' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.it.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.it.txt
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.it.txt
|
||||
COMMENT "Building weechat_scripting.it.html"
|
||||
)
|
||||
ADD_CUSTOM_TARGET(doc-scripting-it ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.it.html)
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.it.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# FAQ
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.it.html
|
||||
|
||||
+18
-6
@@ -17,14 +17,18 @@
|
||||
docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_user.it.txt \
|
||||
weechat_faq.it.txt \
|
||||
weechat_quickstart.it.txt \
|
||||
weechat_tester.it.txt \
|
||||
$(wildcard autogen/user/*.txt) \
|
||||
$(wildcard autogen/plugin_api/*.txt)
|
||||
weechat_user.it.txt \
|
||||
weechat_plugin_api.it.txt \
|
||||
weechat_scripting.it.txt \
|
||||
weechat_faq.it.txt \
|
||||
weechat_quickstart.it.txt \
|
||||
weechat_tester.it.txt \
|
||||
$(wildcard autogen/user/*.txt) \
|
||||
$(wildcard autogen/plugin_api/*.txt)
|
||||
|
||||
all-local: weechat_user.it.html \
|
||||
weechat_plugin_api.it.html \
|
||||
weechat_scripting.it.html \
|
||||
weechat_faq.it.html \
|
||||
weechat_quickstart.it.html \
|
||||
weechat_tester.it.html
|
||||
@@ -33,6 +37,14 @@ all-local: weechat_user.it.html \
|
||||
weechat_user.it.html: weechat_user.it.txt $(wildcard autogen/user/*.txt)
|
||||
$(ASCIIDOC) -a toc -a toclevels=3 -a toc-title='Indice' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_user.it.html weechat_user.it.txt
|
||||
|
||||
# plugin API reference
|
||||
weechat_plugin_api.it.html: weechat_plugin_api.it.txt $(wildcard autogen/plugin_api/*.txt)
|
||||
$(ASCIIDOC) -a toc -a toclevels=3 -a toc-title='Indice' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_plugin_api.it.html weechat_plugin_api.it.txt
|
||||
|
||||
# scripting guide
|
||||
weechat_scripting.it.html: weechat_scripting.it.txt
|
||||
$(ASCIIDOC) -a toc -a toclevels=3 -a toc-title='Indice' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_scripting.it.html weechat_scripting.it.txt
|
||||
|
||||
# FAQ
|
||||
weechat_faq.it.html: weechat_faq.it.txt
|
||||
$(ASCIIDOC) -a toc -a toc-title='Indice' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_faq.it.html weechat_faq.it.txt
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[width="65%",cols="^1,^2,8",options="header"]
|
||||
|========================================
|
||||
| Plugin | Name | Description
|
||||
| Plugin | Nome | Descrizione
|
||||
|
||||
| alias | alias | elenco di alias
|
||||
|
||||
| aspell | aspell_langs | elenco di lingue supportate per aspell
|
||||
@@ -53,6 +54,10 @@
|
||||
|
||||
| weechat | bars_options | opzioni per le barre
|
||||
|
||||
| weechat | buffer_properties_get | proprietà che possono essere lette su un buffer
|
||||
|
||||
| weechat | buffer_properties_set | proprietà che possono essere impostate su un buffer
|
||||
|
||||
| weechat | buffers_names | nomi dei buffer
|
||||
|
||||
| weechat | buffers_numbers | numeri dei buffer
|
||||
@@ -71,12 +76,14 @@
|
||||
|
||||
| weechat | filters_names | nomi dei filtri
|
||||
|
||||
| weechat | infolists | nomi delle liste info in attesa
|
||||
| weechat | infolists | nomi degli hook liste info
|
||||
|
||||
| weechat | infos | nomi delle info in attesa
|
||||
| weechat | infos | nomi degli hook sulle info
|
||||
|
||||
| weechat | keys_codes | codici tasti
|
||||
|
||||
| weechat | keys_codes_for_reset | codici tasti che possono essere ripristinati (tasti aggiunti, ridefiniti o rimossi)
|
||||
|
||||
| weechat | nicks | nick nella lista nick del buffer corrente
|
||||
|
||||
| weechat | plugins_commands | comandi definiti dai plugin
|
||||
|
||||
@@ -1,58 +1,59 @@
|
||||
[width="65%",cols="^1,^2,8",options="header"]
|
||||
[width="100%",cols="^1,^2,5,5,5",options="header"]
|
||||
|========================================
|
||||
| Plugin | Name | Description
|
||||
| alias | alias | elenco di alias
|
||||
| Plugin | Nome | Descrizione | Puntatore | Argomenti
|
||||
|
||||
| irc | irc_channel | elenco dei canali per un server IRC
|
||||
| alias | alias | elenco di alias | puntatore all'alias (opzionale) | nome alias (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| irc | irc_ignore | elenco di ignore IRC
|
||||
| irc | irc_channel | elenco dei canali per un server IRC | puntatore al canale (opzionale) | nome server
|
||||
|
||||
| irc | irc_nick | elenco dei nick per un canale IRC
|
||||
| irc | irc_ignore | elenco di ignore IRC | puntatore all'ignore (opzionale) | -
|
||||
|
||||
| irc | irc_server | elenco di server IRC
|
||||
| irc | irc_nick | elenco dei nick per un canale IRC | puntatore al nick (opzionale) | server,canale,nick (canale e nick sono opzionali)
|
||||
|
||||
| logger | logger_buffer | elenco dei buffer logger
|
||||
| irc | irc_server | elenco di server IRC | puntatore al server (opzionale) | nome server (può iniziare o terminare con "*" come carattere jolly)
|
||||
|
||||
| lua | lua_script | elenco degli script
|
||||
| logger | logger_buffer | elenco dei buffer logger | puntatore al logger (opzionale) | -
|
||||
|
||||
| perl | perl_script | elenco degli script
|
||||
| lua | lua_script | elenco degli script | puntatore allo script (opzionale) | nome script (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| python | python_script | elenco degli script
|
||||
| perl | perl_script | elenco degli script | puntatore allo script (opzionale) | nome script (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| relay | relay | elenco di client relay
|
||||
| python | python_script | elenco degli script | puntatore allo script (opzionale) | nome script (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| ruby | ruby_script | elenco degli script
|
||||
| relay | relay | elenco di client relay | puntatore al relay (opzionale) | -
|
||||
|
||||
| tcl | tcl_script | elenco degli script
|
||||
| ruby | ruby_script | elenco degli script | puntatore allo script (opzionale) | nome script (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| weechat | bar | elenco delle barre
|
||||
| tcl | tcl_script | elenco degli script | puntatore allo script (opzionale) | nome script (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| weechat | bar_item | elenco degli elementi barra
|
||||
| weechat | bar | elenco delle barre | puntatore alla barra (opzionale) | nome barra (può iniziare o terminare con "*" come carattere jolly (opzionale)
|
||||
|
||||
| weechat | bar_window | elenco delle finestre barra
|
||||
| weechat | bar_item | elenco degli elementi barra | puntatore all'elemento della barra (opzionale) | nome dell'elemento della barra (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| weechat | buffer | elenco dei buffer
|
||||
| weechat | bar_window | elenco delle finestre barra | puntatore alla finestra della barra (opzionale) | -
|
||||
|
||||
| weechat | buffer_lines | righe di un buffer
|
||||
| weechat | buffer | elenco dei buffer | puntatore al buffer (opzionale) | nome buffer (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| weechat | filter | elenco dei filtri
|
||||
| weechat | buffer_lines | righe di un buffer | puntatore al buffer | -
|
||||
|
||||
| weechat | history | cronologia dei comandi
|
||||
| weechat | filter | elenco dei filtri | - | nome filtro (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| weechat | hook | elenco di hook
|
||||
| weechat | history | cronologia dei comandi | puntatore al buffer (se non impostato, restituisce la cronologia globale) (opzionale) | -
|
||||
|
||||
| weechat | hotlist | elenco dei buffer nella hotlist
|
||||
| weechat | hook | elenco di hook | - | tipo hook: comando, timer, ... (opzionale)
|
||||
|
||||
| weechat | key | elenco di tasti associati
|
||||
| weechat | hotlist | elenco dei buffer nella hotlist | - | -
|
||||
|
||||
| weechat | nicklist | nick nella lista nick per un buffer
|
||||
| weechat | key | elenco di tasti associati | - | -
|
||||
|
||||
| weechat | option | elenco delle opzioni
|
||||
| weechat | nicklist | nick nella lista nick per un buffer | puntatore al buffer | nick_xxx o group_xxx per ottenere solo xxx di nick/group (opzionale)
|
||||
|
||||
| weechat | plugin | elenco dei plugin
|
||||
| weechat | option | elenco delle opzioni | - | nome opzione (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| weechat | window | elenco delle finestre
|
||||
| weechat | plugin | elenco dei plugin | puntatore al plugin (opzionale) | nome plugin (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| xfer | xfer | lista di xfer
|
||||
| weechat | window | elenco delle finestre | puntatore alla finestra (opzionale) | nome finestra (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| xfer | xfer | lista di xfer | puntatore a xfer (opzionale) | -
|
||||
|
||||
|========================================
|
||||
|
||||
@@ -1,42 +1,47 @@
|
||||
[width="65%",cols="^1,^2,8",options="header"]
|
||||
[width="100%",cols="^1,^2,6,6",options="header"]
|
||||
|========================================
|
||||
| Plugin | Name | Description
|
||||
| fifo | fifo_filename | nome della pipe FIFO
|
||||
| Plugin | Nome | Descrizione | Argomenti
|
||||
|
||||
| irc | irc_buffer | ottiene puntatore al buffer per un server/canale IRC
|
||||
| fifo | fifo_filename | nome della pipe FIFO | -
|
||||
|
||||
| irc | irc_is_channel | 1 se la stringa è un canale IRC
|
||||
| irc | irc_buffer | ottiene puntatore al buffer per un server/canale/nick IRC | server,canale,nick (canale e nick sono opzionali)
|
||||
|
||||
| irc | irc_nick | ottiene nick corrente su un server
|
||||
| irc | irc_is_channel | 1 se la stringa è nome valido di un canale IRC | nome canale
|
||||
|
||||
| irc | irc_nick_color | riceve colore del nick
|
||||
| irc | irc_is_nick | 1 se la stringa è un nick IRC valido | nick
|
||||
|
||||
| irc | irc_nick_from_host | ottiene nick dall'host IRC
|
||||
| irc | irc_nick | ottiene nick corrente su un server | nome server
|
||||
|
||||
| weechat | charset_internal | set caratteri interno di WeeChat
|
||||
| irc | irc_nick_color | riceve colore del nick | nick
|
||||
|
||||
| weechat | charset_terminal | set caratteri terminale
|
||||
| irc | irc_nick_from_host | ottiene nick dall'host IRC | host IRC (come `:nick!nome@server.com`)
|
||||
|
||||
| weechat | date | data di compilazione di WeeChat
|
||||
| weechat | charset_internal | set caratteri interno di WeeChat | -
|
||||
|
||||
| weechat | dir_separator | separatore cartella
|
||||
| weechat | charset_terminal | set caratteri terminale | -
|
||||
|
||||
| weechat | filters_enabled | 1 se i filtri sono abilitati
|
||||
| weechat | date | data di compilazione di WeeChat | -
|
||||
|
||||
| weechat | inactivity | inattività della tastiera (secondi)
|
||||
| weechat | dir_separator | separatore cartella | -
|
||||
|
||||
| weechat | version | versione di WeeChat
|
||||
| weechat | filters_enabled | 1 se i filtri sono abilitati | -
|
||||
|
||||
| weechat | weechat_dir | cartella WeeChat
|
||||
| weechat | inactivity | inattività della tastiera (secondi) | -
|
||||
|
||||
| weechat | weechat_libdir | cartella "lib" di WeeChat
|
||||
| weechat | version | versione di WeeChat | -
|
||||
|
||||
| weechat | weechat_localedir | cartella "locale" di WeeChat
|
||||
| weechat | version_number | versione di WeeChat (come numero) | -
|
||||
|
||||
| weechat | weechat_sharedir | cartella "share" di WeeChat
|
||||
| weechat | weechat_dir | cartella WeeChat | -
|
||||
|
||||
| weechat | weechat_site | sito di WeeChat
|
||||
| weechat | weechat_libdir | cartella "lib" di WeeChat | -
|
||||
|
||||
| weechat | weechat_site_download | sito di WeeChat, pagina di download
|
||||
| weechat | weechat_localedir | cartella "locale" di WeeChat | -
|
||||
|
||||
| weechat | weechat_sharedir | cartella "share" di WeeChat | -
|
||||
|
||||
| weechat | weechat_site | sito di WeeChat | -
|
||||
|
||||
| weechat | weechat_site_download | sito di WeeChat, pagina di download | -
|
||||
|
||||
|========================================
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
• *`/alias`* `[nome_alias [comando [argomenti]]]`::
|
||||
• *`/alias`* `[[-completion completamento] nome_alias [comando [argomenti]]]`::
|
||||
|
||||
........................................
|
||||
crea un alias per un comando
|
||||
|
||||
completamento: completamento per l'alias (opzionale, il comportamento predefinito include il comando di destinazione)
|
||||
nome_alias: nome di un alias (può iniziare o terminare con "*" per un elenco di alias)
|
||||
comando: nome comando (più comandi possono essere separati da punto e virgola)
|
||||
argomenti: argomenti per un comando
|
||||
|
||||
Senza argomanto, questo comando elenca tutti gli alias definiti.
|
||||
|
||||
Nota: nel comando, le variabii speciali vengono sostituite:
|
||||
Nota: nel comando, vengono sostituite le variabili speciali:
|
||||
$n: argomento 'n' (tra 1 e 9)
|
||||
$-m: argomenti da 1 a 'm'
|
||||
$n-: argomenti da 'n' alla fine
|
||||
@@ -19,5 +20,15 @@
|
||||
$nick: nick corrente
|
||||
$channel: canale corrente
|
||||
$server: server corrente
|
||||
|
||||
Per rimuovere un alias, utilizzare il comando /unalias.
|
||||
|
||||
Esempi:
|
||||
alias /split per dividere la finestra orizzontalmente:
|
||||
/alias split /window splith
|
||||
alias /hello per dire "ciao" su tutti i canali tranne #weechat:
|
||||
/alias hello /allchan -exclude=#weechat msg * hello
|
||||
alias /forcejoin per inviare il comando IRC "forcejoin" con il completamento di /sajoin:
|
||||
/alias -completion %%sajoin forcejoin /quote forcejoin
|
||||
........................................
|
||||
|
||||
|
||||
@@ -41,15 +41,6 @@
|
||||
/allserv away sono assente
|
||||
........................................
|
||||
|
||||
• *`/away`* `[-all] [messaggio]`::
|
||||
|
||||
........................................
|
||||
attiva/disattiva lo stato di assenza
|
||||
|
||||
-all: attiva/disattiva lo stato di assenza su tutti i server connessi
|
||||
messaggio: messaggio di assenza (se non specificato, lo stato di assenza viene rimosso)
|
||||
........................................
|
||||
|
||||
• *`/ban`* `[canale] [nick [nick ...]]`::
|
||||
|
||||
........................................
|
||||
@@ -59,18 +50,20 @@
|
||||
nick: utente o host da bannare
|
||||
........................................
|
||||
|
||||
• *`/connect`* `[-all [-nojoin] | nome_server [nome_server ...] [-nojoin] | nome_host[/porta] [-opzione[=valore]] [-nooption]`::
|
||||
• *`/connect`* `[-all [-nojoin] | -open [-nojoin] | nome_server [nome_server ...] [-nojoin] | nome_host[/porta] [-opzione[=valore]] [-nooption]`::
|
||||
|
||||
........................................
|
||||
connette ad uno o più server IRC
|
||||
|
||||
-all: connette a tutti i server
|
||||
-all: connette a tutti i server definiti nella configurazione
|
||||
-open: connette a tutti i server aperti ai quali non si è attualmente connessi
|
||||
nome_server: nome interno del server a cui connettersi (il server deve essere stato creato con /server add)
|
||||
-nojoin: non entrare in nessun canale (anche se l'ingresso automatico è attivo sul server)
|
||||
nome_host: nome host (oppure IP) del server
|
||||
nome_host: nome host (oppure IP) del server
|
||||
porta: porta per il server (6667 è la predefinita)
|
||||
opzione: imposta opzione per il server (per le opzioni bool, il valore può essere omesso)
|
||||
nooption: imposta il valore bool dell'opzione su off (per esempio: -nossl)
|
||||
|
||||
Esempi:
|
||||
/connect freenode
|
||||
/connect irc.oftc.net/6667
|
||||
@@ -85,16 +78,16 @@
|
||||
invia un messaggio CTCP (Protocollo Client-A-Client)
|
||||
|
||||
destinatario: nick o canale a cui inviare il CTCP
|
||||
tipo: tipo CTCP (esempi: "version", "ping", ..)
|
||||
tipo: tipo CTCP (esempi: "version", "ping", ..)
|
||||
argomenti: argomenti per il CTCP
|
||||
........................................
|
||||
|
||||
• *`/cycle`* `[canale[,canale]] [messaggio]`::
|
||||
|
||||
........................................
|
||||
lascia e rienta in un canale
|
||||
esce e rienta in un canale
|
||||
|
||||
canale: nome canale per il ciclo
|
||||
canale: nome canale per il ciclo
|
||||
messaggio: messaggio di uscita (mostrato agli altri utenti)
|
||||
........................................
|
||||
|
||||
@@ -103,15 +96,21 @@
|
||||
........................................
|
||||
avvia DCC (file o chat)
|
||||
|
||||
azione: 'send' (invia file) o 'chat'
|
||||
nick: nick a cui inviare il file o aprire la chat
|
||||
file: nome file (sull'host locale)
|
||||
azione: 'send' (invia file) o 'chat' (avvia una conversazione)
|
||||
nick: nick a cui inviare il file o con cui aprire la chat
|
||||
file: nome file (sull'host locale)
|
||||
|
||||
Esempi:
|
||||
chat con "tizio":
|
||||
/dcc chat tizio
|
||||
invia file "/home/foo/bar.txt al nick "tizio":
|
||||
/dcc send tizio /home/foo/bar.txt
|
||||
........................................
|
||||
|
||||
• *`/dehalfop`* `[nick [nick]]`::
|
||||
|
||||
........................................
|
||||
rimuovi lo stato di half-op da uno (o più) nick
|
||||
rimuove lo stato di half-op da uno (o più) nick
|
||||
........................................
|
||||
|
||||
• *`/deop`* `[nick [nick]]`::
|
||||
@@ -123,7 +122,7 @@
|
||||
• *`/devoice`* `[nick [nick]]`::
|
||||
|
||||
........................................
|
||||
rimuove voice da uno (o più) nick
|
||||
rimuove voce da uno (o più) nick
|
||||
........................................
|
||||
|
||||
• *`/die`*::
|
||||
@@ -144,7 +143,7 @@
|
||||
• *`/halfop`* `[nick [nick]]`::
|
||||
|
||||
........................................
|
||||
concedi lo stato di halfop ad uno (o più) nick
|
||||
concede lo stato di halfop ad uno (o più) nick
|
||||
........................................
|
||||
|
||||
• *`/ignore`* `[list] | [add [re:]nick/host [server [canale]]] | [del numero|-all]`::
|
||||
@@ -209,8 +208,8 @@
|
||||
........................................
|
||||
caccia forzatamente un utente da un canale
|
||||
|
||||
canale: canale dove si trova l'utente
|
||||
nick: nick da cacciare
|
||||
canale: canale dove si trova l'utente
|
||||
nick: nick da cacciare
|
||||
commento: commento per il kick
|
||||
........................................
|
||||
|
||||
@@ -223,9 +222,11 @@
|
||||
nick: nick da cacciare e bannare
|
||||
commento: commento per la cacciata
|
||||
|
||||
È possibile cacciare/bannare con una mask, il nick verrà estratto dalla mask e sostituito da "*", per esempio:
|
||||
/kickban tizio!*@host.com
|
||||
banna "*!*@host.com" e poi caccia "tizio".
|
||||
È possibile cacciare/bannare con una mask, il nick verrà estratto dalla mask e sostituito da "*".
|
||||
|
||||
Esempio:
|
||||
banna "*!*@host.com" e poi caccia "tizio":
|
||||
/kickban tizio!*@host.com
|
||||
........................................
|
||||
|
||||
• *`/kill`* `nick commento`::
|
||||
@@ -246,13 +247,22 @@
|
||||
mask_server: elenco dei server devono corrispondere a questa mask
|
||||
........................................
|
||||
|
||||
• *`/list`* `[canale[,canale] [server]`::
|
||||
• *`/list`* `[canale[,canale] [server] [-re regexp]]`::
|
||||
|
||||
........................................
|
||||
elenca i canali ed i loro argomenti
|
||||
|
||||
canale: canale da elencare (è consentita un'espressione regolare)
|
||||
canale: canale da elencare
|
||||
server: nome del server
|
||||
regexp: espressione regolare utilizzata per filtrare i risultati
|
||||
|
||||
Esempi:
|
||||
elenca tutti i canali sul server (può essere molto lento su grandi network):
|
||||
/list
|
||||
elenca il canale #weechat:
|
||||
/list #weechat.*
|
||||
elenca tutti i canali che iniziano con "#weechat" (può essere molto lento su grandi network):
|
||||
/list -re #weechat.*
|
||||
........................................
|
||||
|
||||
• *`/lusers`* `[mask [destinazione]]`::
|
||||
@@ -260,10 +270,16 @@
|
||||
........................................
|
||||
ottiene statistiche sulla dimensione del network IRC
|
||||
|
||||
mask: server corrispondenti alla mask
|
||||
mask: server corrispondenti alla mask
|
||||
destinazione: server per redirigere la richiesta
|
||||
........................................
|
||||
|
||||
• *`/map`*::
|
||||
|
||||
........................................
|
||||
mostra una mappa grafica della rete IRC
|
||||
........................................
|
||||
|
||||
• *`/me`* `messaggio`::
|
||||
|
||||
........................................
|
||||
@@ -278,8 +294,8 @@
|
||||
cambia modalità canale o utente
|
||||
|
||||
modalità canale:
|
||||
canale: nome canale da modificare (predefinito è quello attivo)
|
||||
o: concedi/ottieni privilegi di operatore del canale
|
||||
canale: nome canale da modificare (quello attivo è il predefinito)
|
||||
o: concede/nega i privilegi di operatore del canale
|
||||
p: canale privato
|
||||
s: canale segreto
|
||||
i: canale a solo-invito
|
||||
@@ -289,7 +305,7 @@
|
||||
l: imposta il limite massimo di utenti sul canale
|
||||
b: imposta un mask ban per tenere alla larga agli utenti
|
||||
e: imposta mask di eccezione
|
||||
v: concedi/ottieni la possibilità di parlare su un canale moderato
|
||||
v: concede/nega la possibilità di parlare su un canale moderato
|
||||
k: imposta una chiave per il canale (password)
|
||||
modalità utente:
|
||||
nick: nick da modificare
|
||||
@@ -312,9 +328,9 @@
|
||||
........................................
|
||||
invia un messaggio ad un nick o a un canale
|
||||
|
||||
server: invia a questo server (nome interno)
|
||||
server: invia a questo server (nome interno)
|
||||
destinatario: nick o canale (può essere una mask, '*' = canale corrente)
|
||||
testo: testo da inviare
|
||||
testo: testo da inviare
|
||||
........................................
|
||||
|
||||
• *`/names`* `[canale[,canale]]`::
|
||||
@@ -330,7 +346,7 @@
|
||||
........................................
|
||||
modifica il nick corrente
|
||||
|
||||
-all: imposta nuovo nick per tutti i server connessi
|
||||
-all: imposta nuovo nick per tutti i server connessi
|
||||
nick: nuovo nick
|
||||
........................................
|
||||
|
||||
@@ -339,15 +355,15 @@
|
||||
........................................
|
||||
invia messaggio di notifica all'utente
|
||||
|
||||
server: invia a questo server (nome interno)
|
||||
nick: utente a cui inviare la notifica
|
||||
testo: testo da inviare
|
||||
server: invia a questo server (nome interno)
|
||||
nick: utente a cui inviare la notifica
|
||||
testo: testo da inviare
|
||||
........................................
|
||||
|
||||
• *`/op`* `nick [nick]`::
|
||||
|
||||
........................................
|
||||
concedi lo stato di operatore del canale al(ai) nick
|
||||
concede lo stato di operatore del canale al(ai) nick
|
||||
........................................
|
||||
|
||||
• *`/oper`* `utente password`::
|
||||
@@ -361,9 +377,9 @@
|
||||
• *`/part`* `[canale[,canale]] [messaggio]`::
|
||||
|
||||
........................................
|
||||
lascia un canale
|
||||
esce da un canale
|
||||
|
||||
canale: nome del canale da lasciare
|
||||
canale: nome del canale da lasciare
|
||||
messaggio_uscita: messaggio di uscita (mostrato agli altri utenti)
|
||||
........................................
|
||||
|
||||
@@ -391,8 +407,8 @@
|
||||
invia un messaggio privato ad un nick
|
||||
|
||||
server: invia a questo server (nome interno)
|
||||
nick: nick per la conversazione privata
|
||||
testo: testo da inviare
|
||||
nick: nick per la conversazione privata
|
||||
testo: testo da inviare
|
||||
........................................
|
||||
|
||||
• *`/quote`* `[-server server] dati`::
|
||||
@@ -401,17 +417,17 @@
|
||||
invia dati grezzi al server senza analisi
|
||||
|
||||
server: invia a questo server (nome interno)
|
||||
dati: dati grezzi da inviare
|
||||
dati: dati grezzi da inviare
|
||||
........................................
|
||||
|
||||
• *`/reconnect`* `[-all [-nojoin] | nome_server [nome_server ...] [-nojoin]]`::
|
||||
|
||||
........................................
|
||||
riconnetti a uno (o più) server
|
||||
riconnette a uno (o più) server
|
||||
|
||||
-all: riconnetti a tutti i server
|
||||
-all: riconnetti a tutti i server
|
||||
nome_server: nome del server a cui riconnettersi
|
||||
nojoin: non entrare in nessun canale (anche se l'ingresso automatico è abilitato sul server
|
||||
nojoin: non entrare in nessun canale (anche se l'ingresso automatico è abilitato sul server)
|
||||
........................................
|
||||
|
||||
• *`/rehash`* `[opzione]`::
|
||||
@@ -433,7 +449,7 @@
|
||||
........................................
|
||||
forza un utente ad entrare su uno o più canali
|
||||
|
||||
nick: nick
|
||||
nick: nick
|
||||
canale: nome del canale
|
||||
........................................
|
||||
|
||||
@@ -460,7 +476,7 @@
|
||||
........................................
|
||||
forza un utente a lasciare uno o più canali
|
||||
|
||||
nick: nick
|
||||
nick: nick
|
||||
canale: nome del canale
|
||||
........................................
|
||||
|
||||
@@ -478,13 +494,13 @@
|
||||
........................................
|
||||
elenca, aggiunge o rimuove server IRC
|
||||
|
||||
list: elenca tutti i server (nessun parametro necessario)
|
||||
listfull: elenca tutti i server con tutte le informazioni
|
||||
list: elenca tutti i server (senza argomento, questa lista viene visualizzata)
|
||||
listfull: elenca tutti i server con tutte le informazioni per ogni server
|
||||
add: crea un nuovo server
|
||||
nome_server: nome server, per il solo uso interno
|
||||
nome_host: nome o indirizzo IP del server, con porta opzionale (predefinita: 6667)
|
||||
nome_server: nome server, per il solo uso interno e di visualizzazione
|
||||
nome_host: nome o indirizzo IP del server, con porta opzionale (predefinita: 6667), più indirizzi possono essere separati da virgole
|
||||
temp: crea server temporaneo (non salvato)
|
||||
option: imposta opzione per il server (per opzioni bool, il valorepuò essere omesso)
|
||||
option: imposta opzione per il server (per opzioni bool, il valore può essere omesso)
|
||||
nooption: imposta l'opzione bool su 'off' (per esempio: -nossl)
|
||||
copy: duplica un server
|
||||
rename: rinomina un server
|
||||
@@ -499,6 +515,7 @@
|
||||
/server add oftc irc.oftc.net/6697 -ssl
|
||||
/server add oftc6 irc6.oftc.net/6697 -ipv6 -ssl
|
||||
/server add freenode2 chat.eu.freenode.net/6667,chat.us.freenode.net/6667
|
||||
/server add freenode3 irc.freenode.net -password=miapassword
|
||||
/server copy oftc oftcbis
|
||||
/server rename oftc newoftc
|
||||
/server del freenode
|
||||
@@ -622,7 +639,7 @@
|
||||
• *`/voice`* `[nick [nick]]`::
|
||||
|
||||
........................................
|
||||
concedi il voice ad uno (o più) utenti
|
||||
concede il voice ad uno (o più) utenti
|
||||
........................................
|
||||
|
||||
• *`/wallops`* `testo`::
|
||||
|
||||
@@ -43,11 +43,6 @@
|
||||
** tipo: intero
|
||||
** valori: off, local, channel (valore predefinito: local)
|
||||
|
||||
* *irc.look.display_channel_modes*
|
||||
** descrizione: visualizza le modalità canale nell'elemento barra "buffer_name"
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.look.display_ctcp_blocked*
|
||||
** descrizione: visualizza messaggio CTCP anche se bloccato
|
||||
** tipo: bool
|
||||
@@ -63,11 +58,6 @@
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.look.display_nick_modes*
|
||||
** descrizione: visualizza le modalità nick nell'elemento barra "input_prompt"
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.look.display_old_topic*
|
||||
** descrizione: visualizza l'argomento del canale precedente quando viene cambiato
|
||||
** tipo: bool
|
||||
@@ -79,15 +69,35 @@
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.look.highlight_tags*
|
||||
** descrizione: elenco separato da liste di tag per i messaggi che potrebbero generare evidenziazioni (di solito qualsiasi messaggio da altri utenti, non quelli dal server,...)
|
||||
** descrizione: elenco separato da liste di tag per i messaggi che potrebbero generare eventi (di solito qualsiasi messaggio da altri utenti, non quelli dal server...)
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "irc_privmsg,irc_notice")
|
||||
|
||||
* *irc.look.item_channel_modes*
|
||||
** descrizione: visualizza le modalità canale nell'elemento barra "buffer_name"
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.look.item_channel_modes_hide_key*
|
||||
** descrizione: nasconde la chiave del canale se le modalità sono visualizzate nell'elemento barra "buffer_name" (in questo modo saranno nascosti tutti gli argomenti delle modalità del canale se la modalità +k è impostata sul canale)
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: off)
|
||||
|
||||
* *irc.look.item_display_server*
|
||||
** descrizione: nome dell'elemento barra dov'è visualizzato il server IRC (per la barra di stato)
|
||||
** tipo: intero
|
||||
** valori: buffer_plugin, buffer_name (valore predefinito: buffer_plugin)
|
||||
|
||||
* *irc.look.item_nick_modes*
|
||||
** descrizione: visualizza le modalità nick nell'elemento barra "input_prompt"
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.look.item_nick_prefix*
|
||||
** descrizione: visualizza il prefisso del nick nell'elemento barra "input_prompt"
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.look.msgbuffer_fallback*
|
||||
** descrizione: buffer di destinazione predefinito per le opzioni di msgbuffer quando la destinazione è privata ed il buffer privato non viene trovato
|
||||
** tipo: intero
|
||||
@@ -123,6 +133,11 @@
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: off)
|
||||
|
||||
* *irc.look.part_closes_buffer*
|
||||
** descrizione: chiude buffer quando viene digitato /part nel canale
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: off)
|
||||
|
||||
* *irc.look.raw_messages*
|
||||
** descrizione: numero di messaggi grezzi IRC da salvare quando il buffer dei dati grezzi chiuso (i messaggi verranno visualizzati all'apertura del buffer dei dati grezzi)
|
||||
** tipo: intero
|
||||
@@ -141,13 +156,23 @@
|
||||
* *irc.look.smart_filter*
|
||||
** descrizione: filtra i messaggi di entrata/uscita/abbandono per un nick se inattivo per alcuni minuti sul canale (è necessario creare un filtro sul tag "irc_smart_filter")
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: off)
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.look.smart_filter_delay*
|
||||
** descrizione: ritardo per il filtraggio dei messaggi di entrata/uscita/abbandono (in minuti)
|
||||
** tipo: intero
|
||||
** valori: 1 .. 10080 (valore predefinito: 5)
|
||||
|
||||
* *irc.look.smart_filter_join*
|
||||
** descrizione: abilita filtro smart per i messaggi "join" (entrata)
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.look.smart_filter_quit*
|
||||
** descrizione: abilita filtro smart per i messaggi "part" (uscita) e "quit (disconnessione)
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.look.topic_strip_colors*
|
||||
** descrizione: elimina colori nell'argomento (utilizzato solo quando viene visualizzato il titolo del buffer)
|
||||
** tipo: bool
|
||||
@@ -183,6 +208,11 @@
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *irc.network.connection_timeout*
|
||||
** descrizione: timeout (in secondi) tra la connessione TCP al server ed il messaggio 001 ricevuto, se questo timeout viene raggiunto prima della ricezione del messaggio 001, WeeChat effettuerà la disconnessione
|
||||
** tipo: intero
|
||||
** valori: 1 .. 3600 (valore predefinito: 60)
|
||||
|
||||
* *irc.network.default_msg_part*
|
||||
** descrizione: messaggio di uscita predefinito (in uscita dal canale) ("%v" verrà sostituito dalla versione di WeeChat)
|
||||
** tipo: stringa
|
||||
@@ -288,6 +318,26 @@
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "")
|
||||
|
||||
* *irc.server_default.sasl_mechanism*
|
||||
** descrizione: meccanismo per l'autenticazione SASL
|
||||
** tipo: intero
|
||||
** valori: plain, dh-blowfish (valore predefinito: plain)
|
||||
|
||||
* *irc.server_default.sasl_password*
|
||||
** descrizione: password per l'autenticazione SASL
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "")
|
||||
|
||||
* *irc.server_default.sasl_timeout*
|
||||
** descrizione: timeout (in secondi) prima di annullare l'autenticazione SASL
|
||||
** tipo: intero
|
||||
** valori: 1 .. 3600 (valore predefinito: 15)
|
||||
|
||||
* *irc.server_default.sasl_username*
|
||||
** descrizione: nome utente per l'autenticazione SASL
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "")
|
||||
|
||||
* *irc.server_default.ssl*
|
||||
** descrizione: utilizza SSL per le comunicazioni col server
|
||||
** tipo: bool
|
||||
|
||||
@@ -11,16 +11,15 @@
|
||||
Le opzioni "logger.level.*" e "logger.mask.*" possono essere utilizzate per impostare un livello o una mask per un buffer, o per i buffer che cominciano per nome.
|
||||
|
||||
Esempi:
|
||||
imposta il livello 5 al buffer attivo:
|
||||
imposta il livello 5 per buffer corrente:
|
||||
/logger set 5
|
||||
disabilita logging per il buffer attivo:
|
||||
disabilita logging per il buffer corrente:
|
||||
/logger disable
|
||||
|
||||
imposta il livello 3 per tutti i buffer IRC:
|
||||
/set logger.level.irc 3
|
||||
disabilita logging per il buffer principale di WeeChat:
|
||||
/set logger.level.core.weechat 0
|
||||
utilizza una cartella per il server IRC e un file per il canale al suo interno:
|
||||
utilizza una cartella per il server IRC e un file per ogni canale al suo interno:
|
||||
/set logger.mask.irc "$server/$channel.weechatlog"
|
||||
|
||||
Livelli di log utilizzati dal plugin IRC:
|
||||
|
||||
@@ -4,12 +4,12 @@
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *logger.file.info_lines*
|
||||
** descrizione: scrivere riga di informazione nel file di log quando il log inizia o termina per un buffer
|
||||
** descrizione: scrive una riga informativa nel file di log quando il log inizia o termina per un buffer
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: off)
|
||||
|
||||
* *logger.file.mask*
|
||||
** descrizione: mask del nome file predefinito per i file di log (il formato è "cartella/per/file" oppure "file", senza la prima "/" perché l'opzione "path" è utilizzata per costruire il percorso completo del file); sono ammesse le variabili dei buffer locali
|
||||
** descrizione: mask del nome file predefinito per i file di log (il formato è "cartella/per/file" oppure "file", senza la prima "/" perché l'opzione "path" è utilizzata per costruire il percorso completo del file); sono ammesse le variabili del buffer locale; sono ammessi gli specificatori di data (consultare man strftime)
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "$plugin.$name.weechatlog")
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *logger.file.path*
|
||||
** descrizione: percorso per i file di log di WeeChat ("%h" verrà sostituito dalla cartella home di WeeChat, predefinita è "~/.weechat)
|
||||
** descrizione: percorso per i file di log di WeeChat: "%h" all'inizio della stringa viene sostituito dalla cartella home di WeeChat (predefinita è "~/.weechat); sono ammessi gli specificatori di data (consultare man strftime)
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "%h/logs/")
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/lua`* `[list [nome]] | [listfull [nome]] | [load nome_file] | [autoload] | [reload] | [unload [nome]]`::
|
||||
• *`/lua`* `[list [nome]] | [listfull [nome]] | [load file] | [autoload] | [reload [nome]] | [unload [nome]]`::
|
||||
|
||||
........................................
|
||||
elenca/attiva/disattiva script
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/perl`* `[list [nome]] | [listfull [nome]] | [load nome_file] | [autoload] | [reload] | [unload [nome]]`::
|
||||
• *`/perl`* `[list [nome]] | [listfull [nome]] | [load file] | [autoload] | [reload [nome]] | [unload [nome]]`::
|
||||
|
||||
........................................
|
||||
elenca/attiva/disattiva script
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/python`* `[list [nome]] | [listfull [nome]] | [load nome_file] | [autoload] | [reload] | [unload [nome]]`::
|
||||
• *`/python`* `[list [nome]] | [listfull [nome]] | [load file] | [autoload] | [reload [nome]] | [unload [nome]]`::
|
||||
|
||||
........................................
|
||||
elenca/attiva/disattiva script
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/ruby`* `[list [nome]] | [listfull [nome]] | [load nome_file] | [autoload] | [reload] | [unload [nome]]`::
|
||||
• *`/ruby`* `[list [nome]] | [listfull [nome]] | [load file] | [autoload] | [reload [nome]] | [unload [nome]]`::
|
||||
|
||||
........................................
|
||||
elenca/attiva/disattiva script
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
• *`/tcl`* `[list [nome]] | [listfull [nome]] | [load nome_file] | [autoload] | [reload] | [unload [nome]]`::
|
||||
• *`/tcl`* `[list [nome]] | [listfull [nome]] | [load file] | [autoload] | [reload [nome]] | [unload [nome]]`::
|
||||
|
||||
........................................
|
||||
elenca/attiva/disattiva script
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
• *`/away`* `[-all] [messaggio]`::
|
||||
|
||||
........................................
|
||||
attiva/disattiva lo stato di assenza
|
||||
|
||||
-all: attiva/disattiva lo stato di assenza su tutti i server connessi
|
||||
messaggio: messaggio di assenza (se non specificato, lo stato di assenza viene rimosso)
|
||||
........................................
|
||||
|
||||
• *`/bar`* `[add nome_barra tipo[,cond1,cond2,...] posizione dimensione separatore elemento1,elemento2,...] | [default] | [del nome_barra|-all] | [set nome_barra opzione valore] | [hide|show|toggle nome_barra] | [scroll nome_barra buffer scroll_value] | [list] | [listfull] | [listitems]`::
|
||||
|
||||
........................................
|
||||
@@ -44,42 +53,50 @@
|
||||
/bar scroll nicklist * ye
|
||||
........................................
|
||||
|
||||
• *`/buffer`* `[clear [numero | -merged | -all] | move numero | merge numero | unmerge [numero] | close [n1[-n2]] | list | notify livello | localvar | set proprietà valore | numero | nome]`::
|
||||
• *`/buffer`* `[clear [numero | -merged | -all] | move numero | merge numero | unmerge [numero] | close [n1[-n2]] | list | notify livello | localvar | set proprietà valore | get proprietà |numero | nome]`::
|
||||
|
||||
........................................
|
||||
gestione buffer
|
||||
|
||||
clear: pulisce il contenuto del buffero (numero per un buffer, -merged per i buffer uniti, -all per tutti i buffer, o nulla per quello corrente)
|
||||
clear: pulisce il contenuto del buffer (numero per un buffer, -merged per i buffer uniti, -all per tutti i buffer, o nulla per quello corrente)
|
||||
move: sposta buffer nella lista (può essere relativo, ad esempio -1)
|
||||
merge: unisce il buffer corrente ad un altro (l'area di chat sarà un mix di entrambi)
|
||||
(con ctrl-x alterna i buffer uniti)
|
||||
unmerge: stacca il buffer da quelli con lo stesso numero
|
||||
(con ctrl-x si alterna tra i buffer uniti)
|
||||
unmerge: stacca il buffer da altri buffer con lo stesso numero
|
||||
close: chiudi buffer (numero/range opzionale)
|
||||
list: elenca i buffer (nessun parametro implica questa lista)
|
||||
notify: imposta il livello di notifica per il buffer corrente: questo livello determina se il buffer verrà aggiunto alla hotlist oppure no:
|
||||
none: mai
|
||||
highlight: solo per le evidenziazioni
|
||||
message: per i messaggi da tutti gli utenti + evidenziazioni
|
||||
highlight: solo per gli eventi
|
||||
message: per i messaggi da tutti gli utenti + eventi
|
||||
all: tutti i messaggi
|
||||
reset: ripristina il valore predefinito (all (tutti attivi))
|
||||
reset: ripristina il valore predefinito (tutto)
|
||||
localvar: visualizza la variabile locale per il buffer corrente
|
||||
set: imposta una proprietà per il buffer corrente
|
||||
get: visualizza una proprietà del buffer corrente
|
||||
number: passa al buffer di numero in numero:
|
||||
'+': passo relativo, aggiunge il numero a quello corrente
|
||||
'-': passo relativo, sottrae il numero a quello corrente
|
||||
'-': passo relativo, sottrae il numero da quello corrente
|
||||
'*': passa al numero, utilizzando l'opzione "weechat.look.jump_current_to_previous_buffer"
|
||||
nome: passa al buffer di nome (parziale)
|
||||
|
||||
Esempi:
|
||||
pulisci buffer corrente: /buffer clear
|
||||
pulisci tutti i buffer: /buffer clear -all
|
||||
sposta buffer: /buffer move 5
|
||||
unisci al buffer core: /buffer merge 1
|
||||
stacca buffer: /buffer unmerge
|
||||
chiudi buffer corrente: /buffer close
|
||||
chiudi buffer da 5 a 7: /buffer close 5-7
|
||||
passa a #weechat: /buffer #weechat
|
||||
passa al buffer successivo: /buffer +1
|
||||
pulisci buffer corrente:
|
||||
/buffer clear
|
||||
sposta buffer al numero 5:
|
||||
/buffer move 5
|
||||
unisci al buffer core:
|
||||
/buffer merge 1
|
||||
stacca buffer:
|
||||
/buffer unmerge
|
||||
chiudi buffer corrente:
|
||||
/buffer close
|
||||
chiudi buffer da 5 a 7:
|
||||
/buffer close 5-7
|
||||
salta a #weechat:
|
||||
/buffer #weechat
|
||||
salta al buffer successivo:
|
||||
/buffer +1
|
||||
........................................
|
||||
|
||||
• *`/command`* `plugin comando`::
|
||||
@@ -115,26 +132,33 @@
|
||||
disable: disabilita filtri
|
||||
toggle: abilita/disabilita filtri
|
||||
nome: nome del filtro
|
||||
add: aggiungi un filtro
|
||||
add: aggiunge un filtro
|
||||
del: elimina un filtro
|
||||
-all: elimina tutti i filtri
|
||||
plugin.buffer: plugin e buffer in cui il filtro è attivo ("*" per tutti i buffer)
|
||||
tag: elenco di tag separati da virgole, per esempio: "irc_join,irc_part,irc_quit"
|
||||
regex: espressione regolare da cercare nella riga (utilizzare \t per separare il prefisso dal messaggio, caratteri speciali come "|" devono essere preceduti dal carattere escape: '\|')
|
||||
|
||||
Il tasto predefinito alt+'=' abilita/disabilita il filtraggio.
|
||||
Il tasto predefinito alt+'=' abilita/disabilita il filtro.
|
||||
|
||||
Tag utilizzati di frequente:
|
||||
no_filter, no_highlight, log0..log9 (livello di log),
|
||||
notify_message, notify_private, notify_highlight,
|
||||
irc_xxx (xxx è il nome comando o il numero, consultare /server raw), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info.
|
||||
|
||||
Esempi:
|
||||
usa il filtro intelligente IRC per i messaggi di entrata/uscita/abbandono:
|
||||
/filter add irc_smart * irc_smart_filter *
|
||||
/filter add irc_smart * irc_smart_filter *
|
||||
filtra tutti i messaggi entrata/uscita/abbandono di IRC:
|
||||
/filter add joinquit * irc_join,irc_part,irc_quit *
|
||||
/filter add joinquit * irc_join,irc_part,irc_quit *
|
||||
filtra i nick visualizzati all'ingresso in un canale o con /names:
|
||||
/filter add nicks * irc_366 *
|
||||
filtra il nick "tizio" sul canale IRC #weechat
|
||||
/filter add tizio irc.freenode.#esempio * tizio\t
|
||||
/filter add tizio irc.freenode.#esempio * tizio\t
|
||||
filtra le righe contententi la parola "spam":
|
||||
/filter add filterspam ** spam
|
||||
filtra le righe contententi "weechat fa schifo" sul canale irc #weechat:
|
||||
/filter add schifo irc.freenode.#weechat * weechat fa schifo
|
||||
/filter add filterspam * * spam
|
||||
filtra le righe contententi "weechat fa schifo" sul canale IRC #weechat:
|
||||
/filter add schifo irc.freenode.#weechat * weechat fa schifo
|
||||
........................................
|
||||
|
||||
• *`/help`* `[comando | opzione]`::
|
||||
@@ -155,7 +179,7 @@
|
||||
valore: numero delle voci nella cronologia da mostrare
|
||||
........................................
|
||||
|
||||
• *`/input`* `return | complete_next | complete_previous | search_next | delete_previous_char | delete_next_char | delete_previous_word | delete_next_word | delete_beginning_of_line | delete_end_of_line | delete_line | clipboard_paste | transpose_chars | move_beginning_of_line | move_end_of_line | move_previous_char | move_next_char | move_previous_word | move_next_word | history_previous | history_next | history_global_previous | history_global_next | jump_smart | jump_last_buffer | jump_previously_visited_buffer | jump_next_visited_buffer | hotlist_clear | grab_key | grab_key_command | scroll_unread | set_unread | set_unread_current_buffer | insert [args]`::
|
||||
• *`/input`* `return | complete_next | complete_previous | search_next | delete_previous_char | delete_next_char | delete_previous_word | delete_next_word | delete_beginning_of_line | delete_end_of_line | delete_line | clipboard_paste | transpose_chars | move_beginning_of_line | move_end_of_line | move_previous_char | move_next_char | move_previous_word | move_next_word | history_previous | history_next | history_global_previous | history_global_next | jump_smart | jump_last_buffer | jump_previously_visited_buffer | jump_next_visited_buffer | hotlist_clear | grab_key | grab_key_command | scroll_unread | set_unread | set_unread_current_buffer | switch_active_buffer | switch_active_buffer_previous | insert [args]`::
|
||||
|
||||
........................................
|
||||
funzioni per la riga di comando
|
||||
@@ -163,23 +187,35 @@
|
||||
Questo comando è utilizzato da combinazioni di tasti o plugin.
|
||||
........................................
|
||||
|
||||
• *`/key`* `[bind tasto [comando [argomenti]]] | [unbind tasto] | [reset -yes] | [missing]`::
|
||||
• *`/key`* `[list | listdefault | listdiff] | [bind tasto [comando [args]]] | [unbind tasto] | [reset tasto] | [resetall -yes] | [missing]`::
|
||||
|
||||
........................................
|
||||
associa/disassocia tasti
|
||||
|
||||
bind: associa un comando ad un tasto o visualizza il comando associato al tasto
|
||||
unbind: elimina l'associazione di un tasto
|
||||
reset: ripristina le associazioni ai valori predefiniti ed elimina TUTTE le associazioni personalizzate (attenzione!)
|
||||
missing: aggiunge i tasti mancanti (utilizzando le associazioni predefinite)
|
||||
list: elenca tutti i tasti correnti (senza argomento, viene visualizzata questa lista)
|
||||
listdefault: elenca i tasti predefiniti
|
||||
listdiff: elenca le differenze tra tasti attuali e predefiniti (tasti aggiunti, ridefiniti o eliminati)
|
||||
bind: associa un comando ad un tasto o visualizza il comando associato al tasto
|
||||
unbind: rimuove una associazione di tasti
|
||||
reset: ripristina un tasto all'assegnazione predefinita
|
||||
resetall: ripristina le associazioni ai valori predefiniti ed elimina TUTTE le associazioni personalizzate (usare con cautela!)
|
||||
missing: aggiunge tasti mancanti (utilizzando le associazioni predefinite), utile dopo l'installazione di una nuova versione di WeeChat
|
||||
|
||||
Quando viene associato un comando ad una chiave, è consigliato utilizzare il tasto alt+k (oppure Esc e k), e poi premere il tasto da associare: il codice tasto verrà inserito nella riga di comando.
|
||||
Al momento di associare un comando ad un tasto si raccomanda di utilizzare il tasto alt+k (oppure Esc e k), e digitare il tasto da associare: il codice tasto verrà inserito nella riga di comando.
|
||||
|
||||
Esempi:
|
||||
il tasto alt-x per alternare la barra della nicklist:
|
||||
/key bind meta-x /bar toggle nicklist
|
||||
il tasto alt-r per passare al canale IRC #weechat:
|
||||
/key bind meta-r /buffer #weechat
|
||||
ripristinare l'associazione predefinita per il tasto alt-r:
|
||||
/key reset meta-r
|
||||
........................................
|
||||
|
||||
• *`/layout`* `[[save | apply | reset] [buffers | windows]]`::
|
||||
|
||||
........................................
|
||||
salva/applica/resetta il layout per i buffer e le finestre
|
||||
salva/applica/ripristina il layout per i buffer e le finestre
|
||||
|
||||
save: salva il layout corrente
|
||||
apply: applica il layout salvato
|
||||
@@ -190,6 +226,28 @@
|
||||
Senza argomenti, il comando visualizza il layout salvato.
|
||||
........................................
|
||||
|
||||
• *`/mute`* `[-current | -buffer nome | -all] comando`::
|
||||
|
||||
........................................
|
||||
esegue un comando in silenzio
|
||||
|
||||
-current: nessun output sul buffer corrente
|
||||
-buffer: nessun output sul buffer specificato
|
||||
nome: nome completo del buffer (esempi: "irc.server.freenode", "irc.freenode.#weechat")
|
||||
-all: nessun output su TUTTI i buffer
|
||||
command: comando da eseguire in silenzio (una '/' viene aggiunta automaticamente all'inizio del comando se non trovata)
|
||||
|
||||
Se non viene specificata una destinazione (-current, -buffer o -all), la destinazione predefinita è il buffer core di WeeChat.
|
||||
|
||||
Esempi:
|
||||
salva la configurazione:
|
||||
/mute save
|
||||
messaggio sul canale IRC corrente:
|
||||
/mute -current msg * ciao!
|
||||
messaggio sul canale #weechat:
|
||||
/mute -buffer irc.freenode.#weechat msg #weechat ciao!
|
||||
........................................
|
||||
|
||||
• *`/plugin`* `[list [nome]] | [listfull [nome]] | [load file] | [autoload] | [reload [nome]] | [unload [nome]]`::
|
||||
|
||||
........................................
|
||||
@@ -238,7 +296,7 @@
|
||||
• *`/quit`* `[argomenti]`::
|
||||
|
||||
........................................
|
||||
esci da WeeChat
|
||||
esce da WeeChat
|
||||
|
||||
argomenti: testo inviato con il segnale "quit"
|
||||
(ad esempio il plugin irc usa questo testo per inviare il messaggio di uscita al server)
|
||||
@@ -284,11 +342,11 @@
|
||||
• *`/unset`* `[opzione]`::
|
||||
|
||||
........................................
|
||||
annulla/resetta opzione
|
||||
annulla/ripristina opzione
|
||||
|
||||
opzione: nome di un'opzione (può cominciare o finire con "*" per il reset di più opzioni, attenzione!)
|
||||
opzione: nome di un'opzione (può cominciare o finire con "*" per il ripristino di più opzioni, attenzione!)
|
||||
|
||||
A seconda dell'opzione, viene resettata (per le opzioni standard) o rimossa (per le impostazioni opzionali, come i valori del server)
|
||||
A seconda dell'opzione, essa viene ripristinata (per le opzioni standard) o rimossa (per le impostazioni opzionali, come i valori del server)
|
||||
........................................
|
||||
|
||||
• *`/upgrade`* `[percorso_del_binario]`::
|
||||
@@ -301,20 +359,22 @@
|
||||
Questo comando esegue nuovamente un binario WeeChat, perciò deve essere stato compilato o installato con un gestore di pacchetti prima di eseguire questo comando.
|
||||
........................................
|
||||
|
||||
• *`/uptime`* `[-o]`::
|
||||
• *`/uptime`* `[-o | -ol]`::
|
||||
|
||||
........................................
|
||||
mostra l'uptime di WeeChat
|
||||
|
||||
-o: invia l'uptime al buffer corrente come input
|
||||
-o: invia l'uptime al buffer corrente come input (stringa in inglese)
|
||||
-ol: invia l'uptime al buffer corrente come input (stringa tradotta)
|
||||
........................................
|
||||
|
||||
• *`/version`* `[-o]`::
|
||||
• *`/version`* `[-o | -ol]`::
|
||||
|
||||
........................................
|
||||
mostra la versione e la data di compilazione di WeeChat
|
||||
|
||||
-o: invia versione al buffer corrente come input
|
||||
-o: invia la versione al buffer corrente come input (stringa inglese)
|
||||
-ol: invia la versione al buffer corrente come input (stringa tradotta)
|
||||
........................................
|
||||
|
||||
• *`/wait`* `numero[unità] comando`::
|
||||
@@ -333,9 +393,12 @@
|
||||
Nota: il comando è eseguito sui buffer dove /wait è stato eseguito (se il buffer non viene trovato (per esempio se è stato chiuso prima dell'esecuzione), allora il comando verrà eseguito sul buffer core di WeeChat)
|
||||
|
||||
Esempi:
|
||||
entra nel canale tra 10 secondi: /wait 10 /join #test
|
||||
imposta assenza in 15 minuti: /wait 15m /away -all Sono via
|
||||
dì ciao in 2 minuti: /wait 2m ciao
|
||||
entra nel canale tra 10 secondi:
|
||||
/wait 10 /join #test
|
||||
imposta assenza tra 15 minuti:
|
||||
/wait 15m /away -all Sono assente
|
||||
scrive ciao tra 2 minuti:
|
||||
/wait 2m ciao
|
||||
........................................
|
||||
|
||||
• *`/window`* `[list | -1 | +1 | b# | up | down | left | right | splith [pct] | splitv [pct] | resize pct | merge [all] | page_up | page_down | refresh | scroll | scroll_up | scroll_down | scroll_top | scroll_bottom | scroll_previous_highlight | scroll_next_highlight | zoom]`::
|
||||
@@ -343,7 +406,7 @@
|
||||
........................................
|
||||
gestione finestre
|
||||
|
||||
list: elenca le finestre aperte (nessun parametro implica questa lista)
|
||||
list: elenca le finestre aperte (senza argomento, questa lista viene visualizzata)
|
||||
-1: salta alla finestra precedente
|
||||
+1: salta alla finestra successiva
|
||||
b#: salta alla finestra successiva che visualizza il buffer numero #
|
||||
@@ -355,7 +418,6 @@
|
||||
splitv: divide la finestra attiva verticalmente
|
||||
resize: ridimensiona finestra, la nuova dimensione è <pct> percentuale della finestra genitore
|
||||
merge: unisce la finestra con un'altra (all = mantiente una sola finestra)
|
||||
|
||||
page_up: scorre di una pagina in alto
|
||||
page_down: scorre di una pagina in basso
|
||||
refresh: aggiorna lo schermo
|
||||
@@ -364,16 +426,20 @@
|
||||
scroll_down: scorre di alcune righe in basso
|
||||
scroll_top: scorre fino all'inizio del buffer
|
||||
scroll_bottom: scorre fino alla fine del buffer buffer
|
||||
scroll_previous_highlight: passa all'evidenziazione precedente
|
||||
scroll_next_highlight: passa all'evidenziazione successiva
|
||||
scroll_previous_highlight: passa all'evento precedente
|
||||
scroll_next_highlight: passa all'evento successivo
|
||||
zoom: ingrandimento sulla finestra
|
||||
|
||||
Per splith e splitv, pct è una percentuale che rappresenta la dimensione della nuova finestra, calcolata con la finestra attiva come riferimento per la dimensione. Per esempio 25 vuol dire creare una finestra di dimensione = dimensione_attuale / 4
|
||||
|
||||
Esempi:
|
||||
salta alla finestra che visualizza il buffer #1: /window b1
|
||||
scorre di due righe in alto: /window scroll -2
|
||||
scorre all'indietro di due giorni: /window scroll -2d
|
||||
scorre all'inizio del giorno attuale: /window scroll -d
|
||||
salta alla finestra che visualizza il buffer #1:
|
||||
/window b1
|
||||
scorre di due righe in alto:
|
||||
/window scroll -2
|
||||
scorre all'indietro di due giorni:
|
||||
/window scroll -2d
|
||||
scorre all'inizio del giorno attuale:
|
||||
/window scroll -d
|
||||
........................................
|
||||
|
||||
|
||||
@@ -29,12 +29,12 @@
|
||||
** valori: un nome colore (valore predefinito: green)
|
||||
|
||||
* *weechat.color.chat_highlight*
|
||||
** descrizione: colore del testo per il prefisso evidenziato
|
||||
** descrizione: colore del testo per il prefisso di evento
|
||||
** tipo: colore
|
||||
** valori: un nome colore (valore predefinito: yellow)
|
||||
|
||||
* *weechat.color.chat_highlight_bg*
|
||||
** descrizione: colore di sfondo per il prefisso evidenziato
|
||||
** descrizione: colore di sfondo per il prefisso di evento
|
||||
** tipo: colore
|
||||
** valori: un nome colore (valore predefinito: magenta)
|
||||
|
||||
@@ -208,10 +208,10 @@
|
||||
** tipo: colore
|
||||
** valori: un nome colore (valore predefinito: green)
|
||||
|
||||
* *weechat.color.nicklist_more*
|
||||
** descrizione: colore del testo per '+' allo scorrimento dei nick nella lista nick
|
||||
* *weechat.color.nicklist_offline*
|
||||
** descrizione: colore del testo per i nick non in linea
|
||||
** tipo: colore
|
||||
** valori: un nome colore (valore predefinito: lightmagenta)
|
||||
** valori: un nome colore (valore predefinito: blue)
|
||||
|
||||
* *weechat.color.nicklist_prefix1*
|
||||
** descrizione: colore del testo per il prefisso #1 nella nicklist
|
||||
@@ -244,7 +244,7 @@
|
||||
** valori: un nome colore (valore predefinito: blue)
|
||||
|
||||
* *weechat.color.status_data_highlight*
|
||||
** descrizione: colore del testo per il buffer con evidenziazione (barra di stato)
|
||||
** descrizione: colore del testo per il buffer con evento (barra di stato)
|
||||
** tipo: colore
|
||||
** valori: un nome colore (valore predefinito: lightmagenta)
|
||||
|
||||
@@ -364,7 +364,7 @@
|
||||
** valori: none, highlight, message, all (valore predefinito: all)
|
||||
|
||||
* *weechat.look.buffer_time_format*
|
||||
** descrizione: formato dell'ora per i buffer
|
||||
** descrizione: formato dell'ora per ogni riga visualizzata nei buffer
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "%H:%M:%S")
|
||||
|
||||
@@ -378,6 +378,11 @@
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: off)
|
||||
|
||||
* *weechat.look.command_chars*
|
||||
** descrizione: caratteri usati per determinare se la stringa in input è un comando oppure no: l'input deve iniziare con uno di questi caratteri: la barra ("/") è sempre considerata come prefisso per comando (esempio: ".$")
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "")
|
||||
|
||||
* *weechat.look.day_change*
|
||||
** descrizione: mostra un messaggio speciale al cambio di data
|
||||
** tipo: bool
|
||||
@@ -409,7 +414,7 @@
|
||||
** valori: 0 .. 32 (valore predefinito: 0)
|
||||
|
||||
* *weechat.look.hotlist_names_level*
|
||||
** descrizione: livello per la visualizzazione dei nomi nella hotlist (combinazione di: 1=entrata/uscita, 2=messaggio, 4=privato, 8=evidenziato, per esempio: 12=privato+evidenziato)
|
||||
** descrizione: livello per la visualizzazione dei nomi nella hotlist (combinazione di: 1=entrata/uscita, 2=messaggio, 4=privato, 8=evento, per esempio: 12=privato+evento)
|
||||
** tipo: intero
|
||||
** valori: 1 .. 15 (valore predefinito: 12)
|
||||
|
||||
@@ -523,6 +528,11 @@
|
||||
** tipo: intero
|
||||
** valori: none, line, dotted-line, char (valore predefinito: dotted-line)
|
||||
|
||||
* *weechat.look.read_marker_always_show*
|
||||
** descrizione: mostra sempre l'evidenziatore di lettura, anche se si trova dopo l'ultima riga del buffer
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: off)
|
||||
|
||||
* *weechat.look.save_config_on_exit*
|
||||
** descrizione: salva file di configurazione all'uscita
|
||||
** tipo: bool
|
||||
@@ -553,13 +563,18 @@
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *weechat.look.time_format*
|
||||
** descrizione: formato dell'ora per le date convertite a stringhe e visualizzate nei messaggi
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "%a, %d %b %Y %T")
|
||||
|
||||
* *weechat.network.gnutls_ca_file*
|
||||
** descrizione: file contenente le autorità dei certificati
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "%h/ssl/CAs.pem")
|
||||
|
||||
* *weechat.plugin.autoload*
|
||||
** descrizione: elenco separato da virgole di plugin da caricare automaticamente all'avvio, "*" per tutti i plugin trovati (nomi possono essere parziali, per esempio "perl" va bene per "perl.so")
|
||||
** descrizione: elenco separato da virgole di plugin da caricare automaticamente all'avvio, "*" equivale a tutti i plugin trovati. un nome che comincia con "!" è un valore negativo per impedire il caricamento di un plugin, i nomi possono iniziare o finire con "*" per corrispondere a più plugin (esempi: "*" oppure "*,!lua,!tcl")
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "*")
|
||||
|
||||
@@ -603,8 +618,3 @@
|
||||
** tipo: bool
|
||||
** valori: on, off (valore predefinito: on)
|
||||
|
||||
* *weechat.startup.weechat_slogan*
|
||||
** descrizione: Slogan WeeChat (se è vuoto, non viene utilizzato)
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: "le client de discussion le plus geek !")
|
||||
|
||||
|
||||
+203
-104
@@ -3,6 +3,7 @@ FAQ di WeeChat (Domande Frequenti)
|
||||
FlashCode <flashcode@flashtux.org>
|
||||
|
||||
|
||||
[[general]]
|
||||
Generale
|
||||
--------
|
||||
|
||||
@@ -34,6 +35,7 @@ Alcune caratteristiche (versione > = 0.3.x):
|
||||
Maggiori informazioni su http://www.weechat.org/features
|
||||
|
||||
|
||||
[[compilation_install]]
|
||||
Compilazione / installazione
|
||||
----------------------------
|
||||
|
||||
@@ -48,8 +50,8 @@ Altre interfacce saranno disponibili come client remoti (in fase di sviluppo).
|
||||
|
||||
|
||||
[[compile_git]]
|
||||
Non è possibile compilare WeeChat dopo aver clonato il deposito git, perché?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Non è possibile compilare WeeChat dopo aver clonato il repository git, perché?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Il metodo raccomandato per compilare WeeChat è utilizzando cmake.
|
||||
|
||||
@@ -59,13 +61,9 @@ le ultime versioni di autoconf e automake (WeeChat è sviluppato con autoconf
|
||||
|
||||
L'altro metodo è installare il "pacchetto di sviluppo", che richiede meno
|
||||
dipendenze. Questo pacchetto viene generato quasi tutti i giorni utilizzando
|
||||
il deposito git. È bene notare che potrebbe non corrispondere
|
||||
esattamente alla base git ed è meno conveniente rispetto alla clonazione
|
||||
con git per l'installazione degli aggiornamenti.
|
||||
|
||||
|
||||
Utilizzo di WeeChat
|
||||
-------------------
|
||||
il repository git. È bene notare che potrebbe non corrispondere
|
||||
esattamente alla base git ed è meno conveniente rispetto al clone di git
|
||||
per l'installazione degli aggiornamenti.
|
||||
|
||||
|
||||
[[lost]]
|
||||
@@ -79,18 +77,9 @@ Si raccomanda ai nuovi utenti di leggere la guida rapida (consultare la pagina
|
||||
della documentazione sul sito).
|
||||
|
||||
|
||||
[[buffer_vs_window]]
|
||||
Ho sentito parlare di "buffer" e "finestre", qual è la differenza?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Un 'buffer' è composto da un numero, un nome, delle righe visualizzate (e
|
||||
qualche altro dato).
|
||||
|
||||
Una 'finestra' (o window) è un'aread dello schermo in cui viene visualizzato
|
||||
un buffer. È possibile dividere lo schermo in più finestre.
|
||||
|
||||
Ogni finestra visualizza un buffer. Un buffer può essere nascosto (non visualizzato
|
||||
da una finestra) o visualizzato da una o più finestre.
|
||||
[[display]]
|
||||
Visualizzare
|
||||
------------
|
||||
|
||||
|
||||
[[charset]]
|
||||
@@ -156,60 +145,18 @@ Per esempio, 'xterm-color' potrebbe visualizzare questo tipo di caratteri strani
|
||||
Se necessario, correggere la variabile TERM: `export TERM="xxx"`.
|
||||
|
||||
|
||||
[[key_bindings]]
|
||||
Come posso personalizzare le associazioni dei tasti?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[buffer_vs_window]]
|
||||
Ho sentito parlare di "buffer" e "finestre", qual è la differenza?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Le associazioni dei tasti sono personalizzabili con il comando /key.
|
||||
Un 'buffer' è composto da un numero, un nome, delle righe visualizzate (e
|
||||
qualche altro dato).
|
||||
|
||||
Il tasto predefinito Meta-k (di solito Alt-k) consente di registrare il codice
|
||||
tasto ed inserirlo nella riga di comando.
|
||||
Una 'finestra' (o window) è un'aread dello schermo in cui viene visualizzato
|
||||
un buffer. È possibile dividere lo schermo in più finestre.
|
||||
|
||||
|
||||
[[openbsd_plugins]]
|
||||
Uso OpenBSD e WeeChat non carica nessun plugin, cosa c'è che non va?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
In OpenBSD, i nomi file dei plugin finiscono con ".so.0.0" (".so" in Linux).
|
||||
|
||||
Si deve impostare in questo modo:
|
||||
|
||||
* con WeeChat < = 0.2.6: +
|
||||
`/set plugins_extension = ".so.0.0"`
|
||||
* con WeeChat > = 0.3.x: +
|
||||
`/set weechat.plugin.extension ".so.0.0"`
|
||||
|
||||
In seguito digitare: `/plugin autoload`.
|
||||
|
||||
|
||||
[[scripts]]
|
||||
Come posso caricare gli script Perl/Python/Ruby/Lua/Tcl? Sono compatibili con gli altri client IRC?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Si possono utilizzare i comandi `/perl`, `/python`, `/ruby`, `/lua` and `/tcl`
|
||||
per caricare gli script (il percorso predefinito per gli script è '~/.weechat/<linguaggio>/').
|
||||
|
||||
Gli script non sono compatibili con altri client IRC.
|
||||
|
||||
Note:
|
||||
|
||||
* gli script in '~/.weechat/<linguaggio>/autoload/' sono caricati automaticamente
|
||||
all'avvio di WeeChat.
|
||||
* è disponibile un plugin 'tcl' con la versione > = 0.3.x.
|
||||
|
||||
|
||||
[[change_locale_without_quit]]
|
||||
Voglio cambiare la lingua utilizzata da WeeChat per i messaggi, ma senza uscire da WeeChat, è possibile?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Sì. è necessario uno script python, shell.py (disponibile sul sito di WeeChat)
|
||||
e digitare questi comandi quando viene caricato lo script:
|
||||
|
||||
/shell setenv LANG=en_US.UTF-8
|
||||
/upgrade
|
||||
|
||||
Per avere i messaggi in inglese con la codifica UTF-8 per il terminale, per gli
|
||||
utenti ISO, digitare: `/shell setenv LANG=en_US`.
|
||||
Ogni finestra visualizza un buffer. Un buffer può essere nascosto (non visualizzato
|
||||
da una finestra) o visualizzato da una o più finestre.
|
||||
|
||||
|
||||
[[terminal_copy_paste]]
|
||||
@@ -252,25 +199,76 @@ shortenurl.py::
|
||||
Elenco di script a proposito di URL: http://www.weechat.org/scripts/stable/tag/url
|
||||
|
||||
|
||||
[[highlight_notification]]
|
||||
Come posso essere avvisato quando qualcuno mi cerca in un canale?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[change_locale_without_quit]]
|
||||
Voglio cambiare la lingua utilizzata da WeeChat per i messaggi, ma senza uscire da WeeChat, è possibile?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
A seconda della versione di WeeChat:
|
||||
Sì. è necessario uno script python, shell.py (disponibile sul sito di WeeChat)
|
||||
e digitare questi comandi quando viene caricato lo script:
|
||||
|
||||
* con WeeChat < = 0.2.6: utilizzare lo script 'sound.pl' (disponibile sulla pagina
|
||||
degli script), e poi impostare un comando di sistema (per riprodurre un suono,
|
||||
visualizzare un messaggio, ..) con questo comando: +
|
||||
`/setp perl.sound.cmd_highlight = "/percorso/del/comando argomenti"`
|
||||
* con WeeChat > = 0.3.x: facendo uso dello script 'launcher.pl'
|
||||
(disponibile sulla pagina degli script), e poi impostare un comando di sistema
|
||||
(per riprodurre un suono, visualizzare un messaggio, ..) con questo comando:
|
||||
+ `/set plugins.var.perl.launcher.signal.weechat_highlight
|
||||
"/percorso/del/comando argomenti"`
|
||||
/shell setenv LANG=en_US.UTF-8
|
||||
/upgrade
|
||||
|
||||
Esistono molti altri script per le notifiche, per favore consultare la pagina
|
||||
dei plugin/script:
|
||||
http://www.weechat.org/scripts
|
||||
Per avere i messaggi in inglese con la codifica UTF-8 per il terminale, per gli
|
||||
utenti ISO, digitare: `/shell setenv LANG=en_US`.
|
||||
|
||||
|
||||
[[key_bindings]]
|
||||
Associazioni dei tasti
|
||||
----------------------
|
||||
|
||||
|
||||
[[meta_keys]]
|
||||
Alcuni tasti meta (alt + tasto) non funzionano, perché?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Se si utilizzano terminali come xterm o uxterm, alcuni tasti meta non funzionano
|
||||
per default. È possibile aggiungere una riga nel file '~/.Xresources':
|
||||
|
||||
* per xterm:
|
||||
----------------------------------------
|
||||
XTerm*metaSendsEscape: true
|
||||
----------------------------------------
|
||||
* per uxterm:
|
||||
----------------------------------------
|
||||
UXTerm*metaSendsEscape: true
|
||||
----------------------------------------
|
||||
|
||||
Al termine, ricaricare la configurazione (`xrdb -override ~/.Xresources`) o riavviare X.
|
||||
|
||||
|
||||
[[customize_key_bindings]]
|
||||
Come posso personalizzare le associazioni dei tasti?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Le associazioni dei tasti sono personalizzabili con il comando `/key`.
|
||||
|
||||
Il tasto predefinito Meta-k (di solito Alt-k) consente di registrare il codice
|
||||
tasto ed inserirlo nella riga di comando.
|
||||
|
||||
|
||||
[[irc]]
|
||||
IRC
|
||||
---
|
||||
|
||||
|
||||
[[ignore_vs_filter]]
|
||||
Qual è la differenza tra i comandi /ignore e /filter?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Il comando `/ignore` è un comando IRC, per cui è utile solo per i buffer
|
||||
IRC (server e canali).
|
||||
Consente di ignorare alcuni nick o nomi host di utenti per un server o per
|
||||
un canale (il comando non viene applicato sul contenuto dei messaggi).
|
||||
I messaggi corrispondenti vengono eliminati dal plugin IRC prima di
|
||||
essere visualizzati (perciò non verranno mai mostrati).
|
||||
|
||||
Il comando `/filter` è un comando core, perciò funziona per qualsiasi
|
||||
buffer. Esso consente di filtrare alcune righe nei buffer mediante tag
|
||||
o espressioni regolari per il prefisso ed il contenuto delle righe.
|
||||
Le righe filtrate vengono solo nascoste, non eliminate, ed è possibile
|
||||
visualizzarle se i filtri vengono disabilitati (il comando predefinito
|
||||
alt + "=" abilita/disabilita i filtri).
|
||||
|
||||
|
||||
[[filter_irc_join_part_quit]]
|
||||
@@ -299,25 +297,127 @@ A seconda della versione di WeeChat:
|
||||
(`/help filter` per aiuto)
|
||||
|
||||
|
||||
[[ignore_vs_filter]]
|
||||
Qual è la differenza tra i comandi /ignore e /filter?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[filter_voice_messages]]
|
||||
Come posso filtrare i messaggi voice (ad esempio su server Bitlbee)?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Il comando `/ignore` è un comando IRC, per cui è utile solo per i buffer
|
||||
IRC (server e canali).
|
||||
Consente di ignorare alcuni nick o nomi host di utenti per un server o per
|
||||
un canale (il comando non viene applicato sul contenuto dei messaggi).
|
||||
I messaggi corrispondenti vengono eliminati dal plugin IRC prima di
|
||||
essere visualizzati (perciò non verranno mai mostrati).
|
||||
Non è semplice filtrare i messaggi voice, perché la modalità voice può essere
|
||||
impostata in altri modi nello stesso messaggio IRC.
|
||||
|
||||
Il comando `/filter` è un comando core, perciò funziona per qualsiasi
|
||||
buffer. Esso consente di filtrare alcune righe nei buffer mediante tag
|
||||
o espressioni regolari per il prefisso ed il contenuto delle righe.
|
||||
Le righe filtrate vengono solo nascoste, non eliminate, ed è possibile
|
||||
visualizzarle se i filtri vengono disabilitati (il comando predefinito
|
||||
alt + "=" abilita/disabilita i filtri).
|
||||
Se si vuole, è probabilmente perché Bitlbee utilizza il voice per visualizzare gli
|
||||
utenti assenti, e si viene tempestati di messaggi voice. Perciò, è possibile
|
||||
modificare questo comportamento e consentire a WeeChat di utilizzare un
|
||||
colore speciale per i nick assenti nella lista nick.
|
||||
|
||||
Sul canale '&bitlbee':
|
||||
----------------------------------------
|
||||
set away_devoice false
|
||||
----------------------------------------
|
||||
|
||||
Per verificare i nick assenti in WeeChat, consultare la domanda
|
||||
relativa a <<color_away_nicks,nick assenti>>.
|
||||
|
||||
|
||||
[[color_away_nicks]]
|
||||
Come posso vedere i nick assenti nella lista nick?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
È necessario impostare l'opzione 'irc.network.away_check' su un valore
|
||||
positivo (minuti tra ogni controllo dei nick assenti).
|
||||
|
||||
L'opzione 'irc.network.away_check_max_nicks' limita il controllo delle assenze
|
||||
solo sui canali più piccoli.
|
||||
|
||||
Ad esempio, per controllare ogni 5 minuti per i nick assenti, sui canali con
|
||||
massimo 25 nick:
|
||||
|
||||
----------------------------------------
|
||||
/set irc.network.away_check 5
|
||||
/set irc.network.away_check_max_nicks 25
|
||||
----------------------------------------
|
||||
|
||||
|
||||
[[highlight_notification]]
|
||||
Come posso essere avvisato quando qualcuno mi cerca in un canale?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
A seconda della versione di WeeChat:
|
||||
|
||||
* con WeeChat < = 0.2.6: utilizzare lo script 'sound.pl' (disponibile sulla pagina
|
||||
degli script), e poi impostare un comando di sistema (per riprodurre un suono,
|
||||
visualizzare un messaggio, ..) con questo comando: +
|
||||
`/setp perl.sound.cmd_highlight = "/percorso/del/comando argomenti"`
|
||||
* con WeeChat > = 0.3.x: facendo uso dello script 'launcher.pl'
|
||||
(disponibile sulla pagina degli script), e poi impostare un comando di sistema
|
||||
(per riprodurre un suono, visualizzare un messaggio, ..) con questo comando:
|
||||
+ `/set plugins.var.perl.launcher.signal.weechat_highlight
|
||||
"/percorso/del/comando argomenti"`
|
||||
|
||||
Esistono molti altri script per le notifiche, per favore consultare la pagina
|
||||
dei plugin/script:
|
||||
http://www.weechat.org/scripts
|
||||
|
||||
|
||||
[[plugins_scripts]]
|
||||
Plugin / script
|
||||
---------------
|
||||
|
||||
|
||||
[[openbsd_plugins]]
|
||||
Uso OpenBSD e WeeChat non carica nessun plugin, cosa c'è che non va?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
In OpenBSD, i nomi file dei plugin finiscono con ".so.0.0" (".so" in Linux).
|
||||
|
||||
Si deve impostare in questo modo:
|
||||
|
||||
* con WeeChat < = 0.2.6: +
|
||||
`/set plugins_extension = ".so.0.0"`
|
||||
* con WeeChat > = 0.3.x: +
|
||||
`/set weechat.plugin.extension ".so.0.0"`
|
||||
|
||||
In seguito digitare: `/plugin autoload`.
|
||||
|
||||
|
||||
[[load_scripts]]
|
||||
Come posso caricare gli script Perl/Python/Ruby/Lua/Tcl? Sono compatibili con gli altri client IRC?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Si possono utilizzare i comandi `/perl`, `/python`, `/ruby`, `/lua` and `/tcl`
|
||||
per caricare gli script (il percorso predefinito per gli script è '~/.weechat/<linguaggio>/').
|
||||
|
||||
Gli script non sono compatibili con altri client IRC.
|
||||
|
||||
Note:
|
||||
|
||||
* gli script in '~/.weechat/<linguaggio>/autoload/' sono caricati automaticamente
|
||||
all'avvio di WeeChat.
|
||||
* è disponibile un plugin 'tcl' con la versione > = 0.3.0.
|
||||
|
||||
|
||||
[[settings]]
|
||||
Impostazioni
|
||||
------------
|
||||
|
||||
|
||||
[[memory_usage]]
|
||||
Come posso ottimizzare WeeChat per poter utilizzare meno memoria?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Esistono diversi trucchi per ottimizzare l'uso della memoria:
|
||||
|
||||
* utilizzare l'ultima versione stabile (si suppone che abbia meno falle di memoria
|
||||
rispetto le versioni precedenti)
|
||||
* non caricare alcuni plugin se non vengono utilizzati, ad esempio: aspell, fifo,
|
||||
logger, perl, python, ruby, lua, tcl, xfer (usato per DCC)
|
||||
* caricare solo gli script veramente necessari
|
||||
* ridurre il valore dell'opzione 'weechat.history.max_lines' (numero di righe
|
||||
salvate in memoria per ogni buffer)
|
||||
* ridurre il valore dell'opzione 'weechat.history.max_commands' (numero di
|
||||
comandi utente salvati in memoria)
|
||||
|
||||
|
||||
[[development]]
|
||||
Sviluppo
|
||||
--------
|
||||
|
||||
@@ -365,4 +465,3 @@ Posso donare denaro o altre cose agli sviluppatori di WeeChat?
|
||||
|
||||
È possibile donare denaro per aiutare lo sviluppo.
|
||||
Maggiori dettagli su http://www.weechat.org/donate
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -137,7 +137,7 @@ Connessione al server IRC e ingresso automatico nei canali
|
||||
|
||||
[NOTE]
|
||||
Questo comando può essere usato per creare e connettersi ad un nuovo server
|
||||
senza utilizzare il comando `/server` (è necessario ripetere che è possibile
|
||||
senza utilizzare il comando `/server` (è necessario ripetere che è possibile
|
||||
visualizzare l'aiuto per questo comando con `/help connect`?).
|
||||
|
||||
I buffer dei server vengono uniti al buffer 'core' di WeeChat in modo
|
||||
|
||||
@@ -0,0 +1,773 @@
|
||||
Guida allo Scripting di WeeChat
|
||||
===============================
|
||||
FlashCode <flashcode@flashtux.org>
|
||||
|
||||
|
||||
Questo manuale documenta il client di chat WeeChat, ed è parte
|
||||
del programma stesso.
|
||||
|
||||
La versione più recente di questo documento si trova qui:
|
||||
http://www.weechat.org/doc
|
||||
|
||||
|
||||
[[introduction]]
|
||||
Introduzione
|
||||
------------
|
||||
|
||||
WeeChat (Wee Enhanced Environment for Chat) è un client di chat libero,
|
||||
veloce e leggero, realizzato per molti sistemi operativi.
|
||||
|
||||
Questo manuale documenta i metodi per la realizzazione di script per
|
||||
WeeChat, utilizzando uno dei cinque linguaggi di script supportati: perl,
|
||||
python, ruby, lua o tcl.
|
||||
|
||||
[NOTE]
|
||||
Quasi tutti gli esempi in questo manuale sono scritti in Python, ma l'API
|
||||
è identica per gli altri linguaggi.
|
||||
|
||||
[[scripts_in_weechat]]
|
||||
Script in WeeChat
|
||||
-----------------
|
||||
|
||||
[[languages_specifities]]
|
||||
Specifiche per i linguaggi
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Alcune cose sono specifiche per i linguaggi:
|
||||
|
||||
* perl:
|
||||
** le funzioni sono chiamate con `weechat::xxx(arg1, arg2, ...);`
|
||||
* python:
|
||||
** è necessario `import weechat`
|
||||
** le funzioni `print*` sono chiamate `prnt*` in python (dato che 'print'
|
||||
è una parola riservata)
|
||||
** le funzioni sono chiamate con `weechat.xxx(arg1, arg2, ...)`
|
||||
* ruby:
|
||||
** è necessario definire 'weechat_init' e chiamare 'register' all'interno
|
||||
** le funzioni sono chiamate con `Weechat.xxx(arg1, arg2, ...)`
|
||||
* tcl:
|
||||
** le funzioni sono chiamate con `weechat::xxx arg1 arg2 ...`
|
||||
|
||||
[[register_function]]
|
||||
Registrare una funzione
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Tutti gli script WeeChat devono "registrare" loro stessi in WeeChat, e questo
|
||||
deve essere la prima funzione chiamata nello script di WeeChat.
|
||||
|
||||
Prototipo:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
weechat.register(name, author, version, license, description, shutdown_function, charset)
|
||||
----------------------------------------
|
||||
|
||||
Argomenti:
|
||||
|
||||
* 'name': stringa, nome interno dello script
|
||||
* 'author': stringa, nome dell'autore
|
||||
* 'version': stringa, versione dello script
|
||||
* 'license': stringa, licenza dello script
|
||||
* 'description': stringa, breve descrizione dello script
|
||||
* 'shutdown_function': stringa, nome della funzione chiamata quando lo script
|
||||
viene disattivato
|
||||
* 'charset': stringa, set caratteri dello script (opzionale, se il proprio script è in UTF-8,
|
||||
è possibile utilizzare un valore nullo qui, dato che UTF-8 è il set caratteri predefinito)
|
||||
|
||||
Esempio di script, per ogni linguaggio:
|
||||
|
||||
* perl:
|
||||
|
||||
[source,perl]
|
||||
----------------------------------------
|
||||
weechat::register("test_perl", "FlashCode", "1.0", "GPL3", "Test script", "", "");
|
||||
weechat::print("", "Hello, from perl script!");
|
||||
----------------------------------------
|
||||
|
||||
* python:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
import weechat
|
||||
|
||||
weechat.register("test_python", "FlashCode", "1.0", "GPL3", "Test script", "", "")
|
||||
weechat.prnt("", "Hello, from python script!")
|
||||
----------------------------------------
|
||||
|
||||
* ruby:
|
||||
|
||||
[source,ruby]
|
||||
----------------------------------------
|
||||
def weechat_init
|
||||
Weechat.register("test_ruby", "FlashCode", "1.0", "GPL3", "Test script", "", "")
|
||||
Weechat.print("", "Hello, from ruby script!")
|
||||
return Weechat::WEECHAT_RC_OK
|
||||
end
|
||||
----------------------------------------
|
||||
|
||||
* lua:
|
||||
|
||||
[source,lua]
|
||||
----------------------------------------
|
||||
weechat.register("test_lua", "FlashCode", "1.0", "GPL3", "Test script", "", "")
|
||||
weechat.print("", "Hello, from lua script!")
|
||||
----------------------------------------
|
||||
|
||||
* tcl:
|
||||
|
||||
// [source,tcl]
|
||||
----------------------------------------
|
||||
weechat::register "test_tcl" "FlashCode" "1.0" "GPL3" "Test script" "" ""
|
||||
weechat::print "" "Hello, from tcl script!"
|
||||
----------------------------------------
|
||||
|
||||
[[load_script]]
|
||||
Caricare uno script
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Il comando da utilizzare, in base al linguaggio:
|
||||
|
||||
----------------------------------------
|
||||
/perl load perl/script.pl
|
||||
/python load python/script.py
|
||||
/ruby load ruby/script.rb
|
||||
/lua load lua/script.lua
|
||||
/tcl load tcl/script.tcl
|
||||
----------------------------------------
|
||||
|
||||
È possibile creare un link nella cartella 'linguaggio/autoload' per attivare
|
||||
automaticamente gli script all'avvio di WeeChat.
|
||||
|
||||
Ad esempio con Python:
|
||||
|
||||
----------------------------------------
|
||||
$ cd ~/.weechat/python/autoload
|
||||
$ ln -s ../script.py
|
||||
----------------------------------------
|
||||
|
||||
[[differences_with_c_api]]
|
||||
Differenze con le API in C
|
||||
--------------------------
|
||||
|
||||
Le API per gli script sono quasi identiche di quelle per i plugin C.
|
||||
È possibile consultare '*' per i dettagli su ogni funzione nelle API:
|
||||
prototipo, argomenti, valori restituiti, esempi.
|
||||
|
||||
È importante fare la differenza tra un 'plugin' ed uno 'script':
|
||||
un plugin è un file binario compilato ed attivato con il comando
|
||||
`plugin`, mentre uno 'script' è un file di testo caricato tramite
|
||||
un plugin come 'python' con il comando `python`.
|
||||
|
||||
Quando il proprio script 'test.py' chiama una funzione delle API di
|
||||
Weechat, il percorso è simile a questo:
|
||||
|
||||
........................................
|
||||
(script API) (C API)
|
||||
\/ \/
|
||||
test.py -------> python plugin (python.so) -------> core di WeeChat
|
||||
........................................
|
||||
|
||||
Quando WeeChat chiama una callback nel proprio script 'test.py', è
|
||||
l'opposto del percorso precedente:
|
||||
|
||||
........................................
|
||||
(C API) (script API)
|
||||
\/ \/
|
||||
WeeChat core -------> python plugin (python.so) -------> test.py
|
||||
........................................
|
||||
|
||||
[[pointers]]
|
||||
Puntatori
|
||||
~~~~~~~~~
|
||||
|
||||
Come è già noto probabilmente, non esistono realmente i "puntatori"
|
||||
negli script. Quando le funzioni API restituiscono un puntatore, viene
|
||||
covertito in una stringa per lo script.
|
||||
|
||||
Ad esempio, se la funzione restituisce il puntatore 0x1234ab56, lo
|
||||
script riceverà la stringa "0x1234ab56".
|
||||
|
||||
E quando una funzione API si aspetta un puntatore nell'argomento, lo script
|
||||
deve fornire quel valore stringa. Il plugin C lo convertirà in un puntatore reale
|
||||
prima di chiamare la funzione API in C.
|
||||
|
||||
Sono consentite stringhe vuote oppure "0x0", valgono come NULL in C.
|
||||
Ad esempio, per stampare dei dati sul buffer core (il buffer principale di
|
||||
WeeChat), è possibile fare questo:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
weechat.prnt("", "hi!")
|
||||
----------------------------------------
|
||||
|
||||
[WARNING]
|
||||
In molte funzioni, per motivi legati alla velocità, WeeChat non verifica se
|
||||
il puntatore è corretto oppure no. È il proprio lavoro controllare che si
|
||||
stia fornendo un puntatore valido, altrimenti potrebbe comparire una
|
||||
bella segnalazione per un errore ;)
|
||||
|
||||
[[callbacks]]
|
||||
Callback
|
||||
~~~~~~~~
|
||||
|
||||
Quasi tutte le callback di WeeChat devono restituire WEECHAT_RC_OK
|
||||
oppure WEECHAT_RC_ERROR (l'eccezione è la callback modifier, che
|
||||
restituisce una stringa).
|
||||
|
||||
Le callback in C utilizzano un argomento "data", che è un puntatore.
|
||||
Nelle API per gli script, questo "data" è una stringa con un qualsiasi
|
||||
valore (non è un puntatore).
|
||||
|
||||
Ad esempio:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
weechat.hook_timer(1000, 0, 1, "my_timer_cb", "my data")
|
||||
|
||||
def my_timer_cb(data, remaining_calls):
|
||||
# this will display: "my data"
|
||||
weechat.prnt("", data)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
----------------------------------------
|
||||
|
||||
[[script_api]]
|
||||
Script API
|
||||
----------
|
||||
|
||||
Per maggiori informazioni sulle funzioni nelle API,
|
||||
consultare 'Referenze API per Plugin di WeeChat'.
|
||||
|
||||
[[script_api_functions]]
|
||||
Funzioni
|
||||
~~~~~~~~
|
||||
|
||||
Elenco di funzioni nelle API per gli script:
|
||||
|
||||
[width="100%",cols="^1,10",options="header"]
|
||||
|========================================
|
||||
| Categoria | Funzioni
|
||||
| generale |
|
||||
register
|
||||
| plugin |
|
||||
plugin_get_name
|
||||
| stringhe |
|
||||
charset_set, iconv_to_internal, iconv_from_internal, gettext, ngettext, +
|
||||
string_match, string_has_highlight, string_mask_to_regex,
|
||||
string_remove_color, string_is_command_char, string_input_for_buffer
|
||||
| cartelle |
|
||||
mkdir_home, mkdir, mkdir_parents
|
||||
| liste ordinate |
|
||||
list_new, list_add, list_search, list_casesearch, list_get, list_set,
|
||||
list_next, list_prev, list_string, list_size, list_remove, list_remove_all,
|
||||
list_free
|
||||
| file di configurazione |
|
||||
config_new, config_new_section, config_search_section, config_new_option,
|
||||
config_search_option, +
|
||||
config_string_to_boolean, config_option_reset, config_option_set,
|
||||
config_option_set_null, config_option_unset, config_option_rename,
|
||||
config_option_is_null, config_option_default_is_null, +
|
||||
config_boolean, config_boolean_default, config_integer, config_integer_default,
|
||||
config_string, config_string_default, config_color, config_color_default, +
|
||||
config_write_option, config_write_line, config_write, config_read,
|
||||
config_reload, +
|
||||
config_option_free, config_section_free_options, config_section_free,
|
||||
config_free, +
|
||||
config_get, config_get_plugin, config_is_set_plugin, config_set_plugin,
|
||||
config_unset_plugin
|
||||
| visualizzazione |
|
||||
prefix, color, print (for python: prnt), print_date_tags (for python:
|
||||
prnt_date_tags), print_y (for python: prnt_y), log_print
|
||||
| hook |
|
||||
hook_command, hook_command_run, hook_timer, hook_fd, hook_process,
|
||||
hook_connect, hook_print, hook_signal, hook_signal_send, hook_config,
|
||||
hook_completion, hook_completion_list_add, hook_modifier, hook_modifier_exec,
|
||||
hook_info, hook_infolist, unhook, unhook_all
|
||||
| buffer |
|
||||
buffer_new, current_buffer, buffer_search, buffer_search_main, buffer_clear,
|
||||
buffer_close, buffer_merge, buffer_unmerge, buffer_get_integer,
|
||||
buffer_get_string, buffer_get_pointer, buffer_set,
|
||||
buffer_string_replace_local_var
|
||||
| finestre |
|
||||
current_window, window_get_integer, window_get_string, window_get_pointer,
|
||||
window_set_title
|
||||
| lista nick |
|
||||
nicklist_add_group, nicklist_search_group, nicklist_add_nick,
|
||||
nicklist_search_nick, nicklist_remove_group, nicklist_remove_nick,
|
||||
nicklist_remove_all
|
||||
| barre |
|
||||
bar_item_search, bar_item_new, bar_item_update, bar_item_remove, bar_search,
|
||||
bar_new, bar_set, bar_update, bar_remove
|
||||
| comandi |
|
||||
comando
|
||||
| info |
|
||||
info_get
|
||||
| liste info |
|
||||
infolist_new, infolist_new_item, infolist_new_var_integer,
|
||||
infolist_new_var_string, infolist_new_var_pointer, infolist_new_var_time, +
|
||||
infolist_get, infolist_next, infolist_prev, infolist_fields, infolist_integer,
|
||||
infolist_string, infolist_pointer, infolist_time, infolist_free
|
||||
| aggiornamento |
|
||||
upgrade_new, upgrade_write_object, upgrade_read, upgrade_close
|
||||
|========================================
|
||||
|
||||
[[script_api_constants]]
|
||||
Costanti
|
||||
~~~~~~~~
|
||||
|
||||
Elenco di costanti nelle API per gli script:
|
||||
|
||||
[width="100%",cols="^1,10",options="header"]
|
||||
|========================================
|
||||
| Categoria | Costanti
|
||||
| codici restituiti |
|
||||
WEECHAT_RC_OK, WEECHAT_RC_OK_EAT, WEECHAT_RC_ERROR
|
||||
| file di configurazione |
|
||||
WEECHAT_CONFIG_READ_OK, WEECHAT_CONFIG_READ_MEMORY_ERROR,
|
||||
WEECHAT_CONFIG_READ_FILE_NOT_FOUND, WEECHAT_CONFIG_WRITE_OK,
|
||||
WEECHAT_CONFIG_WRITE_ERROR, WEECHAT_CONFIG_WRITE_MEMORY_ERROR, +
|
||||
WEECHAT_CONFIG_OPTION_SET_OK_CHANGED, WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE,
|
||||
WEECHAT_CONFIG_OPTION_SET_ERROR, WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND,
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET, WEECHAT_CONFIG_OPTION_UNSET_OK_RESET,
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED, WEECHAT_CONFIG_OPTION_UNSET_ERROR
|
||||
| liste ordinate |
|
||||
WEECHAT_LIST_POS_SORT, WEECHAT_LIST_POS_BEGINNING, WEECHAT_LIST_POS_END
|
||||
| hotlist |
|
||||
WEECHAT_HOTLIST_LOW, WEECHAT_HOTLIST_MESSAGE, WEECHAT_HOTLIST_PRIVATE,
|
||||
WEECHAT_HOTLIST_HIGHLIGHT
|
||||
| hook su processo |
|
||||
WEECHAT_HOOK_PROCESS_RUNNING, WEECHAT_HOOK_PROCESS_ERROR
|
||||
| hook su connessione |
|
||||
WEECHAT_HOOK_CONNECT_OK, WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND,
|
||||
WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND, WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED,
|
||||
WEECHAT_HOOK_CONNECT_PROXY_ERROR, WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR,
|
||||
WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR, WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR,
|
||||
WEECHAT_HOOK_CONNECT_MEMORY_ERROR
|
||||
| hook su segnale |
|
||||
WEECHAT_HOOK_SIGNAL_STRING, WEECHAT_HOOK_SIGNAL_INT, WEECHAT_HOOK_SIGNAL_POINTER
|
||||
|========================================
|
||||
|
||||
[[common_tasks]]
|
||||
Compiti comuni
|
||||
--------------
|
||||
|
||||
Questo capitolo spiega alcuni compiti comuni, con degli esempi.
|
||||
Verranno utilizzati soltanto degli elementi parziali contenuti
|
||||
nelle API, per un riferimento completo consultare
|
||||
'Referenze API per Plugin di WeeChat'.
|
||||
|
||||
[[buffers]]
|
||||
Buffer
|
||||
~~~~~~
|
||||
|
||||
[[buffers_display_messages]]
|
||||
Visualizzare messaggi
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Una stringa vuota è utilizzata spesso per lavorare con il buffer core di
|
||||
WeeChat. Per gli altri buffer, è necessario fornire un puntatore (come
|
||||
stringa, consultare <<pointers,pointers>>).
|
||||
|
||||
Esempi:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# display "hello" on core buffer
|
||||
weechat.prnt("", "hello")
|
||||
|
||||
# visualizza il prefisso "==>" ed il messaggio "hello" sul buffer corrente
|
||||
# (prefisso e messaggio vanno separati da una tabulazione)
|
||||
weechat.prnt(weechat.current_buffer(), "==>\thello")
|
||||
|
||||
# visualizza un messaggio di errore sul buffer core (con il prefisso di errore)
|
||||
weechat.prnt("", "%swrong arguments" % weechat.prefix("error"))
|
||||
|
||||
# visualizza messaggio con il colore sul buffer core
|
||||
weechat.prnt("", "text %syellow on blue" % weechat.color("yellow,blue"))
|
||||
|
||||
# cerca buffer e visualizza messaggiosearch buffer and display message
|
||||
# (il nome completo del buffer è plugin.nome, ad esempio: "irc.freenode.#weechat")
|
||||
buffer = weechat.buffer_search("irc", "freenode.#weechat")
|
||||
weechat.prnt(buffer, "message on #weechat channel")
|
||||
|
||||
# altra soluzione per cercare un buffer IRC (migliore)
|
||||
# (nota: server e canale sono separati da virgola)
|
||||
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
|
||||
weechat.prnt(buffer, "message on #weechat channel")
|
||||
----------------------------------------
|
||||
|
||||
[NOTE]
|
||||
La funzione print si chiama `print` in Perl/Ruby/Lua/Tcl e `prnt` in Python.
|
||||
|
||||
[[buffers_send_text]]
|
||||
Invia testo al buffer
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
È possibile inviare del testo o un comando ad un buffer. È esattamente come
|
||||
se si digitasse del testo o un comando, seguiti da [Enter].
|
||||
|
||||
Esempi:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# esegue il comando "/help" sul buffer core
|
||||
weechat.command("", "/help")
|
||||
|
||||
# invia "hello" sul canale IRC #weechat (gli utenti sul canale vedranno il messaggio)
|
||||
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
|
||||
weechat.command(buffer, "hello")
|
||||
----------------------------------------
|
||||
|
||||
[[buffers_new]]
|
||||
Creare un nuovo buffer
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
È possibile creare un nuovo buffer nel proprio script, per poi utilizzarlo per
|
||||
visualizzare i messaggi.
|
||||
|
||||
Possono essere chiamate due callback (sono opzionali): una per i dati in
|
||||
input (quando viene digitato del testo e premuto [Enter] sul buffer), l'altra
|
||||
quando il buffer viene chiuso (ad esempio con `/buffer close`).
|
||||
|
||||
Esempio:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# callback per i dati ricevuti in input
|
||||
def buffer_input_cb(data, buffer, input_data):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# callback chiamata alla chiusura del buffer
|
||||
def buffer_close_cb(data, buffer):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# crea un buffer
|
||||
buffer = weechat.buffer_new("mybuffer", "buffer_input_cb", "", "buffer_close_cb", "")
|
||||
|
||||
# imposta titolo
|
||||
weechat.buffer_set(buffer, "title", "Questo titolo è per il mio buffer.")
|
||||
|
||||
# disabilita il logging, impostando la variabile locale "no_log" ad "1"
|
||||
weechat.buffer_set(buffer, "localvar_set_no_log", "1")
|
||||
----------------------------------------
|
||||
|
||||
[[buffers_properties]]
|
||||
Proprietà dei buffer
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Si possono leggere le proprietà del buffer, come stringa, intero o puntatore.
|
||||
|
||||
Esempi:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
buffer = weechat.current_buffer()
|
||||
|
||||
number = weechat.buffer_get_integer(buffer, "number")
|
||||
name = weechat.buffer_get_string(buffer, "name")
|
||||
short_name = weechat.buffer_get_string(buffer, "short_name")
|
||||
----------------------------------------
|
||||
|
||||
È possibile aggiungere, leggere o eliminare le variabili locali nel buffer:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# aggiunge la variabile locale
|
||||
weechat.buffer_set(buffer, "localvar_set_myvar", "my_value")
|
||||
|
||||
# legge la variabile locale
|
||||
myvar = weechat.buffer_get_string(buffer, "localvar_myvar")
|
||||
|
||||
# elimina la variabile locale
|
||||
weechat.buffer_set(buffer, "localvar_del_myvar", "")
|
||||
----------------------------------------
|
||||
|
||||
Per impostare le variabili locali di un buffer, digitare questo comando
|
||||
in WeeChat:
|
||||
|
||||
----------------------------------------
|
||||
/buffer localvar
|
||||
----------------------------------------
|
||||
|
||||
[[hooks]]
|
||||
Hook
|
||||
~~~~
|
||||
|
||||
[[hook_command]]
|
||||
Aggiungere un nuovo comando
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Aggiunge un comando personalizzato con `hook_command`. Si può fare uso di
|
||||
un template di completamento personalizzato per completare gli argomenti
|
||||
del proprio comando.
|
||||
|
||||
Esempio:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
def my_command_cb(data, buffer, args):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
hook = weechat.hook_command("myfilter", "descrizione di myfilter",
|
||||
"[list] | [enable|disable|toggle [name]] | [add name plugin.buffer tags regex] | [del name|-all]",
|
||||
"descrizione degli argomenti...",
|
||||
"list"
|
||||
" || enable %(filters_names)"
|
||||
" || disable %(filters_names)"
|
||||
" || toggle %(filters_names)"
|
||||
" || add %(filters_names) %(buffers_plugins_names)|*"
|
||||
" || del %(filters_names)|-all",
|
||||
"my_command_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
E poi in WeeChat:
|
||||
|
||||
----------------------------------------
|
||||
/help myfilter
|
||||
|
||||
/myfilter arguments...
|
||||
----------------------------------------
|
||||
|
||||
[[hook_timer]]
|
||||
Aggiungere un timer
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Aggiungere un timer con `hook_timer`.
|
||||
|
||||
Esempio:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
def timer_cb(data, remaining_calls):
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# timer chiamato ogni minuto quandi i secondi sono 00
|
||||
weechat.hook_timer(60 * 1000, 60, 0, "timer_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
[[hook_process]]
|
||||
Eseguire un processo in background
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
È possibile eseguire un processo in background con `hook_process`. La
|
||||
callback verrà chiamata quando i dati sono pronti. Può essere chiamata
|
||||
più volte.
|
||||
|
||||
Per l'ultima chiamata alla callback, 'rc' è impostato a zero o su un
|
||||
valore positivo, è il codice restituito dal comando.
|
||||
|
||||
Esempio:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# Visualizza le versioni dei kernel di Linux.
|
||||
kernel_txt = ""
|
||||
|
||||
def kernel_process_cb(data, command, rc, stdout, stderr):
|
||||
""" Callback reading command output. """
|
||||
global kernel_txt
|
||||
if stdout != "":
|
||||
kernel_txt += stdout
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", kernel_txt)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process("python -c \"import urllib; " \
|
||||
"print urllib.urlopen('http://www.kernel.org/kdist/finger_banner').read()\"",
|
||||
10 * 1000, "kernel_process_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
[[config_options]]
|
||||
Configurazione / opzioni
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
[[config_options_set_script]]
|
||||
Impostare l'opzione per lo script
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
La funzione `config_is_set_plugin` viene utilizzare per verificare se un'opzione
|
||||
è impostata oppure no, e `config_set_plugin` per impostare l'opzione.
|
||||
|
||||
Esempio:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
script_options = {
|
||||
"option1" : "value1",
|
||||
"option2" : "value2",
|
||||
"option3" : "value3",
|
||||
}
|
||||
for option, default_value in script_options.iteritems():
|
||||
if not weechat.config_is_set_plugin(option):
|
||||
weechat.config_set_plugin(option, default_value)
|
||||
----------------------------------------
|
||||
|
||||
[[config_options_detect_changes]]
|
||||
Rilevare le modifiche
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
È necessario utilizzare `hook_config` per essere notificati se l'utente dovesse
|
||||
modificare alcune opzioni dello script.
|
||||
|
||||
Esempio:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
SCRIPT_NAME = "myscript"
|
||||
|
||||
# ...
|
||||
|
||||
def config_cb(data, option, value):
|
||||
""" Callback called when a script option is changed. """
|
||||
# for example, read all script options to script variables...
|
||||
# ...
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# ...
|
||||
|
||||
weechat.hook_config("plugins.var.python." + SCRIPT_NAME + ".*", "config_cb", "")
|
||||
# for other languages, change "python" with your language ("perl", "ruby", "lua" or "tcl")
|
||||
----------------------------------------
|
||||
|
||||
[[config_options_weechat]]
|
||||
Leggere le opzioni di WeeChat
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
La funzione `config_get` restituisce il puntatore all'opzione. Poi, in base al tipo
|
||||
di opzione, è necessario chiamare `config_string`, `config_boolean`,
|
||||
`config_integer` oppure `config_color`.
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# stringa
|
||||
weechat.prnt("", "value of option weechat.look.item_time_format is: %s"
|
||||
% (weechat.config_string(weechat.config_get("weechat.look.item_time_format"))))
|
||||
|
||||
# bool
|
||||
weechat.prnt("", "value of option weechat.look.day_change is: %d"
|
||||
% (weechat.config_boolean(weechat.config_get("weechat.look.day_change"))))
|
||||
|
||||
# intero
|
||||
weechat.prnt("", "value of option weechat.look.scroll_page_percent is: %d"
|
||||
% (weechat.config_integer(weechat.config_get("weechat.look.scroll_page_percent"))))
|
||||
|
||||
# colore
|
||||
weechat.prnt("", "value of option weechat.color.chat_delimiters is: %s"
|
||||
% (weechat.config_color(weechat.config_get("weechat.color.chat_delimiters"))))
|
||||
----------------------------------------
|
||||
|
||||
[[irc]]
|
||||
IRC
|
||||
~~~
|
||||
|
||||
[[irc_catch_messages]]
|
||||
Catturare messaggi
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Il plugin IRC invia due segnali per un messaggio ricevuto (`xxx` è il nome
|
||||
interno del server IRC, `yyy` è il nome del comando IRC come JOIN, QUIT,
|
||||
PRIVMSG, 301, ..):
|
||||
|
||||
xxxx,irc_in_yyy::
|
||||
segnale inviato prima di esaminare il messaggio
|
||||
|
||||
xxx,irc_in2_yyy::
|
||||
segnale inviato dopo aver esaminato il messaggio
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
def join_cb(data, signal, signal_data):
|
||||
# signal è per esempio: "freenode,irc_in2_join"
|
||||
# signal_data è il messaggio IRC message, ad esempio: ":nick!user@host JOIN :#channel"
|
||||
nick = weechat.info_get("irc_nick_from_host", signal_data)
|
||||
server = signal.split(",")[0]
|
||||
channel = signal_data.split(":")[-1]
|
||||
buffer = weechat.info_get("irc_buffer", "%s,%s" % (server, channel))
|
||||
if buffer:
|
||||
weechat.prnt(buffer, "Eheh, %s has joined this channel!" % nick)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
# può essere utile qui utilizzare "*" come server, per catturare
|
||||
# i messaggi JOIN su tutti i server IRC
|
||||
weechat.hook_signal("*,irc_in2_join", "join_cb", "")
|
||||
----------------------------------------
|
||||
|
||||
[[infos]]
|
||||
Info
|
||||
~~~~
|
||||
|
||||
[[infos_weechat_version]]
|
||||
Versione di WeeChat
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Il modo migliore per verificare la versione è richiedere "version_number" e
|
||||
comparare l'intero con il numero di versione esadecimale.
|
||||
|
||||
Esempio:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
version = weechat.info_get("version_number", "") or 0
|
||||
if int(version) >= 0x00030200:
|
||||
weechat.prnt("", "This is WeeChat 0.3.2 or newer")
|
||||
else:
|
||||
weechat.prnt("", "This is WeeChat 0.3.1 or older")
|
||||
----------------------------------------
|
||||
|
||||
[NOTE]
|
||||
Le versioni < = 0.3.1.1 restituiscono una stringa vuota per
|
||||
'info_get("version_number")', per cui bisogna verificare che
|
||||
il valore restituito *non* sia vuoto.
|
||||
|
||||
To get version as string:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# this will display for example "Version 0.3.2"
|
||||
weechat.prnt("", "Version %s" % weechat.info_get("version", ""))
|
||||
----------------------------------------
|
||||
|
||||
[[infos_other]]
|
||||
Altre informazioni
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# la cartella home di WeeChat, ad esempio: "/home/xxxx/.weechat"
|
||||
weechat.prnt("", "WeeChat home dir: %s" % weechat.info_get("weechat_dir", ""))
|
||||
|
||||
# inattività della tastiera
|
||||
weechat.prnt("", "Inactivity since %s seconds" % weechat.info_get("inactivity", ""))
|
||||
----------------------------------------
|
||||
|
||||
[[infolists]]
|
||||
Liste info
|
||||
~~~~~~~~~~
|
||||
|
||||
[[infolists_read]]
|
||||
Leggere una lista info
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
È possibile leggere una lista info compilata da WeeChat
|
||||
o da altri plugin.
|
||||
|
||||
Esempio:
|
||||
|
||||
[source,python]
|
||||
----------------------------------------
|
||||
# legge la lista info "buffer", per ottenere la lista dei buffer
|
||||
infolist = weechat.infolist_get("buffer", "", "")
|
||||
if infolist:
|
||||
while weechat.infolist_next(infolist):
|
||||
name = weechat.infolist_string(infolist, "name")
|
||||
weechat.prnt("", "buffer: %s" % name)
|
||||
weechat.infolist_free(infolist)
|
||||
----------------------------------------
|
||||
|
||||
[IMPORTANT]
|
||||
Non dimenticare di chiamare `infolist_free` per liberare la memoria
|
||||
utilizzata dalla lista info, perché WeeChat non libererà automaticamente
|
||||
la memoria.
|
||||
+283
-41
@@ -61,10 +61,14 @@ Pacchetti binari
|
||||
|
||||
I pacchetti binari sono disponibili per molte distribuzioni, incluse:
|
||||
|
||||
* Debian (o qualsiasi distribuzione compatibile): `apt-get install weechat`
|
||||
* Debian (o qualsiasi distribuzione compatibile):
|
||||
`apt-get install weechat-curses`
|
||||
* Mandriva/RedHat (o qualsiasi distribuzione compatibile con gli RPM):
|
||||
`rpm -i /percorso/per/weechat-x.y.z-1.i386.rpm`
|
||||
* Gentoo: `emerge weechat`
|
||||
* Arch Linux: `pacman -S weechat`
|
||||
* Fedora Core: `yum install weechat`
|
||||
* Sourcemage: `cast weechat`
|
||||
|
||||
Potrebbero risultare utili alcuni pacchetti addizionali, come
|
||||
weechat-plugins.
|
||||
@@ -79,9 +83,39 @@ Sorgenti
|
||||
WeeChat può essere compilato con cmake oppure autotools
|
||||
(tuttavia si raccomanda cmake).
|
||||
|
||||
[[dependencies]]
|
||||
Dipendenze
|
||||
^^^^^^^^^^
|
||||
|
||||
La seguente tabella mostra l'elenco di pacchetti richiesti o opzionali per
|
||||
compilare WeeChat.
|
||||
|
||||
[width="80%",cols="4,^2,13",options="header"]
|
||||
|========================================
|
||||
| Pacchetto ^(1)^ | Richiesto | Caratteristica
|
||||
| cmake | *sì* | compilazione (ancora possibile con autotools, ma si raccomanda cmake)
|
||||
| libncursesw5-dev ^(2)^ | *sì* | interfaccia ncurses
|
||||
| libgcrypt11-dev | no | autenticazione SASL per i server IRC che utilizzano il meccanismo DH-BLOWFISH
|
||||
| libgnutls-dev | no | connessione SSL al server IRC
|
||||
| libaspell-dev | no | plugin aspell
|
||||
| libperl-dev | no | plugin perl
|
||||
| python-dev | no | plugin python
|
||||
| ruby1.8-dev | no | plugin ruby
|
||||
| liblua5.1-0-dev | no | plugin lua
|
||||
| tcl-dev | no | plugin tcl
|
||||
| asciidoc (>= 8.2) | no | compilazione della documentazione (file HTML)
|
||||
| source-highlight | no | evidenziazione della sintassi per i sorgenti nella documentazione HTML
|
||||
|========================================
|
||||
|
||||
[NOTE]
|
||||
^(1)^ Il nome viene dalla distribuzione Debian GNU/Linux, nomi e versioni dei pacchetti
|
||||
potrebbero essere differenti in versioni e distribuzioni differenti. +
|
||||
^(2)^ WeeChat può essere compilato con libncurses5-dev, ma *NON* è raccomandato
|
||||
(potrebbero verificarsi bug di visualizzazione).
|
||||
|
||||
[[compile_with_cmake]]
|
||||
Con cmake
|
||||
^^^^^^^^^
|
||||
Compilazione con cmake
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
* Installazione nelle cartelle di sistema (richiede privilegi di 'root'):
|
||||
|
||||
@@ -104,8 +138,8 @@ $ make install
|
||||
----------------------------------------
|
||||
|
||||
[[compile_with_autotools]]
|
||||
Con autotools
|
||||
^^^^^^^^^^^^^
|
||||
Compilazione con autotools
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
* Installazione nelle cartelle di sistema (richiede privilegi di 'root'):
|
||||
|
||||
@@ -142,7 +176,99 @@ Se si usano gli autotools (e non cmake), eseguire questo script:
|
||||
$ ./autogen.sh
|
||||
----------------------------------------
|
||||
|
||||
Poi seguire le istruzioni per i sorgenti (consultare <<source_package>>).
|
||||
Poi seguire le istruzioni per i sorgenti (consultare
|
||||
<<source_package,sorgenti>>).
|
||||
|
||||
[[report_crashes]]
|
||||
Segnalare gli errori
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Nel caso in cui si verifichino errori, o si desideri segnalare qualsiasi errore futuro
|
||||
di WeeChat, è necessario:
|
||||
|
||||
* compilarlo con informazioni di debug (o installare il pacchetto binario con
|
||||
le informazioni di debug)
|
||||
* abilitare i file 'core' sul proprio sistema
|
||||
* installare gdb
|
||||
|
||||
[[debug_info]]
|
||||
Informazioni di debug
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Se si compila con cmake:
|
||||
|
||||
----------------------------------------
|
||||
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
|
||||
----------------------------------------
|
||||
|
||||
Se si compila con gli autotools, il debug è predefinito (`--with-debug=1`).
|
||||
|
||||
Se è stato installato il pacchetto binario, installare il pacchetto 'weechat-gdb'.
|
||||
|
||||
[[core_files]]
|
||||
File core
|
||||
^^^^^^^^^
|
||||
|
||||
Per abilitare i file 'core', è necessario usare il comando `ulimit`.
|
||||
|
||||
Ad esempio su Linux con la shell 'bash', aggiungere questa riga al proprio
|
||||
`~/.bashrc`:
|
||||
|
||||
----------------------------------------
|
||||
ulimit -c unlimited
|
||||
----------------------------------------
|
||||
|
||||
Oppure impostare una dimensione massima:
|
||||
|
||||
----------------------------------------
|
||||
ulimit -c 200000
|
||||
----------------------------------------
|
||||
|
||||
[[gdb_backtrace]]
|
||||
Ottenere un backtrace con gdb
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
In caso di errore di WeeChat, il sistema creerà un file 'core' oppure 'core.12345'
|
||||
('12345' è l'id del processo).
|
||||
Questo file viene creato nella cartella in cui è in esecuzione WeeChat (e
|
||||
*non* la cartella dove WeeChat è installato!).
|
||||
|
||||
Ad esempio, se 'weechat-curses' è installato in '/usr/bin/' ed il file 'core'
|
||||
si trova in '/home/xxx/', allora eseguire gdb con questo comando:
|
||||
|
||||
----------------------------------------
|
||||
gdb /usr/bin/weechat-curses /home/xxx/core
|
||||
----------------------------------------
|
||||
|
||||
All'interno di gdb, usare il comando `bt` per visualizzare
|
||||
il backtrace. Verrà mostrato qualcosa di simile a questo:
|
||||
|
||||
----------------------------------------
|
||||
(gdb) bt
|
||||
#0 0xffffe424 in __kernel_vsyscall ()
|
||||
#1 0xb76208e0 in raise () from /lib/i686/cmov/libc.so.6
|
||||
#2 0xb7623e15 in abort () from /lib/i686/cmov/libc.so.6
|
||||
#3 0x08083940 in weechat_shutdown (return_code=1, crash=1) at /some_path/src/core/weechat.c:357
|
||||
#4 0x08098aaa in debug_sigsegv () at /some_path/src/core/wee-debug.c:155
|
||||
#5 <signal handler called>
|
||||
#6 0xb7656681 in vsnprintf () from /lib/i686/cmov/libc.so.6
|
||||
#7 0xb763dd22 in snprintf () from /lib/i686/cmov/libc.so.6
|
||||
#8 0xb7258674 in irc_protocol_cmd_join (server=0x8165138, command=0xb727c187 "join", argc=3, argv=0x889e840, argv_eol=0x889e858)
|
||||
at /some_path/src/plugins/irc/irc-protocol.c:520
|
||||
#9 0xb7265c6e in irc_protocol_recv_command (server=0x8165138, entire_line=0x889e7e0 ":nick!nick@127.0.0.1 JOIN :#test",
|
||||
command=0x889d080 "JOIN") at /some_path/src/plugins/irc/irc-protocol.c:4077
|
||||
#10 0xb726a2c6 in irc_server_msgq_flush () at /some_path/src/plugins/irc/irc-server.c:1614
|
||||
#11 0xb726a4da in irc_server_recv_cb (data=0x8165138, fd=8) at /some_path/src/plugins/irc/irc-server.c:1691
|
||||
#12 0x0809a797 in hook_fd_exec (read_fds=0xbfcf8074, write_fds=0xbfcf7ff4, exception_fds=0xbfcf7f74)
|
||||
at /some_path/src/core/wee-hook.c:1133
|
||||
#13 0x08060af0 in gui_main_loop () at /some_path/src/gui/curses/gui-curses-main.c:330
|
||||
#14 0x08083b10 in main (argc=3, argv=0xbfcf81d4) at /some_path/src/core/weechat.c:419
|
||||
----------------------------------------
|
||||
|
||||
Bisogna riportare l'errore agli sviluppatori, e specificare quale azione ha causato
|
||||
l'errore.
|
||||
|
||||
Grazie per il vostro aiuto!
|
||||
|
||||
|
||||
[[usage]]
|
||||
@@ -175,6 +301,9 @@ Argomenti a riga di comando:
|
||||
-p, --no-plugin::
|
||||
Disabilita il caricamento automatico dei plugin
|
||||
|
||||
-s, --no-script::
|
||||
Disabilita il caricamento automatico dei script
|
||||
|
||||
-v, --version::
|
||||
Visualizza la versione di WeeChat
|
||||
|
||||
@@ -193,7 +322,7 @@ predefinito. Il file di configurazione viene creato nella cartella:
|
||||
|
||||
È possibile modificare questo file per configurare WeeChat a seconda delle
|
||||
proprie esigenze, oppure impostando i parametri con il comando `/set`
|
||||
all'interno di WeeChat (consultare <<weechat_commands>>).
|
||||
all'interno di WeeChat (consultare <<weechat_commands,comandi di WeeChat>>).
|
||||
|
||||
[[screen_layout]]
|
||||
Layout dello schermo
|
||||
@@ -243,7 +372,7 @@ Lo schermo è composto dalle seguenti aree:
|
||||
La barra 'stato' ha i seguenti elementi predefiniti:
|
||||
|
||||
[width="100%",cols="^3,^3l,10",options="header"]
|
||||
|=======================================
|
||||
|========================================
|
||||
| Elemento | Esempio | Descrizione
|
||||
|
||||
| time | [12:55] |
|
||||
@@ -282,12 +411,12 @@ La barra 'stato' ha i seguenti elementi predefiniti:
|
||||
| scroll | -ANCORA(50)- |
|
||||
indicatore di scorrimento, con il numero di righe sotto l'ultima
|
||||
riga visualizzata
|
||||
|=======================================
|
||||
|========================================
|
||||
|
||||
La barra 'input' ha i seguenti elementi predefiniti:
|
||||
|
||||
[width="100%",cols="^3,^6l,8",options="header"]
|
||||
|=======================================
|
||||
|========================================
|
||||
| Elemento | Esempio | Descrizione
|
||||
|
||||
| input_paste | [Incollare 7 righe ? [ctrl-Y] Sì [ctrl-N] No] |
|
||||
@@ -304,7 +433,7 @@ La barra 'input' ha i seguenti elementi predefiniti:
|
||||
|
||||
| input_text | bla bla... |
|
||||
testo in input
|
||||
|=======================================
|
||||
|========================================
|
||||
|
||||
[[key_bindings]]
|
||||
Associazione tasti predefinita
|
||||
@@ -315,7 +444,7 @@ Tasti per la riga di comando
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
[width="100%",cols="^.^4,.^15",options="header"]
|
||||
|=======================================
|
||||
|========================================
|
||||
| Tasti | Descrizione e comando
|
||||
|
||||
| Freccia sinistra +
|
||||
@@ -458,14 +587,14 @@ Tasti per la riga di comando
|
||||
| Alt + R |
|
||||
Elimina l'intera riga di comando +
|
||||
`/input delete_line`
|
||||
|=======================================
|
||||
|========================================
|
||||
|
||||
[[key_bindings_buffers_windows]]
|
||||
Tasti per buffer / finestre
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
[width="100%",cols="^.^4,.^15",options="header"]
|
||||
|=======================================
|
||||
|========================================
|
||||
| Tasti | Descrizione e comando
|
||||
|
||||
| Ctrl + L |
|
||||
@@ -606,14 +735,14 @@ Tasti per buffer / finestre
|
||||
| Alt + > |
|
||||
Passa al buffer successivo nella lista dei buffer visitati +
|
||||
`/input jump_next_visited_buffer`
|
||||
|=======================================
|
||||
|========================================
|
||||
|
||||
[[key_bindings_other]]
|
||||
Altri tasti
|
||||
^^^^^^^^^^^
|
||||
|
||||
[width="100%",cols="^.^4,.^15",options="header"]
|
||||
|=======================================
|
||||
|========================================
|
||||
| Tasti | Descrizione e comando
|
||||
|
||||
| Alt + H |
|
||||
@@ -623,7 +752,7 @@ Altri tasti
|
||||
| Alt + = |
|
||||
Attiva/disattiva filtri +
|
||||
`/filter toggle` +
|
||||
|=======================================
|
||||
|========================================
|
||||
|
||||
[[command_line]]
|
||||
Riga di comando
|
||||
@@ -689,26 +818,27 @@ opzionale):
|
||||
Lo stesso codice (senza numero per ^Cc) può essere usato per
|
||||
terminare l'attributo.
|
||||
|
||||
I codici colore per ^Cc sono:
|
||||
I codici colore per ^Cc sono:
|
||||
|
||||
[width="20%",cols="^1m,2"]
|
||||
[width="35%",cols="^1m,3,3",options="header"]
|
||||
|=======================================
|
||||
| 00 | bianco
|
||||
| 01 | nero
|
||||
| 02 | blu scuro
|
||||
| 03 | verde scuro
|
||||
| 04 | rosso chiaro
|
||||
| 05 | rosso scuro
|
||||
| 06 | rosa scuro
|
||||
| 07 | arancione
|
||||
| 08 | giallo
|
||||
| 09 | verde chiaro
|
||||
| 10 | azzurro scuro
|
||||
| 11 | azzurro chiaro
|
||||
| 12 | blu chiaro
|
||||
| 13 | rosa chiaro
|
||||
| 14 | grigio
|
||||
| 15 | grigio chiaro (bianco)
|
||||
| Codice | IRC | WeeChat (curses)
|
||||
| 00 | bianco | white
|
||||
| 01 | nero | black
|
||||
| 02 | blu scuro | blue
|
||||
| 03 | verde scuro | green
|
||||
| 04 | rosso chiaro | lightred
|
||||
| 05 | rosso scuro | red
|
||||
| 06 | rosa scuro | magenta
|
||||
| 07 | arancione | brown
|
||||
| 08 | giallo | yellow
|
||||
| 09 | verde chiaro | lightgreen
|
||||
| 10 | azzurro scuro | cyan
|
||||
| 11 | azzurro chiaro | lightcyan
|
||||
| 12 | blu chiaro | lightblue
|
||||
| 13 | rosa chiaro | lightmagenta
|
||||
| 14 | grigio | default
|
||||
| 15 | grigio chiaro | white
|
||||
|=======================================
|
||||
|
||||
Esempio: visualizza "ciao a tutti!" con "ciao" scritto in blu chiaro grassetto
|
||||
@@ -724,10 +854,12 @@ Opzioni di WeeChat (weechat.conf)
|
||||
|
||||
include::autogen/user/weechat_options.txt[]
|
||||
|
||||
I colori per l'interfaccia Curses sono:
|
||||
[[curses_colors]]
|
||||
I colori per l'interfaccia Curses
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
[width="50%",cols="^3m,8"]
|
||||
|=======================================
|
||||
|========================================
|
||||
| default | colore predefinito del terminale (trasparente per lo sfondo)
|
||||
| black | nero
|
||||
| darkgray | grigio scuro
|
||||
@@ -792,7 +924,7 @@ Esempi per attivare, disattivare oppure elencare i plugin:
|
||||
|
||||
I plugin predefiniti sono:
|
||||
|
||||
[width="50%",cols=">1s,5",options="header"]
|
||||
[width="50%",cols="^1,5",options="header"]
|
||||
|=======================================
|
||||
| Plugin | Descrizione
|
||||
| alias | Definisce gli alias per i comandi
|
||||
@@ -1020,7 +1152,7 @@ Plugin IRC
|
||||
Il plugin IRC è realizzato per chattare tramite protocollo IRC con altre persone.
|
||||
|
||||
È multi-server, ed offre tutti i comandi IRC supportati inclusi la chat DCC ed il
|
||||
trasferimento file (tramite plugin xfer, consultare <<xfer_plugin>>).
|
||||
trasferimento file (tramite plugin xfer, consultare <<xfer_plugin,plugin Xfer>>).
|
||||
|
||||
[[irc_command_line_options]]
|
||||
Opzioni a riga di comando
|
||||
@@ -1051,6 +1183,115 @@ Comandi
|
||||
|
||||
include::autogen/user/irc_commands.txt[]
|
||||
|
||||
[[irc_ssl_certificates]]
|
||||
Certificati SSL
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
Al momento della connessione al server IRC con SSL, WeeChat verifica in
|
||||
maniera predefinita che la connessione sia completamente fidata.
|
||||
|
||||
Esistono alcune opzioni per controllare la connessione SSL:
|
||||
|
||||
weechat.network.gnutls_ca_file::
|
||||
percorso del file con il certificato delle autorità (predefinito: "%h/ssl/CAs.pem")
|
||||
|
||||
irc.server.xxx.ssl_cert::
|
||||
file del certificato SSL usato per identificare automaticamente il proprio
|
||||
nick ad esempio CertFP su oftc (a seguire)
|
||||
|
||||
irc.server.xxx.ssl_dhkey_size::
|
||||
dimensione della chiave usata durante lo Scambio Chiavi Diffie-Hellman
|
||||
(predefinita; 2048)
|
||||
|
||||
irc.server.xxx.ssl_verify::
|
||||
verifica che la connessione SSL sia totalmente fidata (opzione attivata
|
||||
in maniera predefinita)
|
||||
|
||||
[NOTE]
|
||||
L'opzione "ssl_verify" è attivata per default, in questo modo la verifica è rigorosa
|
||||
e potrebbe fallire, anche se funziona senza problemi con versioni precedenti
|
||||
la 0.3.1.
|
||||
|
||||
[[irc_connect_oftc_with_certificate]]
|
||||
Primo esempio: connessione a otfc e verifica del certificato
|
||||
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
* Importare certificati nella shell:
|
||||
|
||||
----------------------------------------
|
||||
$ mkdir ~/.weechat/ssl
|
||||
$ wget -O ~/.weechat/ssl/CAs.pem http://www.spi-inc.org/secretary/spi-cacert.crt
|
||||
----------------------------------------
|
||||
|
||||
Nota: è possibile concatenare più certificati nel file CAs.pem.
|
||||
|
||||
* In WeeChat, con il server "otfc" già creato:
|
||||
|
||||
----------------------------------------
|
||||
/connect oftc
|
||||
----------------------------------------
|
||||
|
||||
[[irc_connect_oftc_with_certfp]]
|
||||
Secondo esempio: connessione a otfc con CertFP
|
||||
++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
* Creare un certificato nella shell:
|
||||
|
||||
----------------------------------------
|
||||
$ openssl req -nodes -newkey rsa:2048 -keyout nick.key -x509 -days 365 -out nick.cer
|
||||
$ cat nick.cer nick.key > ~/.weechat/ssl/nick.pem
|
||||
----------------------------------------
|
||||
|
||||
* In WeeChat, con il server "otfc" già creato:
|
||||
|
||||
----------------------------------------
|
||||
/set irc.server.oftc.ssl_cert "%h/ssl/nick.pem"
|
||||
/connect oftc
|
||||
/msg nickserv cert add
|
||||
----------------------------------------
|
||||
|
||||
Per maggiori informazioni consultare http://www.oftc.net/oftc/NickServ/CertFP
|
||||
|
||||
[[irc_smart_filter_join_part_quit]]
|
||||
Filtro smart per i messaggi di entrata/uscita/disconnessione
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Un filtro smart è disponibile per filtrare i messaggi di
|
||||
entrata/uscita/disconnessione quando il nick non ha detto nulla durante
|
||||
gli ultimi X minuti sul canale
|
||||
|
||||
Il filtro smart è abilitato per default, ma è necessario aggiungere un filtro
|
||||
per nascondere le righe sul buffer, per esempio:
|
||||
|
||||
----------------------------------------
|
||||
/filter add irc_smart * irc_smart_filter *
|
||||
----------------------------------------
|
||||
|
||||
È possibile creare il filtro solo per un canale o per i canali che iniziano con
|
||||
lo stesso nome (consultare `/help filter`):
|
||||
|
||||
----------------------------------------
|
||||
/filter add irc_smart_weechat irc.freenode.#weechat irc_smart_filter *
|
||||
/filter add irc_smart_weechats irc.freenode.#weechat* irc_smart_filter *
|
||||
----------------------------------------
|
||||
|
||||
È possibile nascondere solo i messaggi di entrata o di
|
||||
uscita/disconnessione con le seguenti opzioni:
|
||||
|
||||
----------------------------------------
|
||||
/set irc.look.smart_filter_join on
|
||||
/set irc.look.smart_filter_quit on
|
||||
----------------------------------------
|
||||
|
||||
È possibile impostare un ritardo (in minuti):
|
||||
|
||||
----------------------------------------
|
||||
/set irc.look.smart_filter_delay 5
|
||||
----------------------------------------
|
||||
|
||||
Se un nick non ha parlato durante gli ultimi 5 minuti, i suoi ingressi e/o
|
||||
uscite/disconnessioni verranno nascosti sul canale.
|
||||
|
||||
[[irc_ctcp_replies]]
|
||||
Risposte CTCP
|
||||
^^^^^^^^^^^^^
|
||||
@@ -1159,6 +1400,7 @@ personalizzare:
|
||||
| wallops | | wallops
|
||||
| 221 | | stringa modalità utente
|
||||
| 275 | whois | whois (connessione sicura)
|
||||
| 301 | whois | whois (assente)
|
||||
| 303 | | ison
|
||||
| 305 | unaway | presente
|
||||
| 306 | away | assente
|
||||
@@ -1373,10 +1615,10 @@ Comandi Tcl
|
||||
include::autogen/user/tcl_commands.txt[]
|
||||
|
||||
[[xfer_plugin]]
|
||||
Plugin xfer
|
||||
Plugin Xfer
|
||||
~~~~~~~~~~~
|
||||
|
||||
Il plugin xfer fornisce:
|
||||
Il plugin Xfer fornisce:
|
||||
|
||||
* chat diretta (tra due host, senza server): per esempio "DCC Chat"
|
||||
tramite plugin IRC
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@
|
||||
docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_quickstart.ja.txt
|
||||
weechat_quickstart.ja.txt
|
||||
|
||||
all-local: weechat_quickstart.ja.html
|
||||
|
||||
|
||||
+3
-3
@@ -17,9 +17,9 @@
|
||||
docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_faq.pl.txt \
|
||||
weechat_quickstart.pl.txt \
|
||||
weechat_tester.pl.txt
|
||||
weechat_faq.pl.txt \
|
||||
weechat_quickstart.pl.txt \
|
||||
weechat_tester.pl.txt
|
||||
|
||||
all-local: weechat_faq.pl.html \
|
||||
weechat_quickstart.pl.html \
|
||||
|
||||
+198
-98
@@ -3,6 +3,7 @@ WeeChat FAQ (Często zadawane pytania)
|
||||
FlashCode <flashcode@flashtux.org>
|
||||
|
||||
|
||||
[[general]]
|
||||
Ogólne
|
||||
------
|
||||
|
||||
@@ -34,6 +35,7 @@ Niektóre cechy (wersja > = 0.3.x):
|
||||
Więcej informacji na stronie: http://www.weechat.org/features
|
||||
|
||||
|
||||
[[compilation_install]]
|
||||
Kompilacja / instalacja
|
||||
-----------------------
|
||||
|
||||
@@ -63,10 +65,6 @@ git. Ten pakiet może odpowiadać dokładnie wersji z gita i jest mniej wygodny
|
||||
przy aktualizowaniu jak klonowanie z gita.
|
||||
|
||||
|
||||
Używanie WeeChat
|
||||
----------------
|
||||
|
||||
|
||||
[[lost]]
|
||||
Uruchomiłem WeeChat, ale czuję się zagubiony, co robić?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -78,18 +76,9 @@ Nowym użytkowniką zaleca się przeczytanie quickstart (szybki start)
|
||||
(zobacz stronę z dokumentacją na stronie www).
|
||||
|
||||
|
||||
[[buffer_vs_window]]
|
||||
Słyszałem o "buforach" i "oknach", jaka jest między nimi różnica?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
'bufor' jest określany przez numer, nazwę, wyświetlane linie (i trochę innych
|
||||
danych).
|
||||
|
||||
'okno' jest to obszar ekranu wyświetlający bufor. Możliwe jest podzielenie
|
||||
ekranu na wiele okien.
|
||||
|
||||
Każde okno wyświetla jeden bufor. Bufor może być ukryty (nie wyświetlany przez
|
||||
okno) lub wyświetlany w jednym lub więcej oknach.
|
||||
[[display]]
|
||||
Wyświetlanie
|
||||
------------
|
||||
|
||||
|
||||
[[charset]]
|
||||
@@ -103,8 +92,8 @@ Dla wersji < 0.2.3, zaleca się uaktualnienie do najnowszej stabilnej wersji.
|
||||
Dla wersji > = 0.2.3:
|
||||
|
||||
* sprawdź czy weechat-curses jest zlinkowany z libncursesw (uwaga: wymagane na
|
||||
więkrzości dystrybucji ale nie wszystkich): `ldd /path/to/weechat-curses`
|
||||
* sprawdź czy wtyczka "Charset" jest załadowana za pomocą komendy `/plugin`
|
||||
więkrzości dystrybucji ale nie wszystkich): `ldd /ścieżka/do/weechat-curses`
|
||||
* sprawdź czy wtyczka "Charset" jest załadowana za pomocą komendy `/plugin`
|
||||
(jeśli nie jest, to najprawdopodbniej potrzebujesz pakietu "weechat-plugins")
|
||||
* sprawdź ustawienia kodowania (w buforze serwera). Powinieneś ujrzeć 'ISO-XXXXXX'
|
||||
lub 'UTF-8' dla kodowania terminala. Jeśli zobaczysz 'ANSI_X3.4-1968' lub inna
|
||||
@@ -113,7 +102,7 @@ Dla wersji > = 0.2.3:
|
||||
** w WeeChat < = 0.2.6: `/setp charset.global.decode = ISO-8859-2`
|
||||
** w WeeChat > = 0.3.x: `/set charset.default.decode "ISO-8859-2"`
|
||||
* jeśli kożystasz z UTF-8:
|
||||
** sprawdź czy twój terminal jest przystosowany dla UTF-8 (zalecanym terminalem
|
||||
** sprawdź czy twój terminal jest przystosowany dla UTF-8 (zalecanym terminalem
|
||||
dla UTF-8 jest rxvt-unicode)
|
||||
** jeśli kożystasz ze screena, sprawdź czy jest uruchomiony z trybem UTF-8
|
||||
("`defutf8 on`" w ~/.screenrc lub `screen -U` uruchamiając screena)
|
||||
@@ -153,60 +142,18 @@ który działa dobrze (jak wiele innych wartości).
|
||||
W razie potrzeby, popraw zmienna TERM: `export TERM="xxx"`.
|
||||
|
||||
|
||||
[[key_bindings]]
|
||||
Jak mogę zmienić przypisania klawiszy?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[buffer_vs_window]]
|
||||
Słyszałem o "buforach" i "oknach", jaka jest między nimi różnica?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Przypisania klawiszy mozna dostosować za pomocą komendy /key.
|
||||
'bufor' jest określany przez numer, nazwę, wyświetlane linie (i trochę innych
|
||||
danych).
|
||||
|
||||
Domyślnie Meta-k (zazwyczaj Alt-k) pozwala pobrać kod klawiszy i umieścić
|
||||
go w wierszu poleceń.
|
||||
'okno' jest to obszar ekranu wyświetlający bufor. Możliwe jest podzielenie
|
||||
ekranu na wiele okien.
|
||||
|
||||
|
||||
[[openbsd_plugins]]
|
||||
Używam OpenBSD, WeeChat nie ładuje żadnych pluginów, co jest nie tak?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Pod OpenBSD, nazwy wtyczek kończą się ".so.0.0" (".so" dla Linuksa).
|
||||
|
||||
Musisz ustawić:
|
||||
|
||||
* dla WeeChat < = 0.2.6: +
|
||||
`/set plugins_extension = ".so.0.0"`
|
||||
* dla WeeChat > = 0.3.x: +
|
||||
`/set weechat.plugin.extension ".so.0.0"`
|
||||
|
||||
Następnie: `/plugin autoload`.
|
||||
|
||||
|
||||
[[scripts]]
|
||||
Jak załadować skrypty Perl/Python/Ruby/Lua/Tcl? Czy skrypty są kompatybilne z innymi klientami IRC?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Możesz użyć komend `/perl`, `/python`, `/ruby`, `/lua` oraz `/tcl`, aby załadować
|
||||
skrypt (domyślna lokalizacja skryptów to '~/.weechat/<język>/').
|
||||
|
||||
Skrypty nie są kompatybilne z innymi klientami IRC.
|
||||
|
||||
Uwagi:
|
||||
|
||||
* skrypty w '~/.weechat/<język>/autoload/' są automatycznie ładowane przy
|
||||
uruchomieniu WeeChat.
|
||||
* wtyczka 'tcl' jest dostępna dla wersji > = 0.3.x.
|
||||
|
||||
|
||||
[[change_locale_without_quit]]
|
||||
Chcę zmienić język komunikatów wyświetlanych przez WeeChat, ale bez jego zamykania, czy jest to możliwe?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Tak, musisz użyć pythonowego skryptu shell.py (dostępny na stronie programu),
|
||||
oraz użyć tych komend po załadowaniu skryptu:
|
||||
|
||||
/shell setenv LANG=pl_PL.UTF-8
|
||||
/upgrade
|
||||
|
||||
Aby otrzymać polskie komunikaty dla kodowania UTF-8 w terminalu, osóby
|
||||
używające ISO, moga wykonać: `/shell setenv LANG=pl_PL`.
|
||||
Każde okno wyświetla jeden bufor. Bufor może być ukryty (nie wyświetlany przez
|
||||
okno) lub wyświetlany w jednym lub więcej oknach.
|
||||
|
||||
|
||||
[[terminal_copy_paste]]
|
||||
@@ -248,23 +195,75 @@ shortenurl.py::
|
||||
Lista skryptów do obsługi adresów URL: http://www.weechat.org/scripts/stable/tag/url
|
||||
|
||||
|
||||
[[highlight_notification]]
|
||||
Jak mogę zostać powiadomiony, jeśli ktoś będzię chciał przyciągnąć moją uwagę na kanale?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[change_locale_without_quit]]
|
||||
Chcę zmienić język komunikatów wyświetlanych przez WeeChat, ale bez jego zamykania, czy jest to możliwe?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
W zależnośći od wersji WeeChat:
|
||||
Tak, musisz użyć pythonowego skryptu shell.py (dostępny na stronie programu),
|
||||
oraz użyć tych komend po załadowaniu skryptu:
|
||||
|
||||
* dla WeeChat < = 0.2.6: użyj skryptu 'sound.pl' (dostępny na stronie ze
|
||||
skryptami), następnie ustawienie komendy systemowej (do odtworzenia dźwięku,
|
||||
wyświetlenia wiadomości, ..) za pomocą komendy: +
|
||||
`/setp perl.sound.cmd_highlight = "/ścieżka/do/komendy argumenty"`
|
||||
* dla WeeChat > = 0.3.x: użyj skryptu 'launcher.pl' (dostępny na stronie ze
|
||||
skryptami), następnie ustawienie komendy systemowej (do odtworzenia dźwięku,
|
||||
wyświetlenia wiadomości, ..) za pomocą komendy: +
|
||||
`/set plugins.var.perl.launcher.signal.weechat_highlight "/ścieżka/do/komendy argumenty"`
|
||||
/shell setenv LANG=pl_PL.UTF-8
|
||||
/upgrade
|
||||
|
||||
Istnieje wiele innych skryptów do powiadomień, zajrzyj na stronę wtyczek/skryptów:
|
||||
http://www.weechat.org/scripts
|
||||
Aby otrzymać polskie komunikaty dla kodowania UTF-8 w terminalu, osóby
|
||||
używające ISO, moga wykonać: `/shell setenv LANG=pl_PL`.
|
||||
|
||||
|
||||
[[key_bindings]]
|
||||
Przypisania klawiszy
|
||||
--------------------
|
||||
|
||||
|
||||
[[meta_keys]]
|
||||
Niektóre skróty klawiszowe (alt + klawisz) nie działają, dlaczego?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Jeśli używasz terminali jak xterm lub uxterm, niektóre skróty domyślnie
|
||||
nie będą działać. Możesz dodać następujące linie do pliku '~/.Xresources':
|
||||
|
||||
* dla xterm:
|
||||
----------------------------------------
|
||||
XTerm*metaSendsEscape: true
|
||||
----------------------------------------
|
||||
* dla uxterm:
|
||||
----------------------------------------
|
||||
UXTerm*metaSendsEscape: true
|
||||
----------------------------------------
|
||||
|
||||
Następnie przeładować zasoby (`xrdb -override ~/.Xresources`) lub zrestartować X.
|
||||
|
||||
|
||||
[[customize_key_bindings]]
|
||||
Jak mogę zmienić przypisania klawiszy?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Przypisania klawiszy mozna dostosować za pomocą komendy `/key`.
|
||||
|
||||
Domyślnie Meta-k (zazwyczaj Alt-k) pozwala pobrać kod klawiszy i umieścić
|
||||
go w wierszu poleceń.
|
||||
|
||||
|
||||
[[irc]]
|
||||
IRC
|
||||
---
|
||||
|
||||
|
||||
[[ignore_vs_filter]]
|
||||
Jaka jest różnica między komendami/ignore i /filter ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Komenda `/ignore` jest komendą IRC, zatem odnosi się tylko do buforów IRC
|
||||
(serwery i kanały).
|
||||
Pozwala ignorować niektóre nicki lub hosty użytkowników serwera lub kanału
|
||||
(komendy nie stotuje się do treści wiadomości).
|
||||
Pasujące wiadomości są usuwane przez wtyczkę IRC przed wyświetleniem (nigdy
|
||||
ich nie zobaczysz).
|
||||
|
||||
Komenda `/filter` jest komenda rdzenia, zatem odnosi się do dowolnego bufora.
|
||||
Pozwala filtrować niektóre linie w buforach za pomocą tagów lub wyrażeń
|
||||
regularnych dla przedrostków i zawartości lini.
|
||||
Filtrowane linie są tylko ukrywane, nie usuwane, można je zobaczyć wyłączając
|
||||
filtry (domyślnie alt + "=" zmienia stan filtrów).
|
||||
|
||||
|
||||
[[filter_irc_join_part_quit]]
|
||||
@@ -291,24 +290,124 @@ W zależności od wersji WeeChat:
|
||||
(`/help filter` dla pomocy)
|
||||
|
||||
|
||||
[[ignore_vs_filter]]
|
||||
Jaka jest różnica między komendami/ignore i /filter ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
[[filter_voice_messages]]
|
||||
Jak moge filtrować informacje o przyznaniu voice (np na serwerze Bitlbee)?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Komenda `/ignore` jest komendą IRC, zatem odnosi się tylko do buforów IRC
|
||||
(serwery i kanały).
|
||||
Pozwala ignorować niektóre nicki lub hosty użytkowników serwera lub kanału
|
||||
(komendy nie stotuje się do treści wiadomości).
|
||||
Pasujące wiadomości są usuwane przez wtyczkę IRC przed wyświetleniem (nigdy
|
||||
ich nie zobaczysz).
|
||||
Filtrowanie wiadomości o przyznaiu voice nie jest proste, ponieważ może on
|
||||
zostać nadany wraz z innymi atrybutami w jednej wiadomości IRC.
|
||||
|
||||
Komenda `/filter` jest komenda rdzenia, zatem odnosi się do dowolnego bufora.
|
||||
Pozwala filtrować niektóre linie w buforach za pomocą tagów lub wyrażeń
|
||||
regularnych dla przedrostków i zawartości lini.
|
||||
Filtrowane linie są tylko ukrywane, nie usuwane, można je zobaczyć wyłączając
|
||||
filtry (domyślnie alt + "=" zmienia stan filtrów).
|
||||
Zapewne chcesz to zrobić, ponieważ Bitlbee używa voice do wskazania nieobecnych
|
||||
użytkowników, oraz jesteś zasypywany takimi wiadomościami. Możesz to zmienić oraz
|
||||
pozwolić WeeChat używać specjalnego koloru dla nieobecnych nicków.
|
||||
|
||||
Na kanale '&bitlbee', wykonaj:
|
||||
----------------------------------------
|
||||
set away_devoice false
|
||||
----------------------------------------
|
||||
|
||||
Aby dowiedzieć się jak sprawdzić nieobecność w WeeChat, spójrz na pytanie o
|
||||
<<color_away_nicks,nieobecnych osobach>>.
|
||||
|
||||
|
||||
[[color_away_nicks]]
|
||||
Jak mogę zobaczyć kto jest aktualnie nieobecny ?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Należy ustawić opcję 'irc.network.away_check' na wartość większą od zera
|
||||
(minuty pomiędzy sprawdzaniem czy nick jest nieobecny).
|
||||
|
||||
Możesz ustawić opcję 'irc.network.away_check_max_nicks' w celu ustalenia
|
||||
sprawdzania nieobecności dla małych kanałów.
|
||||
|
||||
Na przykład, aby sprawdzać nieonecność nicków co 5, dla kanałów z maksymalnie 25
|
||||
osobami:
|
||||
|
||||
----------------------------------------
|
||||
/set irc.network.away_check 5
|
||||
/set irc.network.away_check_max_nicks 25
|
||||
----------------------------------------
|
||||
|
||||
|
||||
[[highlight_notification]]
|
||||
Jak mogę zostać powiadomiony, jeśli ktoś będzię chciał przyciągnąć moją uwagę na kanale?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
W zależnośći od wersji WeeChat:
|
||||
|
||||
* dla WeeChat < = 0.2.6: użyj skryptu 'sound.pl' (dostępny na stronie ze
|
||||
skryptami), następnie ustawienie komendy systemowej (do odtworzenia dźwięku,
|
||||
wyświetlenia wiadomości, ..) za pomocą komendy: +
|
||||
`/setp perl.sound.cmd_highlight = "/ścieżka/do/komendy argumenty"`
|
||||
* dla WeeChat > = 0.3.x: użyj skryptu 'launcher.pl' (dostępny na stronie ze
|
||||
skryptami), następnie ustawienie komendy systemowej (do odtworzenia dźwięku,
|
||||
wyświetlenia wiadomości, ..) za pomocą komendy: +
|
||||
`/set plugins.var.perl.launcher.signal.weechat_highlight "/ścieżka/do/komendy argumenty"`
|
||||
|
||||
Istnieje wiele innych skryptów do powiadomień, zajrzyj na stronę wtyczek/skryptów:
|
||||
http://www.weechat.org/scripts
|
||||
|
||||
|
||||
[[plugins_scripts]]
|
||||
Pluginów / skrypty
|
||||
------------------
|
||||
|
||||
|
||||
[[openbsd_plugins]]
|
||||
Używam OpenBSD, WeeChat nie ładuje żadnych pluginów, co jest nie tak?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Pod OpenBSD, nazwy wtyczek kończą się ".so.0.0" (".so" dla Linuksa).
|
||||
|
||||
Musisz ustawić:
|
||||
|
||||
* dla WeeChat < = 0.2.6: +
|
||||
`/set plugins_extension = ".so.0.0"`
|
||||
* dla WeeChat > = 0.3.x: +
|
||||
`/set weechat.plugin.extension ".so.0.0"`
|
||||
|
||||
Następnie: `/plugin autoload`.
|
||||
|
||||
|
||||
[[load_scripts]]
|
||||
Jak załadować skrypty Perl/Python/Ruby/Lua/Tcl? Czy skrypty są kompatybilne z innymi klientami IRC?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Możesz użyć komend `/perl`, `/python`, `/ruby`, `/lua` oraz `/tcl`, aby załadować
|
||||
skrypt (domyślna lokalizacja skryptów to '~/.weechat/<język>/').
|
||||
|
||||
Skrypty nie są kompatybilne z innymi klientami IRC.
|
||||
|
||||
Uwagi:
|
||||
|
||||
* skrypty w '~/.weechat/<język>/autoload/' są automatycznie ładowane przy
|
||||
uruchomieniu WeeChat.
|
||||
* wtyczka 'tcl' jest dostępna dla wersji > = 0.3.0.
|
||||
|
||||
|
||||
[[settings]]
|
||||
Ustawienia
|
||||
----------
|
||||
|
||||
|
||||
[[memory_usage]]
|
||||
Jak mogę zmusić WeeChat do zużywania mniejszej ilości pamięci?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
W celu zmniejszenia używanej pamięci możesz zastosować się do poniższych rad:
|
||||
|
||||
* używać najnowsze stabilnej wersji (powinna mieć mniej wycieków pamięci
|
||||
niż starsze wersje)
|
||||
* nie ładować nieużywanych pluginów, np: aspell, fifo, logger, perl, python,
|
||||
ruby, lua, tcl, xfer (używana do DCC)
|
||||
* ładować tylko naprawde używane skrypty
|
||||
* zmniejszyć wartość opcji 'weechat.history.max_lines' (ilość lini trzymanych
|
||||
w pamięci dla każdego bufora)
|
||||
* zmniejszyć wartość opcji 'weechat.history.max_commands' (ilość komend
|
||||
użytkownika trzymanych w pamięci)
|
||||
|
||||
|
||||
[[development]]
|
||||
Rozwój
|
||||
------
|
||||
|
||||
@@ -348,6 +447,7 @@ Jest wiele zadań do zrobienia (testowanie, kod, dokumentacja, ...)
|
||||
Skontaktuj się z nami na IRC lub mailowo, szczegóły:
|
||||
http://www.weechat.org/about
|
||||
|
||||
|
||||
[[donate]]
|
||||
Czy mogę dac pieniądze albo inne rzeczy deweloperą WeeChat?
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -66,7 +66,7 @@ na liście "irc" oraz inne wtyczki.
|
||||
|
||||
|
||||
[[create_irc_server]]
|
||||
Tworzenie serwera IRC
|
||||
Tworzenie serwera IRC
|
||||
---------------------
|
||||
|
||||
Możesz dodać serwer IRC za pomocą komendy `/server`, na przykład:
|
||||
@@ -164,7 +164,7 @@ Zarządzanie buforami/oknami
|
||||
Bufor jest to element łączący wtyczkę z numerem, kategorią,
|
||||
oraz nazwą. Zawiera on dane wyświetlane na ekranie.
|
||||
|
||||
Okno jest widokiem na bufor. Domyślnie jedno okno wyświetla jeden bufor.
|
||||
Okno jest widokiem na bufor. Domyślnie jedno okno wyświetla jeden bufor.
|
||||
Jeśli podzielisz ekran, ujrzysz wiele okien z wieloma buforami jednocześnie.
|
||||
|
||||
Komendy do zarządzania buforami i oknami:
|
||||
@@ -223,7 +223,7 @@ dokumentacji WeeChat, aby się dowiedzieć jak ładowac/wyładowywać wtyczki lu
|
||||
skrypty).
|
||||
|
||||
Niektóre pluginy pozwalają na używanie skryptów w WeeChat (w wielu językach jak Perl,
|
||||
Python, Ruby, Lua oraz Tcl). Te wtyczki muszą być załadowane za pomoca komendy
|
||||
Python, Ruby, Lua oraz Tcl). Te wtyczki muszą być załadowane za pomoca komendy
|
||||
`/plugin`, dostarczają one komendy jak `/perl`, używane do ładowania skryptów.
|
||||
|
||||
Wiele zewnętrznych wtyczek/skryptów (od społeczności) jest dostępnych dla
|
||||
|
||||
@@ -15,8 +15,8 @@ niedoceniane. Kiedy nowe funkcje są implementowane, powinny zostać przetestowa
|
||||
ale dla wielu z nich jest za dużo możliwości użycia lub nie są łątwe do
|
||||
zasymulowania dlatego programiści nie są wstanie sprawdzić ich wszystkich.
|
||||
|
||||
Na przykład: Powszechnie znana wtyczka od kodowania została wprowadzona w
|
||||
WeeChat 0.2.2: żaden z nas (programistów, współpracowników, testerów) nie
|
||||
Na przykład: Powszechnie znana wtyczka od kodowania została wprowadzona w
|
||||
WeeChat 0.2.2: żaden z nas (programistów, współpracowników, testerów) nie
|
||||
używał kanałów ze znakami narodowymi w nazwach, kiedy wersja 0.2.2 została
|
||||
wypuszczona zostaliśmy zalani użytkownikami z Rosji obwiniającymi nas.
|
||||
Gdy będziemy mieli więcej testrów taka sytuacja nie powinna się już zdarzyć
|
||||
@@ -123,7 +123,7 @@ Komenda to:
|
||||
|
||||
~/weechat-git/bin/weechat-curses --dir ~/.weechat-dev
|
||||
|
||||
Jeśli nadal nie śpisz powinieneś ujrzeć znajomy interfejs i chwalić się
|
||||
Jeśli nadal nie śpisz powinieneś ujrzeć znajomy interfejs i chwalić się
|
||||
z posiadania najnowszej możliwej wersji WeeChat. ;)
|
||||
|
||||
Teraz jeśli zaobserwujesz dziwne zachowanie (może sprawiać problemy, ulec awari
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@
|
||||
docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_quickstart.ru.txt
|
||||
weechat_quickstart.ru.txt
|
||||
|
||||
all-local: weechat_quickstart.ru.html
|
||||
|
||||
|
||||
@@ -13,14 +13,14 @@ FlashCode <flashcode@flashtux.org>
|
||||
|
||||
|
||||
[[help_options]]
|
||||
помощь \ настройки
|
||||
помощь \ настройки
|
||||
------------------
|
||||
|
||||
В WeeChat есть справка по командам, просто наберите /help
|
||||
Что бы получить справку по определенной команде, наберите `/help команда`
|
||||
|
||||
Для задания настроек используйте `/set config.section.option value`
|
||||
(где `config` имя конфигурации (`weechat` или имя плагина для
|
||||
(где `config` имя конфигурации (`weechat` или имя плагина для
|
||||
настройки), `section` группа в которой настройка и `option` как
|
||||
название настройки)
|
||||
|
||||
@@ -43,7 +43,7 @@ WeeChat после изменений в настройках)
|
||||
Вы можете получить справку по любой опции используя `/help`, на пример
|
||||
`/help weechat.look.highlight`.
|
||||
|
||||
Все настройки WeeChat сохраняются при выходе (или используя команду `/save`
|
||||
Все настройки WeeChat сохраняются при выходе (или используя команду `/save`
|
||||
для немедленного сохранения)
|
||||
|
||||
Вы можете редактировать файлы кофигурации (*.conf) в ручную, и применять параметры
|
||||
@@ -86,7 +86,7 @@ WeeChat использует стандартные значения для вс
|
||||
Если определено значение опции(не "null"), WeeChat будет использовать его.
|
||||
Иначе используется стандартное значение ("irc.server_default.xxx").
|
||||
|
||||
На пример: есть ники по умолчанию (базируются на логине un*x системы), и
|
||||
На пример: есть ники по умолчанию (базируются на логине un*x системы), и
|
||||
вы можете переназначить их для сервера oftc используя команду:
|
||||
|
||||
/set irc.server.oftc.nicks "mynick1,mynick2,mynick3,mynick4,mynick5"
|
||||
@@ -129,11 +129,11 @@ WeeChat использует стандартные значения для вс
|
||||
/connect oftc
|
||||
|
||||
[NOTE]
|
||||
Эту команду можно использовать для подключения к серверу без его
|
||||
создания (должен ли я напомнить что вы можете посмотреть справку набрав
|
||||
Эту команду можно использовать для подключения к серверу без его
|
||||
создания (должен ли я напомнить что вы можете посмотреть справку набрав
|
||||
`/help connect`?)
|
||||
|
||||
По умолчанию, буфер сервера совмещен с буфером WeeChat. Для
|
||||
По умолчанию, буфер сервера совмещен с буфером WeeChat. Для
|
||||
переключения между ними вы можете использовать Ctrl-X,
|
||||
|
||||
Можно отключить это совмещение, что бы получить раздельные
|
||||
@@ -165,7 +165,7 @@ WeeChat использует стандартные значения для вс
|
||||
|
||||
Окно выводит содержимое буфера. По умолчанию, создается одно
|
||||
окно с одним буфером. Если разделить окно, вы можете видеть
|
||||
много буферов одновременно.
|
||||
много буферов одновременно.
|
||||
|
||||
Команды для управления буферами и окнами:
|
||||
|
||||
@@ -197,7 +197,7 @@ WeeChat использует стандартные значения для вс
|
||||
|
||||
Исходя из ваших нужд, и клавиатуры, вы можете переназначить любые клавиши
|
||||
исползуя команду `/key`.
|
||||
Полезная комбинация для поиска клавшиных кодов meta-k (alt-k)
|
||||
Полезная комбинация для поиска клавшиных кодов meta-k (alt-k)
|
||||
|
||||
На пример, что бы назначить на meta-y (alt-y) команду `/buffer close`:
|
||||
|
||||
@@ -225,7 +225,7 @@ WeeChat использует стандартные значения для вс
|
||||
(Perl, Python, Lua, Ruby, Tcl). Эти плагины должны быть загружены командой
|
||||
`/plugin`. Они добавляют такие команды как `/perl` для загрузки скриптов.
|
||||
|
||||
Много пользовательских скриптов/плагинов доступно для
|
||||
Много пользовательских скриптов/плагинов доступно для
|
||||
WeeChat: http://www.weechat.org/scripts
|
||||
|
||||
Простейший путь для установки скриптов - исползовать скрипт 'weeget.py':
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.TH WEECHAT 1 "January 2010" "FlashCode"
|
||||
.TH WEECHAT 1 "April 2010" "FlashCode"
|
||||
|
||||
.SH NAME
|
||||
weechat-curses \- Wee Enhanced Environment for Chat (Curses version)
|
||||
@@ -43,6 +43,10 @@ display program license
|
||||
.br
|
||||
don't load any plugin at startup
|
||||
.TP
|
||||
.B \-s, \-\-no\-script
|
||||
.br
|
||||
don't load any script at startup
|
||||
.TP
|
||||
.B \-v, \-\-version
|
||||
.br
|
||||
display WeeChat version
|
||||
|
||||
+3
-4
@@ -25,7 +25,6 @@ SET(PO_FILES
|
||||
it.po
|
||||
)
|
||||
|
||||
SET(COPYRIGHT_HOLDER "WeeChat Team")
|
||||
SET(BUGS_ADDRESS "flashcode@flashtux.org")
|
||||
SET(POT_FILE ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pot)
|
||||
|
||||
@@ -50,13 +49,12 @@ IF(XGETTEXT_EXECUTABLE AND MSGMERGE_EXECUTABLE AND MSGFMT_EXECUTABLE)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${POT_FILE}
|
||||
COMMAND ${XGETTEXT_EXECUTABLE}
|
||||
ARGS -o ${POT_FILE} --keyword='_' --keyword='weechat_gettext' --keyword='N_' --keyword='NG_:1,2' --keyword='weechat_ngettext:1,2' --no-location --directory=${CMAKE_SOURCE_DIR} --omit-header --msgid-bugs-address=${BUGS_ADDRESS} --copyright-holder=${COPYRIGHT_HOLDER} ${SRC_FILES}
|
||||
ARGS -o ${POT_FILE} --add-comments='TRANSLATORS:' --keyword='_' --keyword='weechat_gettext' --keyword='N_' --keyword='NG_:1,2' --keyword='weechat_ngettext:1,2' --no-location --directory=${CMAKE_SOURCE_DIR} --msgid-bugs-address=${BUGS_ADDRESS} --copyright-holder='' ${SRC_FILES}
|
||||
DEPENDS ${POT_DEPENDS}
|
||||
COMMENT "Generating PO template file"
|
||||
)
|
||||
|
||||
# Update .po files and compile them to binary .gmo files
|
||||
|
||||
SET(GMO_FILES)
|
||||
FOREACH(pofile ${PO_FILES})
|
||||
GET_FILENAME_COMPONENT(polang ${pofile} NAME_WE)
|
||||
@@ -64,8 +62,9 @@ IF(XGETTEXT_EXECUTABLE AND MSGMERGE_EXECUTABLE AND MSGFMT_EXECUTABLE)
|
||||
SET(gmofile ${CMAKE_CURRENT_BINARY_DIR}/${polang}.gmo)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${gmofile}
|
||||
COMMAND ${MSGMERGE_EXECUTABLE} ARGS --quiet -s -o ${CMAKE_CURRENT_BINARY_DIR}/${pofile} ${CMAKE_CURRENT_SOURCE_DIR}/${pofile} ${POT_FILE}
|
||||
COMMAND ${MSGMERGE_EXECUTABLE} ARGS --quiet -o ${CMAKE_CURRENT_BINARY_DIR}/${pofile} ${CMAKE_CURRENT_SOURCE_DIR}/${pofile} ${POT_FILE}
|
||||
COMMAND ${MSGFMT_EXECUTABLE} ARGS -o ${gmofile} ${CMAKE_CURRENT_BINARY_DIR}/${pofile}
|
||||
COMMAND ${MSGFMT_EXECUTABLE} ARGS -c --statistics --output-file=/dev/null ${CMAKE_CURRENT_BINARY_DIR}/${pofile}
|
||||
DEPENDS ${POT_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${pofile}
|
||||
COMMENT "Compiling locales (${polang})"
|
||||
)
|
||||
|
||||
+1
-1
@@ -2,6 +2,6 @@ DOMAIN = $(PACKAGE)
|
||||
subdir = po
|
||||
top_builddir = ..
|
||||
XGETTEXT_OPTIONS = --keyword=_ --keyword=weechat_gettext --keyword=N_ --keyword=NG_:1,2 --keyword=weechat_ngettext:1,2 --no-location
|
||||
COPYRIGHT_HOLDER =
|
||||
COPYRIGHT_HOLDER =
|
||||
EXTRA_LOCALE_CATEGORIES =
|
||||
MSGID_BUGS_ADDRESS = flashcode@flashtux.org
|
||||
|
||||
@@ -87,6 +87,8 @@
|
||||
./src/gui/wxwidgets/gui-input.c
|
||||
./src/plugins/alias/alias.c
|
||||
./src/plugins/alias/alias.h
|
||||
./src/plugins/alias/alias-config.c
|
||||
./src/plugins/alias/alias-config.h
|
||||
./src/plugins/alias/alias-info.c
|
||||
./src/plugins/alias/alias-info.h
|
||||
./src/plugins/aspell/weechat-aspell.c
|
||||
@@ -139,6 +141,8 @@
|
||||
./src/plugins/irc/irc-protocol.h
|
||||
./src/plugins/irc/irc-raw.c
|
||||
./src/plugins/irc/irc-raw.h
|
||||
./src/plugins/irc/irc-sasl.c
|
||||
./src/plugins/irc/irc-sasl.h
|
||||
./src/plugins/irc/irc-server.c
|
||||
./src/plugins/irc/irc-server.h
|
||||
./src/plugins/logger/logger.c
|
||||
@@ -228,3 +232,4 @@
|
||||
./src/plugins/xfer/xfer-network.h
|
||||
./src/plugins/xfer/xfer-upgrade.c
|
||||
./src/plugins/xfer/xfer-upgrade.h
|
||||
./doc/docgen.pl
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user