1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-24 11:56:38 +02:00

Compare commits

...

91 Commits

Author SHA1 Message Date
Sebastien Helleu 70916a0342 Version 0.3.0 2009-09-06 11:46:49 +02:00
Sebastien Helleu 40f7bbd590 Update german translations 2009-09-06 10:01:09 +02:00
Sebastien Helleu ca3114d2bb Update german quickstart guide 2009-09-05 23:57:08 +02:00
Sebastien Helleu b907f6b3b1 Update spanish translations 2009-09-05 23:46:53 +02:00
Sebastien Helleu 03ea436639 Update list of contributors in doc 2009-09-05 23:23:16 +02:00
Sebastien Helleu ae047756eb Add german quickstart guide 2009-09-05 23:16:51 +02:00
Sebastien Helleu 0ef168d29d Add polish FAQ and tester's guide, update polish quickstart 2009-09-05 21:49:28 +02:00
Sebastien Helleu babf5a8c9b Update polish translations 2009-09-05 16:59:23 +02:00
Sebastien Helleu d8886cdbe6 Add polish quickstart guide 2009-09-05 16:43:16 +02:00
Sebastien Helleu 2bf4163617 Use new WeeChat site, weechat.org 2009-09-05 16:33:01 +02:00
Sebastien Helleu 07d490f045 Update weechat.spec for RPM build 2009-09-04 20:33:48 +02:00
Sebastien Helleu aca9eb02c3 Remove compiler warning in logger plugin (with -O2) 2009-09-04 17:17:32 +02:00
Sebastien Helleu 23f0d7eda7 Update czech translations 2009-09-04 11:43:25 +02:00
Sebastien Helleu a83dd82c90 Fix typos in some messages 2009-09-04 10:41:35 +02:00
Sebastien Helleu 005bf6d311 Fix typo 2009-09-03 17:18:30 +02:00
Sebastien Helleu 8359a09727 Fix tcl plugin compilation with autotools (bug #26481) 2009-09-03 11:26:03 +02:00
Sebastien Helleu 5c4077f184 Fix typo in Plugin API Reference 2009-09-02 16:42:29 +02:00
Sebastien Helleu 6a327227ce Update polish translations 2009-09-02 14:04:44 +02:00
Sebastien Helleu f9b0a50aea Remove unneeded dependencies in debian/control (xsltproc, docbook-xsl, docbook-xml) 2009-09-02 08:06:07 +02:00
Sebastien Helleu b0fe6e7f21 Fix asciidoc min version in debian/control 2009-09-01 11:53:25 +02:00
Sebastien Helleu 6b9cb34a09 Remove compiler warning when NLS is disabled 2009-08-30 16:04:28 +02:00
Sebastien Helleu d2ec2482d6 Add 2 new options: weechat.look.prefix_align_more and weechat.look.prefix_buffer_align_more 2009-08-29 13:06:21 +02:00
Sebastien Helleu 88b65fe3c2 Add new option weechat.look.prefix_buffer_align_max 2009-08-29 10:30:25 +02:00
Sebastien Helleu d0b3d4fffe Update polish translations 2009-08-28 12:30:10 +02:00
Sebastien Helleu db4f20c1f1 Add 2 new completions (irc_server_channels and irc_server_privates), improve completion of command /invite 2009-08-28 11:36:51 +02:00
Sebastien Helleu 02763ca7e7 Fix typo in IRC invite message 2009-08-28 10:09:58 +02:00
Sebastien Helleu ec124e90c7 Update FAQ 2009-08-23 10:56:32 +02:00
Sebastien Helleu 4d002bb4b7 Update spanish translations (thanks to m4v) 2009-08-23 09:35:35 +02:00
Sebastien Helleu 77fa0c4b9e Fix bug with directory separator in logger mask 2009-08-22 19:19:31 +02:00
Sebastien Helleu 2487d8a58e Do not build/install language files if DISABLE_NLS is ON for cmake (bug #27277) 2009-08-18 16:46:41 +02:00
Sebastien Helleu 6fd5448a52 Update translations 2009-08-17 11:34:42 +02:00
Emmanuel Bouthenot a14815bbab Update debian packaging. 2009-08-16 17:31:49 +00:00
Sebastien Helleu 25b9f1d714 Fix bug with special chars in buffers for logger filenames (bug #25721) 2009-08-16 11:28:50 +02:00
Sebastien Helleu 24432e78e0 Fix bug in config files when option name begins with '[' 2009-08-12 10:12:07 +02:00
Sebastien Helleu a7d037d384 Version 0.3.0-rc3 2009-08-11 15:58:18 +02:00
Sebastien Helleu 4b0b0869a4 Add file UPGRADE_0.3, update NEWS 2009-08-10 18:11:02 +02:00
Sebastien Helleu 17a66da648 Update polish translations (thanks to soltys) 2009-08-09 22:55:47 +02:00
Sebastien Helleu 1691b3060c Fix typo: explicitely -> explicitly 2009-08-09 12:19:47 +02:00
Sebastien Helleu 14966acaf2 Remove obsolete option weechat.color.input_nick 2009-08-09 12:16:30 +02:00
Sebastien Helleu 508398f7c5 Add missing files for cmake in packages built by autotools 2009-08-09 10:01:54 +02:00
Sebastien Helleu 36b870f32a Add missing file po/CMakeLists.txt in packages built by autotools 2009-08-09 09:20:40 +02:00
Sebastien Helleu 9508953b8e Fix typo: mispelled -> misspelled 2009-08-06 21:35:12 +02:00
Sebastien Helleu 859f6db87b Fix bug when comparing chars and ignoring case (with some locales) (bug #27190)
There was a problem with some locales like turkish, where upper "i" is "İ".
All IRC commands with "I" inside (JOIN, PRIVMSG, ..) failed with turkish
locale.
2009-08-06 15:08:11 +02:00
Sebastien Helleu acef147775 Fix progress bar display for large xfer/dcc files (more than 2 Gb) 2009-08-05 13:10:09 +02:00
Sebastien Helleu 7d0e5edc9a Fix typo in french FAQ 2009-08-03 16:21:37 +02:00
Sebastien Helleu 9038aef953 Fix charset decoding bug for some IRC messages where both nick and channel are given after command name 2009-08-01 17:46:24 +02:00
Sebastien Helleu 7d25b62665 Fix hotlist bug after /buffer unmerge (bug #27133) 2009-07-29 10:38:45 +02:00
Sebastien Helleu ffdba5b248 Remove check of Tcl_CreateNamespace in cmake build (not used any more) (bug #27119) 2009-07-28 14:16:53 +02:00
Sebastien Helleu b7b4a7093e Set level "message" for IRC notices with channel target 2009-07-28 09:59:54 +02:00
Sebastien Helleu 7e94691333 Allow no argument for command /join when /part was issued on current channel 2009-07-27 13:57:43 +02:00
Sebastien Helleu 3562143b51 Add missing include of stdarg.h 2009-07-24 16:38:04 +02:00
Sebastien Helleu 5563924363 Fix compilation on OpenBSD: rename variables stdout/stderr (patch #6874 from zepard) 2009-07-24 15:14:44 +02:00
Sebastien Helleu 5139fdcf2a Add new option weechat.look.search_text_not_found_alert 2009-07-22 18:07:22 +02:00
Sebastien Helleu 232804f293 Fix and improve replacement of IRC password by stars (patch #6872 from zepard) 2009-07-20 10:18:33 +02:00
Sebastien Helleu 57064f4b1c Allow cursor to be displayed in a root bar 2009-07-14 08:20:40 +02:00
Sebastien Helleu 9839d030a1 Add info about script commands when trying to load a script with /plugin 2009-07-10 23:44:21 +02:00
Sebastien Helleu c9e6b1bb83 Add note about special chars that must be escaped in /help filter 2009-07-09 22:27:39 +02:00
Sebastien Helleu a854e28c3d Remove obsolete option weechat.color.nicklist_separator 2009-07-09 21:25:03 +02:00
Sebastien Helleu 87e9c6476b Open channel/pv near server when no channel/pv is opened (with option irc.look.open_*_near_server) 2009-07-06 20:03:19 +02:00
Sebastien Helleu 00ca4f0d36 Complete command and arguments even if command line starts with double '/' 2009-07-06 10:06:47 +02:00
Sebastien Helleu 05deb6356a Add optional nick in arguments for infolist "irc_nick" (format: "server,#channel,nick") 2009-07-05 11:42:53 +02:00
Sebastien Helleu 12a5b5f82b Add tag "away_info" for lines with info about away in irc plugin 2009-07-04 19:17:18 +02:00
Sebastien Helleu c7ec4233a0 Add note about merged server buffers in quick start guide 2009-07-04 08:54:40 +02:00
Sebastien Helleu 9000bac5b5 Add note about script weeget.py in quick start guide 2009-07-03 18:19:39 +02:00
Sebastien Helleu be4c009dcd Version 0.3.0-rc2 2009-07-03 15:45:25 +02:00
Sebastien Helleu d7f3e59c3e Fix bug when moving group of merged buffers to number 1 2009-07-03 15:30:49 +02:00
Sebastien Helleu 49aa853b00 When IRC nick change is received, do not rename private buffer if it already exists with new nick 2009-06-29 12:31:50 +02:00
Sebastien Helleu 8b45c9b8f0 Fix typos in docs 2009-06-28 20:47:13 +02:00
Sebastien Helleu 2f7a5a4147 Rename function string_explode to string_split 2009-06-28 19:49:32 +02:00
Sebastien Helleu 4a89b4ae59 Add french translation of Scripting Guide 2009-06-28 12:00:16 +02:00
Sebastien Helleu 26919fe58b Add french translation of Plugin API Reference 2009-06-28 00:47:37 +02:00
Sebastien Helleu 23f111329e Strip hostnames in IRC message 353 when uhnames protocol is enabled 2009-06-27 15:07:31 +02:00
Sebastien Helleu e06609c7cd Change default order of items in input bar: move input_paste before input_text 2009-06-27 08:55:40 +02:00
Sebastien Helleu 9fad3f128e Add options irc.look.open_channel/pv_near_server 2009-06-25 10:45:30 +02:00
Sebastien Helleu 42cd890bfb Consider private message as highlight when comparing message level to buffer notify value 2009-06-24 15:35:24 +02:00
Sebastien Helleu 4d60c48f5f Switch to irc raw buffer if it is aleady opened, with /server raw or alt-j + alt-r 2009-06-24 15:04:43 +02:00
Sebastien Helleu 89b7a826c5 Fix display of description when it is NULL (with /help option) 2009-06-23 18:40:49 +02:00
Sebastien Helleu 1b47fdcc4e Add modifier "bar_condition_xxx", used to display/hide bars on some windows with custom condition 2009-06-23 17:15:45 +02:00
Sebastien Helleu cdc5ac77c1 Fix typos in Plugin API reference 2009-06-23 17:03:34 +02:00
Sebastien Helleu 8d87086917 Add new option irc.color.item_channel_modes 2009-06-23 10:08:27 +02:00
Sebastien Helleu 16e741f063 Fix bug with pointer to last read line in merged buffers (can lead to crash) 2009-06-22 11:46:29 +02:00
Sebastien Helleu 9b7ac77a0d Disable layout saving by default 2009-06-21 22:30:50 +02:00
Sebastien Helleu fdcbc8e585 Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/weechat 2009-06-21 14:10:57 +02:00
Sebastien Helleu 76b883f05f Fix bug after /upgrade on buffers with free content (bug #26020) 2009-06-21 14:10:41 +02:00
Sebastien Helleu 679e477abb Fix some memory leaks in command hook (completion templates), buffer closing, partial completion 2009-06-21 12:45:50 +02:00
Sebastien Helleu b698a9ce4a Move partial completion structure to completion structure (it is now specific to buffer) (bug #25556) 2009-06-21 12:19:57 +02:00
Sebastien Helleu d4b572c753 Fix scroll Y in bars (bug #26008) 2009-06-21 11:02:57 +02:00
Sebastien Helleu 271d6a131f Fix problems with /set of some bar options 2009-06-21 00:24:04 +02:00
Sebastien Helleu 911e29cf65 Add missing refresh of bar when changing size with command /set 2009-06-20 23:13:21 +02:00
Sebastien Helleu 95c03734cc Fix minor display bug with read marker (line or dotted line)
Bug is happening when read marker is line or dotted line and that last char
of line is an horizontal line. When new line is added in buffer after read
marker, then last char of read marker line is repeated on next line.
2009-06-20 13:12:03 +02:00
Sebastien Helleu f5b2b2291f Fix command to create irc server in quickstart guide 2009-06-18 22:06:05 +02:00
136 changed files with 16418 additions and 6700 deletions
+1 -1
View File
@@ -7,7 +7,7 @@ Developers
* General code
** FlashCode <flashcode@flashtux.org>
*** Web: http://weechat.flashtux.org/
*** Web: http://www.weechat.org/
*** IRC: 'FlashCode' on irc.freenode.net
+5 -2
View File
@@ -28,7 +28,7 @@ ENDIF(PREFIX)
SET(VERSION_MAJOR "0")
SET(VERSION_MINOR "3")
SET(VERSION_PATCH "0-rc1")
SET(VERSION_PATCH "0")
SET(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
SET(PKG_STRING "${PROJECT_NAME} ${VERSION}")
SET(LIBDIR ${CMAKE_INSTALL_PREFIX}/lib/${PROJECT_NAME})
@@ -59,7 +59,10 @@ OPTION(DISABLE_TCL "Disable Tcl scripting language")
OPTION(DISABLE_XFER "Disable Xfer plugin (file transfer and direct chat)")
OPTION(DISABLE_DOC "Disable Doc")
ADD_SUBDIRECTORY( po )
IF(NOT DISABLE_NLS)
ADD_SUBDIRECTORY( po )
ENDIF(NOT DISABLE_NLS)
ADD_SUBDIRECTORY( src )
ADD_SUBDIRECTORY( doc )
+2 -2
View File
@@ -1,10 +1,10 @@
WeeChat ChangeLog
=================
FlashCode <flashcode@flashtux.org>
v0.3.0-dev, 2009-06-14
v0.3.0, 2009-09-06
Version 0.3.0 (under dev!)
Version 0.3.0 (2009-09-06)
--------------------------
* irc: add irc plugin (replaces old IRC code in core) (task #6217)
+4 -1
View File
@@ -38,9 +38,12 @@ EXTRA_DIST = CMakeLists.txt \
cmake/FindSourcehighlight.cmake \
cmake/FindTCL.cmake \
cmake/makedist.sh.in \
po/CMakeLists.txt \
po/srcfiles.cmake \
weechat.spec \
weechat_icon_32.png \
weechat.pc.in
weechat.pc.in \
UPGRADE_0.3
ACLOCAL_AMFLAGS = -I m4
+8
View File
@@ -1,6 +1,14 @@
WeeChat News
============
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.
FlashCode, 2009-06-13::
WeeChat 0.2.6.3 released.
+
+1 -1
View File
@@ -13,7 +13,7 @@ Features
* chat client with multi-protocols/servers connection
* many GUI (curses, Gtk, Qt) (1)
* small, fast and very light
* customizable and extensible with plugins (C, Perl, Python, Ruby, Lua)
* customizable and extensible with plugins (C, Perl, Python, Ruby, Lua, Tcl)
* compliant with IRC RFCs 1459, 2810, 2811, 2812 and 2813
* developed from scratch
* multi-platform (GNU/Linux, *BSD, Mac OS X, QNX, Windows & other) (2)
+83
View File
@@ -0,0 +1,83 @@
WeeChat Upgrade to 0.3.x
========================
FlashCode <flashcode@flashtux.org>
v0.3.0, 2009-09-06
This document lists major changes introduced in version 0.3.0 and not compatible
with versions 0.2.x.
Upgrade to version 0.3.x
------------------------
It is *NOT POSSIBLE* to use command `/upgrade` from a version 0.2.x to 0.3.x.
You have to quit your old WeeChat, then run new version.
Of course, command `/upgrade` is working fine once you'll be with 0.3.x to
upgrade to another 0.3.x (unless this command is broken again, please look
at release notes (file 'NEWS') for version you're currently installing).
Configuration files
-------------------
Changes with previous versions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
New configuration files (`*.conf`) are not compatible with old files (`*.rc`).
Name of options is similar to old versions, but there is now one configuration
file by plugin, and one file for WeeChat core.
There is *no automatic conversion* for your old options to new configuration files,
so you'll have to setup again your IRC servers and all other options.
In WeeChat, option names are now with format: `plugin.section.option` (for
WeeChat core, `plugin` is `weechat`).
Examples:
* WeeChat options: `weechat.xxx.yyy`
* IRC options: `irc.xxx.yyy`
You should read quickstart guide to be familiar with basic commands and syntax
(some commands like `/server` have changed): http://www.weechat.org/doc
List of configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~
* Old configuration files:
** weechat.rc
** plugins.rc
* New configuration files are now (with default plugins):
** weechat.conf
** alias.conf
** aspell.conf
** charset.conf
** irc.conf
** jabber.conf
** logger.conf
** plugins.conf
** relay.conf
** xfer.conf
Plugin API
----------
Plugin API has been rewritten and is not compatible with previous versions.
Accordingly, scripts and plugins must have been designed for version 0.3.x to
be loaded into WeeChat.
There is no migration script today to convert old script to new API.
Therefore, if you plan to use old script, you'll have to wait for new version
or you can convert script yourself and send us new version ;)
You can download scripts for new API on plugins page:
http://www.weechat.org/plugins
More information about new API is available on wiki:
http://wiki.flashtux.org/wiki/WeeChat_0.3.0
and http://wiki.flashtux.org/wiki/WeeChat_0.3.0_API
+30 -46
View File
@@ -18,10 +18,10 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.56)
AC_INIT(WeeChat, 0.3.0-rc1, flashcode@flashtux.org)
AC_INIT(WeeChat, 0.3.0, flashcode@flashtux.org)
AC_CONFIG_SRCDIR([src/core/weechat.c])
AM_CONFIG_HEADER(config.h)
AM_INIT_AUTOMAKE([weechat], [0.3.0-rc1])
AM_INIT_AUTOMAKE([weechat], [0.3.0])
# Checks for programs
AC_PROG_CC
@@ -155,7 +155,7 @@ if test "$LIBDL_FOUND" != "yes"; then
fi
if test "$LIBDL_FOUND" != "yes"; then
AC_MSG_ERROR([
*** "dl" library (dynamic library loader) couldn't be found in your system.
*** "dl" library (dynamic library loader) couldn't be found on your system.
*** Try to install it with your software package manager.])
fi
AC_SUBST(PLUGINS_LFLAGS)
@@ -266,7 +266,7 @@ fi
if test "x$iconv_found" = "xno" ; then
AC_MSG_ERROR([
*** Iconv headers and/or libraries couldn't be found in your system.
*** Iconv headers and/or libraries couldn't be found on your system.
*** Try to install them with your software package manager.
*** WeeChat can't be built without Iconv support.])
fi
@@ -308,7 +308,7 @@ if test "x$enable_aspell" = "xyes" ; then
if test "x$ac_found_aspell_header" = "xno" -o "x$ac_found_aspell_lib" = "xno" ; then
AC_MSG_RESULT(no)
AC_MSG_WARN([
*** Aspell headers and/or libraries couldn't be found in your system.
*** Aspell headers and/or libraries couldn't be found on your system.
*** Try to install them with your software package manager.
*** WeeChat will be built without Aspell support.])
enable_aspell="no"
@@ -424,7 +424,7 @@ if test "x$enable_perl" = "xyes" ; then
AC_MSG_RESULT(found)
else
AC_MSG_WARN([
*** Perl library couldn't be found in your system.
*** Perl library couldn't be found on your system.
*** Try to install it with your software package manager.
*** WeeChat will be built without Perl support.])
enable_perl="no"
@@ -432,7 +432,7 @@ if test "x$enable_perl" = "xyes" ; then
fi
else
AC_MSG_WARN([
*** Perl headers couldn't be found in your system.
*** Perl headers couldn't be found on your system.
*** Try to install it with your software package manager.
*** WeeChat will be built without Perl support.])
enable_perl="no"
@@ -485,7 +485,7 @@ if test "x$enable_python" = "xyes" ; then
AC_MSG_RESULT(found)
else
AC_MSG_WARN([
*** Python library couldn't be found in 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"
@@ -493,7 +493,7 @@ if test "x$enable_python" = "xyes" ; then
fi
else
AC_MSG_WARN([
*** Python header files couldn't be found in your system.
*** Python header files couldn't be found on your system.
*** Try to install them with your software package manager.
*** WeeChat will be built without Python support.])
enable_python="no"
@@ -531,7 +531,7 @@ if test "x$enable_ruby" = "xyes" ; then
RUBY_CFLAGS="-I$RUBY_INCLUDE"
else
AC_MSG_WARN([
*** Ruby header files couldn't be found in your system.
*** Ruby header files couldn't be found on your system.
*** Try to install them with your software package manager.
*** WeeChat will be built without Ruby support.])
enable_ruby="no"
@@ -650,7 +650,7 @@ if test "x$enable_lua" = "xyes" ; then
if test "x$LUA_TEST" != "x0" ; then
AC_MSG_RESULT(no)
AC_MSG_WARN([
*** Lua (>=5.0) headers and/or librairies couldn't be found in your system.
*** Lua (>=5.0) headers and/or librairies couldn't be found on your system.
*** Try to install liblua, liblualib and liblua-dev with your software package manager.
*** WeeChat will be built without Lua support.])
enable_lua="no"
@@ -673,49 +673,31 @@ if test "x$enable_lua" = "xyes" ; then
fi
# --------------------------------- tcl -------------------------------------
TCL_VERSION=
if test "x$enable_tcl" = "xyes" ; then
enable_plugins="yes"
AC_PATH_PROGS(TCL, tclsh tclsh8.5 tclsh8.4)
if test -z $TCL ; then
AC_MSG_CHECKING(for tclConfig.sh)
tcl_found="no"
tcl_dirs="/lib /usr/lib /usr/tcl/lib /usr/lib/tcl8.5 /usr/lib/tcl8.4 /usr/lib/tcl8.3 /usr/local/lib /usr/local/tcl-8.5/lib /usr/local/tcl-8.4/lib /usr/local/tcl-8.3/lib /usr/local/tcl/lib /opt/lib"
for tcl_dir in $tcl_dirs ; do
if test -f ${tcl_dir}/tclConfig.sh ; then
. ${tcl_dir}/tclConfig.sh
TCL_CFLAGS="-I${TCL_PREFIX}/include $TCL_INCLUDE_SPEC"
TCL_LFLAGS="$TCL_LIB_SPEC $TCL_LIBS"
tcl_found="yes"
AC_MSG_RESULT(${tcl_dir}/tclConfig.sh)
break
fi
done
if test "x$tcl_found" = "xno" ; then
AC_MSG_WARN([
*** Tcl must be installed on your system but tcl interpreter couldn't be found in path.
*** Please check that tclsh is in path, or install it with your software package manager.
*** Script tclConfig.sh couldn't be found on your system.
*** WeeChat will be built without Tcl support.])
enable_tcl="no"
not_found="$not_found tcl"
else
TCL_VERSION=`echo 'puts $tcl_version' | $TCL`
TCL_PATCHLEVEL=`echo 'puts $tcl_patchLevel' | $TCL`
AC_MSG_CHECKING(for Tcl headers files)
TCL_HEADER_TEST=`TT=tcltest.c ; echo "#include <tcl.h>" > $TT; echo "int main() { return 0; }" >> $TT ; $CC -Wall $TT -o $TT.out 1>/dev/null 2>&1; echo $?; rm -f $TT $TT.out 1>/dev/null 2>&1`
if test "x$TCL_HEADER_TEST" = "x0" ; then
TCL_CFLAGS="-fPIC"
AC_MSG_RESULT(found)
AC_MSG_CHECKING(for Tcl library)
TCL_LIB_TEST=`TT=tcltest.c ; echo "int main() { return 0; }" > $TT ; $CC -Wall $TT -o $TT.out -ltcl$TCL_VERSION 1>/dev/null 2>&1; echo $?; rm -f $TT $TT.out 1>/dev/null 2>&1`
if test "x$TCL_LIB_TEST" = "x0" ; then
TCL_LFLAGS="-ltcl$TCL_VERSION -ldl -export-dynamic"
AC_MSG_RESULT(found)
else
AC_MSG_WARN([
*** Tcl library couldn't be found in your system.
*** Try to install it with your software package manager.
*** WeeChat will be built without Tcl support.])
enable_tcl="no"
not_found="$not_found tcl"
fi
else
AC_MSG_WARN([
*** Tcl headers couldn't be found in your system.
*** Try to install it with your software package manager.
*** WeeChat will be built without Tcl support.])
enable_tcl="no"
not_found="$not_found tcl"
fi
fi
fi
@@ -957,6 +939,8 @@ AC_OUTPUT([Makefile
doc/Makefile
doc/en/Makefile
doc/fr/Makefile
doc/pl/Makefile
doc/de/Makefile
src/Makefile
src/core/Makefile
src/plugins/Makefile
@@ -1045,7 +1029,7 @@ if test "x$enable_lua" = "xyes"; then
listplugins="$listplugins lua($LUA_VERSION)"
fi
if test "x$enable_tcl" = "xyes"; then
listplugins="$listplugins tcl($TCL_PATCHLEVEL)"
listplugins="$listplugins tcl($TCL_VERSION)"
fi
if test "x$enable_xfer" = "xyes"; then
listplugins="$listplugins xfer"
Vendored
+7 -5
View File
@@ -1,7 +1,9 @@
weechat (0.1.6-1) unstable; urgency=low
weechat (0.3.0~rc3-1) experimental; urgency=low
* This release introduces some incompatible changes with old scripts
and locale support, you can read the upstream NEWS file for more
information.
This release introduces major changes. Large part of code was
rewritten without keeping compatibility with older versions.
-- Julien Louis <ptitlouis@sysif.net> Fri, 11 Nov 2005 20:45:46 +0100
Please refer to the file /usr/share/doc/weechat-core/UPGRADE_0.3
for more informations on upgrade from a version 0.2.x to 0.3.x.
-- Emmanuel Bouthenot <kolter@openics.org> Sun, 09 Aug 2009 14:38:50 +0000
+56 -12
View File
@@ -1,20 +1,64 @@
weechat (0.3.0-1) experimental; urgency=low
weechat (0.3.0~rc3-1) experimental; urgency=low
* New (major) upstream release.
- Fix the excessive number of wakeups (Closes: #461945)
* Remove patches (merged upstream).
* Update debian/copyright: add new copyright holder.
* Packaging changes:
- Drop weechat-common
- Add weechat-doc (Documentation)
- Add weechat-core (locales files, essential plugins)
- Add weechat-dbg (gdb debugging symbols)
- Add weechat-dev (plugins developement files)
* Adjust Build-Depends for new tcl plugin (update debian/copyright).
* Remove quilt from Build-Depends (patches merged upstream).
* Switch packaging from cdbs to plain debhelper.
- Drop weechat-common
- Add weechat-doc (Documentation)
- Add weechat-core (locales files, essential plugins)
- Add weechat-dev (plugins development files)
- Add weechat-dbg (gdb debugging symbols)
* Switch packaging from cdbs to debhelper 7.
* Update packages descriptions.
* Add a lintian-override against manpage line wrapping error.
* Update Standards-Version to 3.8.2.
* Add file UPGRADE_0.3 to doc files.
* Update debian/NEWS about major changes in this release.
-- Emmanuel Bouthenot <kolter@openics.org> Fri, 08 May 2009 13:36:39 +0000
-- Emmanuel Bouthenot <kolter@openics.org> Sun, 09 Aug 2009 06:42:45 +0000
weechat (0.2.6.3-1) unstable; urgency=low
* New upstream release
- drop the usage of the deprecated libgnutls-config script to detect
gnutls (Closes: #529912).
-- Emmanuel Bouthenot <kolter@openics.org> Sat, 13 Jun 2009 21:47:56 +0000
weechat (0.2.6.2-1) unstable; urgency=low
* New upstream release
* Add a patch which fix typos in aspell plugin.
* Refresh patch multiple_ip_servers according to the new upstream release.
-- Emmanuel Bouthenot <kolter@openics.org> Sun, 19 Apr 2009 10:23:26 +0000
weechat (0.2.6.1-1) unstable; urgency=low
* New upstream release which includes a fix against a possible remote
Denial of Service (crash) while receiving messages with special chars
(Closes: #519940).
* Refresh patch multiple_ip_servers according to the new upstream release.
* Update Standards-Version to 3.8.1.
-- Emmanuel Bouthenot <kolter@openics.org> Mon, 16 Mar 2009 13:18:29 +0000
weechat (0.2.6-3) unstable; urgency=low
* Add a patch to make weechat try to connect other server IPs
when the first one failed. Thanks to Lionel Elie Mamane for
his patch (Closes: #498610).
* Rename patch 01_perlembed_init_macros to perlembed_init_macros.
* Update debian/control:
- add ${misc:Depends}
- update descriptions
* Update debian/copyright about debian packaging.
* Add Vcs-Browser and Vcs-Git fields in debian/control.
* Add DM-Upload-Allowed field.
-- Emmanuel Bouthenot <kolter@openics.org> Sat, 21 Feb 2009 18:34:08 +0000
weechat (0.2.6-2) unstable; urgency=low
@@ -28,14 +72,14 @@ weechat (0.2.6-2) unstable; urgency=low
* Reformat NEWS file to avoid lintian warnings.
* Fix typos in control file.
-- Emmanuel Bouthenot <kolter@openics.org> Sun, 30 Nov 2008 16:38:54 +0100
-- Emmanuel Bouthenot <kolter@openics.org> Sun, 07 Sep 2008 19:39:42 +0000
weechat (0.2.6-1) unstable; urgency=low
* New Upstream Version
* Switch to GPLv3 (update copyright)
* Update menu entry
-- Emmanuel Bouthenot <kolter@openics.org> Thu, 06 Sep 2007 20:10:26 +0200
weechat (0.2.5-1) unstable; urgency=low
+15 -11
View File
@@ -2,12 +2,15 @@ Source: weechat
Section: net
Priority: optional
Maintainer: Emmanuel Bouthenot <kolter@openics.org>
Build-Depends-Indep: xsltproc, docbook-xsl, docbook-xml
Build-Depends: debhelper (>= 7.0.50), cmake, libncursesw5-dev,
ruby, ruby1.8-dev, libperl-dev, python-dev, libaspell-dev, liblua5.1-0-dev,
tcl-dev, libgnutls-dev, dpkg-dev (>= 1.13.19), pkg-config
Standards-Version: 3.8.1
Homepage: http://weechat.flashtux.org/
tcl-dev, libgnutls-dev, dpkg-dev (>= 1.13.19), pkg-config, asciidoc (>= 8.4),
source-highlight
Standards-Version: 3.8.2
Homepage: http://www.weechat.org/
Vcs-Git: git://git.debian.org/users/kolter-guest/weechat.git
Vcs-Browser: http://git.debian.org/git/users/kolter-guest/weechat.git
DM-Upload-Allowed: yes
Package: weechat
Architecture: all
@@ -27,6 +30,7 @@ Description: Fast, light and extensible chat client
Package: weechat-curses
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends}, weechat-core (= ${binary:Version})
Conflicts: weechat-common
Recommends: weechat-plugins (= ${binary:Version})
Description: Fast, light and extensible chat client - console client
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
@@ -45,30 +49,30 @@ Description: Fast, light and extensible chat client - console client
Package: weechat-core
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends}
Replaces: weechat-common, weechat-plugins (<< 0.3.0)
Suggests: weechat-doc (= ${source:Version})
Conflicts: weechat-common, weechat-plugins (<< 0.3.0)
Description: Fast, light and extensible chat client - core files
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package provides core plugins and locales files for WeeChat. It
currently ships the following plugins: xfer, notify, irc, charset and
currently ships the following plugins: alias, xfer, irc, charset and
logger. It is useless without weechat-curses.
Package: weechat-plugins
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends}, weechat-curses (= ${binary:Version})
Suggests: weechat-scripts
Breaks: weechat-scripts (<= 20090221-1)
Suggests: weechat-scripts (>> 20090221-1)
Description: Fast, light and extensible chat client - plugins
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package provides some plugins to enhance WeeChat. It currently
ships the following plugins:
- Perl, Python, Ruby, Lua, and Tcl scripting.
- Spell checking (thanks to aspell).
- Charsets management
- And many others (Relay, Fifo, ...)
- Perl, Python, Ruby, Lua, and Tcl scripting
- Spell checking (thanks to aspell)
- And many others (Fifo, ...)
Package: weechat-doc
Section: doc
+8 -5
View File
@@ -1,13 +1,12 @@
This package was debianized by FlashCode <flashcode@flashtux.org> on
Sat, 21 May 2005 08:00:00 +0200.
It was downloaded from http://weechat.flashtux.org/download
It was downloaded from http://www.weechat.org/files/src/
Copyright:
(2003) FlashCode <flashcode@flashtux.org>
Emmanuel Bouthenot <kolter@openics.org>
(2008) Dmitry Kobylin <fnfal@academ.tsc.ru> (tcl plugin)
Copyright (C) (2003-2009) FlashCode <flashcode@flashtux.org>
Copyright (C) (2005-2009) Emmanuel Bouthenot <kolter@openics.org>
Copyright (C) (2008-2009) Dmitry Kobylin <fnfal@academ.tsc.ru> (tcl plugin)
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
@@ -17,3 +16,7 @@ your option) any later version.
On Debian systems, the complete text of the GNU General Public
License, Version 3 can be found in the file
/usr/share/common-licenses/GPL-3
Debian packaging (licenced under the GPLv3):
Copyright(C) 2005-2008, Julien Louis <ptitlouis@sysif.net>
Copyright(C) 2008-2009, Emmanuel Bouthenot <kolter@openics.org>
+6 -6
View File
@@ -4,12 +4,12 @@ builddir/Makefile:
mkdir -p builddir
cd builddir && \
cmake .. \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_C_FLAGS="$(CFLAGS)" \
-DCMAKE_LD_FLAGS="-Wl,-z,defs" \
-DCMAKE_CXX_FLAGS="$(CXXFLAGS)" \
-DCMAKE_SKIP_RPATH=ON \
-DCMAKE_VERBOSE_MAKEFILE=ON
-DCMAKE_INSTALL_PREFIX:FILEPATH=/usr \
-DCMAKE_C_FLAGS:STRING="$(CFLAGS)" \
-DCMAKE_LD_FLAGS:STRING="-Wl,-z,defs" \
-DCMAKE_CXX_FLAGS:STRING="$(CXXFLAGS)" \
-DCMAKE_SKIP_RPATH:BOOL=ON \
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
build: build-stamp
build-stamp: builddir/Makefile
+1 -1
View File
@@ -1,2 +1,2 @@
version=2
http://weechat.flashtux.org/download/weechat-(\d.*)\.tar\.bz2
http://www.weechat.org/files/src/weechat-(\d.*)\.tar\.bz2
+1
View File
@@ -1,3 +1,4 @@
AUTHORS
NEWS
README
UPGRADE_0.3
+2
View File
@@ -21,6 +21,8 @@ IF(NOT DISABLE_DOC)
IF(ASCIIDOC_FOUND AND SOURCEHIGHLIGHT_FOUND)
ADD_SUBDIRECTORY( en )
ADD_SUBDIRECTORY( fr )
ADD_SUBDIRECTORY( pl )
ADD_SUBDIRECTORY( de )
ENDIF(ASCIIDOC_FOUND AND SOURCEHIGHLIGHT_FOUND)
ENDIF(NOT DISABLE_DOC)
+1 -1
View File
@@ -14,7 +14,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
SUBDIRS = . en fr
SUBDIRS = . en fr pl de
man_MANS = weechat-curses.1
+26
View File
@@ -0,0 +1,26 @@
# Copyright (c) 2003-2009 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/>.
#
# quickstart
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toc_title='Inhaltsverzeichnis' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.de.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.de.txt
COMMENT "Building weechat_quickstart.de.html"
)
ADD_CUSTOM_TARGET(doc-quickstart-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html DESTINATION share/doc/${PROJECT_NAME})
+37
View File
@@ -0,0 +1,37 @@
# Copyright (c) 2003-2009 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/>.
#
docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
weechat_quickstart.de.txt
all-local: weechat_quickstart.de.html
# quickstart
weechat_quickstart.de.html: weechat_quickstart.de.txt
$(ASCIIDOC) -a toc -a toc_title='Inhaltsverzeichnis' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_quickstart.de.html weechat_quickstart.de.txt
# install docs
install-data-hook:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
$(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
# clean
clean-local:
-rm -f *.html
+265
View File
@@ -0,0 +1,265 @@
WeeChat Quick Start Guide
=========================
FlashCode <flashcode@flashtux.org>
[[start]]
Start von WeeChat
-----------------
Der bevorzugte Terminal-Emulator für X (aber nicht obligatorisch) ist
rxvt-unicode (er hat eine gute Unterstützung für UTF-8 und keine Probleme mit der
Standard Tastaturbelegung).
Starte "weechat-curses" aus Deiner shell.
[[help_options]]
Online-Hilfe / Optionen
-----------------------
WeeChat enthält Hilfetexte für alle Befehle, erreichbar über `/help`.
Um Hilfe zu einen bestimmten Befehl zu bekommen kann man einfach `/help Befehl`
ausführen.
Um Optionen zu setzen benutzt man `/set config.section.option value`.
(dabei ist 'config' der Konfigurationsname ('weechat' für den Kern von weechat,
oder ein Plugin-Name), 'section' ein Abschnitt dieser Konfiguration und 'option'
der Name der Option).
WeeChat benutzt den neuen Wert sofort (*Niemals* muss WeeChat neu gestartet
werden nach dem die Konfiguration geändert wurde).
Du kannst die Option `/set` mit teilweise ausgeschriebenen Namen und dem
Platzhalter "*" am Beginn oder Ende verwenden um alle Optionen anzuzeigen, die
die Zeichenkette enthalten.
Zum Beispiel:
`/set`::
Anzeige aller Optionen (WeeChat und Plugins)
`/set weechat.*`::
Anzeige der WeeChat Optionen
`/set irc.*`::
Anzeige der Optionen des IRC-Plugins
Du kannst mit `/help` Hilfe für Optionen auflisten lassen, z.B.:
`/help weechat.look.highlight`.
Beim beenden von WeeChat werden alle Einstellungen gespeichert (mittels `/save`
kann das Schreiben der Optionen erzwungen werden).
Konfigurations-Dateien (*.conf) können auch per Hand editiert und mit dem Befehl
`/reload` neu eingelesen werden (falls man z.B. den `/set` Befehl nicht
verwenden möchte).
[[core_vs_plugins]]
Kern (Core) vs Plugins
----------------------
Der Kern (core) von WeeChat ist ausschließlich dazu da, Daten auf dem Bildschirm
darzustellen um mit dem Benutzer zu interagieren, dies bedeutet, WeeChat an sich
-also nur WeeChat core- ohne jegliche Plugins ist unbrauchbar.
(an die treuen User: IRC war ein Teil des Kerns bei Versionen <= 0.2.6)
Alle Netzwerkprotokolle, z.B. IRC, werden als separates Plugin bereit gestellt.
Benutze den Befehl `/plugin` um alle Plugins aufzulisten, "irc" sowie andere
Plugins sollten aufgelistet werden.
[[create_irc_server]]
Einen IRC-Server erstellen
--------------------------
Du kannst einen IRC-Server mit dem Befehl `/server` hinzufügen, z.B.:
/server add oftc irc.oftc.org/6667
Wie immer, wenn Du nicht mehr weiter weißt, kannst Du mit `/help server` Hilfe
erlangen.
[[irc_server_options]]
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.*".
Für jede Server-Option benutzt WeeChat den entsprechend gesetzten Wert - falls
definiert (nicht "null"). Andernfalls verwendet WeeChat Vorgabewerte
("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
überschrieben werden:
/set irc.server.oftc.nicks "mynick1,mynick2,mynick3,mynick4,mynick5"
Um den User-Namen und wirklichen Namen zu setzen:
/set irc.server.oftc.username "Mein User-Name"
/set irc.server.oftc.realname "Mein wirklicher Name"
Aktivieren des automatischen Verbindens mit dem Server beim Start von WeeChat:
/set irc.server.oftc.autoconnect on
Um einen Befehl nach der Verbindung zum Server auszuführen, z.B. identifizieren
beim nickserv:
/set irc.server.oftc.command "/msg nickserv identify xxxxxx"
Hinweis: Mehrere Befehle können mittels ';' (Semikolon) getrennt werden.
Um ein auto-join (automatisches 'betreten') von Channels (Räumen) nach der
Verbindung zum Server zu erreichen:
/set irc.server.oftc.autojoin "#channel1,#channel2"
Um einen Wert der Server-Optionen zu entfernen und stattdessen wieder den
Vorgabewert (default) zu nutzen, z.B. Nutzung der Vorgabe-Nicks
(irc.server_default.nicks):
/set irc.server.oftc.nicks null
Andere Optionen: Du kannst andere Optionen mit folgendem Befehl setzen ("xxx"
ist der Optionsname):
/set irc.server.oftc.xxx value
[[connect_to_irc_server]]
Verbinden mit dem IRC-Server und auto-join der Channel
------------------------------------------------------
/connect oftc
[NOTE]
Dieser Befehl kann dazu benutzt werden um einen neuen Server zu erstellen und
sich mit ihm zu verbinden ohne den Befehl `/server` zu benutzen (sollte ich
wiederholen, dass Du die Hilfe zu diesem Befehl mit `/help connect` aufrufen
kannst?).
Generell werden die Server-Puffer und der Puffer des Kerns von WeeChat -der
core-Puffer- zusammengelegt. Um zwischen den core-Puffer und den Server-Puffern
umzuschalten kannst Du ctrl-X benutzen.
Es ist möglich das automatische Zusammenlegen der Server-Puffer zu deaktivieren
um eigenständig Puffer zu haben:
/set irc.look.server_buffer independent
[[join_part_irc_channels]]
Betreten/verlassen der IRC-Channel
----------------------------------
`/join #channel`::
Einen Channel betreten
`/part [quit message]`::
Einen Channel verlassen (der Puffer bleibt geöffnet)
`/close [quit message]`::
Schließen eines Server- oder Channel-Puffers (`/close` ist ein Alias für `/buffer close`)
[[buffer_window]]
Puffer/Fenster Verwaltung
-------------------------
Ein Puffer ist eine, zu einem Plugin mit einer Nummer, einer Kategorie und einem
Namen, verbundene Komponente. Ein Puffer beinhaltet die auf dem Bildschirm
dargestellten Daten.
Ein Fenster ist die Ansicht eines Puffers. Standard ist ein Fenster, das einen
Puffer darstellt. Wenn Du den Bildschirm aufteilst, wirst Du mehrere Fenster mit
mehreren Puffer gleichzeitig sehen.
Befehle, welche Puffer und Fenster verwalten:
/buffer
/window
(Ich will jetzt nicht wiederholen, dass Du zu diesen Befehlen Hilfe mit /help
erhalten kannst)
Ein Beispiel, um Deinen Bildschirm vertikal in ein kleines Fenster (1/3 Höhe)
und ein großes Fenster (2/3 Höhe) aufzuteilen, benutze diesen Befehl:
/window splitv 33
[[key_bindings]]
Tastaturbelegung
----------------
WeeChat verwendet viele Standardtasten. Alle diese Belegungen sind in der
Dokumentation beschrieben, doch solltest Du mindestens einige wesentliche
Belegungen kennen:
- 'alt + linker/rechter Pfeil' (oder 'F5'/'F6'): umschalten zum
vorherigen/nächsten Puffer
- 'F7'/'F8': umschalten zum vorherigen/nächsten Fenster (falls der Bildschirm
aufgeteilt ist)
- 'F9'/'F10': scrolle die Titleleiste
- 'F11'/'F12': scrolle die Liste der Nicks
- 'tab': komplettiere den Text in der Eingabeleiste, ähnlich Deiner shell
- 'Seite rauf/runter': scrolle den Text im aktiven Puffer
- '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.
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`:
/key bind (drücke meta-k) (drücke meta-y) /buffer close
Du wirst folgende Befehlszeile erhalten:
/key bind meta-y /buffer close
Entfernen der Belegung:
/key unbind meta-y
[[plugins_scripts]]
Plugins/Scripte
---------------
Bei einige Distributionen wie Debian, sind Plugins über separate Pakete
erhältlich (z.B. weechat-plugins).
Plugins werden -falls gefunden- automatisch geladen (Bitte beachte die
Dokumentation zum Laden/Entladen von Plugins oder Skripten).
Einige Plugins ermöglichen die Verwendung von Scripten in WeeChat (in mehreren
Sprachen wie Perl, Python, Ruby, Lua und TCL). Diese Plugins müssen mit dem
Befehl `/plugin` geladen werden und verfügen ihrerseits über Befehle wie z.B.
`/perl` um Scripte zu laden.
Viele externe Plugins/Scripte (der Mitarbeitenden) sind für WeeChat verfügbar,
siehe: http://www.weechat.org/plugins
Der einfachste Weg um Scripte zu installieren ist die verwendung von 'weeget.py':
. herunterladen und kopieren von 'weeget.py' nach ~/.weechat/python/autoload/
. laden des Scriptes: `/python autoload`
. Liste der Scripte: `/weeget list` (Hilfe mit: `/help weeget`)
[[more_doc]]
Weitere Dokumentation
---------------------
Nun kannst Du WeeChat nutzen, für weitere Fragen lese die FAQ/Dokumentation:
http://www.weechat.org/doc
Viel Spass mit WeeChat!
+3 -3
View File
@@ -17,7 +17,7 @@
# user's guide
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.en.txt
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.en.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.en.txt
${CMAKE_CURRENT_SOURCE_DIR}/autogen/user/*.txt
@@ -29,7 +29,7 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html DESTINATION share
# plugin API reference
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.en.txt
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.en.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.en.txt
${CMAKE_CURRENT_SOURCE_DIR}/autogen/plugin_api/*.txt
@@ -41,7 +41,7 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html DESTINATION
# scripting guide
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.en.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.en.txt
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.en.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.en.txt
COMMENT "Building weechat_scripting.en.html"
+3 -3
View File
@@ -35,15 +35,15 @@ all-local: weechat_user.en.html \
# user's guide
weechat_user.en.html: weechat_user.en.txt $(wildcard autogen/user/*.txt)
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_user.en.html weechat_user.en.txt
$(ASCIIDOC) -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_user.en.html weechat_user.en.txt
# plugin API reference
weechat_plugin_api.en.html: weechat_plugin_api.en.txt $(wildcard autogen/plugin_api/*.txt)
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_plugin_api.en.html weechat_plugin_api.en.txt
$(ASCIIDOC) -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_plugin_api.en.html weechat_plugin_api.en.txt
# scripting guide
weechat_scripting.en.html: weechat_scripting.en.txt
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_scripting.en.html weechat_scripting.en.txt
$(ASCIIDOC) -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_scripting.en.html weechat_scripting.en.txt
# FAQ
weechat_faq.en.html: weechat_faq.en.txt
+6 -2
View File
@@ -11,20 +11,24 @@
| irc | irc_channel_topic | topic of current IRC channel
| irc | irc_channels | IRC channels (on all servers)
| irc | irc_channels | channels on all IRC servers
| irc | irc_ignores_numbers | numbers for defined ignores
| irc | irc_msg_part | default part message for IRC channel
| irc | irc_privates | IRC privates (on all servers)
| irc | irc_privates | privates on all IRC servers
| irc | irc_server | current IRC server
| irc | irc_server_channels | channels on current IRC server
| irc | irc_server_nick | nick on current IRC server
| irc | irc_server_nicks | nicks on all channels of current IRC server
| irc | irc_server_privates | privates on current IRC server
| irc | irc_servers | IRC servers (internal names)
| irc | nick | nicks of current IRC channel
+2 -2
View File
@@ -4,7 +4,7 @@
** values: any string (default value: "ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic")
* *aspell.check.default_dict*
** description: default dictionary (or comma separated list of dictionaries) to use when buffer has no dictionary defined (leave blank to disable aspell on buffers for which you didn't explicitely enabled it)
** description: default dictionary (or comma separated list of dictionaries) to use when buffer has no dictionary defined (leave blank to disable aspell on buffers for which you didn't explicitly enabled it)
** type: string
** values: any string (default value: "")
@@ -24,7 +24,7 @@
** values: 0 .. 2147483647 (default value: 2)
* *aspell.look.color*
** description: color used for mispelled words
** description: color used for misspelled words
** type: color
** values: a color name (default value: lightred)
+1 -1
View File
@@ -170,7 +170,7 @@
nickname: nickname
........................................
&bull; *`/join`* `channel[,channel] [key[,key]]`::
&bull; *`/join`* `[channel[,channel] [key[,key]]]`::
........................................
join a channel
+12 -2
View File
@@ -8,6 +8,11 @@
** type: color
** values: a color name (default value: yellow)
* *irc.color.item_channel_modes*
** description: color for channel modes, near channel name
** type: color
** values: a color name (default value: default)
* *irc.color.message_join*
** description: color for text in join messages
** type: color
@@ -83,8 +88,13 @@
** type: integer
** values: auto, never, always (default value: auto)
* *irc.look.open_near_server*
** description: open new channels/privates near server
* *irc.look.open_channel_near_server*
** description: open new channels near server
** type: boolean
** values: on, off (default value: off)
* *irc.look.open_pv_near_server*
** description: open new privates near server
** type: boolean
** values: on, off (default value: off)
+5
View File
@@ -23,6 +23,11 @@
** type: string
** values: any string (default value: "%h/logs/")
* *logger.file.replacement_char*
** description: replacement char for special chars in filename built with mask (like directory delimiter)
** type: string
** values: any string (default value: "_")
* *logger.file.time_format*
** description: timestamp used in log files (see man strftime for date/time specifiers)
** type: string
+1 -1
View File
@@ -1,4 +1,4 @@
&bull; *`/lua`* `[list [name]] | [listfull [name]] [load filename] | [autoload] | [reload] | [unload [name]]`::
&bull; *`/lua`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] | [unload [name]]`::
........................................
list/load/unload scripts
+1 -1
View File
@@ -1,4 +1,4 @@
&bull; *`/perl`* `[list [name]] | [listfull [name]] [load filename] | [autoload] | [reload] | [unload [name]]`::
&bull; *`/perl`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] | [unload [name]]`::
........................................
list/load/unload scripts
+1 -1
View File
@@ -1,4 +1,4 @@
&bull; *`/python`* `[list [name]] | [listfull [name]] [load filename] | [autoload] | [reload] | [unload [name]]`::
&bull; *`/python`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] | [unload [name]]`::
........................................
list/load/unload scripts
+1 -1
View File
@@ -1,4 +1,4 @@
&bull; *`/ruby`* `[list [name]] | [listfull [name]] [load filename] | [autoload] | [reload] | [unload [name]]`::
&bull; *`/ruby`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] | [unload [name]]`::
........................................
list/load/unload scripts
+1 -1
View File
@@ -1,4 +1,4 @@
&bull; *`/tcl`* `[list [name]] | [listfull [name]] [load filename] | [autoload] | [reload] | [unload [name]]`::
&bull; *`/tcl`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] | [unload [name]]`::
........................................
list/load/unload scripts
+2 -3
View File
@@ -5,7 +5,7 @@
add: add a new bar
barname: name of bar (must be unique)
type: root: outside windows),
type: root: outside windows,
window: inside windows, with optional conditions (see below)
cond1,...: condition(s) for displaying bar (only for type "window"):
active: on active window
@@ -13,7 +13,6 @@
nicklist: on windows with nicklist
without condition, bar is always displayed
position: bottom, top, left or right
filling: horizontal, vertical, columns_horizontal or columns_vertical
size: size of bar (in chars)
separator: 1 for using separator (line), 0 or nothing means no separator
item1,...: items for this bar (items can be separated by comma (space between items) or "+" (glued items))
@@ -120,7 +119,7 @@
-all: delete all filters
plugin.buffer: plugin and buffer where filter is active ("*" for all buffers)
tags: comma separated list of tags, for example: "irc_join,irc_part,irc_quit"
regex: regular expression to search in line (use \t to separate prefix from message)
regex: regular expression to search in line (use \t to separate prefix from message, special chars like '|' must be escaped: '\|')
The default key alt+'=' toggles filtering on/off.
+22 -12
View File
@@ -193,11 +193,6 @@
** type: color
** values: a color name (default value: lightgreen)
* *weechat.color.input_nick*
** description: text color for nick name in input line
** type: color
** values: a color name (default value: lightcyan)
* *weechat.color.input_text_not_found*
** description: text color for unsucessful text search in input line
** type: color
@@ -243,11 +238,6 @@
** type: color
** values: a color name (default value: brown)
* *weechat.color.nicklist_separator*
** description: text color for nicklist separator
** type: color
** values: a color name (default value: blue)
* *weechat.color.separator*
** description: background color for window separators (when split)
** type: color
@@ -471,13 +461,28 @@
* *weechat.look.prefix_align_max*
** description: max size for prefix (0 = no max size)
** type: integer
** values: 0 .. 64 (default value: 0)
** values: 0 .. 128 (default value: 0)
* *weechat.look.prefix_align_more*
** description: display '+' if prefix is truncated
** type: boolean
** values: on, off (default value: on)
* *weechat.look.prefix_buffer_align*
** description: prefix alignment for buffer name, when many buffers are merged with same number (none, left, right (default))
** type: integer
** values: none, left, right (default value: right)
* *weechat.look.prefix_buffer_align_max*
** description: max size for buffer name, when many buffers are merged with same number (0 = no max size)
** type: integer
** values: 0 .. 128 (default value: 0)
* *weechat.look.prefix_buffer_align_more*
** description: display '+' if buffer name is truncated (when many buffers are merged with same number)
** type: boolean
** values: on, off (default value: on)
* *weechat.look.prefix_error*
** description: prefix for error messages
** type: string
@@ -516,7 +521,7 @@
* *weechat.look.save_layout_on_exit*
** description: save layout on exit (buffers, windows, or both)
** type: integer
** values: none, buffers, windows, all (default value: all)
** values: none, buffers, windows, all (default value: none)
* *weechat.look.scroll_amount*
** description: how many lines to scroll by with scroll_up and scroll_down
@@ -528,6 +533,11 @@
** type: integer
** values: 1 .. 100 (default value: 100)
* *weechat.look.search_text_not_found_alert*
** description: alert user when text sought is not found in buffer
** type: boolean
** values: on, off (default value: on)
* *weechat.look.set_title*
** description: set title for window (terminal for Curses GUI) with name and version
** type: boolean
+26 -19
View File
@@ -31,8 +31,7 @@ Some features (version > = 0.3.x):
* multi-platform
* 100% GPL and free
More info on this page:
http://weechat.flashtux.org/features.php
More info on this page: http://www.weechat.org/features
Compilation / install
@@ -97,6 +96,8 @@ window) or displayed by one or more windows.
I don't see some chars with accents, what can I do?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It's common issue, please read carefully and check *ALL* solutions below.
For versions < 0.2.3, please upgrade to the latest stable version.
For versions > = 0.2.3:
@@ -170,8 +171,10 @@ 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"`
* 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`.
@@ -211,28 +214,33 @@ With the Curses GUI, how can I copy/paste text without pasting nicklist?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You can use a terminal with rectangular selection (like rxvt-unicode,
konsole, ...). Key is usually ctrl + alt + mouse selection.
konsole, gnome-terminal, ...). Key is usually ctrl + alt + mouse selection.
Another solution is to move nicklist to top or bottom, for example:
* with WeeChat < = 0.2.6: `set look_nicklist_position = top`
* with WeeChat > = 0.3.x: `/bar set nicklist position top`
* with WeeChat < = 0.2.6: +
`set look_nicklist_position = top`
* with WeeChat > = 0.3.x: +
`/bar set nicklist position top`
[[highlight_notification]]
How can I be warned when someone highlights me on a channel?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You can use the script 'sound.pl' (available on scripts page), and then setup a
system command (to play sound, display message, ..) with this command:
According to WeeChat version:
* with WeeChat < = 0.2.6:
`/setp perl.sound.cmd_highlight = "/path/command arguments"`
* with WeeChat > = 0.3.x:
`/set plugins.var.perl.sound.cmd_highlight "/path/command arguments"`
* 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://weechat.flashtux.org/plugins.php
http://www.weechat.org/plugins
[[filter_irc_join_part_quit]]
@@ -293,7 +301,7 @@ There are 3 ways:
* request a new feature: https://savannah.nongnu.org/task/?group=weechat
* send a patch: https://savannah.nongnu.org/patch/?group=weechat
. you can mail developers, look at support page for developer's mails:
http://weechat.flashtux.org/support.php
http://www.weechat.org/about
(you can subscribe and send to "support" mailing list)
@@ -301,8 +309,7 @@ There are 3 ways:
What is the list of supported platforms for WeeChat? Will it be ported to other operating systems?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The full list is on this page:
http://weechat.flashtux.org/download.php?view=supported_os
The full list is on this page: http://www.weechat.org/download
We do our best to run on as many platforms as possible. Help is welcome for
some OS' we don't have, to test WeeChat.
@@ -315,7 +322,7 @@ I want to help WeeChat developers. What can I do?
There's many tasks to do (testing, code, documentation, ...)
Please contact us via IRC or mail, look at support page:
http://weechat.flashtux.org/support.php
http://www.weechat.org/about
[[donate]]
@@ -323,4 +330,4 @@ Can I give money or other things to WeeChat developers?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You can give us money to help development.
Details on http://weechat.flashtux.org/donate.php
Details on http://www.weechat.org/donate
File diff suppressed because it is too large Load Diff
+26 -12
View File
@@ -4,7 +4,7 @@ FlashCode <flashcode@flashtux.org>
[[start]]
Start weechat
Start WeeChat
-------------
A recommended terminal emulator for X (but not mandatory) is rxvt-unicode
@@ -29,7 +29,7 @@ WeeChat immediately uses the new value (you *never* need to restart WeeChat
after changes to configuration).
You can use `/set` option with partial name and wildcard "*" at the beginning
or end to display all options containg letters.
or end to display all options containing letters.
For example:
`/set`::
@@ -71,7 +71,7 @@ Create an IRC server
You can add an IRC server with `/server` command, for example:
/server add oftc irc.oftc.org 6667
/server add oftc irc.oftc.org/6667
As usual, help is available if you're lost: `/help server`
@@ -80,7 +80,7 @@ As usual, help is available if you're lost: `/help server`
Set custom IRC server options
-----------------------------
WeeChat uses default values for all servers ("fallbacks"), if you
WeeChat uses default values for all servers ("fall backs"), if you
don't specify a specific value for a server option.
These default options are "irc.server_default.*".
@@ -106,7 +106,7 @@ with nickserv:
/set irc.server.oftc.command "/msg nickserv identify xxxxxx"
Note: many commmands can be separated by ';' (semi-colon)
Note: many commands can be separated by ';' (semi-colon)
To auto-join some channels when connecting to server:
@@ -129,9 +129,18 @@ Connect to IRC server and auto-join channels
/connect oftc
Note: this command can be used to create and connect to a new server
without using `/server` command (should I repeat you can see help for
this command with `/help connect` ? ;)
[NOTE]
This command can be used to create and connect to a new server without using
`/server` command (should I repeat you can see help for this command with
`/help connect` ?).
By default, server buffers are merged with WeeChat 'core' buffer. To switch
between 'core' buffer and server buffers, you can use ctrl-X.
It is possible to disable auto merge of server buffers to have independent
server buffers:
/set irc.look.server_buffer independent
[[join_part_irc_channels]]
@@ -210,16 +219,21 @@ Plugins/scripts
On some distros like Debian, plugins are available via a separate package
(like weechat-plugins).
Plugins are automatically loaded when found.
Plugins are automatically loaded when found (please look at the WeeChat
documentation to load/unload plugins or scripts).
Some plugins let you use scripts in WeeChat (in many languages like Perl,
Python, Ruby, Lua and Tcl). These plugins must be loaded with the `/plugin`
command and they provide commands like `/perl`, used to load scripts.
Many external plugins/scripts (from contributors) are available for
WeeChat: http://weechat.flashtux.org/plugins.php
WeeChat: http://www.weechat.org/plugins
Please look at the WeeChat documentation to load/unload plugins or scripts.
Easiest way to install scripts is to use script 'weeget.py':
. download and copy 'weeget.py' to ~/.weechat/python/autoload/
. load script: `/python autoload`
. scripts list: `/weeget list` (for help: `/help weeget`)
[[more_doc]]
@@ -227,6 +241,6 @@ More documentation
------------------
You can now use WeeChat and read FAQ/documentation for any other questions:
http://weechat.flashtux.org/doc.php
http://www.weechat.org/doc
Enjoy using WeeChat!
+7 -7
View File
@@ -6,7 +6,7 @@ FlashCode <flashcode@flashtux.org>
This manual documents WeeChat chat client, it is part of WeeChat.
Latest version of this document can be found on this page:
http://weechat.flashtux.org/doc.php
http://www.weechat.org/doc
[[introduction]]
@@ -41,7 +41,7 @@ Some things are specific to languages:
keyword)
** functions are called with `weechat.xxx(arg1, arg2, ...)`
* ruby:
** you have to define 'weechat_init' and call register inside
** you have to define 'weechat_init' and call 'register' inside
** functions are called with `Weechat.xxx(arg1, arg2, ...)`
* tcl:
** functions are called with `weechat::xxx arg1 arg2 ...`
@@ -53,7 +53,7 @@ Register
All WeeChat scripts must "register" themselves to WeeChat, and this must be
first WeeChat function called in script.
Prorotype:
Prototype:
[source,python]
----------------------------------------
@@ -75,7 +75,7 @@ Arguments:
Script example
~~~~~~~~~~~~~~
Exemple of script, for each language:
Example of script, for each language:
* perl:
@@ -396,7 +396,7 @@ For example, to print data on core buffer (WeeChat main buffer), you can do:
[source,python]
----------------------------------------
weechat.prnt("", "hey!")
weechat.prnt("", "hi!")
----------------------------------------
[WARNING]
@@ -417,10 +417,10 @@ For example:
[source,python]
----------------------------------------
weechat.hook_timer(1000, 0, 1, "my_timer_cb", "my data!")
weechat.hook_timer(1000, 0, 1, "my_timer_cb", "my data")
def my_timer_cb(data, remaining_calls):
# this will display: "my data!"
# this will display: "my data"
weechat.prnt("", data)
return weechat.WEECHAT_RC_OK
----------------------------------------
+2 -2
View File
@@ -76,7 +76,7 @@ the latest updates.
Otherwise you can download and unpack 'devel' package:
-----------------------------------------------------------------
$ wget http://weechat.flashtux.org/download/weechat-devel.tar.bz2
$ wget http://www.weechat.org/files/src/weechat-devel.tar.bz2
$ tar xvjf weechat-devel.tar.bz2
$ cd weechat-devel
-----------------------------------------------------------------
@@ -107,7 +107,7 @@ Install binary package
According to your Linux distribution:
* Debian: http://debian.flashtux.org/
* Gentoo: http://weechat.flashtux.org/download.php
* Gentoo: http://www.weechat.org/download
* ArchLinux: PKGBUILD from http://aur.archlinux.org/
* other: we don't know! Eheh.
+23 -17
View File
@@ -6,7 +6,7 @@ FlashCode <flashcode@flashtux.org>
This manual documents WeeChat chat client, it is part of WeeChat.
Latest version of this document can be found on this page:
http://weechat.flashtux.org/doc.php
http://www.weechat.org/doc
[[introduction]]
@@ -35,7 +35,7 @@ Main features are:
* multi-platform (GNU/Linux, *BSD, MacOS X, Windows and other)
* 100% GPL, free software
WeeChat homepage is here: http://weechat.flashtux.org/
WeeChat homepage is here: http://www.weechat.org/
[[pre-requisites]]
Pre-requisites
@@ -44,7 +44,7 @@ Pre-requisites
In order to install WeeChat, you need:
* a running GNU/Linux system (with compiler tools for source
package), or compatible OS (see above)
package), or compatible OS
* 'root' privileges (to install WeeChat in a system directory)
* ncurses library
@@ -150,7 +150,7 @@ Running WeeChat
Command line arguments:
-a, --no-connect::
Disable auto-connect to servers at startup
Disable auto-connect to servers when WeeChat is starting
-d, --dir 'path'::
Set path as home for WeeChat (used for configuration files, logs, user
@@ -733,7 +733,7 @@ include::autogen/user/weechat_commands.txt[]
Plugins
-------
To learn more about plugin or script development (thru API), please read
To learn more about plugin or script development (through API), please read
'WeeChat Plugin API Reference' or 'WeeChat Scripting Guide'.
[[plugins_in_weechat]]
@@ -826,8 +826,8 @@ There is default charset for decode/encode, and specific charsets for buffers
This plugin is optional, but recommended: if it's not loaded, WeeChat
can only read/write UTF-8 data.
Charset plugin should be autoloaded by WeeChat at startup. To be sure plugin
is loaded, try:
Charset plugin should be autoloaded by WeeChat. To be sure plugin is loaded,
try:
----------------------------------------
/charset
@@ -917,8 +917,8 @@ Fifo plugin
You can remote control WeeChat, by sending commands or text to a FIFO pipe (if
option "plugins.var.fifo.fifo" is enabled, it is by default).
The FIFO pipe is located in '~/.weechat/' and is called 'weechat_fifo_xxxxx'
(where 'xxxxx' is the process ID (PID) of running WeeChat).
The FIFO pipe is located in '~/.weechat/' and is called 'weechat_fifo_xxxx'
(where 'xxxx' is the process ID (PID) of running WeeChat).
Syntax for the FIFO pipe commands/text is one of following:
@@ -1116,8 +1116,7 @@ These plugins can load, execute and unload scripts for these languages.
For more information about how to write scripts, or WeeChat API for
scripts, please read 'WeeChat Scripting Guide'.
You can find some scripts for WeeChat here:
http://weechat.flashtux.org/plugins.php
You can find some scripts for WeeChat here: http://www.weechat.org/plugins
Perl commands
^^^^^^^^^^^^^
@@ -1176,24 +1175,31 @@ Developers
FlashCode (Sébastien Helleu)::
main developer
Kolter (Emmanuel Bouthenot)::
developer, debian packager
[[contributors]]
Contributors
~~~~~~~~~~~~
Kolter (Emmanuel Bouthenot)::
debian packager
Ptitlouis::
first debian packager
old debian packager
Jiri Golembiovsky::
czech translation, patches
soltys::
polish translation
rettub::
Frank Zacharias::
german translation
Pavel Shevchuk::
russian translation
Frank Zacharias::
german translation
m4v::
spanish translation
Voroskoi::
hungarian translation
+23 -23
View File
@@ -17,7 +17,7 @@
# user's guide
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.fr.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.fr.txt
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.fr.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.fr.txt
${CMAKE_CURRENT_SOURCE_DIR}/autogen/user/*.txt
@@ -27,32 +27,32 @@ ADD_CUSTOM_TARGET(doc-user-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_us
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.fr.html DESTINATION share/doc/${PROJECT_NAME})
# plugin API reference
#ADD_CUSTOM_COMMAND(
# OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.fr.html
# COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.fr.txt
# DEPENDS
# ${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.fr.txt
# ${CMAKE_CURRENT_SOURCE_DIR}/autogen/plugin_api/*.txt
# COMMENT "Building weechat_plugin_api.fr.html"
#)
#ADD_CUSTOM_TARGET(doc-plugin-api-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.fr.html)
#INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.fr.html DESTINATION share/doc/${PROJECT_NAME})
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.fr.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.fr.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.fr.txt
${CMAKE_CURRENT_SOURCE_DIR}/autogen/plugin_api/*.txt
COMMENT "Building weechat_plugin_api.fr.html"
)
ADD_CUSTOM_TARGET(doc-plugin-api-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.fr.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.fr.html DESTINATION share/doc/${PROJECT_NAME})
# scripting guide
#ADD_CUSTOM_COMMAND(
# OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.fr.html
# COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.fr.txt
# DEPENDS
# ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.fr.txt
# COMMENT "Building weechat_scripting.fr.html"
#)
#ADD_CUSTOM_TARGET(doc-scripting-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.fr.html)
#INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.fr.html DESTINATION share/doc/${PROJECT_NAME})
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.fr.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.fr.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.fr.txt
COMMENT "Building weechat_scripting.fr.html"
)
ADD_CUSTOM_TARGET(doc-scripting-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.fr.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.fr.html DESTINATION share/doc/${PROJECT_NAME})
# FAQ
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.fr.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.fr.txt
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.fr.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.fr.txt
COMMENT "Building weechat_faq.fr.html"
@@ -63,7 +63,7 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.fr.html DESTINATION share/
# quickstart
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.fr.txt
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.fr.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.fr.txt
COMMENT "Building weechat_quickstart.fr.html"
@@ -74,7 +74,7 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html DESTINATION
# tester's guide
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.fr.txt
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.fr.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.fr.txt
COMMENT "Building weechat_tester.fr.html"
+10 -6
View File
@@ -18,6 +18,8 @@ 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 \
@@ -25,33 +27,35 @@ EXTRA_DIST = CMakeLists.txt \
$(wildcard autogen/plugin_api/*.txt)
all-local: weechat_user.fr.html \
weechat_plugin_api.fr.html \
weechat_scripting.fr.html \
weechat_faq.fr.html \
weechat_quickstart.fr.html \
weechat_tester.fr.html
# user's guide
weechat_user.fr.html: weechat_user.fr.txt $(wildcard autogen/user/*.txt)
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_user.fr.html weechat_user.fr.txt
$(ASCIIDOC) -a toc -a toclevels=3 -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_user.fr.html weechat_user.fr.txt
# plugin API reference
weechat_plugin_api.fr.html: weechat_plugin_api.fr.txt $(wildcard autogen/plugin_api/*.txt)
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_plugin_api.fr.html weechat_plugin_api.fr.txt
$(ASCIIDOC) -a toc -a toclevels=3 -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_plugin_api.fr.html weechat_plugin_api.fr.txt
# scripting guide
weechat_scripting.fr.html: weechat_scripting.fr.txt
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_scripting.fr.html weechat_scripting.fr.txt
$(ASCIIDOC) -a toc -a toclevels=3 -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_scripting.fr.html weechat_scripting.fr.txt
# FAQ
weechat_faq.fr.html: weechat_faq.fr.txt
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_faq.fr.html weechat_faq.fr.txt
$(ASCIIDOC) -a toc -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_faq.fr.html weechat_faq.fr.txt
# quickstart
weechat_quickstart.fr.html: weechat_quickstart.fr.txt
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_quickstart.fr.html weechat_quickstart.fr.txt
$(ASCIIDOC) -a toc -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_quickstart.fr.html weechat_quickstart.fr.txt
# tester's guide
weechat_tester.fr.html: weechat_tester.fr.txt
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_tester.fr.html weechat_tester.fr.txt
$(ASCIIDOC) -a toc -a toc_title='Table des matières' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_tester.fr.html weechat_tester.fr.txt
# install docs
+6 -2
View File
@@ -11,20 +11,24 @@
| irc | irc_channel_topic | titre du canal IRC courant
| irc | irc_channels | canaux IRC (sur tous les serveurs)
| irc | irc_channels | canaux sur tous les serveurs IRC
| irc | irc_ignores_numbers | numéros pour les ignores définis
| irc | irc_msg_part | message de fin par défaut pour le canal IRC
| irc | irc_privates | canaux IRC (sur tous les serveurs)
| irc | irc_privates | privés sur tous les serveurs IRC
| irc | irc_server | serveur IRC courant
| irc | irc_server_channels | canaux sur le serveur IRC courant
| irc | irc_server_nick | pseudo sur le serveur IRC courant
| irc | irc_server_nicks | pseudos sur tous les canaux du serveur IRC courant
| irc | irc_server_privates | privés sur le serveur IRC courant
| irc | irc_servers | serveurs IRC (noms internes)
| irc | nick | pseudos du canal IRC courant
+1 -1
View File
@@ -170,7 +170,7 @@
pseudo: pseudo
........................................
&bull; *`/join`* `canal[,canal] [clé[,clé]]`::
&bull; *`/join`* `[canal[,canal] [clé[,clé]]]`::
........................................
joindre un canal
+12 -2
View File
@@ -8,6 +8,11 @@
** type: couleur
** valeurs: un nom de couleur (valeur par défaut: yellow)
* *irc.color.item_channel_modes*
** description: couleur pour les modes du canal, à côté du nom du canal
** type: couleur
** valeurs: un nom de couleur (valeur par défaut: default)
* *irc.color.message_join*
** description: couleur pour le texte dans les messages join
** type: couleur
@@ -83,8 +88,13 @@
** type: entier
** valeurs: auto, never, always (valeur par défaut: auto)
* *irc.look.open_near_server*
** description: ouvrir les nouveaux canaux/privés près du serveur
* *irc.look.open_channel_near_server*
** description: ouvrir les nouveaux canaux près du serveur
** type: booléen
** valeurs: on, off (valeur par défaut: off)
* *irc.look.open_pv_near_server*
** description: ouvrir les nouveaux privés près du serveur
** type: booléen
** valeurs: on, off (valeur par défaut: off)
+5
View File
@@ -23,6 +23,11 @@
** type: chaîne
** valeurs: toute chaîne (valeur par défaut: "%h/logs/")
* *logger.file.replacement_char*
** description: caractère de remplacement dans le nom de fichier construit avec le masque (comme le délimiteur de répertoire)
** type: chaîne
** 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)
** type: chaîne
+1 -2
View File
@@ -13,7 +13,6 @@
nicklist: sue les fenêtres avec liste de pseudos
sans condition, la barre est toujours affichée
position: bottom (bas), top (haut), left (gauche) ou right (droite)
remplissage: horizontal, vertical, columns_horizontal ou columns_vertical
taille: taille de la barre (en caractères)
séparateur: 1 pour utiliser un séparateur (ligne), 0 ou rien signifie sans séparateur
objet1,...: objets pour cette barre (les objets peuvent être séparés par une virgule (espace entre les objets) ou "+" (objets collés))
@@ -120,7 +119,7 @@
-all: supprime tous les filtres
extension.tampon: extension et tampon où le filtre est actif ("*" pour tous les tampons)
tags: liste de tags, séparés par des virgules, par exemple: "irc_join,irc_part,irc_quit"
regex: expressoin régulière à rechercher dans la ligne (utiliser \t pour séparer le préfixe du message)
regex: expressoin régulière à rechercher dans la ligne (utiliser \t pour séparer le préfixe du message, les caractères spéciaux comme '|' doivent être échappés: '\|')
La touche par défaut alt+'=' active/désactive le filtrage.
+23 -13
View File
@@ -193,11 +193,6 @@
** type: couleur
** valeurs: un nom de couleur (valeur par défaut: lightgreen)
* *weechat.color.input_nick*
** description: couleur du texte pour le pseudo dans la ligne de saisie
** type: couleur
** valeurs: un nom de couleur (valeur par défaut: lightcyan)
* *weechat.color.input_text_not_found*
** description: couleur du texte pour la recherche infructueuse de texte dans la ligne de saisie
** type: couleur
@@ -243,11 +238,6 @@
** type: couleur
** valeurs: un nom de couleur (valeur par défaut: brown)
* *weechat.color.nicklist_separator*
** description: couleur du texte pour le séparateur de la liste des pseudos
** type: couleur
** valeurs: un nom de couleur (valeur par défaut: blue)
* *weechat.color.separator*
** description: couleur du fond pour les séparateurs de fenêtres (quand divisé)
** type: couleur
@@ -319,7 +309,7 @@
** valeurs: toute chaîne (valeur par défaut: "[]-^")
* *weechat.completion.partial_completion_alert*
** description: alterte de l'utilisateur lorsqu'une complétion partielle survient
** description: alterte l'utilisateur lorsqu'une complétion partielle survient
** type: booléen
** valeurs: on, off (valeur par défaut: on)
@@ -471,13 +461,28 @@
* *weechat.look.prefix_align_max*
** description: taille maximum pour le préfixe (0 = pas de taille maximum)
** type: entier
** valeurs: 0 .. 64 (valeur par défaut: 0)
** valeurs: 0 .. 128 (valeur par défaut: 0)
* *weechat.look.prefix_align_more*
** description: afficher '+' si le préfixe est tronqué
** type: booléen
** valeurs: on, off (valeur par défaut: on)
* *weechat.look.prefix_buffer_align*
** description: alignement de préfixe pour le nom du tampon, quand plusieurs tampons sont mélangés avec le même numéro (none, left, right (par défaut))
** type: entier
** valeurs: none, left, right (valeur par défaut: right)
* *weechat.look.prefix_buffer_align_max*
** description: taille maximum pour le nom du tampon, quand plusieurs tampons sont mélangés avec le même numéro (0 = pas de taille maximum)
** type: entier
** valeurs: 0 .. 128 (valeur par défaut: 0)
* *weechat.look.prefix_buffer_align_more*
** description: afficher '+' si le nom du tampon est tronqué (quand plusieurs tampons sont mélangés avec le même numéro)
** type: booléen
** valeurs: on, off (valeur par défaut: on)
* *weechat.look.prefix_error*
** description: préfixe pour les messages d'erreur
** type: chaîne
@@ -516,7 +521,7 @@
* *weechat.look.save_layout_on_exit*
** description: sauve la disposition en quittant (tampons, fenêtres, ou les deux)
** type: entier
** valeurs: none, buffers, windows, all (valeur par défaut: all)
** valeurs: none, buffers, windows, all (valeur par défaut: none)
* *weechat.look.scroll_amount*
** description: nombre de lignes pour le défilement avec scroll_up et scroll_down
@@ -528,6 +533,11 @@
** type: entier
** valeurs: 1 .. 100 (valeur par défaut: 100)
* *weechat.look.search_text_not_found_alert*
** description: alterte l'utilisateur lorsque le texte cherché n'est pas trouvé dans le tampon
** type: booléen
** valeurs: on, off (valeur par défaut: on)
* *weechat.look.set_title*
** description: définit le titre de la fenêtre (terminal pour l'interface Curses) avec le nom et la version
** type: booléen
+29 -25
View File
@@ -31,8 +31,7 @@ Quelques fonctionnalités (version > = 0.3.x) :
* multi-platformes
* 100% GPL et libre
Plus d'infos sur cette page :
http://weechat.flashtux.org/features.php
Plus d'infos sur cette page : http://www.weechat.org/features
Compilation / installation
@@ -100,6 +99,9 @@ aucune fenêtre) ou affiché par une ou plusieurs fenêtres.
Je ne vois pas bien certains accents dans WeeChat, que faire ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C'est un problème courant, merci de lire attentivement et vérifier *TOUS* les
points ci-dessous.
Pour les versions < 0.2.3, merci d'installer la dernière version stable.
Pour les versions > = 0.2.3 :
@@ -120,7 +122,7 @@ Pour les versions > = 0.2.3 :
** vérifiez que votre terminal est compatible UTF-8
(un terminal conseillé pour l'UTF-8 est rxvt-unicode)
** si vous utilisez screen, vérifiez qu'il est lancé en mode UTF-8
("`defutf8 on`" dans ~/.screnrc ou `screen -U` pour lancer screen)
("`defutf8 on`" dans ~/.screenrc ou `screen -U` pour lancer screen)
[NOTE]
La locale UTF-8 est recommandée pour WeeChat. Si vous utilisez ISO ou une autre
@@ -176,8 +178,10 @@ 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"`
* 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`.
@@ -217,32 +221,35 @@ Avec l'interface Curses, comment puis-je copier/coller du texte sans coller la l
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Vous pouvez utiliser un terminal qui propose la sélection rectangulaire (comme
rxvt-unicode, konsole, etc...). La touche est habituellement ctrl + alt +
sélection à la souris.
rxvt-unicode, konsole, gnome-terminal, etc...). La touche est habituellement
ctrl + alt + sélection à la souris.
Une autre solution est de déplacer la liste des pseudos en haut ou en bas, par
exemple :
* avec WeeChat < = 0.2.6 : `/set look_nicklist_position = top`
* avec WeeChat > = 0.3.x : `/bar set nicklist position top`
* avec WeeChat < = 0.2.6 : +
`/set look_nicklist_position = top`
* avec WeeChat > = 0.3.x : +
`/bar set nicklist position top`
[[highlight_notification]]
Comment être averti lorsque quelqu'un prononce mon pseudo sur un canal ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Vous pouvez utiliser le script 'sound.pl' (disponible sur la page des scripts),
puis configurer une commande système (jouant un son, affichant un message à
l'écran, etc...) comme ceci :
Selon la version de WeeChat :
* avec WeeChat < = 0.2.6 :
`/setp perl.sound.cmd_highlight = "/chemin/commande parametres"`
* avec WeeChat > = 0.3.x :
`/set plugins.var.perl.sound.cmd_highlight "/chemin/commande parametres"`
* 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://weechat.flashtux.org/plugins.php
liste des extensions/scripts : http://www.weechat.org/plugins
[[filter_irc_join_part_quit]]
@@ -306,8 +313,7 @@ Il y a 3 possibilités :
* demander une nouvelle fonctionnalité: https://savannah.nongnu.org/task/?group=weechat
* envoyer un patch: https://savannah.nongnu.org/patch/?group=weechat
. vous pouvez envoyer un mail aux développeurs, consultez la page support
pour les mails des développeurs :
http://weechat.flashtux.org/support.php
pour les mails des développeurs : http://www.weechat.org/about
(vous pouvez souscrire et envoyer à la liste de diffusion nommée "support")
@@ -315,8 +321,7 @@ Il y a 3 possibilités :
Quelle est la liste des plate-formes supportées par WeeChat ? Sera-t-il porté sur d'autres systèmes d'exploitation ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
La liste complète est sur cette page :
http://weechat.flashtux.org/download.php?view=supported_os
La liste complète est sur cette page : http://www.weechat.org/download
Nous faisons le maximum pour supporter le plus de plate-formes possible.
Toute aide est la bienvenue pour les systèmes que nous n'avons pas, pous y
@@ -330,8 +335,7 @@ Je souhaiterai aider les développeurs WeeChat. Que puis-je faire ?
Il y a plusieurs choses à faire (test, code, documentation, etc...)
Merci de prendre contact avec nous par IRC ou mail, consultez la page
support :
http://weechat.flashtux.org/support.php
support : http://www.weechat.org/about
[[donate]]
@@ -339,4 +343,4 @@ Puis-je donner de l'argent ou d'autres choses aux développeurs WeeChat ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Vous pouvez donner de l'argent pour aider le développement.
Plus de détails sur http://weechat.flashtux.org/donate.php
Plus de détails sur http://www.weechat.org/donate
File diff suppressed because it is too large Load Diff
+26 -10
View File
@@ -4,7 +4,7 @@ FlashCode <flashcode@flashtux.org>
[[start]]
Démarrer weechat
Démarrer WeeChat
----------------
Un émulateur de terminal recommandé pour X (mais pas obligatoire) est
@@ -75,7 +75,7 @@ Créer un serveur IRC
Vous pouvez ajouter un serveur IRC par la commande `/server`, par exemple :
/server add oftc irc.oftc.org 6667
/server add oftc irc.oftc.org/6667
Comme d'habitude, de l'aide est disponible si vous êtes perdus :
`/help server`
@@ -136,9 +136,19 @@ Se connecter au serveur IRC et rejoindre les canaux
/connect oftc
Note : cette commande peut aussi être utilisée pour créer et se connecter
au serveur sans utiliser la commande `/server` (devrais-je répéter que vous
pouvez voir l'aide pour cette commande avec `/help connect` ? ;)
[NOTE]
Cette commande peut aussi être utilisée pour créer et se connecter au serveur
sans utiliser la commande `/server` (devrais-je répéter que vous pouvez voir
l'aide pour cette commande avec `/help connect` ?).
Par défaut, les tampons des serveurs sont mélangés avec le tampon 'core'
WeeChat. Pour basculer entre le tampon 'core' et les tampons des serveurs, il
faut utiliser la touche ctrl-X.
Il est possible de désactiver le mélange des tampons serveurs pour avoir un
tampon distinct par serveur :
/set irc.look.server_buffer independent
[[join_part_irc_channels]]
@@ -220,7 +230,9 @@ Extensions/scripts
Sur certaines distributions comme Debian, les extensions sont disponibles
via un paquet séparé (par exemple weechat-plugins).
Les extensions sont automatiquement chargées lorsqu'elles sont trouvées.
Les extensions sont automatiquement chargées lorsqu'elles sont trouvées
(merci de regarder la documentation WeeChat pour charger/décharger des
extensions ou des scripts).
Des extensions permettent d'utiliser des scripts dans WeeChat (dans
différent langages comme Perl, Python, Ruby, Lua et Tcl). Ces extensions
@@ -228,10 +240,14 @@ doivent être chargées avec la commande `/plugin` et elles fournissent des
commandes telles que `/perl`, utilisées pour charger les scripts.
Plusieurs extensions/scripts (de contributeurs) sont disponibles pour
WeeChat : http://weechat.flashtux.org/plugins.php
WeeChat : http://www.weechat.org/plugins
Merci de regarder la documentation WeeChat pour charger/décharger des
extensions ou des scripts.
La manière la plus simple pour installer des scripts consiste à utiliser le
script 'weeget.py' :
. téléchargez et copiez 'weeget.py' dans ~/.weechat/python/autoload/
. chargez le script : `/python autoload`
. liste des scripts : `/weeget list` (pour l'aide: `/help weeget`)
[[more_doc]]
@@ -239,6 +255,6 @@ Plus de documentation
---------------------
Vous pouvez maintenant utiliser WeeChat et lire la FAQ/documentation pour
toute autre question : http://weechat.flashtux.org/doc.php
toute autre question : http://www.weechat.org/doc
Bon WeeChat !
+435
View File
@@ -0,0 +1,435 @@
WeeChat Guide pour Scripts
==========================
FlashCode <flashcode@flashtux.org>
Ce manuel documente le client de messagerie instantanée WeeChat, il fait
partie de WeeChat.
La dernière version de ce document peut être téléchargée sur cette page :
http://www.weechat.org/doc
[[introduction]]
Introduction
------------
WeeChat (Wee Enhanced Environment for Chat) est un client de discussion libre,
rapide et léger, conçu pour différents systèmes d'exploitation.
Ce manuel documente la façon d'écrire des scripts pour WeeChat, en utilisant
l'un des cinq langages de script supportés : perl, python, ruby, lua ou tcl.
[NOTE]
La majorité des exemples de cette documentation sont écrits en Python, mais
l'API est la même pour les autres langages.
[[scripts_in_weechat]]
Scripts dans WeeChat
--------------------
[[languages_specifities]]
Spécificités des langages
~~~~~~~~~~~~~~~~~~~~~~~~~
Quelques choses sont spécifiques aux langages :
* perl :
** les fonctions sont appelées par `weechat::xxx(arg1, arg2, ...);`
* python :
** vous devez utiliser `import weechat`
** les fonctions `print*` se nomment `prnt*` en python (car 'print' est un mot
clé réservé)
** les fonctions sont appelées par `weechat.xxx(arg1, arg2, ...)`
* ruby :
** vous devez définir 'weechat_init' et appeler 'register' dedans
** les fonctions sont appelées par `Weechat.xxx(arg1, arg2, ...)`
* tcl :
** les fonctions sont appelées par `weechat::xxx arg1 arg2 ...`
[[register]]
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.
Prototype :
[source,python]
----------------------------------------
weechat.register(name, author, version, license, description, shutdown_function, charset)
----------------------------------------
Paramètres :
* 'name' : chaîne, nom interne du script
* 'author' : chaîne, nom de l'auteur
* 'version' : chaîne, version du script
* 'license' : chaîne, licence du script
* 'description' : chaîne, description courte du script
* 'shutdown_function' : chaîne, nom de la fonction appelée lorsque le script
est déchargé
* 'charset' : chaîne, jeu de caractères du script (optionnel, si votre script
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 :
* perl :
[source,perl]
----------------------------------------
weechat::register("test_perl", "FlashCode", "1.0", "GPL3", "Script de test", "", "");
weechat::print("", "Bonjour, du script perl !");
----------------------------------------
* python :
[source,python]
----------------------------------------
import weechat
weechat.register("test_python", "FlashCode", "1.0", "GPL3", "Script de test", "", "")
weechat.prnt("", "Bonjour, du script python !")
----------------------------------------
* ruby :
[source,ruby]
----------------------------------------
def weechat_init
Weechat.register("test_ruby", "FlashCode", "1.0", "GPL3", "Script de test", "", "")
Weechat.print("", "Bonjour, du script ruby !")
return Weechat::WEECHAT_RC_OK
end
----------------------------------------
* lua :
[source,lua]
----------------------------------------
weechat.register("test_lua", "FlashCode", "1.0", "GPL3", "Script de test", "", "")
weechat.print("", "Bonjour, du script lua !")
----------------------------------------
* tcl :
// [source,tcl]
----------------------------------------
weechat::register "test_tcl" "FlashCode" "1.0" "GPL3" "Script de test" "" ""
weechat::print "" "Bonjour, du script tcl !"
----------------------------------------
[[load_script]]
Chargement du script
~~~~~~~~~~~~~~~~~~~~
Vous devez utiliser la commande, dépendant du langage :
----------------------------------------
/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
----------------------------------------
Vous pouvez faire un lien dans le répertoire 'langage/autoload' pour charger
automatiquement le script quand WeeChat démarre.
Par exemple en perl :
----------------------------------------
$ cd ~/.weechat/perl/autoload
$ ln -s ../script.pl
----------------------------------------
[[script_api]]
API script
----------
L'API script est quasiment identique à l'API C.
Vous pouvez consulter la 'Référence API Extension WeeChat' pour le détail de
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`.
Quand votre script 'test.py' appelle une fonction de l'API WeeChat, le chemin
est le suivant :
........................................
(API script) (API C)
\/ \/
test.py -------> extension python (python.so) -------> WeeChat core
........................................
Quand WeeChat appelle un "callback" dans votre script 'test.py', le chemin
est inversé :
........................................
(API C) (API script)
\/ \/
WeeChat core -------> extension plugin (python.so) -------> test.py
........................................
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'
** 'buffer_search'
** 'current_buffer'
** 'buffer_clear'
** 'buffer_close'
** 'buffer_get_integer'
** 'buffer_get_string'
** 'buffer_get_pointer'
** 'buffer_set'
* 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_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'
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'
Différences avec l'API C
~~~~~~~~~~~~~~~~~~~~~~~~
Pointeurs
^^^^^^^^^
Comme vous le savez probablement, il n'y a pas vraiment de "pointeurs" dans les
scripts. Donc quand les fonctions de l'API retournent un pointeur, il est
converti en chaîne pour le script.
Par exemple, si une fonction retourne le pointeur 0x1234ab56, le script recevra
la chaîne "0x1234ab56".
Et quand une fonction de l'API attend un pointeur dans ses paramètres, le
script doit envoyer cette valeur sous forme de chaîne. L'extension C la
convertira en pointeur réel avant d'appeler la fonction de l'API C.
Une chaîne vide ou "0x0" sont autorisées, cela signifie le pointeur NULL en C.
Par exemple, pour afficher un message sur le tampon core (tampon principal
WeeChat), vous pouvez faire :
[source,python]
----------------------------------------
weechat.prnt("", "bonjour !")
----------------------------------------
[WARNING]
Dans beaucoup de fonctions, pour des raisons de vitesse, WeeChat ne vérifie pas
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
^^^^^^^^^
Tous les "callbacks" WeeChat doivent retourner WEECHAT_RC_OK ou
WEECHAT_RC_ERROR (l'exception est le callback du "modifier", qui retourne une
chaîne de caractères).
Les "callbacks" C utilisent un paramètre "data", qui est un pointeur. Dans
l'API script, ce "data" est une chaîne de caractères avec n'importe quelle
valeur (ce n'est pas un pointeur).
Par exemple :
[source,python]
----------------------------------------
weechat.hook_timer(1000, 0, 1, "mon_timer_cb", "mes données")
def mon_timer_cb(data, remaining_calls):
# cela affichera : "mes données"
weechat.prnt("", data)
return weechat.WEECHAT_RC_OK
----------------------------------------
+5 -5
View File
@@ -74,13 +74,13 @@ $ git clone git://git.sv.gnu.org/weechat.git
$ cd weechat
--------------------------------------------
NOTE: Plus tard, vous pourrez utiliser la command "`git pull`" dans ce répertoire
NOTE: Plus tard, vous pourrez utiliser la commande "`git pull`" dans ce répertoire
pour obtenir juste les deltas avec la version d'aujourd'hui.
Sinon vous pouvez installer le paquet 'devel' :
-----------------------------------------------------------------
$ wget http://weechat.flashtux.org/download/weechat-devel.tar.bz2
$ wget http://www.weechat.org/files/src/weechat-devel.tar.bz2
$ tar xvjf weechat-devel.tar.bz2
$ cd weechat-devel
-----------------------------------------------------------------
@@ -95,7 +95,7 @@ $ make
$ make install
--------------------------------------------------------------
Si vous n'avez pas cmake, il est toujours possible d'utiliser les autools :
Si vous n'avez pas cmake, il est toujours possible d'utiliser les autotools :
-----------------------------------------------------------------
$ ./autogen.sh # (seulement si vous avez cloné la base git)
@@ -104,14 +104,14 @@ $ make
$ make install
-----------------------------------------------------------------
[[install_binary_pcakcge]]
[[install_binary_package]]
Obtenir un paquet binaire
~~~~~~~~~~~~~~~~~~~~~~~~~
Selon votre distribution Linux :
* Debian: http://debian.flashtux.org/
* Gentoo: http://weechat.flashtux.org/download.php
* Gentoo: http://www.weechat.org/download
* ArchLinux: PKGBUILD depuis http://aur.archlinux.org/
* autre: nous ne savons pas ! Eheh.
+47 -40
View File
@@ -7,7 +7,7 @@ Ce manuel documente le client de messagerie instantanée WeeChat, il fait
partie de WeeChat.
La dernière version de ce document peut être téléchargée sur cette page :
http://weechat.flashtux.org/doc.php
http://www.weechat.org/doc
[[introduction]]
@@ -36,7 +36,7 @@ Ses principales fonctionnalités sont les suivantes :
* multi plates-formes (GNU/Linux, *BSD, MacOS X, Windows et d'autres systèmes)
* 100% GPL, logiciel libre
La page d'accueil de WeeChat est ici : http://weechat.flashtux.org/
La page d'accueil de WeeChat est ici : http://www.weechat.org/
[[pre-requisites]]
Pré-requis
@@ -45,7 +45,7 @@ Pré-requis
Pour installer WeeChat, vous devez avoir :
* un système GNU/Linux (avec le compilateur et les outils associés pour le
paquet des sources), ou un système compatible (voir ci-dessus)
paquet des sources), ou un système compatible
* droits "root" (pour installer WeeChat dans un répertoire système)
* la bibliothèque ncurses
@@ -55,15 +55,15 @@ Installation
------------
[[binary_packages]]
Binary packages
~~~~~~~~~~~~~~~
Paquets binaires
~~~~~~~~~~~~~~~~
Les paquets binaires sont disponibles pour beaucoup de distributions, dont :
* Debian (ou toute distribution compatible Debian) : `apt-get install weechat`
* Mandriva/RedHat (ou toute distribution compatible avec les RPM) :
`rpm -i /path/to/weechat-x.y.z-1.i386.rpm`
* Gentoo: `emerge weechat`
* Gentoo : `emerge weechat`
Des paquets additionnels peuvent être utiles également, comme weechat-plugins.
@@ -123,7 +123,7 @@ $ make install
Sources Git
~~~~~~~~~~~
Attention: les sources GIT sont réservés aux utilisateurs avancés : il se peut
Attention : les sources GIT sont réservés aux utilisateurs avancés : il se peut
que WeeChat ne compile pas et qu'il soit très instable. Vous êtes prévenus !
Pour récupérer les sources GIT, tapez cette commande :
@@ -176,7 +176,7 @@ Paramètres de ligne de commande :
Afficher la version de WeeChat
plugin:option::
Option pour l'extension (voir la doc de chaque extension)
Option pour l'extension (voir la documentation de chaque extension)
Pour lancer WeeChat, tapez cette commande :
@@ -251,7 +251,7 @@ La barre 'status' contient les objets (items) suivants par défaut :
nombre de tampons ouverts
| buffer_plugin | `[irc/freenode]` |
extension du tampon courant (l'extension irc peut affiche le nom du serveur
extension du tampon courant (l'extension irc peut afficher le nom du serveur
IRC auquel est rattaché ce tampon)
| buffer_number | `3` |
@@ -264,7 +264,7 @@ La barre 'status' contient les objets (items) suivants par défaut :
nombre de pseudos dans la liste des pseudos
| buffer_filter | `*` |
indicateur de filtrage: `*` signifie que des lignes sont filtrées (cachées),
indicateur de filtrage : `*` signifie que des lignes sont filtrées (cachées),
une valeur vide signifie que toutes les lignes sont affichées
| lag | `[Lag: 2.5]` |
@@ -409,13 +409,13 @@ Touches pour la ligne de commande
`/input clipboard_paste`
| Tab |
Compléter la commande ou le pseudo (Tab de nouveau: trouver la complétion
Compléter la commande ou le pseudo (Tab de nouveau : trouver la complétion
suivante) +
`/input complete_next`
| Shift + Tab |
Sans complétion, effectue une complétion partielle. Avec une complétion en
cours, complète avec la complétion précécente +
cours, complète avec la complétion précédente +
`/input complete_previous`
| Tout caractère |
@@ -424,16 +424,16 @@ Touches pour la ligne de commande
| Enter +
Ctrl + J +
Ctrl + M |
Exécuter la commande ou envoyer le message (en mode recherche: arrêter la
Exécuter la commande ou envoyer le message (en mode recherche : arrêter la
recherche) +
`/input return`
| Flèche haut |
Rappeler la commande précédente (en mode recherche: chercher plus haut) +
Rappeler la commande précédente (en mode recherche : chercher plus haut) +
`/input history_previous`
| Flèche bas |
Rappeler la commande suivante (en mode recherche: chercher plus bas) +
Rappeler la commande suivante (en mode recherche : chercher plus bas) +
`/input history_next`
| Ctrl + flèche haut |
@@ -595,7 +595,7 @@ Touches pour les tampons / fenêtres
`/window right`
| Alt + Z |
Zoom sur la fenêtre courante (Alt + Z de nouveau: restaurer l'état initial
Zoom sur la fenêtre courante (Alt + Z de nouveau : restaurer l'état initial
des fenêtres, avant le zoom) +
`/window zoom`
@@ -685,7 +685,7 @@ suit et éventuellement une valeur) :
Le même code (sans le numéro pour ^Cc) peut être utilisé pour stopper
l'attribut défini.
Les codes couleur pour ^Cc sont:
Les codes couleur pour ^Cc sont :
[width="20%",cols="^1m,2"]
|========================================
@@ -765,11 +765,11 @@ chargée par WeeChat.
Sous GNU/Linux, ce fichier a une extension ".so", et ".dll" sous Windows.
Les extensions trouvées sont automatiquement chargées par WeeChat lorsqu'il
démarre, et il est posisble de charger et décharger des extensions pendant que
démarre, et il est possible de charger et décharger des extensions pendant que
WeeChat tourne.
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
'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`.
@@ -793,7 +793,7 @@ Les extensions par défaut sont :
| Extension | Description
| alias | Définir des alias pour les commandes
| aspell | Vérification orthographique de la ligne de commande
| charset | Eécodage/encodage avec jeu de caractère sur les tampons
| charset | Encodage/encodage avec jeu de caractère sur les tampons
| demo | Extension de démonstration (non compilée par défaut)
| fifo | Tube FIFO pour envoyer des commandes à distance vers WeeChat
| irc | Discussion avec le protocole IRC
@@ -822,7 +822,7 @@ include::autogen/user/alias_commands.txt[]
Extension Aspell
~~~~~~~~~~~~~~~~
L'extension Aspell permet de vérifier l'orghographe de la ligne de commande.
L'extension Aspell permet de vérifier l'orthographe de la ligne de commande.
Il est possible d'utiliser plusieurs langages par tampon.
Options (aspell.conf)
@@ -928,14 +928,14 @@ Pour modifier le jeu de caractères d'un canal IRC (ou d'une conversation
privée), utilisez la même commande que pour le serveur, mais sur le tampon du
canal (ou du privé).
Pour voir tous les jeux de carcatères utilisés, utilisez la commande uivante :
Pour voir tous les jeux de caractères utilisés, utilisez la commande suivante :
----------------------------------------
/set charset.*
----------------------------------------
Troubleshooting
^^^^^^^^^^^^^^^
En cas de problème
^^^^^^^^^^^^^^^^^^
Pour tout problème avec les jeux de caractères, merci de consulter la
'FAQ WeeChat'.
@@ -949,15 +949,15 @@ texte dans un tube FIFO (si l'option 'plugins.var.fifo.fifo' est activée,
elle l'est par défaut).
Le tube FIFO est dans le répertoire '~/.weechat/' et s'appelle
'weechat_fifo_xxxxx' (où 'xxxxx' est l'ID du processus (PID) du WeeChat qui
'weechat_fifo_xxxx' (où 'xxxx' est l'ID du processus (PID) du WeeChat qui
tourne).
La syntaxe pour envoyer des commandes ou du texte dans le tube FIFO est une
des suivantes :
........................................
plugin.buffer *text or command here
*text or command here
plugin.buffer *texte ou commande ici
*texte ou commande ici
........................................
Quelques exemples :
@@ -1074,10 +1074,10 @@ signifie "enregistrer tous les messages".
Les extensions utilisent différent niveaux pour les messages affichés.
L'extension IRC utilise les niveaux suivants :
* niveau 1: message d'un utilisateur (sur un canal ou en privé)
* niveau 2: changement de pseudo (vous ou quelqu'un d'autre)
* niveau 3: tout message du serveur (sauf join/part/quit)
* niveau 4: message join/part/quit du serveur
* niveau 1 : message d'un utilisateur (sur un canal ou en privé)
* niveau 2 : changement de pseudo (vous ou quelqu'un d'autre)
* niveau 3 : tout message du serveur (sauf join/part/quit)
* niveau 4 : message join/part/quit du serveur
Donc si vous affectez le niveau 3 pour un canal IRC, WeeChat enregistrera
tous les messages sauf les join/part/quit.
@@ -1111,7 +1111,7 @@ Quelques exemples :
Masques de noms de fichiers
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Il est posible de définir un masque de nom de fichier pour chaque tampon, et
Il est possible de définir un masque de nom de fichier pour chaque tampon, et
d'utiliser les variables locales du tampon pour construire le nom de fichier.
Pour voir les variables du tampon courant :
@@ -1146,7 +1146,7 @@ Vous obtiendrez les fichiers suivants :
Extensions Scripts
~~~~~~~~~~~~~~~~~~
WeeChat fournit 5 extensions pour scripts: Perl, Python, Ruby, Lua and Tcl.
WeeChat fournit 5 extensions pour scripts : Perl, Python, Ruby, Lua and Tcl.
Ces extensions peuvent charger, exécuter et décharger des scripts pour ces
langages.
@@ -1154,7 +1154,7 @@ Pour plus d'informations sur comment écrire des scripts, ou sur l'API
WeeChat pour les scripts, merci de lire le 'Le Guide pour Scripts WeeChat'.
Vous pouvez trouver des scripts pour WeeChat ici :
http://weechat.flashtux.org/plugins.php
http://www.weechat.org/plugins
Commandes Perl
^^^^^^^^^^^^^^
@@ -1213,24 +1213,31 @@ Développeurs
FlashCode (Sébastien Helleu)::
développeur principal
Kolter (Emmanuel Bouthenot)::
développeur, empaqueteur debian
[[contributors]]
Contributeurs
~~~~~~~~~~~~~
Kolter (Emmanuel Bouthenot)::
empaqueteur debian
Ptitlouis::
premier empaqueteur debian
ancien empaqueteur debian
Jiri Golembiovsky::
traduction en tchèque, patchs
soltys::
traduction en polonais
rettub::
Frank Zacharias::
traduction en allemand
Pavel Shevchuk::
traduction en russe
Frank Zacharias::
traduction en allemand
m4v::
traduction en espagnol
Voroskoi::
traduction en hongrois
+48
View File
@@ -0,0 +1,48 @@
# Copyright (c) 2003-2009 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/>.
#
# FAQ
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.pl.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toc_title='Spis treści' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.pl.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.pl.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.pl.txt
COMMENT "Building weechat_faq.pl.html"
)
ADD_CUSTOM_TARGET(doc-faq-pl ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.pl.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.pl.html DESTINATION share/doc/${PROJECT_NAME})
# quickstart
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.pl.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toc_title='Spis treści' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.pl.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.pl.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.pl.txt
COMMENT "Building weechat_quickstart.pl.html"
)
ADD_CUSTOM_TARGET(doc-quickstart-pl ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.pl.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.pl.html DESTINATION share/doc/${PROJECT_NAME})
# tester's guide
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.pl.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toc_title='Spis treści' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.pl.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.pl.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.pl.txt
COMMENT "Building weechat_tester.pl.html"
)
ADD_CUSTOM_TARGET(doc-tester-pl ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.pl.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.pl.html DESTINATION share/doc/${PROJECT_NAME})
+49
View File
@@ -0,0 +1,49 @@
# Copyright (c) 2003-2009 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/>.
#
docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
weechat_faq.pl.txt \
weechat_quickstart.pl.txt \
weechat_tester.pl.txt
all-local: weechat_faq.pl.html \
weechat_quickstart.pl.html \
weechat_tester.pl.html
# FAQ
weechat_faq.pl.html: weechat_faq.pl.txt
$(ASCIIDOC) -a toc -a toc_title='Spis treści' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_faq.pl.html weechat_faq.pl.txt
# quickstart
weechat_quickstart.pl.html: weechat_quickstart.pl.txt
$(ASCIIDOC) -a toc -a toc_title='Spis treści' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_quickstart.pl.html weechat_quickstart.pl.txt
# tester's guide
weechat_tester.pl.html: weechat_tester.pl.txt
$(ASCIIDOC) -a toc -a toc_title='Spis treści' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_tester.pl.html weechat_tester.pl.txt
# install docs
install-data-hook:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
$(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
# clean
clean-local:
-rm -f *.html
+332
View File
@@ -0,0 +1,332 @@
WeeChat FAQ (Często zadawane pytania)
=====================================
FlashCode <flashcode@flashtux.org>
Ogólne
------
[[why_choose_weechat]]
Dlaczego wybrać WeeChat? X-Chat i Irssi są takie dobre...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ponieważ WeeChat jest lekki i posiada wiele nowych możliwości.
Niektóre cechy (wersja > = 0.3.x):
* wsparcie dla wielu protokołów dzięki wtyczką (IRC, Jabber)
* wiele zdalnych GUI w dodatku do Courses (już niedługo)
* dostępny w wielu językach
* rozszerzalny dzięki wtyczką (C, Perl, Python, Ruby, Lua, Tcl)
* bufory z wolną zawartością
* filtrowanie po tagach i wyrażeniach regularnych
* poziome i pionowe dzielenie okien
* paski które możemy tworzyć i dostosowywać do własnych potrzeb
* lista nicków dostępna w każdym GUI
* przyrostowe wyszukiwanie tekstu w buforach, przeskakiwanie do podświetleń
* strumień FIFO do zdalnej kontroli
* wsparcie dla aspell
* podwójny zestaw znaków (kodowanie/dekodowanie)
* tworzony od podstaw (nie bazuje na żadnym innym kliencie)
* wielo platformowy
* 100% GPL i wolny
Więcej informacji na stronie: http://www.weechat.org/features
Kompilacja / instalacja
-----------------------
[[gui]]
Słyszałem o wielu GUI dla WeeChat. Jak moge je skompilować/użyć?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Obecnie dostępne jest tylko GUI Courses.
Pozostałe będą dostępne jeko zdalne klienty (obecnie rozwijane).
[[compile_git]]
Nie mogę skompilować WeeChat po sklonowaniu repozytorium git, dlaczego?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Zalecaną metodą kompilacji WeeChat jest użycie cmake.
Jeśli kompilujesz używając autotools (nie cmake), upewnij się, że posiadasz
najnowszą wersję autoconf i automake (WeeChat jest rozwijany z użyciem autoconf 2.61
oraz automake 1.10.1).
Innym sposobem jest zainstalowanie "paczki deweloperskiej", która wymaga mniej
zależności. Ten pakiet jest budowany prawie codziennie z użyciem repozytorium
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ć?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dla pomocy wpisz `/help`. Aby uzyskać pomoc dla komendy wpisz `/help komenda`.
Klawisze i komendy są wypisane w dokumentacji.
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.
[[charset]]
Nie widzę niektórych znaków diakrytycznych, co mogę zrobić?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jest to częsty problem, przeczytaj i sprawdź *WSZYSTKIE* poniższe rozwiązania.
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`
(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
wartość to twoje locale są prawdopodobnie złe.
* ustaw globalną wartość dekodowania, na przykład:
** 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ślu kożystasz z UTF-8:
** 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)
[NOTE]
UTF-8 jest zalecany dla WeeChat. Jeśli kożystasz z locali ISO lub innych,
sprawdź czy *wszystkie* twoje ustawienia (terminal, screen, ..) są ISO,
a *nie* UTF-8.
[[bars_background]]
Paski jak tytuł i status nie są filtrowane, kolor tła zatrzymuje się po tekście, czemu?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Może to być spowodowane złą wartośćią zmiennej środowiskowej TERM (spójrz na
wynik `echo $TERM` w terminalu).
W zależności, gdzie uruchamiasz WeeChat, powinieneś uzyskać:
* jeśli WeeChat jest uruchomiony lokalnie lub na zdalnej maszynie bez screena,
zależy od używanego terminala: 'xterm', 'rxvt', ..
* jeśli WeeChat działa pod screenem, powinieneś mieć 'screen'.
W razie potrzeby, popraw zmienna TERM: `export TERM="xxx"`.
[[screen_weird_chars]]
Kiedy używam weechat pod screenem, dostaje dziwne losowe znaki, jak to naprawić?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Może to być spowodowane przez złą wartość zmiennej środowiskowej TERM (spójrz na
wynik `echo $TERM` w terminalu).
Na przykład, 'xterm-color' może wyświetlać takie dziwne znaki, możesz użyc 'xterm',
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?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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ń.
[[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`.
[[terminal_copy_paste]]
Jak mogę kopiować/wklejać tekst bez wklejania listy nicków w interfejsie Courses?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Możesz użyć terminala z prostokątnym zaznaczaniem (jak rxvt-unicode,
konsole, gnome-terminal, ...). Klawisze to zazwyczaj ctrl + alt + zaznaczenie myszką.
Innym rozwiązaniem jest przesunięcie listy nicków na górę lub dół, na przykład:
* dla WeeChat < = 0.2.6: +
`set look_nicklist_position = top`
* dla WeeChat > = 0.3.x: +
`/bar set nicklist position top`
[[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/plugins
[[filter_irc_join_part_quit]]
Jak moge filtrować wiadomości o wejściu/opuszczeniu/wyjściu na kanałach IRC?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
W zależności od wersji WeeChat:
* dla WeeChat < = 0.2.6: +
`/ignore * join #weechat freenode` +
`/ignore * part #weechat freenode` +
`/ignore * quit #weechat freenode` +
(kanał i/lib serwer mogą być "*", `/help ignore` dla pomocy)
* dla WeeChat > = 0.3.x:
** inteligentny filtr (pokazuje te informacje tylko od osób ostatnio aktywnych): +
`/set irc.look.smart_filter on` +
`/filter add irc_smart * irc_smart_filter *` +
(`/help irc.look.smart_filter` oraz `/help filter` dla pomocy)
** globalny filtr (ukrywa *wszystkie* wejścia/opuszczenia/wyjścia): +
`/filter add jpk * irc_join,irc_part,irc_quit *` +
(`/help filter` dla pomocy)
[[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).
Rozwój
------
[[bug_task_patch]]
Jak zgłaszać błędy, prosić o nowe możliwości lub wysyłać patche?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Są 3 możliwości:
. możesz dołączyć do nas na IRC: 'irc.freenode.net', kanał '#weechat'
. możesz użyć strony www savannah:
* zgłosić błąd: https://savannah.nongnu.org/bugs/?group=weechat
* poprosić o nową możliwość: https://savannah.nongnu.org/task/?group=weechat
* wysłać patch: https://savannah.nongnu.org/patch/?group=weechat
. możesz napisać do deweloperów, na stronie wsparcia możesz znaleźć ich maile:
http://www.weechat.org/about
(możesz się zapisać na listę mailingową "support" i na niej pisać)
[[supported_os]]
Jaka jest lista platform wspieranych przez WeeChat? Czy będzie przeportowany na inne systemy operacyjne?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Pełną listę można znaleźć na stronie: http://www.weechat.org/download
Robimy co w naszej mocy, aby WeeChat działał na tylu platformach ile to tylko
możliwe. Mile widziana jest pomoc w testowaniu dla systemów, których nie mamy.
[[help_developers]]
Chcę pomóc programistą WeeChat. Co mogę zrobić?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tak możesz dać nam pieniądze, aby wspomóc rozwój.
Szczegóły na http://www.weechat.org/donate
+246
View File
@@ -0,0 +1,246 @@
WeeChat szybki start
====================
FlashCode <flashcode@flashtux.org>
[[start]]
Uruchamianie WeeChat
--------------------
Zalecanym emulatorem terminala dla X (ale nieobowiązkowym) jest rxvt-unicode
(posiada dobre wsparcie UTF-8, oraz nie ma problemów z domyślnymi skrótami
klawiszowymi).
Wywołaj "weechat-curses" z terminala.
[[help_options]]
Pomoc online / opcje
--------------------
WeeChat posiada pomoc dla wszystkich komend, wystarczy wywołać /help
Aby otrzymać pomoc dla konkretnej komendy wpisz `/help command`
Do ustawiania opcji służy `/set config.sekcja.opcja wartość`
(gdzie `config` jest nazwą konfiguracyjną (`weechat` dla rdzenia, lub nazwa
wtyczki), `sekcja` sekcja pliku konfiguracyjnego, oraz `opcja` nazwa opcji).
WeeChat natychmiast używa nowej wartości (*nigdy* nie musisz restartoweać WeeChat
po zmianach w ustawieniach).
Możesz użyć `/set` z częściową nazwą zmiennej oraz dziką kartą "*" na początku
lub końcu, aby wyświetlić wszystkie opcje zawierające te litery.
Na przykład:
`/set`::
wyświetli wszystkie opcje (WeeChat oraz wtyczek)
`/set weechat.*`::
wyświetli opcje WeeChat
`/set irc.*`::
wyświetli opcje wtyczki IRC
Możesz wyświetlić pomoc dla opcji dzięki `/help`, na przykład:
`/help weechat.look.highlight`.
Wszystkie ustawienia są zapisywane podczas wyjścia z WeeChat (lub za pomocą
komendy `/save`, która wymusza zapisanie opcji).
Możesz edytować ręcznie pliki konfiguracyjne (*.conf) i przeładować je za pomocą
komendy `/reload`, jeśli nie chcesz użyć komendy `/set`.
[[core_vs_plugins]]
Rdzeń vs wtyczki
----------------
"Rdzeń" WeeChat jest używany tylko do wyświetlania danych na ekranie oraz
interakcji z użytkownikiem, oznacza to, że rdzeń weechat bez wtyczek jest
bezużyteczny (wierni użytkownicy: IRC był częścią rdzenia dla wersji < = 0.2.6).
Wszystkie protokoły sieciowe jak IRC są dostarczane w oddzielnych pluginach.
Użyj komendy `/plugin` do wyświetlenia załadowanych wtyczek, powinieneś zobaczyć
na liście "irc" oraz inne wtyczki.
[[create_irc_server]]
Tworzenie serwera IRC
---------------------
Możesz dodać serwer IRC za pomocą komendy `/server`, na przykład:
/server add oftc irc.oftc.org/6667
Jak zawsze w razie wątpliwości dostępna jest pomoc: `/help server`
[[irc_server_options]]
Ustawianie własnych opcji dla serwerów IRC
------------------------------------------
WeeChat używa domyślnych wartości dla wszystkich serwerów ("fall backs"), jeśli
nie określisz konkretnej wartości dla opcji serwera.
Te domyślne opcje to "irc.server_default.*".
Dla każdej opcji serwera WeeChat używa jej wartości jeśli jest zdefiniowana (nie
"null"). W przeciwnym przypadku WeeChat używa wartości domyślnych ("irc.server_default.xxx").
Na przykład znajdują się tam domyślne nicki (bazujące na Twoim loginie un*x),
możesz je zmienić dla serwera oftc następującą komendą:
/set irc.server.oftc.nicks "mójnick1,mójnick2,mójnick3,mójnick4,mójnick5"
Ustawienie nazwy użytkownika i imienia:
/set irc.server.oftc.username "Moja nazwa użytkownika"
/set irc.server.oftc.realname "Moje imię"
Aby włączyć automatyczne łączenie się z serwerem przy starcie:
/set irc.server.oftc.autoconnect on
Aby wykonać komendę po połączeniu z serwerem, na przykład zidentyfikować się
w nickserv:
/set irc.server.oftc.command "/msg nickserv identify xxxxxx"
Przypis: wiele komend może być oddzielonych ';' (średnik)
Aby automatycznie wejść na kanały po połączeniu z serwerem:
/set irc.server.oftc.autojoin "#kanał1,#kanał2"
Aby usunąć wartość dla opcji serwera, używając w zamian wartości domyślnej,
na przykład, aby używać domyślnych nicków (irc.server_default.nicks):
/set irc.server.oftc.nicks null
Inne opcje: możesz ustawić pozostałe opcje za pomocą komendy ("xxx" to
nazwa opcji):
/set irc.server.oftc.xxx wartość
[[connect_to_irc_server]]
Łączenie się z serwerem IRC i automatyczne wchodzenie na kanały
---------------------------------------------------------------
/connect oftc
[NOTE]
Ta komenda może być użyta do utworzenia i połączenia sie z nowym serwerem bez
użycia komendy `/server` (czy mam powtarzać, że pomoc dla tej komendy można
uzyskać dzięki `/help connect` ?).
Domyślnie bufory serwerów są połączone z buforem WeeChat 'core'. Aby przełączać
się pomiędzy biforem 'core' a buforami serwerów możesz użyć ctrl-X.
Jest możliwe wyłączenie automatycznego łączenia buforów serwerów, aby mieć
oddzielne bufory dla serwerów:
/set irc.look.server_buffer independent
[[join_part_irc_channels]]
Wchodzenie/wychodzenie z kanałów IRC
------------------------------------
`/join #kanał`::
wejście na kanał
`/part [wiadomość pożegnalna]`::
wyjście z kanału (zostawiając otwarty bufor)
`/close [wiadomość pożegnalna]`::
zamknięcie bufora serwera lub kanału (`/close` jest aliasem `/buffer close`)
[[buffer_window]]
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.
Jeśli podzielisz ekran, ujrzysz wiele okien z wieloma buforami jednocześnie.
Komendy do zarządzania buforami i oknami:
/buffer
/window
(Nie będę powtarzać, że możesz uzyskać pomoc za pomocą /help na tych komendach)
Na przykład, aby pionowo podzielić ekran na małe okno (1/3 szerokości),
oraz duże okno (2/3), użyj komendy:
/window splitv 33
[[key_bindings]]
Skróty klawiszowe
-----------------
WeeChat używa domyślnie wiele klawiszy. Wszystie z nich są w dokumentacji,
ale powinieneś znać przynajmniej kilka najprzydatniejszych:
- 'alt + strzałki lewo/prawo' (lub 'F5'/'F6'): przełącza na poprzedni/następny bufor
- 'F7'/'F8': przełącza na poprzednie/następne okno (jeśli ekran jest podzielony)
- 'F9'/'F10': przewija pasek z tematem kanału
- 'F11'/'F12': przewija listę z nickami
- 'tab': dopełnia tekst w pasku danych wejściowych, dokładnie jak w terminalu
- 'page up/down': przewija tekst w obecnym buforze
- 'alt + A': skocz do bufora z aktywnością (w hotliście)
Zgodnie z Twoją klawiaturą i/lub potrzebami, możesz zmienić przypisanie
dowolnego klawisza do komendy używajac komendy `/key`.
Przydatnym skrótem jest meta-k (alt-k) do odnajdywania kodów klawiszy.
Na przykład, aby przypisać meta-y (alt-y) do komendy `/buffer close`:
/key bind (wciśnij meta-k) (wciśnij meta-y) /buffer close
Otrzymasz w lini poleceń:
/key bind meta-y /buffer close
Aby usunąć klawisz:
/key unbind meta-y
[[plugins_scripts]]
Wtyczki/skrypty
---------------
W niektórych dystrybucjach, jak np Debian, wtyczki są dostarczane jako oddzielne
pakiety (jak weechat-plugins).
Wtyczki są automatycznie ładowane, kiedy zostaną wykryte (proszę spojrzeć do
dokumentacji WeeChat, aby się dowiedzieć jak ładowac/wyładowywać wtyczki lub
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
`/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
WeeChat: http://www.weechat.org/plugins
Najprostrzym sposobem na instalowanie skryptów jest użycie skryptu 'weeget.py':
. ściągnij i skopiuj 'weeget.py' do ~/.weechat/python/autoload/
. załaduj skrypt: `/python autoload`
. lista skryptów: `/weeget list` (dla pomocy: `/help weeget`)
[[more_doc]]
Więcej dokumentacji
-------------------
Możesz teraz używać WeeChat oraz przeczytać FAQ/dokumentację w razie innych pytań:
http://www.weechat.org/doc
Miłej pracy z WeeChat!
+142
View File
@@ -0,0 +1,142 @@
Poradnik testera WeeChat
========================
FlashCode <flashcode@flashtux.org>
[[purpose]]
Cel
---
Wielu wdzięcznych użytkowników pyta nas jak mogą pomóc w rozwoju WeeChat.
Najłatwiejszym (a zarazem najtrudniejszym) sposobem jest testowanie!
Testowanie jest bardzo ważną częścią rozwoju oprogramowania i nie powinno być
niedoceniane. Kiedy nowe funkcje są implementowane, powinny zostać przetestowane,
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
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ć
w przyszłości.
Testowanie stabilenj wersji WeeChat jest bezcelowe, ponieważ programiści są
zajęci cały czas implementowaniem nowych rzeczy (oraz poprawianiem błędów).
[[prepare_system]]
Przygotuj swój system
---------------------
Bardzo nam pomoże, jeśli włączysz linuksowe pliki 'core': jeśli WeeChat zawiesi,
się Linuks zapisze plik zwany 'core'. Plik ten zawiera uzyteczne informacje
pozwalające dokładnie zlokalizować bład w WeeChat.
Jeśli korzystasz z powłoki 'bash', dodaj następującą linijkę do `~/.bashrc`:
ulimit -c unlimited
[[download]]
Pobieranie wersji rozwojowej
----------------------------
Świerzy kod (z najnowszymi błędami i funkcjami) przechowywany jest w repozytorium GIT.
Możesz się zdecydować na własnoręczne zbudowanie (zalecana metoda):
* wersja z GIT może być zbudowana i zainstalowana równolegle z wersją stabulną,
* nie potrzebujesz uprawnień administratora, oraz nie musisz poświęcać stabilnej
wersji WeeChat.
[[get_sources]]
Pobierz i zbuduj źródła
~~~~~~~~~~~~~~~~~~~~~~~
Najpierw stwórz katalog, na przykład 'weechat-git':
---------------------
$ mkdir ~/weechat-git
$ cd ~/weechat-git
---------------------
Jeśli masz zainstalowanego gita, po prostu zklonuj repozytorium (zalecana
metoda):
--------------------------------------------
$ git clone git://git.sv.gnu.org/weechat.git
$ cd weechat
--------------------------------------------
UWAGA: Później możesz wykonać w tym katalogu "`git pull`", aby pobrać najnowsze
poprawki.
Oczywiście możesz pobrać paczke oznaczoną jako 'devel':
-----------------------------------------------------------------
$ wget http://www.weechat.org/files/src/weechat-devel.tar.bz2
$ tar xvjf weechat-devel.tar.bz2
$ cd weechat-devel
-----------------------------------------------------------------
Do zbudowania źródeł zaleca się cmake:
--------------------------------------------------------------
$ mkdir build
$ cd build
$ cmake .. -DPREFIX=$HOME/weechat-git -DCMAKE_BUILD_TYPE=Debug
$ make
$ make install
--------------------------------------------------------------
Jeśli nie posiadasz cmake, nadal jest możliwe użycie autotools:
----------------------------------------------------------
$ ./autogen.sh # (only if you cloned git repository)
$ ./configure --prefix=$HOME/weechat-git
$ make
$ make install
----------------------------------------------------------
[[install_binary_package]]
Instalowanie pakietów binarnych
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
W zależności od dystrybucji Linuksa:
* Debian: http://debian.flashtux.org/
* Gentoo: http://www.weechat.org/download
* ArchLinux: PKGBUILD z http://aur.archlinux.org/
* inne: nie mamy pojęcia! Eheh.
[[run]]
Uruchomienie WeeChat
--------------------
Zalca się uruchomianie WeeChat z innym katalogiem (różnym od wersji stabilnej),
za pomocą opcji `--dir`.
Komenda to:
~/weechat-git/bin/weechat-curses --dir ~/.weechat-dev
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
lub zagotować Twoje piwo) nie wachaj się wejść na kanał `#weechat` na serwerze
`irc.freenode.net` i nam o tym opowiedzieć.
Jeśli wszystko będzie w porządku - też nam o tym powiedz, potrzebujemy Twojej opinii!
[[links]]
Przydatne linki
---------------
* Repozytorium GIT: http://git.savannah.gnu.org/gitweb/?p=weechat.git
* System śledzenia błędów: https://savannah.nongnu.org/bugs/?group=weechat
* Kanał RSS dokonywanych poprawek: http://git.savannah.gnu.org/gitweb/?p=weechat.git;a=rss
+2 -2
View File
@@ -1,4 +1,4 @@
.TH WEECHAT 1 "May 2009" "FlashCode"
.TH WEECHAT 1 "September 2009" "FlashCode"
.SH NAME
weechat-curses \- Wee Enhanced Environment for Chat (Curses version)
@@ -107,4 +107,4 @@ WeeChat is written by FlashCode <flashcode@flashtux.org>
.br
Web:
.UR
http://weechat.flashtux.org/
http://www.weechat.org/
+1513 -2255
View File
File diff suppressed because it is too large Load Diff
+662 -720
View File
File diff suppressed because it is too large Load Diff
+1453 -1476
View File
File diff suppressed because it is too large Load Diff
+80 -29
View File
@@ -4,10 +4,10 @@
#
msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.0-dev\n"
"Project-Id-Version: WeeChat 0.3.0\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2009-06-17 11:10+0200\n"
"PO-Revision-Date: 2009-06-17 11:10+0200\n"
"POT-Creation-Date: 2009-09-04 10:38+0200\n"
"PO-Revision-Date: 2009-09-06 10:02+0200\n"
"Last-Translator: FlashCode <flashcode@flashtux.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"MIME-Version: 1.0\n"
@@ -724,7 +724,7 @@ msgstr ""
msgid ""
" add: add a new bar\n"
" barname: name of bar (must be unique)\n"
" type: root: outside windows),\n"
" type: root: outside windows,\n"
" window: inside windows, with optional conditions (see below)\n"
" cond1,...: condition(s) for displaying bar (only for type \"window\"):\n"
" active: on active window\n"
@@ -732,7 +732,6 @@ msgid ""
" nicklist: on windows with nicklist\n"
" without condition, bar is always displayed\n"
" position: bottom, top, left or right\n"
" filling: horizontal, vertical, columns_horizontal or columns_vertical\n"
" size: size of bar (in chars)\n"
" separator: 1 for using separator (line), 0 or nothing means no "
"separator\n"
@@ -782,7 +781,6 @@ msgstr ""
" nicklist: sue les fenêtres avec liste de pseudos\n"
" sans condition, la barre est toujours affichée\n"
" position: bottom (bas), top (haut), left (gauche) ou right (droite)\n"
" remplissage: horizontal, vertical, columns_horizontal ou columns_vertical\n"
" taille: taille de la barre (en caractères)\n"
" séparateur: 1 pour utiliser un séparateur (ligne), 0 ou rien signifie "
"sans séparateur\n"
@@ -977,7 +975,7 @@ msgid ""
" tags: comma separated list of tags, for example: \"irc_join,"
"irc_part,irc_quit\"\n"
" regex: regular expression to search in line (use \\t to separate "
"prefix from message)\n"
"prefix from message, special chars like '|' must be escaped: '\\|')\n"
"\n"
"The default key alt+'=' toggles filtering on/off.\n"
"\n"
@@ -1006,7 +1004,8 @@ msgstr ""
" tags: liste de tags, séparés par des virgules, par exemple: "
"\"irc_join,irc_part,irc_quit\"\n"
" regex: expressoin régulière à rechercher dans la ligne (utiliser "
"\\t pour séparer le préfixe du message)\n"
"\\t pour séparer le préfixe du message, les caractères spéciaux comme '|' "
"doivent être échappés: '\\|')\n"
"\n"
"La touche par défaut alt+'=' active/désactive le filtrage.\n"
"\n"
@@ -1616,6 +1615,9 @@ msgstr "alignement de préfixe (none, left, right (par défaut))"
msgid "max size for prefix (0 = no max size)"
msgstr "taille maximum pour le préfixe (0 = pas de taille maximum)"
msgid "display '+' if prefix is truncated"
msgstr "afficher '+' si le préfixe est tronqué"
msgid ""
"prefix alignment for buffer name, when many buffers are merged with same "
"number (none, left, right (default))"
@@ -1623,6 +1625,20 @@ msgstr ""
"alignement de préfixe pour le nom du tampon, quand plusieurs tampons sont "
"mélangés avec le même numéro (none, left, right (par défaut))"
msgid ""
"max size for buffer name, when many buffers are merged with same number (0 = "
"no max size)"
msgstr ""
"taille maximum pour le nom du tampon, quand plusieurs tampons sont mélangés "
"avec le même numéro (0 = pas de taille maximum)"
msgid ""
"display '+' if buffer name is truncated (when many buffers are merged with "
"same number)"
msgstr ""
"afficher '+' si le nom du tampon est tronqué (quand plusieurs tampons sont "
"mélangés avec le même numéro)"
msgid "string displayed after prefix"
msgstr "chaîne affichée après le préfixe"
@@ -1647,6 +1663,11 @@ msgstr ""
"pourcentage de l'écran à faire défiler lors du défilement avec page "
"précédente ou suivante (par exemple 100 signifie une page, 50 une demi-page)"
msgid "alert user when text sought is not found in buffer"
msgstr ""
"alterte l'utilisateur lorsque le texte cherché n'est pas trouvé dans le "
"tampon"
msgid "set title for window (terminal for Curses GUI) with name and version"
msgstr ""
"définit le titre de la fenêtre (terminal pour l'interface Curses) avec le "
@@ -1807,9 +1828,6 @@ msgid "text color for buffer with new data (status bar)"
msgstr ""
"couleur du texte pour un tampon avec des nouvelles données (barre de statut)"
msgid "text color for nick name in input line"
msgstr "couleur du texte pour le pseudo dans la ligne de saisie"
msgid "text color for unsucessful text search in input line"
msgstr ""
"couleur du texte pour la recherche infructueuse de texte dans la ligne de "
@@ -1844,9 +1862,6 @@ msgstr ""
"couleur du texte pour les '+' lors du défilement des pseudos dans la liste "
"des pseudos"
msgid "text color for nicklist separator"
msgstr "couleur du texte pour le séparateur de la liste des pseudos"
msgid ""
"default completion template (please see documentation for template codes and "
"values)"
@@ -1870,7 +1885,7 @@ msgid "chars ignored for nick completion"
msgstr "caractères à ignorer pour la complétion des pseudos"
msgid "alert user when a partial completion occurs"
msgstr "alterte de l'utilisateur lorsqu'une complétion partielle survient"
msgstr "alterte l'utilisateur lorsqu'une complétion partielle survient"
msgid ""
"partially complete command names (stop when many commands found begin with "
@@ -2493,7 +2508,7 @@ msgstr ""
msgid "%s%s: error creating aspell dictionary \"%s\" => \"%s\""
msgstr "%s%s: erreur en création du dictionnaire aspell \"%s\" => \"%s\""
msgid "color used for mispelled words"
msgid "color used for misspelled words"
msgstr "couleur utilisée pour les mots mal orthographiés"
msgid ""
@@ -2507,7 +2522,7 @@ msgstr ""
msgid ""
"default dictionary (or comma separated list of dictionaries) to use when "
"buffer has no dictionary defined (leave blank to disable aspell on buffers "
"for which you didn't explicitely enabled it)"
"for which you didn't explicitly enabled it)"
msgstr ""
"dictionnaire par défaut (ou liste de dictionnaires séparés par une virgule) "
"à utiliser quand le tampon courant n'a pas de dictionnaire défini (laissez "
@@ -3188,8 +3203,8 @@ msgstr "pseudo: pseudo"
msgid "join a channel"
msgstr "joindre un canal"
msgid "channel[,channel] [key[,key]]"
msgstr "canal[,canal] [clé[,clé]]"
msgid "[channel[,channel] [key[,key]]]"
msgstr "[canal[,canal] [clé[,clé]]]"
msgid ""
"channel: channel name to join\n"
@@ -3784,6 +3799,12 @@ msgstr "serveur IRC courant"
msgid "nick on current IRC server"
msgstr "pseudo sur le serveur IRC courant"
msgid "channels on current IRC server"
msgstr "canaux sur le serveur IRC courant"
msgid "privates on current IRC server"
msgstr "privés sur le serveur IRC courant"
msgid "nicks on all channels of current IRC server"
msgstr "pseudos sur tous les canaux du serveur IRC courant"
@@ -3802,11 +3823,11 @@ msgstr "pseudos et noms d'hôtes du canal IRC courant"
msgid "topic of current IRC channel"
msgstr "titre du canal IRC courant"
msgid "IRC channels (on all servers)"
msgstr "canaux IRC (sur tous les serveurs)"
msgid "channels on all IRC servers"
msgstr "canaux sur tous les serveurs IRC"
msgid "IRC privates (on all servers)"
msgstr "canaux IRC (sur tous les serveurs)"
msgid "privates on all IRC servers"
msgstr "privés sur tous les serveurs IRC"
msgid "default part message for IRC channel"
msgstr "message de fin par défaut pour le canal IRC"
@@ -3904,8 +3925,11 @@ msgstr "utiliser la couleur du pseudo dans les messages du serveur"
msgid "merge server buffers"
msgstr "mélange des tampons de serveur"
msgid "open new channels/privates near server"
msgstr "ouvrir les nouveaux canaux/privés près du serveur"
msgid "open new channels near server"
msgstr "ouvrir les nouveaux canaux près du serveur"
msgid "open new privates near server"
msgstr "ouvrir les nouveaux privés près du serveur"
msgid "text to display before nick in chat window"
msgstr "texte à afficher avant le pseudo dans la fenêtre de discussion"
@@ -3994,6 +4018,9 @@ msgstr "couleur du pseudo dans la barre de saisie"
msgid "color for away item"
msgstr "couleur pour l'objet away"
msgid "color for channel modes, near channel name"
msgstr "couleur pour les modes du canal, à côté du nom du canal"
msgid ""
"default part message (leaving channel) (\"%v\" will be replaced by WeeChat "
"version in string)"
@@ -4304,7 +4331,7 @@ msgid "%sTopic for %s%s%s set by %s%s%s on %s"
msgstr "%sTitre pour %s%s%s défini par %s%s%s le %s"
#, c-format
msgid "%s%s%s%s has invited %s%s%s on %s%s"
msgid "%s%s%s%s has invited %s%s%s to %s%s"
msgstr "%s%s%s%s a invité %s%s%s sur %s%s"
#, c-format
@@ -4611,7 +4638,7 @@ msgstr ""
#, c-format
msgid ""
"%s%s: unable to start logging for buffer \"%s\": filename \"%s\" is already "
"user by another buffer (check your log settings)"
"used by another buffer (check your log settings)"
msgstr ""
"%s%s: impossible de démarrer l'enregistrement pour le tampon \"%s\": le nom "
"de fichier \"%s\" est déjà utilisé par un autre tampon (vérifiez vos options "
@@ -4766,6 +4793,13 @@ msgstr ""
"l'option \"path\" est utilisée pour construire le chemin complet vers le "
"fichier); les variables locales du tampon sont permises"
msgid ""
"replacement char for special chars in filename built with mask (like "
"directory delimiter)"
msgstr ""
"caractère de remplacement dans le nom de fichier construit avec le masque "
"(comme le délimiteur de répertoire)"
msgid "write information line in log file when log starts or ends for a buffer"
msgstr ""
"écrire une ligne d'information dans le fichier log quand le log démarre ou "
@@ -4858,6 +4892,14 @@ msgstr "liste des fenêtres"
msgid "%sError: unable to load plugin \"%s\": %s"
msgstr "%sErreur: impossible de charger l'extension \"%s\": %s"
#, c-format
msgid ""
"%sIf you're trying to load a script and not a C plugin, try command to load "
"scripts (/perl, /python, ...)"
msgstr ""
"%sSi vous essayez de charger un script et non une extension C, essayez la "
"commande pour charger les scripts (/perl, /python, ...)"
#, c-format
msgid "%sError: symbol \"%s\" not found in plugin \"%s\", failed to load"
msgstr ""
@@ -5236,8 +5278,8 @@ msgid "list/load/unload scripts"
msgstr "liste/charge/décharge des scripts"
msgid ""
"[list [name]] | [listfull [name]] [load filename] | [autoload] | [reload] | "
"[unload [name]]"
"[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] "
"| [unload [name]]"
msgstr ""
"[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | "
"[unload [nom]]"
@@ -5677,3 +5719,12 @@ msgstr "%s%s: impossible de positionner l'option \"nonblock\" pour la socket"
#, c-format
msgid "%s%s: timeout for \"%s\" with %s"
msgstr "%s%s: délai d'attente dépassé pour \"%s\" avec %s"
#~ msgid "display '+' if buffer name is truncated"
#~ msgstr "afficher '+' si le nom du tampon est tronqué"
#~ msgid "text color for nick name in input line"
#~ msgstr "couleur du texte pour le pseudo dans la ligne de saisie"
#~ msgid "text color for nicklist separator"
#~ msgstr "couleur du texte pour le séparateur de la liste des pseudos"
+68 -32
View File
@@ -10,10 +10,10 @@
#
msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.0-dev\n"
"Project-Id-Version: WeeChat 0.3.0\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2009-06-17 11:10+0200\n"
"PO-Revision-Date: 2009-05-11 13:02+0200\n"
"POT-Creation-Date: 2009-09-04 10:38+0200\n"
"PO-Revision-Date: 2009-09-06 10:02+0200\n"
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"MIME-Version: 1.0\n"
@@ -777,7 +777,7 @@ msgstr ""
msgid ""
" add: add a new bar\n"
" barname: name of bar (must be unique)\n"
" type: root: outside windows),\n"
" type: root: outside windows,\n"
" window: inside windows, with optional conditions (see below)\n"
" cond1,...: condition(s) for displaying bar (only for type \"window\"):\n"
" active: on active window\n"
@@ -785,7 +785,6 @@ msgid ""
" nicklist: on windows with nicklist\n"
" without condition, bar is always displayed\n"
" position: bottom, top, left or right\n"
" filling: horizontal, vertical, columns_horizontal or columns_vertical\n"
" size: size of bar (in chars)\n"
" separator: 1 for using separator (line), 0 or nothing means no "
"separator\n"
@@ -959,7 +958,7 @@ msgid ""
" tags: comma separated list of tags, for example: \"irc_join,"
"irc_part,irc_quit\"\n"
" regex: regular expression to search in line (use \\t to separate "
"prefix from message)\n"
"prefix from message, special chars like '|' must be escaped: '\\|')\n"
"\n"
"The default key alt+'=' toggles filtering on/off.\n"
"\n"
@@ -1467,11 +1466,24 @@ msgstr "névlista helye (top, left, right (alapértelmezett), bottom)"
msgid "max size for prefix (0 = no max size)"
msgstr ""
msgid "display '+' if prefix is truncated"
msgstr ""
msgid ""
"prefix alignment for buffer name, when many buffers are merged with same "
"number (none, left, right (default))"
msgstr ""
msgid ""
"max size for buffer name, when many buffers are merged with same number (0 = "
"no max size)"
msgstr ""
msgid ""
"display '+' if buffer name is truncated (when many buffers are merged with "
"same number)"
msgstr ""
#, fuzzy
msgid "string displayed after prefix"
msgstr "névkiegészítés után beszúrt szöveg"
@@ -1495,6 +1507,9 @@ msgid ""
"100 means one page, 50 half-page)"
msgstr ""
msgid "alert user when text sought is not found in buffer"
msgstr ""
msgid "set title for window (terminal for Curses GUI) with name and version"
msgstr ""
"ablak címsorának beállítása (Curses GUI esetén a terminálé) a program nevére "
@@ -1689,10 +1704,6 @@ msgstr "új adatot tartalmazó ablak színe (nem üzenetek) (státuszsor)"
msgid "text color for buffer with new data (status bar)"
msgstr "új adatot tartalmazó ablak színe (státuszsor)"
#, fuzzy
msgid "text color for nick name in input line"
msgstr "nevek színe"
#, fuzzy
msgid "text color for unsucessful text search in input line"
msgstr "információs pult határolóinak színe"
@@ -1733,10 +1744,6 @@ msgstr "név színe"
msgid "text color for '+' when scrolling nicks in nicklist"
msgstr "a '+' jel színe névlista görgetésekor"
#, fuzzy
msgid "text color for nicklist separator"
msgstr "névelválasztó színe"
msgid ""
"default completion template (please see documentation for template codes and "
"values)"
@@ -2383,7 +2390,7 @@ msgstr ""
msgid "%s%s: error creating aspell dictionary \"%s\" => \"%s\""
msgstr "%s nincs elég memória az információs pult üzenethez\n"
msgid "color used for mispelled words"
msgid "color used for misspelled words"
msgstr ""
msgid ""
@@ -2394,7 +2401,7 @@ msgstr ""
msgid ""
"default dictionary (or comma separated list of dictionaries) to use when "
"buffer has no dictionary defined (leave blank to disable aspell on buffers "
"for which you didn't explicitely enabled it)"
"for which you didn't explicitly enabled it)"
msgstr ""
msgid "check words during text search in buffer"
@@ -3043,7 +3050,8 @@ msgstr "név: név"
msgid "join a channel"
msgstr "belépés egy szobába"
msgid "channel[,channel] [key[,key]]"
#, fuzzy
msgid "[channel[,channel] [key[,key]]]"
msgstr "szoba[,szoba] [kulcs[,kulcs]]"
msgid ""
@@ -3647,6 +3655,14 @@ msgstr "csatlakozás a szerver(ek)hez"
msgid "nick on current IRC server"
msgstr "csatlakozás a szerver(ek)hez"
#, fuzzy
msgid "channels on current IRC server"
msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
#, fuzzy
msgid "privates on current IRC server"
msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
#, fuzzy
msgid "nicks on all channels of current IRC server"
msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
@@ -3671,11 +3687,11 @@ msgid "topic of current IRC channel"
msgstr "felhasználók listája a szobában"
#, fuzzy
msgid "IRC channels (on all servers)"
msgid "channels on all IRC servers"
msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
#, fuzzy
msgid "IRC privates (on all servers)"
msgid "privates on all IRC servers"
msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
#, fuzzy
@@ -3781,7 +3797,12 @@ msgstr "helyi idő lekérdezése a szerverről"
msgid "merge server buffers"
msgstr "pufferek kezelése"
msgid "open new channels/privates near server"
#, fuzzy
msgid "open new channels near server"
msgstr "az új szobák/privát beszélgetések a szerverhez közel nyíljanak"
#, fuzzy
msgid "open new privates near server"
msgstr "az új szobák/privát beszélgetések a szerverhez közel nyíljanak"
msgid "text to display before nick in chat window"
@@ -3861,6 +3882,10 @@ msgstr "nevek színe"
msgid "color for away item"
msgstr "távollevő felhasználók nevének színe"
#, fuzzy
msgid "color for channel modes, near channel name"
msgstr "szobanevek színe az eseményekben"
#, fuzzy
msgid ""
"default part message (leaving channel) (\"%v\" will be replaced by WeeChat "
@@ -4173,7 +4198,7 @@ msgid "%sTopic for %s%s%s set by %s%s%s on %s"
msgstr "A témát beállította: %s%s%s, %s"
#, fuzzy, c-format
msgid "%s%s%s%s has invited %s%s%s on %s%s"
msgid "%s%s%s%s has invited %s%s%s to %s%s"
msgstr "%s%s%s meghívta %s%s%s-t %s%s-kor\n"
#, fuzzy, c-format
@@ -4466,7 +4491,7 @@ msgstr ""
#, c-format
msgid ""
"%s%s: unable to start logging for buffer \"%s\": filename \"%s\" is already "
"user by another buffer (check your log settings)"
"used by another buffer (check your log settings)"
msgstr ""
#, fuzzy, c-format
@@ -4582,6 +4607,11 @@ msgid ""
"complete path to file); local buffer variables are permitted"
msgstr ""
msgid ""
"replacement char for special chars in filename built with mask (like "
"directory delimiter)"
msgstr ""
msgid "write information line in log file when log starts or ends for a buffer"
msgstr ""
@@ -4692,6 +4722,12 @@ msgstr "Mellőzések listája:\n"
msgid "%sError: unable to load plugin \"%s\": %s"
msgstr "%s nem sikerült a modult betölteni \"%s\": %s\n"
#, c-format
msgid ""
"%sIf you're trying to load a script and not a C plugin, try command to load "
"scripts (/perl, /python, ...)"
msgstr ""
#, fuzzy, c-format
msgid "%sError: symbol \"%s\" not found in plugin \"%s\", failed to load"
msgstr ""
@@ -5067,8 +5103,8 @@ msgstr "modulok listázása/betöltése/eltávolítása"
#, fuzzy
msgid ""
"[list [name]] | [listfull [name]] [load filename] | [autoload] | [reload] | "
"[unload [name]]"
"[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] "
"| [unload [name]]"
msgstr ""
"[list [név]] | [listfull [név]] | [load fájlnév] | [autoload] | [reload "
"[név]] | [unload [név]]"
@@ -5509,6 +5545,14 @@ msgstr "%s DCC: nem sikerült 'nonblock' opciót beállítani a csatornán\n"
msgid "%s%s: timeout for \"%s\" with %s"
msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n"
#, fuzzy
#~ msgid "text color for nick name in input line"
#~ msgstr "nevek színe"
#, fuzzy
#~ msgid "text color for nicklist separator"
#~ msgstr "névelválasztó színe"
#, fuzzy
#~ msgid "servers"
#~ msgstr "szerver"
@@ -5687,10 +5731,6 @@ msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n"
#~ msgid "use same buffer for all servers"
#~ msgstr "ugyanazon puffer használata minden szerverhez"
#, fuzzy
#~ msgid "open new MUCs/privates near server"
#~ msgstr "az új szobák/privát beszélgetések a szerverhez közel nyíljanak"
#~ msgid "smart completion for nicks (completes with last speakers first)"
#~ msgstr "okos névkiegészítés (először az utolsó partnerre egészít ki)"
@@ -6153,10 +6193,6 @@ msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n"
#~ msgid "text color for server name in input line"
#~ msgstr "szerver nevének színe"
#, fuzzy
#~ msgid "text color for channel name in input line"
#~ msgstr "szobanevek színe az eseményekben"
#, fuzzy
#~ msgid "text color for delimiters in input line"
#~ msgstr "információs pult határolóinak színe"
+1775 -951
View File
File diff suppressed because it is too large Load Diff
+68 -32
View File
@@ -4,10 +4,10 @@
#
msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.0-dev\n"
"Project-Id-Version: WeeChat 0.3.0\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2009-06-17 11:10+0200\n"
"PO-Revision-Date: 2009-05-11 13:02+0200\n"
"POT-Creation-Date: 2009-09-04 10:38+0200\n"
"PO-Revision-Date: 2009-09-06 10:02+0200\n"
"Last-Translator: Pavel Shevchuk <stlwrt@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"MIME-Version: 1.0\n"
@@ -771,7 +771,7 @@ msgstr ""
msgid ""
" add: add a new bar\n"
" barname: name of bar (must be unique)\n"
" type: root: outside windows),\n"
" type: root: outside windows,\n"
" window: inside windows, with optional conditions (see below)\n"
" cond1,...: condition(s) for displaying bar (only for type \"window\"):\n"
" active: on active window\n"
@@ -779,7 +779,6 @@ msgid ""
" nicklist: on windows with nicklist\n"
" without condition, bar is always displayed\n"
" position: bottom, top, left or right\n"
" filling: horizontal, vertical, columns_horizontal or columns_vertical\n"
" size: size of bar (in chars)\n"
" separator: 1 for using separator (line), 0 or nothing means no "
"separator\n"
@@ -954,7 +953,7 @@ msgid ""
" tags: comma separated list of tags, for example: \"irc_join,"
"irc_part,irc_quit\"\n"
" regex: regular expression to search in line (use \\t to separate "
"prefix from message)\n"
"prefix from message, special chars like '|' must be escaped: '\\|')\n"
"\n"
"The default key alt+'=' toggles filtering on/off.\n"
"\n"
@@ -1470,11 +1469,24 @@ msgstr ""
msgid "max size for prefix (0 = no max size)"
msgstr ""
msgid "display '+' if prefix is truncated"
msgstr ""
msgid ""
"prefix alignment for buffer name, when many buffers are merged with same "
"number (none, left, right (default))"
msgstr ""
msgid ""
"max size for buffer name, when many buffers are merged with same number (0 = "
"no max size)"
msgstr ""
msgid ""
"display '+' if buffer name is truncated (when many buffers are merged with "
"same number)"
msgstr ""
#, fuzzy
msgid "string displayed after prefix"
msgstr "строка, вставляемая после автодополнения ника"
@@ -1498,6 +1510,9 @@ msgid ""
"100 means one page, 50 half-page)"
msgstr ""
msgid "alert user when text sought is not found in buffer"
msgstr ""
msgid "set title for window (terminal for Curses GUI) with name and version"
msgstr ""
"устанавливать заголовок окна (терминала при интерфейсе Curses) с именем и "
@@ -1692,10 +1707,6 @@ msgstr "цвет окна с новыми данными (но не сообще
msgid "text color for buffer with new data (status bar)"
msgstr "цвет окна с новыми данными (в строке состояния)"
#, fuzzy
msgid "text color for nick name in input line"
msgstr "цвет ников"
#, fuzzy
msgid "text color for unsucessful text search in input line"
msgstr "цвет разделителей информационной панели"
@@ -1736,10 +1747,6 @@ msgstr "цвет ника"
msgid "text color for '+' when scrolling nicks in nicklist"
msgstr "цвет '+' при прокрутке ников"
#, fuzzy
msgid "text color for nicklist separator"
msgstr "цвет разделителя ников"
msgid ""
"default completion template (please see documentation for template codes and "
"values)"
@@ -2386,7 +2393,7 @@ msgstr ""
msgid "%s%s: error creating aspell dictionary \"%s\" => \"%s\""
msgstr "%s недостаточно памяти для сообщения в строке информации\n"
msgid "color used for mispelled words"
msgid "color used for misspelled words"
msgstr ""
msgid ""
@@ -2397,7 +2404,7 @@ msgstr ""
msgid ""
"default dictionary (or comma separated list of dictionaries) to use when "
"buffer has no dictionary defined (leave blank to disable aspell on buffers "
"for which you didn't explicitely enabled it)"
"for which you didn't explicitly enabled it)"
msgstr ""
msgid "check words during text search in buffer"
@@ -3045,7 +3052,8 @@ msgstr "ник: ник"
msgid "join a channel"
msgstr "зайти на канал"
msgid "channel[,channel] [key[,key]]"
#, fuzzy
msgid "[channel[,channel] [key[,key]]]"
msgstr "канал[,канал] [ключ[,ключ]]"
msgid ""
@@ -3639,6 +3647,14 @@ msgstr "подключиться к серверу(-ам)"
msgid "nick on current IRC server"
msgstr "подключиться к серверу(-ам)"
#, fuzzy
msgid "channels on current IRC server"
msgstr "Список каналов, на которые заходить при соединении с сервером"
#, fuzzy
msgid "privates on current IRC server"
msgstr "Список каналов, на которые заходить при соединении с сервером"
#, fuzzy
msgid "nicks on all channels of current IRC server"
msgstr "Список каналов, на которые заходить при соединении с сервером"
@@ -3663,11 +3679,11 @@ msgid "topic of current IRC channel"
msgstr "список ников на канале"
#, fuzzy
msgid "IRC channels (on all servers)"
msgid "channels on all IRC servers"
msgstr "Список каналов, на которые заходить при соединении с сервером"
#, fuzzy
msgid "IRC privates (on all servers)"
msgid "privates on all IRC servers"
msgstr "Список каналов, на которые заходить при соединении с сервером"
#, fuzzy
@@ -3773,7 +3789,12 @@ msgstr "запросить местное время сервера"
msgid "merge server buffers"
msgstr "управление буферами"
msgid "open new channels/privates near server"
#, fuzzy
msgid "open new channels near server"
msgstr "открывать новые каналы/приваты рядом с сервером"
#, fuzzy
msgid "open new privates near server"
msgstr "открывать новые каналы/приваты рядом с сервером"
msgid "text to display before nick in chat window"
@@ -3853,6 +3874,10 @@ msgstr "цвет ников"
msgid "color for away item"
msgstr "цвет отошедших ников"
#, fuzzy
msgid "color for channel modes, near channel name"
msgstr "цвет имён при действиях"
#, fuzzy
msgid ""
"default part message (leaving channel) (\"%v\" will be replaced by WeeChat "
@@ -4165,7 +4190,7 @@ msgid "%sTopic for %s%s%s set by %s%s%s on %s"
msgstr "Тема установлена пользователем %s%s%s, %s"
#, fuzzy, c-format
msgid "%s%s%s%s has invited %s%s%s on %s%s"
msgid "%s%s%s%s has invited %s%s%s to %s%s"
msgstr "%s%s%s пригласил %s%s%s на канал %s%s\n"
#, fuzzy, c-format
@@ -4452,7 +4477,7 @@ msgstr ""
#, c-format
msgid ""
"%s%s: unable to start logging for buffer \"%s\": filename \"%s\" is already "
"user by another buffer (check your log settings)"
"used by another buffer (check your log settings)"
msgstr ""
#, fuzzy, c-format
@@ -4567,6 +4592,11 @@ msgid ""
"complete path to file); local buffer variables are permitted"
msgstr ""
msgid ""
"replacement char for special chars in filename built with mask (like "
"directory delimiter)"
msgstr ""
msgid "write information line in log file when log starts or ends for a buffer"
msgstr ""
@@ -4677,6 +4707,12 @@ msgstr "Список игнорирования:\n"
msgid "%sError: unable to load plugin \"%s\": %s"
msgstr "%s не могу загрузить plugin \"%s\": %s\n"
#, c-format
msgid ""
"%sIf you're trying to load a script and not a C plugin, try command to load "
"scripts (/perl, /python, ...)"
msgstr ""
#, fuzzy, c-format
msgid "%sError: symbol \"%s\" not found in plugin \"%s\", failed to load"
msgstr ""
@@ -5051,8 +5087,8 @@ msgstr "перечислить/загрузить/выгрузить plugin'ы"
#, fuzzy
msgid ""
"[list [name]] | [listfull [name]] [load filename] | [autoload] | [reload] | "
"[unload [name]]"
"[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] "
"| [unload [name]]"
msgstr ""
"[list [имя]] | [listfull [имя]] | [load имя_файла] | [autoload] | [reload "
"[имя]] | [unload [имя]]"
@@ -5488,6 +5524,14 @@ msgstr "%s DCC: не могу установить неблокирующий р
msgid "%s%s: timeout for \"%s\" with %s"
msgstr "%s нет аргумента для параметра \"%s\"\n"
#, fuzzy
#~ msgid "text color for nick name in input line"
#~ msgstr "цвет ников"
#, fuzzy
#~ msgid "text color for nicklist separator"
#~ msgstr "цвет разделителя ников"
#, fuzzy
#~ msgid "servers"
#~ msgstr "сервер"
@@ -5661,10 +5705,6 @@ msgstr "%s нет аргумента для параметра \"%s\"\n"
#~ msgid "use same buffer for all servers"
#~ msgstr "один буфер для всех серверов"
#, fuzzy
#~ msgid "open new MUCs/privates near server"
#~ msgstr "открывать новые каналы/приваты рядом с сервером"
#~ msgid "smart completion for nicks (completes with last speakers first)"
#~ msgstr "умное дополнение ников (начинает перебор с последних собеседников)"
@@ -6123,10 +6163,6 @@ msgstr "%s нет аргумента для параметра \"%s\"\n"
#~ msgid "text color for server name in input line"
#~ msgstr "цвет названия сервера"
#, fuzzy
#~ msgid "text color for channel name in input line"
#~ msgstr "цвет имён при действиях"
#, fuzzy
#~ msgid "text color for delimiters in input line"
#~ msgstr "цвет разделителей информационной панели"
+52 -20
View File
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2009-06-17 11:10+0200\n"
"POT-Creation-Date: 2009-09-04 10:38+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -687,7 +687,7 @@ msgstr ""
msgid ""
" add: add a new bar\n"
" barname: name of bar (must be unique)\n"
" type: root: outside windows),\n"
" type: root: outside windows,\n"
" window: inside windows, with optional conditions (see below)\n"
" cond1,...: condition(s) for displaying bar (only for type \"window\"):\n"
" active: on active window\n"
@@ -695,7 +695,6 @@ msgid ""
" nicklist: on windows with nicklist\n"
" without condition, bar is always displayed\n"
" position: bottom, top, left or right\n"
" filling: horizontal, vertical, columns_horizontal or columns_vertical\n"
" size: size of bar (in chars)\n"
" separator: 1 for using separator (line), 0 or nothing means no "
"separator\n"
@@ -832,7 +831,7 @@ msgid ""
" tags: comma separated list of tags, for example: \"irc_join,"
"irc_part,irc_quit\"\n"
" regex: regular expression to search in line (use \\t to separate "
"prefix from message)\n"
"prefix from message, special chars like '|' must be escaped: '\\|')\n"
"\n"
"The default key alt+'=' toggles filtering on/off.\n"
"\n"
@@ -1258,11 +1257,24 @@ msgstr ""
msgid "max size for prefix (0 = no max size)"
msgstr ""
msgid "display '+' if prefix is truncated"
msgstr ""
msgid ""
"prefix alignment for buffer name, when many buffers are merged with same "
"number (none, left, right (default))"
msgstr ""
msgid ""
"max size for buffer name, when many buffers are merged with same number (0 = "
"no max size)"
msgstr ""
msgid ""
"display '+' if buffer name is truncated (when many buffers are merged with "
"same number)"
msgstr ""
msgid "string displayed after prefix"
msgstr ""
@@ -1283,6 +1295,9 @@ msgid ""
"100 means one page, 50 half-page)"
msgstr ""
msgid "alert user when text sought is not found in buffer"
msgstr ""
msgid "set title for window (terminal for Curses GUI) with name and version"
msgstr ""
@@ -1429,9 +1444,6 @@ msgstr ""
msgid "text color for buffer with new data (status bar)"
msgstr ""
msgid "text color for nick name in input line"
msgstr ""
msgid "text color for unsucessful text search in input line"
msgstr ""
@@ -1462,9 +1474,6 @@ msgstr ""
msgid "text color for '+' when scrolling nicks in nicklist"
msgstr ""
msgid "text color for nicklist separator"
msgstr ""
msgid ""
"default completion template (please see documentation for template codes and "
"values)"
@@ -2035,7 +2044,7 @@ msgstr ""
msgid "%s%s: error creating aspell dictionary \"%s\" => \"%s\""
msgstr ""
msgid "color used for mispelled words"
msgid "color used for misspelled words"
msgstr ""
msgid ""
@@ -2046,7 +2055,7 @@ msgstr ""
msgid ""
"default dictionary (or comma separated list of dictionaries) to use when "
"buffer has no dictionary defined (leave blank to disable aspell on buffers "
"for which you didn't explicitely enabled it)"
"for which you didn't explicitly enabled it)"
msgstr ""
msgid "check words during text search in buffer"
@@ -2642,7 +2651,7 @@ msgstr ""
msgid "join a channel"
msgstr ""
msgid "channel[,channel] [key[,key]]"
msgid "[channel[,channel] [key[,key]]]"
msgstr ""
msgid ""
@@ -3103,6 +3112,12 @@ msgstr ""
msgid "nick on current IRC server"
msgstr ""
msgid "channels on current IRC server"
msgstr ""
msgid "privates on current IRC server"
msgstr ""
msgid "nicks on all channels of current IRC server"
msgstr ""
@@ -3121,10 +3136,10 @@ msgstr ""
msgid "topic of current IRC channel"
msgstr ""
msgid "IRC channels (on all servers)"
msgid "channels on all IRC servers"
msgstr ""
msgid "IRC privates (on all servers)"
msgid "privates on all IRC servers"
msgstr ""
msgid "default part message for IRC channel"
@@ -3210,7 +3225,10 @@ msgstr ""
msgid "merge server buffers"
msgstr ""
msgid "open new channels/privates near server"
msgid "open new channels near server"
msgstr ""
msgid "open new privates near server"
msgstr ""
msgid "text to display before nick in chat window"
@@ -3283,6 +3301,9 @@ msgstr ""
msgid "color for away item"
msgstr ""
msgid "color for channel modes, near channel name"
msgstr ""
msgid ""
"default part message (leaving channel) (\"%v\" will be replaced by WeeChat "
"version in string)"
@@ -3573,7 +3594,7 @@ msgid "%sTopic for %s%s%s set by %s%s%s on %s"
msgstr ""
#, c-format
msgid "%s%s%s%s has invited %s%s%s on %s%s"
msgid "%s%s%s%s has invited %s%s%s to %s%s"
msgstr ""
#, c-format
@@ -3853,7 +3874,7 @@ msgstr ""
#, c-format
msgid ""
"%s%s: unable to start logging for buffer \"%s\": filename \"%s\" is already "
"user by another buffer (check your log settings)"
"used by another buffer (check your log settings)"
msgstr ""
#, c-format
@@ -3962,6 +3983,11 @@ msgid ""
"complete path to file); local buffer variables are permitted"
msgstr ""
msgid ""
"replacement char for special chars in filename built with mask (like "
"directory delimiter)"
msgstr ""
msgid "write information line in log file when log starts or ends for a buffer"
msgstr ""
@@ -4050,6 +4076,12 @@ msgstr ""
msgid "%sError: unable to load plugin \"%s\": %s"
msgstr ""
#, c-format
msgid ""
"%sIf you're trying to load a script and not a C plugin, try command to load "
"scripts (/perl, /python, ...)"
msgstr ""
#, c-format
msgid "%sError: symbol \"%s\" not found in plugin \"%s\", failed to load"
msgstr ""
@@ -4396,8 +4428,8 @@ msgid "list/load/unload scripts"
msgstr ""
msgid ""
"[list [name]] | [listfull [name]] [load filename] | [autoload] | [reload] | "
"[unload [name]]"
"[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload] "
"| [unload [name]]"
msgstr ""
msgid ""
+4 -5
View File
@@ -1490,7 +1490,7 @@ command_help (void *data, struct t_gui_buffer *buffer,
GUI_COLOR(GUI_COLOR_CHAT));
gui_chat_printf (NULL, " %s: %s",
_("description"),
_(ptr_option->description));
(ptr_option->description) ? _(ptr_option->description) : "");
switch (ptr_option->type)
{
case CONFIG_OPTION_TYPE_BOOLEAN:
@@ -3914,7 +3914,7 @@ command_init ()
"scroll_value] | [list] | [listfull] | [listitems]"),
N_(" add: add a new bar\n"
" barname: name of bar (must be unique)\n"
" type: root: outside windows),\n"
" type: root: outside windows,\n"
" window: inside windows, with optional "
"conditions (see below)\n"
" cond1,...: condition(s) for displaying bar (only for "
@@ -3924,8 +3924,6 @@ command_init ()
" nicklist: on windows with nicklist\n"
" without condition, bar is always displayed\n"
" position: bottom, top, left or right\n"
" filling: horizontal, vertical, columns_horizontal "
"or columns_vertical\n"
" size: size of bar (in chars)\n"
" separator: 1 for using separator (line), 0 or nothing "
"means no separator\n"
@@ -4075,7 +4073,8 @@ command_init ()
" tags: comma separated list of tags, for "
"example: \"irc_join,irc_part,irc_quit\"\n"
" regex: regular expression to search in "
"line (use \\t to separate prefix from message)\n\n"
"line (use \\t to separate prefix from message, special "
"chars like '|' must be escaped: '\\|')\n\n"
"The default key alt+'=' toggles filtering on/off.\n\n"
"Examples:\n"
" use IRC smart filter for join/part/quit messages:\n"
+7 -7
View File
@@ -453,9 +453,9 @@ config_file_new_option (struct t_config_file *config_file,
case CONFIG_OPTION_TYPE_INTEGER:
if (string_values && string_values[0])
{
new_option->string_values = string_explode (string_values,
"|", 0, 0,
&argc);
new_option->string_values = string_split (string_values,
"|", 0, 0,
&argc);
if (!new_option->string_values)
goto error;
}
@@ -2043,7 +2043,7 @@ config_file_read_internal (struct t_config_file *config_file, int reload)
&& (ptr_line[0] != '\n'))
{
/* beginning of section */
if (ptr_line[0] == '[')
if ((ptr_line[0] == '[') && !strchr (ptr_line, '='))
{
pos = strchr (line, ']');
if (!pos)
@@ -2291,7 +2291,7 @@ config_file_option_free_data (struct t_config_option *option)
if (option->description)
free (option->description);
if (option->string_values)
string_free_exploded (option->string_values);
string_free_split (option->string_values);
if (option->default_value)
free (option->default_value);
if (option->value)
@@ -2557,8 +2557,8 @@ config_file_add_to_infolist (struct t_infolist *infolist,
free (option_full_name);
return 0;
}
string_values = string_build_with_exploded ((const char **)ptr_option->string_values,
"|");
string_values = string_build_with_split_string ((const char **)ptr_option->string_values,
"|");
if (!infolist_new_var_string (ptr_item,
"string_values",
string_values))
+36 -24
View File
@@ -92,13 +92,17 @@ struct t_config_option *config_look_paste_max_lines;
struct t_config_option *config_look_prefix[GUI_CHAT_NUM_PREFIXES];
struct t_config_option *config_look_prefix_align;
struct t_config_option *config_look_prefix_align_max;
struct t_config_option *config_look_prefix_align_more;
struct t_config_option *config_look_prefix_buffer_align;
struct t_config_option *config_look_prefix_buffer_align_max;
struct t_config_option *config_look_prefix_buffer_align_more;
struct t_config_option *config_look_prefix_suffix;
struct t_config_option *config_look_read_marker;
struct t_config_option *config_look_save_config_on_exit;
struct t_config_option *config_look_save_layout_on_exit;
struct t_config_option *config_look_scroll_amount;
struct t_config_option *config_look_scroll_page_percent;
struct t_config_option *config_look_search_text_not_found_alert;
struct t_config_option *config_look_set_title;
/* config, colors section */
@@ -137,7 +141,6 @@ struct t_config_option *config_color_status_data_private;
struct t_config_option *config_color_status_data_highlight;
struct t_config_option *config_color_status_data_other;
struct t_config_option *config_color_status_more;
struct t_config_option *config_color_input_nick;
struct t_config_option *config_color_input_text_not_found;
struct t_config_option *config_color_input_actions;
struct t_config_option *config_color_nicklist_group;
@@ -148,7 +151,6 @@ struct t_config_option *config_color_nicklist_prefix3;
struct t_config_option *config_color_nicklist_prefix4;
struct t_config_option *config_color_nicklist_prefix5;
struct t_config_option *config_color_nicklist_more;
struct t_config_option *config_color_nicklist_separator;
/* config, completion section */
@@ -760,7 +762,7 @@ config_weechat_layout_read_cb (void *data, struct t_config_file *config_file,
{
if (string_strcasecmp (option_name, "buffer") == 0)
{
argv = string_explode (value, ";", 0, 0, &argc);
argv = string_split (value, ";", 0, 0, &argc);
if (argv)
{
if (argc >= 3)
@@ -774,12 +776,12 @@ config_weechat_layout_read_cb (void *data, struct t_config_file *config_file,
argv[0], argv[1], number1);
}
}
string_free_exploded (argv);
string_free_split (argv);
}
}
else if (string_strcasecmp (option_name, "window") == 0)
{
argv = string_explode (value, ";", 0, 0, &argc);
argv = string_split (value, ";", 0, 0, &argc);
if (argv)
{
if (argc >= 6)
@@ -808,7 +810,7 @@ config_weechat_layout_read_cb (void *data, struct t_config_file *config_file,
argv[5] : NULL);
}
}
string_free_exploded (argv);
string_free_split (argv);
}
}
}
@@ -1035,17 +1037,17 @@ config_weechat_filter_read_cb (void *data,
if (option_name && value && value[0])
{
argv = string_explode (value, ";", 0, 0, &argc);
argv_eol = string_explode (value, ";", 1, 0, NULL);
argv = string_split (value, ";", 0, 0, &argc);
argv_eol = string_split (value, ";", 1, 0, NULL);
if (argv && argv_eol && (argc >= 4))
{
gui_filter_new ((string_strcasecmp (argv[0], "on") == 0) ? 1 : 0,
option_name, argv[1], argv[2], argv_eol[3]);
}
if (argv)
string_free_exploded (argv);
string_free_split (argv);
if (argv_eol)
string_free_exploded (argv_eol);
string_free_split (argv_eol);
}
return WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE;
@@ -1370,13 +1372,30 @@ config_weechat_init_options ()
weechat_config_file, ptr_section,
"prefix_align_max", "integer",
N_("max size for prefix (0 = no max size)"),
NULL, 0, 64, "0", NULL, 0, NULL, NULL, &config_change_buffers, NULL, NULL, NULL);
NULL, 0, 128, "0", NULL, 0, NULL, NULL, &config_change_buffers, NULL, NULL, NULL);
config_look_prefix_align_more = config_file_new_option (
weechat_config_file, ptr_section,
"prefix_align_more", "boolean",
N_("display '+' if prefix is truncated"),
NULL, 0, 0, "on", NULL, 0, NULL, NULL, &config_change_buffers, NULL, NULL, NULL);
config_look_prefix_buffer_align = config_file_new_option (
weechat_config_file, ptr_section,
"prefix_buffer_align", "integer",
N_("prefix alignment for buffer name, when many buffers are merged "
"with same number (none, left, right (default))"),
"none|left|right", 0, 0, "right", NULL, 0, NULL, NULL, &config_change_buffers, NULL, NULL, NULL);
config_look_prefix_buffer_align_max = config_file_new_option (
weechat_config_file, ptr_section,
"prefix_buffer_align_max", "integer",
N_("max size for buffer name, when many buffers are merged with same "
"number (0 = no max size)"),
NULL, 0, 128, "0", NULL, 0, NULL, NULL, &config_change_buffers, NULL, NULL, NULL);
config_look_prefix_buffer_align_more = config_file_new_option (
weechat_config_file, ptr_section,
"prefix_buffer_align_more", "boolean",
N_("display '+' if buffer name is truncated (when many buffers are "
"merged with same number)"),
NULL, 0, 0, "on", NULL, 0, NULL, NULL, &config_change_buffers, NULL, NULL, NULL);
config_look_prefix_suffix = config_file_new_option (
weechat_config_file, ptr_section,
"prefix_suffix", "string",
@@ -1397,7 +1416,7 @@ config_weechat_init_options ()
weechat_config_file, ptr_section,
"save_layout_on_exit", "integer",
N_("save layout on exit (buffers, windows, or both)"),
"none|buffers|windows|all", 0, 0, "all", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
"none|buffers|windows|all", 0, 0, "none", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
config_look_scroll_amount = config_file_new_option (
weechat_config_file, ptr_section,
"scroll_amount", "integer",
@@ -1410,6 +1429,11 @@ config_weechat_init_options ()
N_("percent of screen to scroll when scrolling one page up or down "
"(for example 100 means one page, 50 half-page)"),
NULL, 1, 100, "100", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
config_look_search_text_not_found_alert = config_file_new_option (
weechat_config_file, ptr_section,
"search_text_not_found_alert", "boolean",
N_("alert user when text sought is not found in buffer"),
NULL, 0, 0, "on", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
config_look_set_title = config_file_new_option (
weechat_config_file, ptr_section,
"set_title", "boolean",
@@ -1717,12 +1741,6 @@ config_weechat_init_options ()
NULL, -1, 0, "yellow", NULL, 0,
NULL, NULL, &config_change_color, NULL, NULL, NULL);
/* input window */
config_color_input_nick = config_file_new_option (
weechat_config_file, ptr_section,
"input_nick", "color",
N_("text color for nick name in input line"),
NULL, -1, 0, "lightcyan", NULL, 0,
NULL, NULL, &config_change_color, NULL, NULL, NULL);
config_color_input_text_not_found = config_file_new_option (
weechat_config_file, ptr_section,
"input_text_not_found", "color",
@@ -1784,12 +1802,6 @@ config_weechat_init_options ()
N_("text color for '+' when scrolling nicks in nicklist"),
NULL, -1, 0, "lightmagenta", NULL, 0,
NULL, NULL, &config_change_color, NULL, NULL, NULL);
config_color_nicklist_separator = config_file_new_option (
weechat_config_file, ptr_section,
"nicklist_separator", "color",
N_("text color for nicklist separator"),
NULL, -1, 0, "blue", NULL, 0,
NULL, NULL, &config_change_color, NULL, NULL, NULL);
/* completion */
ptr_section = config_file_new_section (weechat_config_file, "completion",
+4 -2
View File
@@ -107,13 +107,17 @@ extern struct t_config_option *config_look_paste_max_lines;
extern struct t_config_option *config_look_prefix[];
extern struct t_config_option *config_look_prefix_align;
extern struct t_config_option *config_look_prefix_align_max;
extern struct t_config_option *config_look_prefix_align_more;
extern struct t_config_option *config_look_prefix_buffer_align;
extern struct t_config_option *config_look_prefix_buffer_align_max;
extern struct t_config_option *config_look_prefix_buffer_align_more;
extern struct t_config_option *config_look_prefix_suffix;
extern struct t_config_option *config_look_read_marker;
extern struct t_config_option *config_look_save_config_on_exit;
extern struct t_config_option *config_look_save_layout_on_exit;
extern struct t_config_option *config_look_scroll_amount;
extern struct t_config_option *config_look_scroll_page_percent;
extern struct t_config_option *config_look_search_text_not_found_alert;
extern struct t_config_option *config_look_set_title;
extern struct t_config_option *config_color_separator;
@@ -150,7 +154,6 @@ extern struct t_config_option *config_color_status_data_private;
extern struct t_config_option *config_color_status_data_highlight;
extern struct t_config_option *config_color_status_data_other;
extern struct t_config_option *config_color_status_more;
extern struct t_config_option *config_color_input_nick;
extern struct t_config_option *config_color_input_text_not_found;
extern struct t_config_option *config_color_input_actions;
extern struct t_config_option *config_color_nicklist_group;
@@ -161,7 +164,6 @@ extern struct t_config_option *config_color_nicklist_prefix3;
extern struct t_config_option *config_color_nicklist_prefix4;
extern struct t_config_option *config_color_nicklist_prefix5;
extern struct t_config_option *config_color_nicklist_more;
extern struct t_config_option *config_color_nicklist_separator;
extern struct t_config_option *config_completion_default_template;
extern struct t_config_option *config_completion_nick_add_space;
+32 -17
View File
@@ -426,9 +426,9 @@ hook_command_build_completion (struct t_hook_command *hook_command)
hook_command->cplt_templates_static[i] = strdup (hook_command->cplt_templates[i]);
/* build arguments for each template */
hook_command->cplt_template_args[i] = string_explode (hook_command->cplt_templates[i],
" ", 0, 0,
&(hook_command->cplt_template_num_args[i]));
hook_command->cplt_template_args[i] = string_split (hook_command->cplt_templates[i],
" ", 0, 0,
&(hook_command->cplt_template_num_args[i]));
if (hook_command->cplt_template_num_args[i] > hook_command->cplt_template_num_args_concat)
hook_command->cplt_template_num_args_concat = hook_command->cplt_template_num_args[i];
}
@@ -464,8 +464,8 @@ hook_command_build_completion (struct t_hook_command *hook_command)
{
if (i < hook_command->cplt_template_num_args[j])
{
items = string_explode (hook_command->cplt_template_args[j][i],
"|", 0, 0, &num_items);
items = string_split (hook_command->cplt_template_args[j][i],
"|", 0, 0, &num_items);
for (k = 0; k < num_items; k++)
{
if (!weelist_search (list, items[k]))
@@ -478,11 +478,12 @@ hook_command_build_completion (struct t_hook_command *hook_command)
NULL);
}
}
string_free_exploded (items);
string_free_split (items);
}
}
}
}
weelist_free (list);
}
}
@@ -583,13 +584,13 @@ hook_command_exec (struct t_gui_buffer *buffer, int any_plugin,
rc = -1;
argv = string_explode (string, " ", 0, 0, &argc);
argv = string_split (string, " ", 0, 0, &argc);
if (argc == 0)
{
string_free_exploded (argv);
string_free_split (argv);
return -1;
}
argv_eol = string_explode (string, " ", 1, 0, NULL);
argv_eol = string_split (string, " ", 1, 0, NULL);
hook_exec_start ();
@@ -659,8 +660,8 @@ hook_command_exec (struct t_gui_buffer *buffer, int any_plugin,
}
}
string_free_exploded (argv);
string_free_exploded (argv_eol);
string_free_split (argv);
string_free_split (argv_eol);
hook_exec_end ();
@@ -1230,7 +1231,7 @@ hook_process_child (struct t_hook *hook_process)
void
hook_process_child_read (struct t_hook *hook_process, int fd,
int stdout, struct t_hook **hook_fd)
int out, struct t_hook **hook_fd)
{
char buffer[4096];
int num_read;
@@ -1243,8 +1244,8 @@ hook_process_child_read (struct t_hook *hook_process, int fd,
(hook_process->callback_data,
HOOK_PROCESS(hook_process, command),
WEECHAT_HOOK_PROCESS_RUNNING,
(stdout) ? buffer : NULL,
(stdout) ? NULL : buffer);
(out) ? buffer : NULL,
(out) ? NULL : buffer);
}
else if (num_read == 0)
{
@@ -1515,8 +1516,8 @@ hook_print (struct t_weechat_plugin *plugin, struct t_gui_buffer *buffer,
new_hook_print->buffer = buffer;
if (tags)
{
new_hook_print->tags_array = string_explode (tags, ",", 0, 0,
&new_hook_print->tags_count);
new_hook_print->tags_array = string_split (tags, ",", 0, 0,
&new_hook_print->tags_count);
}
else
{
@@ -2172,12 +2173,26 @@ unhook (struct t_hook *hook)
free (HOOK_COMMAND(hook, cplt_templates)[i]);
if (HOOK_COMMAND(hook, cplt_templates_static)[i])
free (HOOK_COMMAND(hook, cplt_templates_static)[i]);
string_free_exploded (HOOK_COMMAND(hook, cplt_template_args)[i]);
string_free_split (HOOK_COMMAND(hook, cplt_template_args)[i]);
}
free (HOOK_COMMAND(hook, cplt_templates));
}
if (HOOK_COMMAND(hook, cplt_templates_static))
free (HOOK_COMMAND(hook, cplt_templates_static));
if (HOOK_COMMAND(hook, cplt_template_num_args))
free (HOOK_COMMAND(hook, cplt_template_num_args));
if (HOOK_COMMAND(hook, cplt_template_args))
free (HOOK_COMMAND(hook, cplt_template_args));
if (HOOK_COMMAND(hook, cplt_template_args_concat))
{
for (i = 0;
i < HOOK_COMMAND(hook, cplt_template_num_args_concat);
i++)
{
free (HOOK_COMMAND(hook, cplt_template_args_concat[i]));
}
free (HOOK_COMMAND(hook, cplt_template_args_concat));
}
break;
case HOOK_TYPE_COMMAND_RUN:
if (HOOK_COMMAND_RUN(hook, command))
+2 -2
View File
@@ -160,8 +160,8 @@ struct t_hook_fd
/* hook process */
typedef int (t_hook_callback_process)(void *data, const char *command,
int return_code, const char *stdout,
const char *stderr);
int return_code, const char *out,
const char *err);
struct t_hook_process
{
+31 -29
View File
@@ -727,23 +727,23 @@ string_mask_to_regex (const char *mask)
}
/*
* string_explode: explode a string according to separators
* examples:
* string_explode ("abc de fghi", " ", 0, 0, NULL)
* ==> array[0] = "abc"
* array[1] = "de"
* array[2] = "fghi"
* array[3] = NULL
* string_explode ("abc de fghi", " ", 1, 0, NULL)
* ==> array[0] = "abc de fghi"
* array[1] = "de fghi"
* array[2] = "fghi"
* array[3] = NULL
* string_split: split a string according to separators
* examples:
* string_split ("abc de fghi", " ", 0, 0, NULL)
* ==> array[0] = "abc"
* array[1] = "de"
* array[2] = "fghi"
* array[3] = NULL
* string_split ("abc de fghi", " ", 1, 0, NULL)
* ==> array[0] = "abc de fghi"
* array[1] = "de fghi"
* array[2] = "fghi"
* array[3] = NULL
*/
char **
string_explode (const char *string, const char *separators, int keep_eol,
int num_items_max, int *num_items)
string_split (const char *string, const char *separators, int keep_eol,
int num_items_max, int *num_items)
{
int i, j, n_items;
char *string2, **array;
@@ -867,42 +867,44 @@ string_explode (const char *string, const char *separators, int keep_eol,
}
/*
* string_free_exploded: free an exploded string
* string_free_split: free a split string
*/
void
string_free_exploded (char **exploded_string)
string_free_split (char **split_string)
{
int i;
if (exploded_string)
if (split_string)
{
for (i = 0; exploded_string[i]; i++)
free (exploded_string[i]);
free (exploded_string);
for (i = 0; split_string[i]; i++)
free (split_string[i]);
free (split_string);
}
}
/*
* string_build_with_exploded: build a string with exploded string
* note: returned value has to be free() after use
* string_build_with_split_string: build a string with a split string
* note: returned value has to be free() after
* use
*/
char *
string_build_with_exploded (const char **exploded_string, const char *separator)
string_build_with_split_string (const char **split_string,
const char *separator)
{
int i, length, length_separator;
char *result;
if (!exploded_string)
if (!split_string)
return NULL;
length = 0;
length_separator = (separator) ? strlen (separator) : 0;
for (i = 0; exploded_string[i]; i++)
for (i = 0; split_string[i]; i++)
{
length += strlen (exploded_string[i]) + length_separator;
length += strlen (split_string[i]) + length_separator;
}
result = malloc (length + 1);
@@ -910,10 +912,10 @@ string_build_with_exploded (const char **exploded_string, const char *separator)
{
result[0] = '\0';
for (i = 0; exploded_string[i]; i++)
for (i = 0; split_string[i]; i++)
{
strcat (result, exploded_string[i]);
if (separator && exploded_string[i + 1])
strcat (result, split_string[i]);
if (separator && split_string[i + 1])
strcat (result, separator);
}
}
+5 -5
View File
@@ -42,11 +42,11 @@ extern char *string_convert_hex_chars (const char *string);
extern int string_has_highlight (const char *string,
const char *highlight_words);
extern char *string_mask_to_regex (const char *mask);
extern char **string_explode (const char *string, const char *separators,
int keep_eol, int num_items_max, int *num_items);
extern void string_free_exploded (char **exploded_string);
extern char *string_build_with_exploded (const char **exploded_string,
const char *separator);
extern char **string_split (const char *string, const char *separators,
int keep_eol, int num_items_max, int *num_items);
extern void string_free_split (char **split_string);
extern char *string_build_with_split_string (const char **split_string,
const char *separator);
extern char **string_split_command (const char *command, char separator);
extern void string_free_split_command (char **split_command);
extern char *string_iconv (int from_utf8, const char *from_code,
+2 -2
View File
@@ -263,7 +263,7 @@ upgrade_file_write_object (struct t_upgrade_file *upgrade_file, int object_id,
fields = infolist_fields (infolist);
if (fields)
{
argv = string_explode (fields, ",", 0, 0, &argc);
argv = string_split (fields, ",", 0, 0, &argc);
if (argv && (argc > 0))
{
for (i = 0; i < argc; i++)
@@ -372,7 +372,7 @@ upgrade_file_write_object (struct t_upgrade_file *upgrade_file, int object_id,
}
}
if (argv)
string_free_exploded (argv);
string_free_split (argv);
}
/* write object end */
+24 -11
View File
@@ -458,19 +458,32 @@ upgrade_weechat_read_cb (void *data,
/* add line to current buffer */
if (upgrade_current_buffer)
{
new_line = gui_line_add (
upgrade_current_buffer,
infolist_time (infolist, "date"),
infolist_time (infolist, "date_printed"),
infolist_string (infolist, "tags"),
infolist_string (infolist, "prefix"),
infolist_string (infolist, "message"));
if (new_line)
switch (upgrade_current_buffer->type)
{
new_line->data->highlight = infolist_integer (infolist, "highlight");
case GUI_BUFFER_TYPE_FORMATTED:
new_line = gui_line_add (
upgrade_current_buffer,
infolist_time (infolist, "date"),
infolist_time (infolist, "date_printed"),
infolist_string (infolist, "tags"),
infolist_string (infolist, "prefix"),
infolist_string (infolist, "message"));
if (new_line)
{
new_line->data->highlight = infolist_integer (infolist, "highlight");
if (infolist_integer (infolist, "last_read_line"))
upgrade_current_buffer->lines->last_read_line = new_line;
}
break;
case GUI_BUFFER_TYPE_FREE:
gui_line_add_y (
upgrade_current_buffer,
infolist_integer (infolist, "y"),
infolist_string (infolist, "message"));
break;
case GUI_BUFFER_NUM_TYPES:
break;
}
if (infolist_integer (infolist, "last_read_line"))
upgrade_current_buffer->lines->last_read_line = new_line;
}
break;
case UPGRADE_WEECHAT_TYPE_NICKLIST:
+8 -6
View File
@@ -457,10 +457,12 @@ utf8_charcasecmp (const char *string1, const char *string2)
return (string1) ? 1 : ((string2) ? -1 : 0);
wchar1 = utf8_wide_char (string1);
wchar1 = towlower (wchar1);
if ((wchar1 >= 'A') && (wchar1 <= 'Z'))
wchar1 += ('a' - 'A');
wchar2 = utf8_wide_char (string2);
wchar2 = towlower (wchar2);
if ((wchar2 >= 'A') && (wchar2 <= 'Z'))
wchar2 += ('a' - 'A');
return (wchar1 < wchar2) ? -1 : ((wchar1 == wchar2) ? 0 : 1);
}
@@ -562,17 +564,17 @@ utf8_pos (const char *string, int real_pos)
*/
char *
utf8_strndup (const char *string, int max_chars)
utf8_strndup (const char *string, int length)
{
const char *end;
if (!string || (max_chars < 0))
if (!string || (length < 0))
return NULL;
if (max_chars == 0)
if (length == 0)
return strdup ("");
end = utf8_add_offset (string, max_chars);
end = utf8_add_offset (string, length);
if (!end || (end == string))
return strdup (string);
+1 -1
View File
@@ -50,6 +50,6 @@ extern int utf8_char_size_screen (const char *string);
extern char *utf8_add_offset (const char *string, int offset);
extern int utf8_real_pos (const char *string, int pos);
extern int utf8_pos (const char *string, int real_pos);
extern char *utf8_strndup (const char *string, int max_chars);
extern char *utf8_strndup (const char *string, int length);
#endif /* wee-utf8.h */
+1 -1
View File
@@ -10,7 +10,7 @@
* ## ##
* ## By FlashCode <flashcode@flashtux.org> ##
* ## ##
* ## http://weechat.flashtux.org/ ##
* ## http://www.weechat.org/ ##
* ## ##
* ##########################################################################
*
+1 -1
View File
@@ -51,7 +51,7 @@
#define WEECHAT_COPYRIGHT_DATE "(c) 2003-2009"
#define WEECHAT_WEBSITE "http://weechat.flashtux.org/"
#define WEECHAT_WEBSITE "http://www.weechat.org/"
/* log file */
+4 -4
View File
@@ -430,7 +430,7 @@ gui_bar_window_draw (struct t_gui_bar_window *bar_window,
content = gui_bar_window_content_get_with_filling (bar_window, window);
if (content)
{
items = string_explode (content, "\n", 0, 0, &items_count);
items = string_split (content, "\n", 0, 0, &items_count);
if (items_count == 0)
{
if (CONFIG_INTEGER(bar_window->bar->options[GUI_BAR_OPTION_SIZE]) == 0)
@@ -495,7 +495,7 @@ gui_bar_window_draw (struct t_gui_bar_window *bar_window,
y = 0;
some_data_not_displayed = 0;
if ((bar_window->scroll_y > 0)
&& (bar_window->scroll_y >= items_count))
&& (bar_window->scroll_y > items_count - bar_window->height))
{
bar_window->scroll_y = items_count - bar_window->height;
if (bar_window->scroll_y < 0)
@@ -594,7 +594,7 @@ gui_bar_window_draw (struct t_gui_bar_window *bar_window,
}
}
if (items)
string_free_exploded (items);
string_free_split (items);
free (content);
}
else
@@ -607,7 +607,7 @@ gui_bar_window_draw (struct t_gui_bar_window *bar_window,
/* move cursor if it was asked in an item content (input_text does that
to move cursor in user input text) */
if (window && (gui_current_window == window)
if ((!window || (gui_current_window == window))
&& (bar_window->cursor_x >= 0) && (bar_window->cursor_y >= 0))
{
move (bar_window->cursor_y, bar_window->cursor_x);
+67 -20
View File
@@ -128,7 +128,7 @@ gui_chat_display_new_line (struct t_gui_window *window, int num_lines, int count
void
gui_chat_display_horizontal_line (struct t_gui_window *window, int simulate)
{
int i;
int i, n;
if (!simulate)
{
@@ -140,15 +140,16 @@ gui_chat_display_horizontal_line (struct t_gui_window *window, int simulate)
mvwhline (GUI_WINDOW_OBJECTS(window)->win_chat,
window->win_chat_cursor_y, window->win_chat_cursor_x,
ACS_HLINE,
window->win_chat_width);
window->win_chat_width - 1);
break;
case CONFIG_LOOK_READ_MARKER_DOTTED_LINE:
wmove (GUI_WINDOW_OBJECTS(window)->win_chat,
window->win_chat_cursor_y, window->win_chat_cursor_x);
wclrtoeol (GUI_WINDOW_OBJECTS(window)->win_chat);
for (i = 0; i < window->win_chat_width; i++)
n = (window->win_chat_width % 2);
for (i = 0; i < window->win_chat_width - 1; i++)
{
if (i % 2 != 0)
if (i % 2 == n)
mvwhline (GUI_WINDOW_OBJECTS(window)->win_chat,
window->win_chat_cursor_y, i,
ACS_HLINE, 1);
@@ -578,8 +579,18 @@ gui_chat_display_time_and_prefix (struct t_gui_window *window,
GUI_COLOR_CHAT_PREFIX_BUFFER);
}
if ((CONFIG_INTEGER(config_look_prefix_buffer_align_max) > 0)
&& (CONFIG_INTEGER(config_look_prefix_buffer_align) != CONFIG_LOOK_PREFIX_BUFFER_ALIGN_NONE))
{
length_allowed =
(mixed_lines->buffer_max_length <= CONFIG_INTEGER(config_look_prefix_buffer_align_max)) ?
mixed_lines->buffer_max_length : CONFIG_INTEGER(config_look_prefix_buffer_align_max);
}
else
length_allowed = mixed_lines->buffer_max_length;
length = gui_chat_strlen_screen (line->data->buffer->short_name);
num_spaces = mixed_lines->buffer_max_length - length;
num_spaces = length_allowed - length;
if (CONFIG_INTEGER(config_look_prefix_buffer_align) == CONFIG_LOOK_PREFIX_BUFFER_ALIGN_RIGHT)
{
@@ -591,26 +602,60 @@ gui_chat_display_time_and_prefix (struct t_gui_window *window,
}
}
gui_chat_display_word (window, line,
line->data->buffer->short_name,
NULL, 1, num_lines, count, lines_displayed,
simulate);
if ((CONFIG_INTEGER(config_look_prefix_buffer_align) == CONFIG_LOOK_PREFIX_BUFFER_ALIGN_LEFT)
|| ((CONFIG_INTEGER(config_look_prefix_buffer_align) == CONFIG_LOOK_PREFIX_BUFFER_ALIGN_NONE)
&& (CONFIG_INTEGER(config_look_prefix_align) != CONFIG_LOOK_PREFIX_ALIGN_NONE)))
/* not enough space to display full buffer name? => truncate it! */
if ((CONFIG_INTEGER(config_look_prefix_buffer_align) != CONFIG_LOOK_PREFIX_BUFFER_ALIGN_NONE)
&& (num_spaces < 0))
{
for (i = 0; i < num_spaces; i++)
gui_chat_display_word (window, line,
line->data->buffer->short_name,
line->data->buffer->short_name +
gui_chat_string_real_pos (line->data->buffer->short_name,
length_allowed),
1, num_lines, count, lines_displayed,
simulate);
}
else
{
gui_chat_display_word (window, line,
line->data->buffer->short_name,
NULL, 1, num_lines, count, lines_displayed,
simulate);
}
if ((CONFIG_INTEGER(config_look_prefix_buffer_align) != CONFIG_LOOK_PREFIX_BUFFER_ALIGN_NONE)
&& (num_spaces < 0))
{
if (!simulate)
{
gui_window_set_weechat_color (GUI_WINDOW_OBJECTS(window)->win_chat,
GUI_COLOR_CHAT_PREFIX_MORE);
}
gui_chat_display_word (window, line,
(CONFIG_BOOLEAN(config_look_prefix_buffer_align_more)) ?
str_plus : str_space,
NULL, 1, num_lines, count, lines_displayed,
simulate);
}
else
{
if ((CONFIG_INTEGER(config_look_prefix_buffer_align) == CONFIG_LOOK_PREFIX_BUFFER_ALIGN_LEFT)
|| ((CONFIG_INTEGER(config_look_prefix_buffer_align) == CONFIG_LOOK_PREFIX_BUFFER_ALIGN_NONE)
&& (CONFIG_INTEGER(config_look_prefix_align) != CONFIG_LOOK_PREFIX_ALIGN_NONE)))
{
for (i = 0; i < num_spaces; i++)
{
gui_chat_display_word (window, line, str_space,
NULL, 1, num_lines, count, lines_displayed,
simulate);
}
}
if (mixed_lines->buffer_max_length > 0)
{
gui_chat_display_word (window, line, str_space,
NULL, 1, num_lines, count, lines_displayed,
simulate);
}
}
gui_chat_display_word (window, line, str_space,
NULL, 1, num_lines, count, lines_displayed,
simulate);
}
/* display prefix */
@@ -656,7 +701,7 @@ gui_chat_display_time_and_prefix (struct t_gui_window *window,
}
}
/* not enough space to display full prefix ? => truncate it! */
/* not enough space to display full prefix? => truncate it! */
if ((CONFIG_INTEGER(config_look_prefix_align) != CONFIG_LOOK_PREFIX_ALIGN_NONE)
&& (num_spaces < 0))
{
@@ -701,7 +746,9 @@ gui_chat_display_time_and_prefix (struct t_gui_window *window,
gui_window_set_weechat_color (GUI_WINDOW_OBJECTS(window)->win_chat,
GUI_COLOR_CHAT_PREFIX_MORE);
}
gui_chat_display_word (window, line, str_plus,
gui_chat_display_word (window, line,
(CONFIG_BOOLEAN(config_look_prefix_align_more)) ?
str_plus : str_space,
NULL, 1, num_lines, count, lines_displayed,
simulate);
}
+2 -2
View File
@@ -125,8 +125,8 @@ gui_main_init ()
/* set title for core buffer */
gui_buffer_set_title (ptr_buffer,
"WeeChat " WEECHAT_COPYRIGHT_DATE
" - " WEECHAT_WEBSITE);
"WeeChat " PACKAGE_VERSION " "
WEECHAT_COPYRIGHT_DATE " - " WEECHAT_WEBSITE);
/* create main window (using full space) */
if (gui_window_new (NULL, ptr_buffer, 0, 0,
+1
View File
@@ -25,6 +25,7 @@
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include <libgen.h>
#include <sys/ioctl.h>
+11 -5
View File
@@ -1044,11 +1044,17 @@ gui_bar_item_default_completion (void *data, struct t_gui_bar_item *item,
/* make C compiler happy */
(void) data;
(void) item;
(void) window;
if (!window)
window = gui_current_window;
if (!window->buffer->completion
|| !window->buffer->completion->partial_completion_list)
return NULL;
length = 1;
for (ptr_item = gui_completion_partial_list; ptr_item;
ptr_item = ptr_item->next_item)
for (ptr_item = window->buffer->completion->partial_completion_list;
ptr_item; ptr_item = ptr_item->next_item)
{
length += strlen (ptr_item->word) + 32;
}
@@ -1057,8 +1063,8 @@ gui_bar_item_default_completion (void *data, struct t_gui_bar_item *item,
if (buf)
{
buf[0] = '\0';
for (ptr_item = gui_completion_partial_list; ptr_item;
ptr_item = ptr_item->next_item)
for (ptr_item = window->buffer->completion->partial_completion_list;
ptr_item; ptr_item = ptr_item->next_item)
{
strcat (buf, GUI_COLOR_CUSTOM_BAR_FG);
strcat (buf, ptr_item->word);
+3 -3
View File
@@ -546,8 +546,8 @@ gui_bar_window_content_get_with_filling (struct t_gui_bar_window *bar_window,
i, sub);
if (ptr_content && ptr_content[0])
{
split_items[i][sub] = string_explode (ptr_content,
"\n", 0, 0, NULL);
split_items[i][sub] = string_split (ptr_content,
"\n", 0, 0, NULL);
for (j = 0; split_items[i][sub][j]; j++)
{
total_items++;
@@ -665,7 +665,7 @@ gui_bar_window_content_get_with_filling (struct t_gui_bar_window *bar_window,
for (sub = 0; sub < bar_window->items_subcount[i]; sub++)
{
if (split_items[i][sub])
string_free_exploded (split_items[i][sub]);
string_free_split (split_items[i][sub]);
}
free (split_items[i]);
}
+65 -146
View File
@@ -29,6 +29,7 @@
#include "../core/weechat.h"
#include "../core/wee-config.h"
#include "../core/wee-hook.h"
#include "../core/wee-infolist.h"
#include "../core/wee-log.h"
#include "../core/wee-string.h"
@@ -406,8 +407,10 @@ int
gui_bar_check_conditions_for_window (struct t_gui_bar *bar,
struct t_gui_window *window)
{
int i;
int i, rc;
char str_modifier[256], str_window[128], *str_displayed;
/* check bar conditions */
for (i = 0; i < bar->conditions_count; i++)
{
if (string_strcasecmp (bar->conditions_array[i], "active") == 0)
@@ -427,7 +430,26 @@ gui_bar_check_conditions_for_window (struct t_gui_bar *bar,
}
}
return 1;
/* call a modifier that will tell us if bar is displayed or not,
for example it can be used to display nicklist on some buffers
only, using a script that implements this modifier and return "1"
to display bar, "0" to hide it */
snprintf (str_modifier, sizeof (str_modifier),
"bar_condition_%s", bar->name);
snprintf (str_window, sizeof (str_window),
"0x%lx", (long unsigned int)(window));
str_displayed = hook_modifier_exec (NULL,
str_modifier,
str_window,
"");
if (str_displayed && strcmp (str_displayed, "0") == 0)
rc = 0;
else
rc = 1;
if (str_displayed)
free (str_displayed);
return rc;
}
/*
@@ -659,7 +681,7 @@ gui_bar_free_items_array (struct t_gui_bar *bar)
for (i = 0; i < bar->items_count; i++)
{
if (bar->items_array[i])
string_free_exploded (bar->items_array[i]);
string_free_split (bar->items_array[i]);
}
if (bar->items_array)
{
@@ -688,7 +710,7 @@ gui_bar_set_items_array (struct t_gui_bar *bar, const char *items)
if (items && items[0])
{
tmp_array = string_explode (items, ",", 0, 0, &count);
tmp_array = string_split (items, ",", 0, 0, &count);
if (count > 0)
{
bar->items_count = count;
@@ -696,11 +718,11 @@ gui_bar_set_items_array (struct t_gui_bar *bar, const char *items)
bar->items_array = malloc (count * sizeof (*bar->items_array));
for (i = 0; i < count; i++)
{
bar->items_array[i] = string_explode (tmp_array[i], "+", 0, 0,
&(bar->items_subcount[i]));
bar->items_array[i] = string_split (tmp_array[i], "+", 0, 0,
&(bar->items_subcount[i]));
}
}
string_free_exploded (tmp_array);
string_free_split (tmp_array);
}
}
@@ -834,14 +856,14 @@ gui_bar_config_change_conditions (void *data, struct t_config_option *option)
if (ptr_bar)
{
if (ptr_bar->conditions_array)
string_free_exploded (ptr_bar->conditions_array);
string_free_split (ptr_bar->conditions_array);
if (CONFIG_STRING(ptr_bar->options[GUI_BAR_OPTION_CONDITIONS])
&& CONFIG_STRING(ptr_bar->options[GUI_BAR_OPTION_CONDITIONS])[0])
{
ptr_bar->conditions_array = string_explode (CONFIG_STRING(ptr_bar->options[GUI_BAR_OPTION_CONDITIONS]),
",", 0, 0,
&ptr_bar->conditions_count);
ptr_bar->conditions_array = string_split (CONFIG_STRING(ptr_bar->options[GUI_BAR_OPTION_CONDITIONS]),
",", 0, 0,
&ptr_bar->conditions_count);
}
else
{
@@ -970,9 +992,10 @@ gui_bar_config_change_size (void *data, struct t_config_option *option)
(void) data;
ptr_bar = gui_bar_search_with_option_name (option->name);
if (ptr_bar)
if (ptr_bar && !CONFIG_BOOLEAN(ptr_bar->options[GUI_BAR_OPTION_HIDDEN]))
{
gui_bar_apply_current_size (ptr_bar);
gui_bar_refresh (ptr_bar);
}
}
@@ -983,11 +1006,26 @@ gui_bar_config_change_size (void *data, struct t_config_option *option)
void
gui_bar_config_change_size_max (void *data, struct t_config_option *option)
{
struct t_gui_bar *ptr_bar;
char value[32];
/* make C compiler happy */
(void) data;
(void) option;
gui_window_ask_refresh (1);
ptr_bar = gui_bar_search_with_option_name (option->name);
if (ptr_bar && !CONFIG_BOOLEAN(ptr_bar->options[GUI_BAR_OPTION_HIDDEN]))
{
if ((CONFIG_INTEGER(ptr_bar->options[GUI_BAR_OPTION_SIZE_MAX]) > 0)
&& (CONFIG_INTEGER(ptr_bar->options[GUI_BAR_OPTION_SIZE]) >
CONFIG_INTEGER(ptr_bar->options[GUI_BAR_OPTION_SIZE_MAX])))
{
snprintf (value, sizeof (value), "%d",
CONFIG_INTEGER(ptr_bar->options[GUI_BAR_OPTION_SIZE_MAX]));
config_file_option_set (ptr_bar->options[GUI_BAR_OPTION_SIZE], value, 1);
}
gui_window_ask_refresh (1);
}
}
/*
@@ -1103,123 +1141,6 @@ gui_bar_set_name (struct t_gui_bar *bar, const char *name)
}
}
/*
* gui_bar_set_priority: set priority for a bar
*/
void
gui_bar_set_priority (struct t_gui_bar *bar, const char *priority)
{
long number;
char *error;
error = NULL;
number = strtol (priority, &error, 10);
if (error && !error[0])
{
if (number < 0)
number = 0;
/* bar number is already ok? */
if (number == CONFIG_INTEGER(bar->options[GUI_BAR_OPTION_PRIORITY]))
return;
config_file_option_set (bar->options[GUI_BAR_OPTION_PRIORITY], priority, 1);
}
}
/*
* gui_bar_set_position: set position for a bar
*/
void
gui_bar_set_position (struct t_gui_bar *bar, const char *position)
{
int position_value;
if (!position || !position[0])
return;
position_value = gui_bar_search_position (position);
if ((position_value >= 0)
&& (CONFIG_INTEGER(bar->options[GUI_BAR_OPTION_POSITION]) != position_value))
{
config_file_option_set (bar->options[GUI_BAR_OPTION_POSITION], position, 1);
}
}
/*
* gui_bar_set_size: set size for a bar
*/
void
gui_bar_set_size (struct t_gui_bar *bar, const char *size)
{
long number;
char *error, value[32];
int new_size;
error = NULL;
number = strtol (((size[0] == '+') || (size[0] == '-')) ?
size + 1 : size,
&error,
10);
if (error && !error[0])
{
new_size = number;
if (size[0] == '+')
new_size = CONFIG_INTEGER(bar->options[GUI_BAR_OPTION_SIZE]) + new_size;
else if (value[0] == '-')
new_size = CONFIG_INTEGER(bar->options[GUI_BAR_OPTION_SIZE]) - new_size;
if ((size[0] == '-') && (new_size < 1))
return;
if (new_size < 0)
return;
/* check if new size is ok if it's more than before */
if ((new_size != 0) &&
((CONFIG_INTEGER(bar->options[GUI_BAR_OPTION_SIZE]) == 0)
|| (new_size > CONFIG_INTEGER(bar->options[GUI_BAR_OPTION_SIZE]))))
{
if (!gui_bar_check_size_add (bar,
new_size - CONFIG_INTEGER(bar->options[GUI_BAR_OPTION_SIZE])))
return;
}
snprintf (value, sizeof (value), "%d", new_size);
config_file_option_set (bar->options[GUI_BAR_OPTION_SIZE], value, 1);
gui_bar_apply_current_size (bar);
}
}
/*
* gui_bar_set_size_max: set max size for a bar
*/
void
gui_bar_set_size_max (struct t_gui_bar *bar, const char *size)
{
long number;
char *error, value[32];
error = NULL;
number = strtol (size, &error, 10);
if (error && !error[0])
{
if (number < 0)
return;
snprintf (value, sizeof (value), "%ld", number);
config_file_option_set (bar->options[GUI_BAR_OPTION_SIZE_MAX], value, 1);
if ((number > 0) &&
((CONFIG_INTEGER(bar->options[GUI_BAR_OPTION_SIZE]) == 0)
|| (number < CONFIG_INTEGER(bar->options[GUI_BAR_OPTION_SIZE]))))
gui_bar_set_size (bar, value);
}
}
/*
* gui_bar_set: set a property for a bar
* return: 1 if ok, 0 if error
@@ -1243,7 +1164,7 @@ gui_bar_set (struct t_gui_bar *bar, const char *property, const char *value)
}
else if (string_strcasecmp (property, "priority") == 0)
{
gui_bar_set_priority (bar, value);
config_file_option_set (bar->options[GUI_BAR_OPTION_PRIORITY], value, 1);
return 1;
}
else if (string_strcasecmp (property, "conditions") == 0)
@@ -1253,7 +1174,7 @@ gui_bar_set (struct t_gui_bar *bar, const char *property, const char *value)
}
else if (string_strcasecmp (property, "position") == 0)
{
gui_bar_set_position (bar, value);
config_file_option_set (bar->options[GUI_BAR_OPTION_POSITION], value, 1);
return 1;
}
else if (string_strcasecmp (property, "filling_top_bottom") == 0)
@@ -1268,14 +1189,12 @@ gui_bar_set (struct t_gui_bar *bar, const char *property, const char *value)
}
else if (string_strcasecmp (property, "size") == 0)
{
gui_bar_set_size (bar, value);
gui_bar_refresh (bar);
config_file_option_set (bar->options[GUI_BAR_OPTION_SIZE], value, 1);
return 1;
}
else if (string_strcasecmp (property, "size_max") == 0)
{
gui_bar_set_size_max (bar, value);
gui_bar_refresh (bar);
config_file_option_set (bar->options[GUI_BAR_OPTION_SIZE_MAX], value, 1);
return 1;
}
else if (string_strcasecmp (property, "color_fg") == 0)
@@ -1604,9 +1523,9 @@ gui_bar_new_with_options (const char *name,
new_bar->options[GUI_BAR_OPTION_CONDITIONS] = conditions;
if (CONFIG_STRING(conditions) && CONFIG_STRING(conditions)[0])
{
new_bar->conditions_array = string_explode (CONFIG_STRING(conditions),
",", 0, 0,
&new_bar->conditions_count);
new_bar->conditions_array = string_split (CONFIG_STRING(conditions),
",", 0, 0,
&new_bar->conditions_count);
}
else
{
@@ -1875,23 +1794,23 @@ gui_bar_create_default_input ()
{
/* create input bar */
length = 1 /* "[" */
+ strlen (gui_bar_item_names[GUI_BAR_ITEM_INPUT_PASTE])
+ 3 /* "],[" */
+ strlen (gui_bar_item_names[GUI_BAR_ITEM_INPUT_PROMPT])
+ 3 /* "]+(" */
+ 4 /* "away" */
+ 3 /* "),[" */
+ strlen (gui_bar_item_names[GUI_BAR_ITEM_INPUT_SEARCH])
+ 3 /* "],[" */
+ strlen (gui_bar_item_names[GUI_BAR_ITEM_INPUT_PASTE])
+ 2 /* "]," */
+ strlen (gui_bar_item_names[GUI_BAR_ITEM_INPUT_TEXT])
+ 1 /* \0 */;
buf = malloc (length);
if (buf)
{
snprintf (buf, length, "[%s],[%s]+(away),[%s],%s",
gui_bar_item_names[GUI_BAR_ITEM_INPUT_PASTE],
snprintf (buf, length, "[%s]+(away),[%s],[%s],%s",
gui_bar_item_names[GUI_BAR_ITEM_INPUT_PROMPT],
gui_bar_item_names[GUI_BAR_ITEM_INPUT_SEARCH],
gui_bar_item_names[GUI_BAR_ITEM_INPUT_PASTE],
gui_bar_item_names[GUI_BAR_ITEM_INPUT_TEXT]);
if (gui_bar_new (GUI_BAR_DEFAULT_NAME_INPUT,
"0", /* hidden */
@@ -2246,7 +2165,7 @@ gui_bar_free (struct t_gui_bar *bar)
config_file_option_free (bar->options[i]);
}
if (bar->conditions_array)
string_free_exploded (bar->conditions_array);
string_free_split (bar->conditions_array);
gui_bar_free_items_array (bar);
free (bar);
+2 -2
View File
@@ -85,10 +85,10 @@ struct t_gui_bar
/* internal vars */
int conditions_count; /* number of conditions */
char **conditions_array; /* exploded bar conditions */
char **conditions_array; /* bar conditions (after split) */
int items_count; /* number of bar items */
int *items_subcount; /* number of sub items */
char ***items_array; /* exploded bar items */
char ***items_array; /* bar items (after split) */
struct t_gui_bar_window *bar_window; /* pointer to bar window */
/* (for type root only) */
int bar_refresh_needed; /* refresh for bar is needed? */
+54 -13
View File
@@ -872,16 +872,16 @@ gui_buffer_set_highlight_tags (struct t_gui_buffer *buffer,
if (buffer->highlight_tags)
free (buffer->highlight_tags);
if (buffer->highlight_tags_array)
string_free_exploded (buffer->highlight_tags_array);
string_free_split (buffer->highlight_tags_array);
if (new_highlight_tags)
{
buffer->highlight_tags = strdup (new_highlight_tags);
if (buffer->highlight_tags)
{
buffer->highlight_tags_array = string_explode (new_highlight_tags,
",", 0, 0,
&buffer->highlight_tags_count);
buffer->highlight_tags_array = string_split (new_highlight_tags,
",", 0, 0,
&buffer->highlight_tags_count);
}
}
else
@@ -981,6 +981,13 @@ gui_buffer_set (struct t_gui_buffer *buffer, const char *property,
if (error && !error[0])
buffer->print_hooks_enabled = (number) ? 1 : 0;
}
else if (string_strcasecmp (property, "number") == 0)
{
error = NULL;
number = strtol (value, &error, 10);
if (error && !error[0] && (number >= 1))
gui_buffer_move_to_number (buffer, number);
}
else if (string_strcasecmp (property, "name") == 0)
{
gui_buffer_set_name (buffer, value);
@@ -1115,6 +1122,30 @@ gui_buffer_set_pointer (struct t_gui_buffer *buffer, const char *property,
}
}
/*
* gui_buffer_compute_num_displayed: compute "num_displayed" for all buffers
*/
void
gui_buffer_compute_num_displayed ()
{
struct t_gui_buffer *ptr_buffer;
struct t_gui_window *ptr_window;
for (ptr_buffer = gui_buffers; ptr_buffer;
ptr_buffer = ptr_buffer->next_buffer)
{
ptr_buffer->num_displayed = 0;
}
for (ptr_window = gui_windows; ptr_window;
ptr_window = ptr_window->next_window)
{
if (ptr_window->buffer)
ptr_window->buffer->num_displayed++;
}
}
/*
* gui_buffer_add_value_num_displayed: add value to "num_displayed" variable
* for a buffer (value can be negative)
@@ -1442,7 +1473,7 @@ gui_buffer_close (struct t_gui_buffer *buffer)
{
(void)(buffer->close_callback) (buffer->close_callback_data, buffer);
}
/* first unmerge buffer if it is merged to at least one other buffer */
if (gui_buffer_count_merged_buffers (buffer->number) > 1)
gui_buffer_unmerge (buffer, -1);
@@ -1515,6 +1546,10 @@ gui_buffer_close (struct t_gui_buffer *buffer)
/* free all lines */
gui_line_free_all (buffer);
if (buffer->own_lines)
free (buffer->own_lines);
if (buffer->mixed_lines)
free (buffer->mixed_lines);
/* free some data */
if (buffer->title)
@@ -1537,7 +1572,7 @@ gui_buffer_close (struct t_gui_buffer *buffer)
if (buffer->highlight_tags)
free (buffer->highlight_tags);
if (buffer->highlight_tags_array)
string_free_exploded (buffer->highlight_tags_array);
string_free_split (buffer->highlight_tags_array);
gui_keyboard_free_all (&buffer->keys, &buffer->last_key);
gui_buffer_local_var_remove_all (buffer);
@@ -1712,10 +1747,10 @@ gui_buffer_move_to_number (struct t_gui_buffer *buffer, int number)
if (ptr_buffer == ptr_last_buffer)
break;
}
gui_buffers->prev_buffer = buffer;
buffer->prev_buffer = NULL;
buffer->next_buffer = gui_buffers;
gui_buffers = buffer;
gui_buffers->prev_buffer = ptr_last_buffer;
ptr_first_buffer->prev_buffer = NULL;
ptr_last_buffer->next_buffer = gui_buffers;
gui_buffers = ptr_first_buffer;
}
else
{
@@ -1723,7 +1758,7 @@ gui_buffer_move_to_number (struct t_gui_buffer *buffer, int number)
for (ptr_buffer_pos = gui_buffers; ptr_buffer_pos;
ptr_buffer_pos = ptr_buffer_pos->next_buffer)
{
if (ptr_buffer_pos->number == number)
if (ptr_buffer_pos->number >= number)
break;
}
if (ptr_buffer_pos)
@@ -1828,6 +1863,8 @@ gui_buffer_merge (struct t_gui_buffer *buffer,
ptr_buffer->number--;
}
gui_buffer_compute_num_displayed ();
gui_window_ask_refresh (1);
hook_signal_send ("buffer_merged",
@@ -1938,6 +1975,8 @@ gui_buffer_unmerge (struct t_gui_buffer *buffer, int number)
ptr_buffer->number++;
}
gui_buffer_compute_num_displayed ();
gui_window_ask_refresh (1);
hook_signal_send ("buffer_unmerged",
@@ -2277,7 +2316,8 @@ gui_buffer_dump_hexa (struct t_gui_buffer *buffer)
message_without_colors : "(null)");
if (message_without_colors)
free (message_without_colors);
tags = string_build_with_exploded ((const char **)ptr_line->data->tags_array, ",");
tags = string_build_with_split_string ((const char **)ptr_line->data->tags_array,
",");
log_printf (" tags: %s", (tags) ? tags : "(none)");
if (tags)
free (tags);
@@ -2439,7 +2479,8 @@ gui_buffer_print_log ()
while (ptr_line)
{
num--;
tags = string_build_with_exploded ((const char **)ptr_line->data->tags_array, ",");
tags = string_build_with_split_string ((const char **)ptr_line->data->tags_array,
",");
log_printf (" line N-%05d: y:%d, str_time:'%s', tags:'%s', "
"displayed:%d, highlight:%d, refresh_needed:%d, prefix:'%s'",
num, ptr_line->data->y, ptr_line->data->str_time,
+1 -1
View File
@@ -605,7 +605,7 @@ gui_chat_printf_y (struct t_gui_buffer *buffer, int y, const char *message, ...)
{
if (gui_init_ok)
{
for (ptr_line = buffer->lines->first_line; ptr_line;
for (ptr_line = buffer->own_lines->first_line; ptr_line;
ptr_line = ptr_line->next_line)
{
if (ptr_line->data->y >= y)
+117 -80
View File
@@ -49,10 +49,6 @@
#include "gui-nicklist.h"
struct t_gui_completion_partial *gui_completion_partial_list = NULL;
struct t_gui_completion_partial *last_gui_completion_partial = NULL;
/*
* gui_completion_buffer_init: init completion for a buffer
*/
@@ -80,6 +76,75 @@ gui_completion_buffer_init (struct t_gui_completion *completion,
completion->position_replace = 0;
completion->diff_size = 0;
completion->diff_length = 0;
completion->partial_completion_list = NULL;
completion->last_partial_completion = NULL;
}
/*
* gui_completion_partial_list_add: add an item to partial completions list
*/
struct t_gui_completion_partial *
gui_completion_partial_list_add (struct t_gui_completion *completion,
const char *word, int count)
{
struct t_gui_completion_partial *new_item;
new_item = malloc (sizeof (*new_item));
if (new_item)
{
new_item->word = strdup (word);
new_item->count = count;
new_item->prev_item = completion->last_partial_completion;
if (completion->partial_completion_list)
(completion->last_partial_completion)->next_item = new_item;
else
completion->partial_completion_list = new_item;
completion->last_partial_completion = new_item;
new_item->next_item = NULL;
}
return new_item;
}
/*
* gui_completion_partial_free: remove an item from partial completions list
*/
void
gui_completion_partial_list_free (struct t_gui_completion *completion,
struct t_gui_completion_partial *item)
{
/* remove partial completion item from list */
if (item->prev_item)
(item->prev_item)->next_item = item->next_item;
if (item->next_item)
(item->next_item)->prev_item = item->prev_item;
if (completion->partial_completion_list == item)
completion->partial_completion_list = item->next_item;
if (completion->last_partial_completion == item)
completion->last_partial_completion = item->prev_item;
/* free data */
if (item->word)
free (item->word);
free (item);
}
/*
* gui_completion_partial_free: remove partial completions list
*/
void
gui_completion_partial_list_free_all (struct t_gui_completion *completion)
{
while (completion->partial_completion_list)
{
gui_completion_partial_list_free (completion,
completion->partial_completion_list);
}
}
/*
@@ -110,6 +175,8 @@ gui_completion_free_data (struct t_gui_completion *completion)
if (completion->word_found)
free (completion->word_found);
completion->word_found = NULL;
gui_completion_partial_list_free_all (completion);
}
/*
@@ -123,68 +190,6 @@ gui_completion_free (struct t_gui_completion *completion)
free (completion);
}
/*
* gui_completion_partial_list_add: add an item to partial completions list
*/
struct t_gui_completion_partial *
gui_completion_partial_list_add (const char *word, int count)
{
struct t_gui_completion_partial *new_item;
new_item = malloc (sizeof (*new_item));
if (new_item)
{
new_item->word = strdup (word);
new_item->count = count;
new_item->prev_item = last_gui_completion_partial;
if (gui_completion_partial_list)
last_gui_completion_partial->next_item = new_item;
else
gui_completion_partial_list = new_item;
last_gui_completion_partial = new_item;
new_item->next_item = NULL;
}
return new_item;
}
/*
* gui_completion_partial_free: remove an item from partial completions list
*/
void
gui_completion_partial_list_free (struct t_gui_completion_partial *item)
{
/* remove partial completion item from list */
if (item->prev_item)
(item->prev_item)->next_item = item->next_item;
if (item->next_item)
(item->next_item)->prev_item = item->prev_item;
if (gui_completion_partial_list == item)
gui_completion_partial_list = item->next_item;
if (last_gui_completion_partial == item)
last_gui_completion_partial = item->prev_item;
/* free data */
if (item->word)
free (item->word);
free (item);
}
/*
* gui_completion_partial_free: remove partial completions list
*/
void
gui_completion_partial_list_free_all ()
{
while (gui_completion_partial_list)
{
gui_completion_partial_list_free (gui_completion_partial_list);
}
}
/*
* gui_completion_stop: stop completion (for example after 1 arg of command
* with 1 arg)
@@ -198,7 +203,7 @@ gui_completion_stop (struct t_gui_completion *completion,
completion->position = -1;
if (remove_partial_completion_list)
{
gui_completion_partial_list_free_all ();
gui_completion_partial_list_free_all (completion);
hook_signal_send ("partial_completion",
WEECHAT_HOOK_SIGNAL_STRING, NULL);
}
@@ -1531,7 +1536,7 @@ gui_completion_find_context (struct t_gui_completion *completion,
/* look for context */
gui_completion_free_data (completion);
gui_completion_buffer_init (completion, completion->buffer);
command = ((data[0] == '/') && (data[1] != '/')) ? 1 : 0;
command = (data[0] == '/') ? 1 : 0;
command_arg = 0;
i = 0;
while (i < pos)
@@ -1540,7 +1545,10 @@ gui_completion_find_context (struct t_gui_completion *completion,
{
command_arg++;
i++;
while ((i < pos) && (data[i] == ' ')) i++;
while ((i < pos) && (data[i] == ' '))
{
i++;
}
if (!completion->args)
completion->args = strdup (data + i);
}
@@ -1577,23 +1585,33 @@ gui_completion_find_context (struct t_gui_completion *completion,
{
i--;
while ((i >= 0) && (data[i] != ' '))
{
i--;
}
pos_start = i + 1;
}
}
else
{
while ((i >= 0) && (data[i] != ' '))
{
i--;
}
pos_start = i + 1;
}
i = pos;
while ((i < size) && (data[i] != ' '))
{
i++;
}
pos_end = i - 1;
if (completion->context == GUI_COMPLETION_COMMAND)
{
pos_start++;
if (data[pos_start] == '/')
pos_start++;
}
completion->base_word_pos = pos_start;
@@ -1602,7 +1620,9 @@ gui_completion_find_context (struct t_gui_completion *completion,
completion->position_replace = pos_start;
completion->base_word = malloc (pos_end - pos_start + 2);
for (i = pos_start; i <= pos_end; i++)
{
completion->base_word[i - pos_start] = data[i];
}
completion->base_word[pos_end - pos_start + 1] = '\0';
}
}
@@ -1615,19 +1635,27 @@ gui_completion_find_context (struct t_gui_completion *completion,
{
pos_start = 0;
while ((pos_start < size) && (data[pos_start] != '/'))
{
pos_start++;
}
if (data[pos_start] == '/')
{
pos_start++;
if (data[pos_start] == '/')
pos_start++;
pos_end = pos_start;
while ((pos_end < size) && (data[pos_end] != ' '))
{
pos_end++;
}
if (data[pos_end] == ' ')
pos_end--;
completion->base_command = malloc (pos_end - pos_start + 2);
for (i = pos_start; i <= pos_end; i++)
{
completion->base_command[i - pos_start] = data[i];
}
completion->base_command[pos_end - pos_start + 1] = '\0';
gui_completion_build_list (completion);
}
@@ -1699,10 +1727,10 @@ gui_completion_partial_build_list (struct t_gui_completion *completion,
{
int char_size, items_count;
char utf_char[16], *word;
struct t_weelist *weelist_temp, *weelist_words;
struct t_weelist *weelist_temp;
struct t_weelist_item *ptr_item, *next_item;
gui_completion_partial_list_free_all ();
gui_completion_partial_list_free_all (completion);
if (!completion->completion_list || !completion->completion_list->items)
return;
@@ -1711,13 +1739,6 @@ gui_completion_partial_build_list (struct t_gui_completion *completion,
if (!weelist_temp)
return;
weelist_words = weelist_new ();
if (!weelist_words)
{
weelist_free (weelist_temp);
return;
}
for (ptr_item = completion->completion_list->items; ptr_item;
ptr_item = ptr_item->next_item)
{
@@ -1754,7 +1775,8 @@ gui_completion_partial_build_list (struct t_gui_completion *completion,
}
if (word)
{
gui_completion_partial_list_add (word,
gui_completion_partial_list_add (completion,
word,
CONFIG_BOOLEAN(config_completion_partial_completion_count) ?
items_count : -1);
free (word);
@@ -1900,7 +1922,7 @@ gui_completion_complete (struct t_gui_completion *completion)
return;
}
gui_completion_partial_list_free_all ();
gui_completion_partial_list_free_all (completion);
return;
}
@@ -2057,6 +2079,8 @@ gui_completion_search (struct t_gui_completion *completion, int direction,
void
gui_completion_print_log (struct t_gui_completion *completion)
{
struct t_gui_completion_partial *ptr_item;
log_printf ("[completion (addr:0x%lx)]", completion);
log_printf (" buffer. . . . . . . . . : 0x%lx", completion->buffer);
log_printf (" context . . . . . . . . : %d", completion->context);
@@ -2081,6 +2105,19 @@ gui_completion_print_log (struct t_gui_completion *completion)
weelist_print_log (completion->completion_list,
"completion list element");
}
if (completion->partial_completion_list)
{
log_printf ("");
for (ptr_item = completion->partial_completion_list;
ptr_item; ptr_item = ptr_item->next_item)
{
log_printf ("[partial completion item (addr:0x%lx)]", ptr_item);
log_printf (" word. . . . . . . . . . : '%s'", ptr_item->word);
log_printf (" count . . . . . . . . . : %d", ptr_item->count);
log_printf (" prev_item . . . . . . . : 0x%lx", ptr_item->prev_item);
log_printf (" next_item . . . . . . . : 0x%lx", ptr_item->next_item);
}
}
}
/*
+11 -9
View File
@@ -25,6 +25,14 @@
#define GUI_COMPLETION_COMMAND_ARG 2
#define GUI_COMPLETION_AUTO 3
struct t_gui_completion_partial
{
char *word; /* (partial) word matching completion */
int count; /* number of matching items with this word */
struct t_gui_completion_partial *prev_item;
struct t_gui_completion_partial *next_item;
};
struct t_gui_completion
{
/* completion context */
@@ -49,18 +57,12 @@ struct t_gui_completion
int position_replace; /* position where word has to be replaced */
int diff_size; /* size difference (< 0 = char(s) deleted) */
int diff_length; /* length difference (<= diff_size) */
};
struct t_gui_completion_partial
{
char *word; /* (partial) word matching completion */
int count; /* number of matching items with this word */
struct t_gui_completion_partial *prev_item;
struct t_gui_completion_partial *next_item;
/* partial completion */
struct t_gui_completion_partial *partial_completion_list;
struct t_gui_completion_partial *last_partial_completion;
};
extern struct t_gui_completion_partial *gui_completion_partial_list;
/* completion functions */
extern void gui_completion_buffer_init (struct t_gui_completion *completion,
+3 -3
View File
@@ -373,8 +373,8 @@ gui_filter_new (int enabled, const char *name, const char *buffer_name,
if (tags)
{
new_filter->tags = (tags) ? strdup (tags) : NULL;
new_filter->tags_array = string_explode (tags, ",", 0, 0,
&new_filter->tags_count);
new_filter->tags_array = string_split (tags, ",", 0, 0,
&new_filter->tags_count);
}
else
{
@@ -443,7 +443,7 @@ gui_filter_free (struct t_gui_filter *filter)
if (filter->tags)
free (filter->tags);
if (filter->tags_array)
string_free_exploded (filter->tags_array);
string_free_split (filter->tags_array);
if (filter->regex)
free (filter->regex);
if (filter->regex_prefix)
+1 -1
View File
@@ -135,8 +135,8 @@ gui_hotlist_check_buffer_notify (struct t_gui_buffer *buffer, int priority)
case GUI_HOTLIST_LOW:
return (buffer->notify >= 3);
case GUI_HOTLIST_MESSAGE:
case GUI_HOTLIST_PRIVATE:
return (buffer->notify >= 2);
case GUI_HOTLIST_PRIVATE:
case GUI_HOTLIST_HIGHLIGHT:
return (buffer->notify >= 1);
}
+41 -23
View File
@@ -93,15 +93,25 @@ gui_line_get_align (struct t_gui_buffer *buffer, struct t_gui_line *line,
/* length of buffer name (when many buffers are merged) */
if (buffer->mixed_lines)
{
length_buffer = ((CONFIG_INTEGER(config_look_prefix_buffer_align) == CONFIG_LOOK_PREFIX_ALIGN_NONE)
&& (CONFIG_INTEGER(config_look_prefix_align) == CONFIG_LOOK_PREFIX_ALIGN_NONE)) ?
gui_chat_strlen_screen (buffer->short_name) + 1 : buffer->mixed_lines->buffer_max_length + 1;
if ((CONFIG_INTEGER(config_look_prefix_buffer_align) == CONFIG_LOOK_PREFIX_BUFFER_ALIGN_NONE)
&& (CONFIG_INTEGER(config_look_prefix_align) == CONFIG_LOOK_PREFIX_ALIGN_NONE))
length_buffer = gui_chat_strlen_screen (buffer->short_name) + 1;
else
{
if (CONFIG_INTEGER(config_look_prefix_buffer_align) == CONFIG_LOOK_PREFIX_BUFFER_ALIGN_NONE)
length_buffer = buffer->mixed_lines->buffer_max_length + 1;
else
length_buffer = ((CONFIG_INTEGER(config_look_prefix_buffer_align_max) > 0)
&& (buffer->mixed_lines->buffer_max_length > CONFIG_INTEGER(config_look_prefix_buffer_align_max))) ?
CONFIG_INTEGER(config_look_prefix_buffer_align_max) + 1 : buffer->mixed_lines->buffer_max_length + 1;
}
}
else
length_buffer = 0;
if (CONFIG_INTEGER(config_look_prefix_align) == CONFIG_LOOK_PREFIX_ALIGN_NONE)
return length_time + 1 + length_buffer + line->data->prefix_length + 2;
return length_time + 1 + length_buffer + line->data->prefix_length
+ ((line->data->prefix_length > 0) ? 1 : 0);
length_suffix = 0;
if (with_suffix)
@@ -459,7 +469,8 @@ gui_line_add_to_list (struct t_gui_lines *lines,
*/
void
gui_line_remove_from_list (struct t_gui_lines *lines,
gui_line_remove_from_list (struct t_gui_buffer *buffer,
struct t_gui_lines *lines,
struct t_gui_line *line,
int free_data)
{
@@ -468,13 +479,21 @@ gui_line_remove_from_list (struct t_gui_lines *lines,
update_prefix_max_length =
(line->data->prefix_length == lines->prefix_max_length);
/* move read marker if it was on line we are removing */
if (lines->last_read_line == line)
{
lines->last_read_line = lines->last_read_line->prev_line;
lines->first_line_not_read = (lines->last_read_line) ? 0 : 1;
gui_buffer_ask_chat_refresh (buffer, 1);
}
/* free data */
if (free_data)
{
if (line->data->str_time)
free (line->data->str_time);
if (line->data->tags_array)
string_free_exploded (line->data->tags_array);
string_free_split (line->data->tags_array);
if (line->data->prefix)
free (line->data->prefix);
if (line->data->message)
@@ -537,7 +556,8 @@ gui_line_mixed_free_buffer (struct t_gui_buffer *buffer)
if (ptr_line->data->buffer == buffer)
{
gui_line_remove_from_list (buffer->mixed_lines,
gui_line_remove_from_list (buffer,
buffer->mixed_lines,
ptr_line,
0);
}
@@ -558,7 +578,8 @@ gui_line_mixed_free_all (struct t_gui_buffer *buffer)
{
while (buffer->mixed_lines->first_line)
{
gui_line_remove_from_list (buffer->mixed_lines,
gui_line_remove_from_list (buffer,
buffer->mixed_lines,
buffer->mixed_lines->first_line,
0);
}
@@ -566,7 +587,7 @@ gui_line_mixed_free_all (struct t_gui_buffer *buffer)
}
/*
* gui_line_free: delete a formatted line from a buffer
* gui_line_free: delete a line from a buffer
*/
void
@@ -583,7 +604,10 @@ gui_line_free (struct t_gui_buffer *buffer, struct t_gui_line *line)
{
if (ptr_line->data == line->data)
{
gui_line_remove_from_list (buffer->mixed_lines, ptr_line, 0);
gui_line_remove_from_list (buffer,
buffer->mixed_lines,
ptr_line,
0);
break;
}
}
@@ -600,16 +624,8 @@ gui_line_free (struct t_gui_buffer *buffer, struct t_gui_line *line)
}
}
/* move read marker if it was on line we are removing */
if (buffer->own_lines->last_read_line == line)
{
buffer->own_lines->last_read_line = buffer->own_lines->last_read_line->prev_line;
buffer->own_lines->first_line_not_read = (buffer->own_lines->last_read_line) ? 0 : 1;
gui_buffer_ask_chat_refresh (buffer, 1);
}
/* remove line from lines list */
gui_line_remove_from_list (buffer->own_lines, line, 1);
gui_line_remove_from_list (buffer, buffer->own_lines, line, 1);
}
/*
@@ -686,8 +702,8 @@ gui_line_add (struct t_gui_buffer *buffer, time_t date,
NULL : gui_chat_get_time_string (date);
if (tags)
{
new_line->data->tags_array = string_explode (tags, ",", 0, 0,
&new_line->data->tags_count);
new_line->data->tags_array = string_split (tags, ",", 0, 0,
&new_line->data->tags_count);
}
else
{
@@ -996,6 +1012,8 @@ gui_line_add_to_infolist (struct t_infolist *infolist,
if (!ptr_item)
return 0;
if (!infolist_new_var_integer (ptr_item, "y", line->data->y))
return 0;
if (!infolist_new_var_time (ptr_item, "date", line->data->date))
return 0;
if (!infolist_new_var_time (ptr_item, "date_printed", line->data->date_printed))
@@ -1059,8 +1077,8 @@ gui_lines_print_log (struct t_gui_lines *lines)
log_printf (" first_line . . . . . : 0x%lx", lines->first_line);
log_printf (" last_line. . . . . . : 0x%lx", lines->last_line);
log_printf (" last_read_line . . . : 0x%lx", lines->last_read_line);
log_printf (" lines_count. . . . . . : %d", lines->lines_count);
log_printf (" first_line_not_read. . : %d", lines->first_line_not_read);
log_printf (" lines_count. . . . . : %d", lines->lines_count);
log_printf (" first_line_not_read. : %d", lines->first_line_not_read);
log_printf (" lines_hidden . . . . : %d", lines->lines_hidden);
log_printf (" buffer_max_length. . : %d", lines->buffer_max_length);
log_printf (" prefix_max_length. . : %d", lines->prefix_max_length);
+7
View File
@@ -889,7 +889,14 @@ gui_window_search_restart (struct t_gui_window *window)
if (gui_window_search_text (window))
window->buffer->text_search_found = 1;
else
{
if (CONFIG_BOOLEAN(config_look_search_text_not_found_alert)
&& window->buffer->input_buffer && window->buffer->input_buffer[0])
{
printf ("\a");
}
gui_buffer_ask_chat_refresh (window->buffer, 2);
}
}
/*
+3
View File
@@ -13,3 +13,6 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
EXTRA_DIST = gui-qt.c \
gui-qt.h
+2 -2
View File
@@ -127,7 +127,7 @@ alias_replace_args (const char *alias_args, const char *user_args)
const char *start, *pos;
int argc, length_res, args_count;
argv = weechat_string_explode (user_args, " ", 0, 0, &argc);
argv = weechat_string_split (user_args, " ", 0, 0, &argc);
res = NULL;
length_res = 0;
@@ -206,7 +206,7 @@ alias_replace_args (const char *alias_args, const char *user_args)
}
if (argv)
weechat_string_free_exploded (argv);
weechat_string_free_split (argv);
return res;
}

Some files were not shown because too many files have changed in this diff Show More