summaryrefslogtreecommitdiff
path: root/doc/fr
diff options
context:
space:
mode:
Diffstat (limited to 'doc/fr')
-rw-r--r--doc/fr/CMakeLists.txt83
-rw-r--r--doc/fr/Makefile.am214
-rw-r--r--doc/fr/authors.fr.xml185
-rw-r--r--doc/fr/autogen/alias_commands.xml22
-rw-r--r--doc/fr/autogen/aspell_commands.xml20
-rw-r--r--doc/fr/autogen/aspell_options.xml68
-rw-r--r--doc/fr/autogen/charset_commands.xml18
-rw-r--r--doc/fr/autogen/charset_options.xml28
-rw-r--r--doc/fr/autogen/completions.xml208
-rw-r--r--doc/fr/autogen/demo_commands.xml45
-rw-r--r--doc/fr/autogen/infolists.xml138
-rw-r--r--doc/fr/autogen/infos.xml93
-rw-r--r--doc/fr/autogen/irc_commands.xml535
-rw-r--r--doc/fr/autogen/irc_options.xml488
-rw-r--r--doc/fr/autogen/jabber_commands.xml69
-rw-r--r--doc/fr/autogen/jabber_options.xml418
-rw-r--r--doc/fr/autogen/logger_commands.xml39
-rw-r--r--doc/fr/autogen/logger_options.xml78
-rw-r--r--doc/fr/autogen/lua_commands.xml18
-rw-r--r--doc/fr/autogen/perl_commands.xml18
-rw-r--r--doc/fr/autogen/plugin_api/completions.txt84
-rw-r--r--doc/fr/autogen/plugin_api/infolists.txt56
-rw-r--r--doc/fr/autogen/plugin_api/infos.txt38
-rw-r--r--doc/fr/autogen/python_commands.xml18
-rw-r--r--doc/fr/autogen/relay_commands.xml18
-rw-r--r--doc/fr/autogen/relay_options.xml118
-rw-r--r--doc/fr/autogen/ruby_commands.xml18
-rw-r--r--doc/fr/autogen/tcl_commands.xml18
-rw-r--r--doc/fr/autogen/user/alias_commands.txt15
-rw-r--r--doc/fr/autogen/user/aspell_commands.txt13
-rw-r--r--doc/fr/autogen/user/aspell_options.txt30
-rw-r--r--doc/fr/autogen/user/charset_commands.txt11
-rw-r--r--doc/fr/autogen/user/charset_options.txt10
-rw-r--r--doc/fr/autogen/user/demo_commands.txt42
-rw-r--r--doc/fr/autogen/user/irc_commands.txt589
-rw-r--r--doc/fr/autogen/user/irc_options.txt240
-rw-r--r--doc/fr/autogen/user/jabber_commands.txt65
-rw-r--r--doc/fr/autogen/user/jabber_options.txt205
-rw-r--r--doc/fr/autogen/user/logger_commands.txt32
-rw-r--r--doc/fr/autogen/user/logger_options.txt35
-rw-r--r--doc/fr/autogen/user/lua_commands.txt11
-rw-r--r--doc/fr/autogen/user/perl_commands.txt11
-rw-r--r--doc/fr/autogen/user/python_commands.txt11
-rw-r--r--doc/fr/autogen/user/relay_commands.txt11
-rw-r--r--doc/fr/autogen/user/relay_options.txt55
-rw-r--r--doc/fr/autogen/user/ruby_commands.txt11
-rw-r--r--doc/fr/autogen/user/tcl_commands.txt11
-rw-r--r--doc/fr/autogen/user/weechat_commands.txt368
-rw-r--r--doc/fr/autogen/user/weechat_options.txt575
-rw-r--r--doc/fr/autogen/user/xfer_commands.txt11
-rw-r--r--doc/fr/autogen/user/xfer_options.txt125
-rw-r--r--doc/fr/autogen/weechat_commands.xml354
-rw-r--r--doc/fr/autogen/weechat_options.xml1158
-rw-r--r--doc/fr/autogen/xfer_commands.xml18
-rw-r--r--doc/fr/autogen/xfer_options.xml258
-rw-r--r--doc/fr/dev/plugin_api.fr.xml31
-rw-r--r--doc/fr/dev/plugin_c_api.fr.xml10497
-rw-r--r--doc/fr/dev/plugin_script_api.fr.xml471
-rw-r--r--doc/fr/dev/plugins.fr.xml244
-rw-r--r--doc/fr/dev/weechat_dev.fr.xml105
-rw-r--r--doc/fr/intro.fr.xml153
-rw-r--r--doc/fr/user/install.fr.xml134
-rw-r--r--doc/fr/user/plugin_alias.fr.xml41
-rw-r--r--doc/fr/user/plugin_aspell.fr.xml51
-rw-r--r--doc/fr/user/plugin_charset.fr.xml169
-rw-r--r--doc/fr/user/plugin_fifo.fr.xml98
-rw-r--r--doc/fr/user/plugin_irc.fr.xml74
-rw-r--r--doc/fr/user/plugin_jabber.fr.xml51
-rw-r--r--doc/fr/user/plugin_logger.fr.xml158
-rw-r--r--doc/fr/user/plugin_scripts.fr.xml59
-rw-r--r--doc/fr/user/plugin_xfer.fr.xml45
-rw-r--r--doc/fr/user/plugins.fr.xml149
-rw-r--r--doc/fr/user/usage.fr.xml824
-rw-r--r--doc/fr/user/weechat_user.fr.xml115
-rw-r--r--doc/fr/weechat_faq.fr.txt5
-rw-r--r--doc/fr/weechat_quickstart.fr.txt3
-rw-r--r--doc/fr/weechat_tester.fr.txt1
-rw-r--r--doc/fr/weechat_user.fr.txt1199
78 files changed, 3982 insertions, 18123 deletions
diff --git a/doc/fr/CMakeLists.txt b/doc/fr/CMakeLists.txt
new file mode 100644
index 000000000..14c6d5ad9
--- /dev/null
+++ b/doc/fr/CMakeLists.txt
@@ -0,0 +1,83 @@
+# 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/>.
+#
+
+# user's guide
+ADD_CUSTOM_COMMAND(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.fr.html
+ COMMAND ${ASCIIDOC} 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
+ DEPENDS
+ ${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.fr.txt
+ ${CMAKE_CURRENT_SOURCE_DIR}/autogen/user/*.txt
+ COMMENT "Building weechat_user.fr.html"
+)
+ADD_CUSTOM_TARGET(doc-user-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.fr.html)
+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} 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})
+
+# scripting guide
+#ADD_CUSTOM_COMMAND(
+# OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.fr.html
+# COMMAND ${ASCIIDOC} 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})
+
+# FAQ
+ADD_CUSTOM_COMMAND(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.fr.html
+ COMMAND ${ASCIIDOC} 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
+ DEPENDS
+ ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.fr.txt
+ COMMENT "Building weechat_faq.fr.html"
+)
+ADD_CUSTOM_TARGET(doc-faq-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.fr.html)
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.fr.html DESTINATION share/doc/${PROJECT_NAME})
+
+# quickstart
+ADD_CUSTOM_COMMAND(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html
+ COMMAND ${ASCIIDOC} 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
+ DEPENDS
+ ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.fr.txt
+ COMMENT "Building weechat_quickstart.fr.html"
+)
+ADD_CUSTOM_TARGET(doc-quickstart-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html)
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html DESTINATION share/doc/${PROJECT_NAME})
+
+# tester's guide
+ADD_CUSTOM_COMMAND(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html
+ COMMAND ${ASCIIDOC} 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
+ DEPENDS
+ ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.fr.txt
+ COMMENT "Building weechat_tester.fr.html"
+)
+ADD_CUSTOM_TARGET(doc-tester-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html)
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html DESTINATION share/doc/${PROJECT_NAME})
diff --git a/doc/fr/Makefile.am b/doc/fr/Makefile.am
index 088c91537..fac433719 100644
--- a/doc/fr/Makefile.am
+++ b/doc/fr/Makefile.am
@@ -14,202 +14,52 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-LANGCODE = fr
-
-BOOK_AUTOGEN_INCLUDE = ../include_autogen.xml \
- autogen/alias_commands.xml \
- autogen/aspell_commands.xml \
- autogen/aspell_options.xml \
- autogen/charset_commands.xml \
- autogen/charset_options.xml \
- autogen/completions.xml \
- autogen/demo_commands.xml \
- autogen/irc_commands.xml \
- autogen/irc_options.xml \
- autogen/infos.xml \
- autogen/infolists.xml \
- autogen/jabber_commands.xml \
- autogen/jabber_options.xml \
- autogen/logger_commands.xml \
- autogen/logger_options.xml \
- autogen/lua_commands.xml \
- autogen/perl_commands.xml \
- autogen/python_commands.xml \
- autogen/ruby_commands.xml \
- autogen/tcl_commands.xml \
- autogen/weechat_commands.xml \
- autogen/weechat_options.xml \
- autogen/xfer_commands.xml \
- autogen/xfer_options.xml
-
-BOOK_COMMON_INCLUDE = authors.$(LANGCODE).xml \
- intro.$(LANGCODE).xml
-
-BOOK_USER = weechat_user.$(LANGCODE)
-BOOK_USER_INCLUDE = user/install.$(LANGCODE).xml \
- user/usage.$(LANGCODE).xml \
- user/plugins.$(LANGCODE).xml \
- user/plugin_alias.$(LANGCODE).xml \
- user/plugin_aspell.$(LANGCODE).xml \
- user/plugin_charset.$(LANGCODE).xml \
- user/plugin_fifo.$(LANGCODE).xml \
- user/plugin_irc.$(LANGCODE).xml \
- user/plugin_jabber.$(LANGCODE).xml \
- user/plugin_logger.$(LANGCODE).xml \
- user/plugin_scripts.$(LANGCODE).xml \
- user/plugin_xfer.$(LANGCODE).xml
-
-BOOK_DEV = weechat_dev.$(LANGCODE)
-BOOK_DEV_INCLUDE = dev/plugins.$(LANGCODE).xml \
- dev/plugin_api.$(LANGCODE).xml \
- dev/plugin_c_api.$(LANGCODE).xml \
- dev/plugin_script_api.$(LANGCODE).xml
-
-FAQ = weechat_faq.$(LANGCODE).txt
-QUICKSTART = weechat_quickstart.$(LANGCODE).txt
-TESTER = weechat_tester.$(LANGCODE).txt
-
-EXTRA_DIST = $(BOOK_AUTOGEN_INCLUDE) $(BOOK_COMMON_INCLUDE) \
- user/$(BOOK_USER).xml $(BOOK_USER_INCLUDE) \
- dev/$(BOOK_DEV).xml $(BOOK_DEV_INCLUDE) \
- $(FAQ) $(QUICKSTART) $(TESTER)
-
-if DBLATEX_FOUND
-PDF = user-pdf-stamp dev-pdf-stamp
-endif
-
docdir = $(datadir)/doc/$(PACKAGE)
-all-local: user-html-stamp dev-html-stamp $(PDF)
-
-# user's guide, HTML output with chunks (many pages)
-
-user-html: user-html-stamp
-
-user-html-stamp: $(BOOK_AUTOGEN_INCLUDE) $(BOOK_COMMON_INCLUDE) user/$(BOOK_USER).xml $(BOOK_USER_INCLUDE) ../weechat-html.xsl ../weechat-doc.css ../include_autogen.xml
- rm -rf build/user-html/autogen/
- mkdir -p build/user-html/autogen/
- cp $(BOOK_AUTOGEN_INCLUDE) build/user-html/autogen/
- cp $(BOOK_COMMON_INCLUDE) build/user-html/
- cp user/$(BOOK_USER).xml build/user-html/
- cp $(BOOK_USER_INCLUDE) build/user-html/
- cp ../include_autogen.xml build/user-html/
- echo "<pubdate>`date '+%F %T'`</pubdate>" >build/user-html/date.xml
- rm -rf html/user/
- mkdir -p html/user/
- cd build/user-html/ ; xsltproc -o ../../html/user/ ../../../weechat-html.xsl $(BOOK_USER).xml || true
- cp ../weechat-doc.css html/user/
- touch user-html-stamp
-
-# user's guide, HTML output, all in one page
-
-user-html1: user-html1-stamp
-
-user-html1-stamp: $(BOOK_AUTOGEN_INCLUDE) $(BOOK_COMMON_INCLUDE) user/$(BOOK_USER).xml $(BOOK_USER_INCLUDE) ../weechat-html-one.xsl ../weechat-doc.css ../include_autogen.xml
- rm -rf build/user-html1/autogen/
- mkdir -p build/user-html1/autogen/
- cp $(BOOK_AUTOGEN_INCLUDE) build/user-html1/autogen/
- cp $(BOOK_COMMON_INCLUDE) build/user-html1/
- cp user/$(BOOK_USER).xml build/user-html1/
- cp $(BOOK_USER_INCLUDE) build/user-html1/
- cp ../include_autogen.xml build/user-html1/
- echo "<pubdate>`date '+%F %T'`</pubdate>" >build/user-html1/date.xml
- rm -rf html1/user/
- mkdir -p html1/user/
- cd build/user-html1/ ; xsltproc -o ../../html1/user/$(BOOK_USER).html ../../../weechat-html-one.xsl $(BOOK_USER).xml || true
- cp ../weechat-doc.css html1/user/
- touch user-html1-stamp
-
-# user's guide, PDF output
-
-user-pdf: user-pdf-stamp
-
-user-pdf-stamp: $(BOOK_AUTOGEN_INCLUDE) $(BOOK_COMMON_INCLUDE) user/$(BOOK_USER).xml $(BOOK_USER_INCLUDE) ../include_autogen.xml
- rm -rf build/user-pdf/autogen/
- mkdir -p build/user-pdf/autogen/
- cp $(BOOK_AUTOGEN_INCLUDE) build/user-pdf/autogen/
- cp $(BOOK_COMMON_INCLUDE) build/user-pdf/
- cp user/$(BOOK_USER).xml build/user-pdf/
- cp $(BOOK_USER_INCLUDE) build/user-pdf/
- cp ../include_autogen.xml build/user-pdf/
- echo "<pubdate>`date '+%F %T'`</pubdate>" >build/user-pdf/date.xml
- rm -rf pdf/user/
- mkdir -p pdf/user/
- cd build/user-pdf/ ; dblatex -o ../../pdf/user/$(BOOK_USER).pdf -P draft.mode=no -c ../../../dblatex.conf $(BOOK_USER).xml || true
- touch user-pdf-stamp
-
-# developer's guide, HTML output with chunks (many pages)
-
-dev-html: dev-html-stamp
+EXTRA_DIST = CMakeLists.txt \
+ weechat_user.fr.txt \
+ weechat_faq.fr.txt \
+ weechat_quickstart.fr.txt \
+ weechat_tester.fr.txt \
+ $(wildcard autogen/user/*.txt) \
+ $(wildcard autogen/plugin_api/*.txt)
-dev-html-stamp: $(BOOK_AUTOGEN_INCLUDE) $(BOOK_COMMON_INCLUDE) dev/$(BOOK_DEV).xml $(BOOK_DEV_INCLUDE) ../weechat-html.xsl ../weechat-doc.css ../include_autogen.xml
- rm -rf build/dev-html/autogen/
- mkdir -p build/dev-html/autogen/
- cp $(BOOK_AUTOGEN_INCLUDE) build/dev-html/autogen/
- cp $(BOOK_COMMON_INCLUDE) build/dev-html/
- cp dev/$(BOOK_DEV).xml build/dev-html/
- cp $(BOOK_DEV_INCLUDE) build/dev-html/
- cp ../include_autogen.xml build/dev-html/
- echo "<pubdate>`date '+%F %T'`</pubdate>" >build/dev-html/date.xml
- rm -rf html/dev/
- mkdir -p html/dev/
- cd build/dev-html/ ; xsltproc -o ../../html/dev/ ../../../weechat-html.xsl $(BOOK_DEV).xml || true
- cp ../weechat-doc.css html/dev/
- touch dev-html-stamp
+all-local: weechat_user.fr.html \
+ weechat_faq.fr.html \
+ weechat_quickstart.fr.html \
+ weechat_tester.fr.html
-# developer's guide, HTML output, all in one page
+# 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
-dev-html1: dev-html1-stamp
+# 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
-dev-html1-stamp: $(BOOK_AUTOGEN_INCLUDE) $(BOOK_COMMON_INCLUDE) dev/$(BOOK_DEV).xml $(BOOK_DEV_INCLUDE) ../weechat-html-one.xsl ../weechat-doc.css ../include_autogen.xml
- rm -rf build/dev-html1/autogen/
- mkdir -p build/dev-html1/autogen/
- cp $(BOOK_AUTOGEN_INCLUDE) build/dev-html1/autogen/
- cp $(BOOK_COMMON_INCLUDE) build/dev-html1/
- cp dev/$(BOOK_DEV).xml build/dev-html1/
- cp $(BOOK_DEV_INCLUDE) build/dev-html1/
- cp ../include_autogen.xml build/dev-html1/
- echo "<pubdate>`date '+%F %T'`</pubdate>" >build/dev-html1/date.xml
- rm -rf html1/dev/
- mkdir -p html1/dev/
- cd build/dev-html1/ ; xsltproc -o ../../html1/dev/$(BOOK_DEV).html ../../../weechat-html-one.xsl $(BOOK_DEV).xml || true
- cp ../weechat-doc.css html1/dev/
- touch dev-html1-stamp
+# 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
-# developer's guide, PDF output
+# 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
-dev-pdf: dev-pdf-stamp
+# 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
-dev-pdf-stamp: $(BOOK_AUTOGEN_INCLUDE) $(BOOK_COMMON_INCLUDE) dev/$(BOOK_DEV).xml $(BOOK_DEV_INCLUDE) ../include_autogen.xml
- rm -rf build/dev-pdf/autogen/
- mkdir -p build/dev-pdf/autogen/
- cp $(BOOK_AUTOGEN_INCLUDE) build/dev-pdf/autogen/
- cp $(BOOK_COMMON_INCLUDE) build/dev-pdf/
- cp dev/$(BOOK_DEV).xml build/dev-pdf/
- cp $(BOOK_DEV_INCLUDE) build/dev-pdf/
- cp ../include_autogen.xml build/dev-pdf/
- echo "<pubdate>`date '+%F %T'`</pubdate>" >build/dev-pdf/date.xml
- rm -rf pdf/dev/
- mkdir -p pdf/dev/
- cd build/dev-pdf/ ; dblatex -o ../../pdf/dev/$(BOOK_DEV).pdf -P draft.mode=no -c ../../../dblatex.conf $(BOOK_DEV).xml || true
- touch dev-pdf-stamp
+# 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
# install docs
install-data-hook:
- $(mkinstalldirs) $(DESTDIR)$(docdir)/html/$(LANGCODE)/user/ $(DESTDIR)$(docdir)/html/$(LANGCODE)/dev/
- $(INSTALL_DATA) html/user/* $(DESTDIR)$(docdir)/html/$(LANGCODE)/user/
- $(INSTALL_DATA) html/dev/* $(DESTDIR)$(docdir)/html/$(LANGCODE)/dev/
- $(INSTALL_DATA) $(FAQ) $(DESTDIR)$(docdir)/
- $(INSTALL_DATA) $(QUICKSTART) $(DESTDIR)$(docdir)/
- $(INSTALL_DATA) $(TESTER) $(DESTDIR)$(docdir)/
-if DBLATEX_FOUND
- $(INSTALL_DATA) pdf/user/$(BOOK_USER).pdf $(DESTDIR)$(docdir)/
- $(INSTALL_DATA) pdf/dev/$(BOOK_DEV).pdf $(DESTDIR)$(docdir)/
-endif
+ $(mkinstalldirs) $(DESTDIR)$(docdir)/
+ $(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
# clean
clean-local:
- -rm -rf html/ html1/ pdf/ build/
- -rm -f user-html-stamp user-html1-stamp user-pdf-stamp dev-html-stamp dev-html1-stamp dev-pdf-stamp
+ -rm -f *.html
diff --git a/doc/fr/authors.fr.xml b/doc/fr/authors.fr.xml
deleted file mode 100644
index 7de05f260..000000000
--- a/doc/fr/authors.fr.xml
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<chapter id="chapAuteursSupport">
- <title>Auteurs / Support</title>
-
- <para>
- Ce chapitre liste les auteurs et contributeurs pour WeeChat, et
- indique les moyens d'obtenir du support.
- </para>
-
- <section id="secAuteurs">
- <title>Auteurs</title>
-
- <para>
- WeeChat est développé par :
- <itemizedlist>
- <listitem>
- <para>
- <emphasis>FlashCode (Sébastien Helleu)</emphasis>
- <email>flashcode AT flashtux.org</email> -
- développeur principal
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>kolter (Emmanuel Bouthenot)</emphasis>
- <email>kolter AT openics.org</email> -
- développeur, empaqueteur Debian
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- </section>
-
- <section id="secContributeurs">
- <title>Contributeurs</title>
-
- <para>
- Les personnes suivantes ont contribué à WeeChat :
- <itemizedlist>
- <listitem>
- <para>
- <emphasis>Ptitlouis</emphasis> -
- premier empaqueteur Debian
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Jiri Golembiovsky</emphasis> -
- traduction en tchèque, patchs
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Pavel Shevchuk</emphasis> -
- traduction en russe
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Frank Zacharias</emphasis> -
- traduction en allemand
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>voroskoi</emphasis> -
- traduction en hongrois
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Rudolf Polzer</emphasis> -
- patchs
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Jim Ramsay</emphasis> -
- patchs
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Odin</emphasis> -
- RPM pour SuSE
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Pistos</emphasis> -
- patchs
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Gwenn</emphasis> -
- patchs
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- </section>
-
- <section id="secSupport">
- <title>Obtenir du support</title>
-
- <para>
- Avant de faire appel au support, merci de lire la documentation et
- la FAQ de WeeChat (la documentation est le document que vous êtes
- en train de lire, si vous n'avez pas tout lu jusqu'ici, il est encore
- temps de recommencer !)
- </para>
-
- <para>
- <itemizedlist>
- <listitem>
- <para>
- IRC : serveur "<literal>irc.freenode.net</literal>",
- canal "<literal>#weechat</literal>" (anglais) ou
- "<literal>#weechat-fr</literal>" (français)
- </para>
- </listitem>
- <listitem>
- <para>
- Forum WeeChat :
- <ulink url="http://forums.flashtux.org/">
- http://forums.flashtux.org/
- </ulink>
- </para>
- </listitem>
- <listitem>
- <para>
- Liste de diffusion :
- <itemizedlist>
- <listitem>
- <para>
- Pour souscrire :
- <ulink url="http://mail.nongnu.org/mailman/listinfo/weechat-support">
- http://mail.nongnu.org/mailman/listinfo/weechat-support
- </ulink>
- </para>
- </listitem>
- <listitem>
- <para>
- Pour envoyer un mail à la liste de diffusion :
- <email>weechat-support@nongnu.org</email>
- </para>
- </listitem>
- </itemizedlist>
- Les archives de la liste de diffusion sont ici :
- <ulink url="http://mail.nongnu.org/archive/html/weechat-support">
- http://mail.nongnu.org/archive/html/weechat-support
- </ulink>
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- </section>
-
-</chapter>
diff --git a/doc/fr/autogen/alias_commands.xml b/doc/fr/autogen/alias_commands.xml
deleted file mode 100644
index 3ed472c1d..000000000
--- a/doc/fr/autogen/alias_commands.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/alias [nom_alias [commande [paramètres]]]</command>
-<programlisting>
-créer un alias pour une commande
-
- nom_alias: nom de l'alias
- commande: nom de la commande (plusieurs commandes peuvent être séparées par des point-virgules)
-paramètres: paramètres pour la commande
-
-Sans paramètre, cette commande liste tous les alias définis.
-
-Note: dans la commande, les variables spéciales $1, $2,..,$9 sont remplacés par les paramètres donnés par l'utilisateur, et $* est remplacé par tous les paramètres.
-Les variables $nick, $channel et $server sont remplacées par le pseudo/canal/serveur courant.
-</programlisting>
-
diff --git a/doc/fr/autogen/aspell_commands.xml b/doc/fr/autogen/aspell_commands.xml
deleted file mode 100644
index 4d239f60d..000000000
--- a/doc/fr/autogen/aspell_commands.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/aspell dictlist | enable lang | disable | addword [lang] word</command>
-<programlisting>
-configuration de l'extension aspell
-
-dictlist: afficher les dictionnaires installés
- enable: active aspell sur le tampon courant
- disable: désactive aspell sur le tampon courant
- addword: ajoute un mot dans le dictionnaire personnel aspell
-
-Les lignes d'entrée commençant par '/' ne sont pas vérifiées, sauf pour certaines commandes.
-</programlisting>
-
diff --git a/doc/fr/autogen/aspell_options.xml b/doc/fr/autogen/aspell_options.xml
deleted file mode 100644
index 3c55b3c26..000000000
--- a/doc/fr/autogen/aspell_options.xml
+++ /dev/null
@@ -1,68 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>aspell.check.commands</command>: liste de commandes (séparées par des virgules) pour lesquelles la vérification orthographique est activée (la vérification est désactivée pour toutes les autres commandes)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: 'ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic')</para>
- </listitem>
-</itemizedlist>
-
-<command>aspell.check.default_dict</command>: 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 blanc pour désactiver aspell sur les tampons pour lesquels vous ne l'avez pas explicitement activé)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>aspell.check.during_search</command>: vérifier les mots pendant la recherche de texte dans le tampon
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>aspell.check.real_time</command>: vérification orthographique des mots en temps réel (plus lent, désactivé par défaut: les mots sont vérifiés seulement s'il y a un délimiteur après)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>aspell.check.word_min_length</command>: longueur minimum d'un mot pour que l'otrhographe soit vérifiée (utilisez 0 pour vérifier tous les mots)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 2)</para>
- </listitem>
-</itemizedlist>
-
-<command>aspell.look.color</command>: couleur utilisée pour les mots mal orthographiés
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightred)</para>
- </listitem>
-</itemizedlist>
-
diff --git a/doc/fr/autogen/charset_commands.xml b/doc/fr/autogen/charset_commands.xml
deleted file mode 100644
index 83d489919..000000000
--- a/doc/fr/autogen/charset_commands.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/charset [[decode | encode] charset] | [reset]</command>
-<programlisting>
-changer le charset pour le tampon courant
-
- decode: changer le charset de décodage
- encode: changer le charset d'encodage
-charset: nouveau charset pour le tampon courant
- reset: réinitialiser les charsets pour le tampon courant
-</programlisting>
-
diff --git a/doc/fr/autogen/charset_options.xml b/doc/fr/autogen/charset_options.xml
deleted file mode 100644
index 7c06f0afd..000000000
--- a/doc/fr/autogen/charset_options.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>charset.default.decode</command>: charset de décodage global
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: 'iso-8859-1')</para>
- </listitem>
-</itemizedlist>
-
-<command>charset.default.encode</command>: charset d'encodage global
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
diff --git a/doc/fr/autogen/completions.xml b/doc/fr/autogen/completions.xml
deleted file mode 100644
index 564a21470..000000000
--- a/doc/fr/autogen/completions.xml
+++ /dev/null
@@ -1,208 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<row>
- <entry>alias</entry>
- <entry>alias</entry>
- <entry>liste des alias</entry>
-</row>
-<row>
- <entry>aspell</entry>
- <entry>aspell_langs</entry>
- <entry>liste des langues supportées pour aspell</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_channel</entry>
- <entry>canal IRC courant</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_channel_nicks_hosts</entry>
- <entry>pseudos et noms d'hôtes du canal IRC courant</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_channel_topic</entry>
- <entry>titre du canal IRC courant</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_channels</entry>
- <entry>canaux IRC (sur tous les serveurs)</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_ignores_numbers</entry>
- <entry>numéros pour les ignores définis</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_msg_part</entry>
- <entry>message de fin par défaut pour le canal IRC</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_privates</entry>
- <entry>canaux IRC (sur tous les serveurs)</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_server</entry>
- <entry>serveur IRC courant</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_server_nick</entry>
- <entry>pseudo sur le serveur IRC courant</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_server_nicks</entry>
- <entry>pseudos sur tous les canaux du serveur IRC courant</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_servers</entry>
- <entry>serveurs IRC (noms internes)</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>nick</entry>
- <entry>pseudos du canal IRC courant</entry>
-</row>
-<row>
- <entry>lua</entry>
- <entry>lua_script</entry>
- <entry>liste des scripts</entry>
-</row>
-<row>
- <entry>perl</entry>
- <entry>perl_script</entry>
- <entry>liste des scripts</entry>
-</row>
-<row>
- <entry>python</entry>
- <entry>python_script</entry>
- <entry>liste des scripts</entry>
-</row>
-<row>
- <entry>ruby</entry>
- <entry>ruby_script</entry>
- <entry>liste des scripts</entry>
-</row>
-<row>
- <entry>tcl</entry>
- <entry>tcl_script</entry>
- <entry>liste des scripts</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>bars_names</entry>
- <entry>noms des barres</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>bars_options</entry>
- <entry>options pour les barres</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>buffers_names</entry>
- <entry>noms des tampons</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>buffers_numbers</entry>
- <entry>numéros des tampons</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>buffers_plugins_names</entry>
- <entry>noms des tampons (incluant les noms d'extensions)</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>commands</entry>
- <entry>commandes (weechat et extensions)</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>config_files</entry>
- <entry>fichiers de configuration</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>config_option_values</entry>
- <entry>valeurs pour une option de configuration</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>config_options</entry>
- <entry>options de configuration</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>filename</entry>
- <entry>nom de fichier</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>filters_names</entry>
- <entry>noms des filtres</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>infolists</entry>
- <entry>noms des infolistes accrochées</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>infos</entry>
- <entry>noms des infos accrochées</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>keys_codes</entry>
- <entry>codes des touches</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>nicks</entry>
- <entry>pseudos dans la liste des pseudos du tampon courant</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>plugins_commands</entry>
- <entry>commandes définies par les extensions</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>plugins_names</entry>
- <entry>noms des extensions</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>proxies_names</entry>
- <entry>noms des proxies</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>proxies_options</entry>
- <entry>options pour les proxies</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>weechat_commands</entry>
- <entry>commandes weechat</entry>
-</row>
-<row>
- <entry>xfer</entry>
- <entry>nick</entry>
- <entry>pseudos de la discussion DCC</entry>
-</row>
diff --git a/doc/fr/autogen/demo_commands.xml b/doc/fr/autogen/demo_commands.xml
deleted file mode 100644
index 442ee5475..000000000
--- a/doc/fr/autogen/demo_commands.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/demo_buffer nom</command>
-<programlisting>
-ouvrir un nouveau tampon
-</programlisting>
-
-<command>/demo_buffer_set propriété valeur</command>
-<programlisting>
-définir une propriété de tampon
-</programlisting>
-
-<command>/demo_info [info [paramètres]]</command>
-<programlisting>
-lit et affiche une info
-
- info: info à afficher
-paramètres: paramètres optionnels pour l'info
-
-Sans paramètre, cette commande affiche la liste des infos disponibles
-</programlisting>
-
-<command>/demo_infolist [infolist [paramètres]]</command>
-<programlisting>
-lit et affiche une infolist
-
- infolist: infolist à afficher
-paramètres: paramètres optionnels pour l'infolist
-
-Sans paramètre, cette commande affiche la liste des infolists disponibles
-</programlisting>
-
-<command>/demo_printf [texte]</command>
-<programlisting>
-affiche des messages sur le tampon courant
-
-texte: affiche ce texte
-</programlisting>
-
diff --git a/doc/fr/autogen/infolists.xml b/doc/fr/autogen/infolists.xml
deleted file mode 100644
index 389d25e69..000000000
--- a/doc/fr/autogen/infolists.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<row>
- <entry>alias</entry>
- <entry>alias</entry>
- <entry>liste des alias</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_channel</entry>
- <entry>liste des canaux pour un serveur IRC</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_ignore</entry>
- <entry>liste des ignore IRC</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_nick</entry>
- <entry>liste des pseudos pour un canal IRC</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_server</entry>
- <entry>liste des serveurs IRC</entry>
-</row>
-<row>
- <entry>logger</entry>
- <entry>logger_buffer</entry>
- <entry>liste des enregistreurs de tampons (loggers)</entry>
-</row>
-<row>
- <entry>lua</entry>
- <entry>lua_script</entry>
- <entry>list of lua scripts</entry>
-</row>
-<row>
- <entry>perl</entry>
- <entry>perl_script</entry>
- <entry>list of perl scripts</entry>
-</row>
-<row>
- <entry>python</entry>
- <entry>python_script</entry>
- <entry>list of python scripts</entry>
-</row>
-<row>
- <entry>relay</entry>
- <entry>relay</entry>
- <entry>liste des clients pour le relai</entry>
-</row>
-<row>
- <entry>ruby</entry>
- <entry>ruby_script</entry>
- <entry>list of ruby scripts</entry>
-</row>
-<row>
- <entry>tcl</entry>
- <entry>tcl_script</entry>
- <entry>list of tcl scripts</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>bar</entry>
- <entry>liste des barres</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>bar_item</entry>
- <entry>liste des objets de barres</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>bar_window</entry>
- <entry>liste des fenêtres de barre</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>buffer</entry>
- <entry>liste des tampons</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>buffer_lines</entry>
- <entry>lignes d'un tampon</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>filter</entry>
- <entry>liste des filtres</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>hook</entry>
- <entry>liste des hooks</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>hotlist</entry>
- <entry>liste des tampons dans la hotlist</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>key</entry>
- <entry>liste des associations de touches</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>nicklist</entry>
- <entry>pseudos dans la liste des pseudos pour un tampon</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>option</entry>
- <entry>liste des options</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>plugin</entry>
- <entry>liste des extensions</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>window</entry>
- <entry>liste des fenêtres</entry>
-</row>
-<row>
- <entry>xfer</entry>
- <entry>xfer</entry>
- <entry>liste des xfer</entry>
-</row>
diff --git a/doc/fr/autogen/infos.xml b/doc/fr/autogen/infos.xml
deleted file mode 100644
index 6d01431a8..000000000
--- a/doc/fr/autogen/infos.xml
+++ /dev/null
@@ -1,93 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<row>
- <entry>fifo</entry>
- <entry>fifo_filename</entry>
- <entry>nom du tube FIFO</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_buffer</entry>
- <entry>retourne le pointeur vers le tampon pour un serveur/canal IRC</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_current_server</entry>
- <entry>serveur actuellement sélectionné (seulement si un tampon est utilisé pour tous les serveurs)</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_is_channel</entry>
- <entry>1 si la chaîne est un canal IRC</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_nick</entry>
- <entry>retourne le pseudo utilisé actuellement sur un serveur</entry>
-</row>
-<row>
- <entry>irc</entry>
- <entry>irc_nick_from_host</entry>
- <entry>retourne le pseudo à partir d'un host IRC</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>charset_internal</entry>
- <entry>charset interne à WeeChat</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>charset_terminal</entry>
- <entry>charset du terminal</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>date</entry>
- <entry>date de compilation de WeeChat</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>dir_separator</entry>
- <entry>séparateur de répertoire</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>filters_enabled</entry>
- <entry>1 si les filtres sont activés</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>inactivity</entry>
- <entry>inactivité du clavier (secondes)</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>version</entry>
- <entry>version de WeeChat</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>weechat_dir</entry>
- <entry>répertoire de WeeChat</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>weechat_libdir</entry>
- <entry>répertoire "lib" de WeeChat</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>weechat_localedir</entry>
- <entry>répertoire "locale" de WeeChat</entry>
-</row>
-<row>
- <entry>weechat</entry>
- <entry>weechat_sharedir</entry>
- <entry>répertoire "share" de WeeChat</entry>
-</row>
diff --git a/doc/fr/autogen/irc_commands.xml b/doc/fr/autogen/irc_commands.xml
deleted file mode 100644
index 9a9323c93..000000000
--- a/doc/fr/autogen/irc_commands.xml
+++ /dev/null
@@ -1,535 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/admin [cible]</command>
-<programlisting>
-trouver les informations sur l'administrateur du serveur
-
-cible: serveur
-</programlisting>
-
-<command>/ame message</command>
-<programlisting>
-envoyer une action CTCP à tous les canaux de tous les serveurs connectés
-
-message: message à envoyer
-</programlisting>
-
-<command>/amsg texte</command>
-<programlisting>
-envoyer un message à tous les canaux de tous les serveurs connectés
-
-texte: texte à envoyer
-</programlisting>
-
-<command>/away [-all] [message]</command>
-<programlisting>
-basculer le statut absent
-
- -all: basculer le statut absent sur tous les serveurs connectés
-message: message pour l'absence (si pas de message donné, le statut d'absence est supprimé)
-</programlisting>
-
-<command>/ban [canal] [pseudo [pseudo ...]]</command>
-<programlisting>
-bannit des pseudos ou hôtes
-
- canal: nom du canal pour le bannissement
-pseudo: pseudo ou hôte pour le bannissement
-</programlisting>
-
-<command>/connect [-all [-nojoin] | nom_serveur [nom_serveur ...] [-nojoin] | nom/IP [-port port] [-ipv6] [-ssl]]</command>
-<programlisting>
-se connecter à un/plusieurs serveur(s) IRC
-
- -all: se reconnecter à tous les serveurs
-nom_serveur: nom du serveur pour se connecter
- -nojoin: ne rejoindre aucun canal (même si l'autojoin est activé pour le serveur)
- nom/IP: nom/IP pour se connecter
- port: port pour le serveur (nombre entier, 6667 par défaut)
- ipv6: utiliser le protocole IPv6
- ssl: utiliser le protocole SSL
-</programlisting>
-
-<command>/ctcp cible type [arguments]</command>
-<programlisting>
-envoyer un message CTCP (Client-To-Client Protocol)
-
- cible: pseudo à qui envoyer le CTCP
- type: type de CTCP (exemples: "version", "ping", etc...)
-arguments: arguments pour le CTCP
-</programlisting>
-
-<command>/cycle [canal[,canal]] [message_de_fin]</command>
-<programlisting>
-quitter et rejoindre un canal
-
- canal: canal pour le cycle
-message_de_fin: message de fin (affiché aux autres utilisateurs)
-</programlisting>
-
-<command>/dcc action [pseudo [fichier]]</command>
-<programlisting>
-démarre le DCC (fichier ou discussion)
-
- action: 'send' (envoi de fichier) ou 'chat' (discussion)
- pseudo: pseudo pour envoyer le fichier ou discuter
-fichier: nom du fichier (sur la machine locale)
-</programlisting>
-
-<command>/dehalfop [pseudo [pseudo]]</command>
-<programlisting>
-retire le statut de demi-opérateur du canal à/aux pseudo(s)
-</programlisting>
-
-<command>/deop [pseudo [pseudo]]</command>
-<programlisting>
-retire le statut d'opérateur du canal à/aux pseudo(s)
-</programlisting>
-
-<command>/devoice [pseudo [pseudo]]</command>
-<programlisting>
-retire la voix du/des pseudo(s)
-</programlisting>
-
-<command>/die</command>
-<programlisting>
-arrêter le serveur
-</programlisting>
-
-<command>/disconnect [-all | nom_serveur [nom_serveur...]]</command>
-<programlisting>
-se déconnecter d'un/plusieurs serveur(s) IRC
-
- -all: se déconnecter de tous les serveurs
-nom_serveur: nom du serveur pour se déconnecter
-</programlisting>
-
-<command>/halfop [pseudo [pseudo]]</command>
-<programlisting>
-donner le statut de demi-opérateur à un/des pseudo(s)
-</programlisting>
-
-<command>/ignore [list] | [add [re:]pseudo/hote [server [channel]]] | [del numéro|-all]</command>
-<programlisting>
-ignore des pseudos/hôtes de serveurs ou canaux
-
- list: liste tous les ignore
- add: ajoute un ignore
- del: supprime un ignore
- numéro: numéro du ignore à supprimer (voir la liste des ignore pour le trouver)
- -all: supprime tous les ignore
-pseudo/hôte: pseudo ou hôte à ignorer: la syntaxe est "re:regex" ou "masque" (un masque est une chaîne avec des "*" pour remplacer un ou plusieurs caractères)
- serveur: nom de serveur interne où le ignore fonctionnera
- canal: canal où le ignore fonctionnera
-
-Exemples:
- ignorer le pseudo "toto" partout:
- /ignore add toto
- ignorer le hôte "toto@domain.com" sur le serveur freenode:
- /ignore add toto@domain.com freenode
- ignorer le hôte "toto*@*.domain.com" sur freenode/#weechat:
- /ignore add toto*@*.domain.com freenode #weechat
-</programlisting>
-
-<command>/info [cible]</command>
-<programlisting>
-voir les informations décrivant le serveur
-
-cible: nom du serveur
-</programlisting>
-
-<command>/invite pseudo canal</command>
-<programlisting>
-inviter un pseudo sur un canal
-
-pseudo: pseudo à inviter
- canal: canal pour l'invitation
-</programlisting>
-
-<command>/ison pseudo [pseudo ...]</command>
-<programlisting>
-vérifier si un pseudo est actuellement sur IRC
-
-pseudo: pseudo
-</programlisting>
-
-<command>/join canal[,canal] [clé[,clé]]</command>
-<programlisting>
-joindre un canal
-
-canal: nom du canal à rejoindre
- clé: clé pour rejoindre le canal
-</programlisting>
-
-<command>/kick [canal] pseudo [commentaire]</command>
-<programlisting>
-retirer par la force un utilisateur d'un canal
-
- canal: canal où l'utilisateur se trouve
- pseudo: pseudo à éliminer
-commentaire: commentaire pour l'élimination
-</programlisting>
-
-<command>/kickban [canal] pseudo [commentaire]</command>
-<programlisting>
-retirer par la force un pseudo d'un canal et le bannir
-
- canal: canal où l'utilisateur se trouve
- pseudo: pseudo à éliminer et bannir
-commentaire: commentaire pour l'élimination
-</programlisting>
-
-<command>/kill pseudo commentaire</command>
-<programlisting>
-fermer la connexion client-serveur
-
- pseudo: pseudo
-commentaire: commentaire pour la mort
-</programlisting>
-
-<command>/links [[serveur] masque_serveur]</command>
-<programlisting>
-lister tous les noms de serveurs connus du serveur qui répondent à la requête
-
- serveur: ce serveur doit répondre à la requête
-masque_serveur: liste des serveurs correspondant au masque
-</programlisting>
-
-<command>/list [canal[,canal] [serveur]]</command>
-<programlisting>
-lister les canaux et leur titre
-
-canal: canal à lister (une expression régulière est acceptée)
-serveur: nom du serveur
-</programlisting>
-
-<command>/lusers [masque [cible]]</command>
-<programlisting>
-obtenir des statistiques sur la taille du réseau IRC
-
-masque: serveurs qui correspondent au masque seulement
- cible: serveur pour faire suivre la requête
-</programlisting>
-
-<command>/me message</command>
-<programlisting>
-envoyer une action CTCP au canal courant
-
-message: message à envoyer
-</programlisting>
-
-<command>/mode { [canal] {[+|-]|o|p|s|i|t|n|b|v} [limite] [utilisateur] [masque de banissement] } | { pseudo {[+|-]|i|w|s|o} }</command>
-<programlisting>
-changer le mode du canal ou de l'utilisateur
-
-modes de canaux:
- canal: nom du canal à modifier (par défaut le canal courant)
- o: donner/reprendre le statut privilégié d'opérateur
- p: indicateur de canal privé
- s: indicateur de canal secret
- i: indicateur de canal avec invitation seulement
- t: le titre est modifiable seulement par un opérateur du canal
- n: aucun message au canal depuis l'extérieur
- m: canal modéré
- l: fixer la limite d'utilisateurs pour le canal
- b: paramétrer un masque de banissement pour garder des utilisateurs dehors
- e: paramétrer un masque d'exception
- v: donner/reprendre la possibilité de parler sur un canal modéré
- k: définir une clé (mot de passe) pour accéder au canal
-modes utilisateur:
- pseudo: pseudo à modifier
- i: marquer un utilisateur comme invisible
- s: marquer un utilisateur pour recevoir les notices du serveur
- w: l'utilisateur reçoit les wallops
- o: drapeau opérateur
-</programlisting>
-
-<command>/motd [cible]</command>
-<programlisting>
-obtenir le message du jour
-
-cible: nom du serveur
-</programlisting>
-
-<command>/msg [-server serveur] cible[,cible] texte</command>
-<programlisting>
-envoyer un message à un pseudo ou canal
-
-serveur: envoyer à ce serveur (nom interne)
- cible: pseudo ou canal (peut-être un masque, '*' = canal courant)
- texte: texte à envoyer
-</programlisting>
-
-<command>/names [canal[,canal]]</command>
-<programlisting>
-lister les pseudos sur des canaux
-
-canal: nom du canal
-</programlisting>
-
-<command>/nick [-all] pseudo</command>
-<programlisting>
-changer le pseudo courant
-
- -all: définir le nouveau pseudo sur tous les serveurs connectés
-pseudo: nouveau pseudo
-</programlisting>
-
-<command>/notice [-server serveur] pseudo texte</command>
-<programlisting>
-envoyer un message notice à un utilisateur
-
-serveur: envoyer à ce serveur (nom interne)
- pseudo: pseudo cible pour la notice
- texte: texte à envoyer
-</programlisting>
-
-<command>/op pseudo [pseudo]</command>
-<programlisting>
-donner le statut opérateur à un/des pseudo(s)
-</programlisting>
-
-<command>/oper utilisateur mot_de_passe</command>
-<programlisting>
-obtenir le statut d'opérateur
-
-utilisateur/mot_de_passe: utilisé pour obtenir les privilèges sur le serveur IRC courant
-</programlisting>
-
-<command>/part [canal[,canal]] [message_de_fin]</command>
-<programlisting>
-quitter un canal
-
- canal: canal à quitter
-message_de_fin: message de fin (affiché aux autres utilisateurs)
-</programlisting>
-
-<command>/ping serveur1 [serveur2]</command>
-<programlisting>
-pinguer un serveur
-
-serveur1: serveur à pinguer
-serveur2: faire suivre le ping à ce serveur
-</programlisting>
-
-<command>/pong démon [démon2]</command>
-<programlisting>
-répondre à un message ping
-
- démon: démon qui a répondu au message Ping
-démon2: faire suivre le message à ce démon
-</programlisting>
-
-<command>/query [-server serveur] pseudo [texte]</command>
-<programlisting>
-envoyer un message privé à un pseudo
-
-serveur: envoyer à ce serveur (nom interne)
- pseudo: pseudo pour la conversation privée
- texte: texte à envoyer
-</programlisting>
-
-<command>/quote [-server serveur] données</command>
-<programlisting>
-envoyer des données brutes au serveur sans analyse
-
-serveur: envoyer à ce serveur (nom interne)
-données: données brutes à envoyer
-</programlisting>
-
-<command>/reconnect [-all [-nojoin] | nom_serveur [nom_serveur...] [-nojoin]]</command>
-<programlisting>
-se reconnecter à un/plusieurs serveur(s)
-
- -all: se reconnecter à tous les serveurs
-nom_serveur: nom du serveur pour se reconnecter
- -nojoin: ne rejoindre aucun canal (même si l'autojoin est activé pour le serveur)
-</programlisting>
-
-<command>/rehash</command>
-<programlisting>
-demander au serveur de recharger son fichier de configuration
-</programlisting>
-
-<command>/restart</command>
-<programlisting>
-demander au serveur de redémarrer
-</programlisting>
-
-<command>/server [list [nom_serveur]] | [listfull [nom_serveur]] | [add nom_serveur nom[/port] [-temp] [-auto | -noauto] [-ipv6] [-ssl]] | [copy nom_serveur nouveau_nom_serveur] | [rename nom_serveur nouveau_nom_serveur] | [keep nom_serveur] | [del nom_serveur] | [deloutq] | [raw] | [switch]</command>
-<programlisting>
-liste, ajoute ou retire des serveurs IRC
-
- list: afficher les serveurs (pas de paramètre implique cette liste)
- listfull: afficher les serveurs avec de l'info détaillée pour chaque
- add: créer un nouveau serveur
-nom_serveur: nom du serveur, pour usage interne et affichage
- nom: nom ou adresse IP du serveur avec port en option (defaut: 6667)
- auto: se connecter automatiquement au serveur quand WeeChat démarre
- noauto: ne pas se connecter au serveur quand WeeChat démarre (par défaut)
- ipv6: utiliser le protocole IPv6
- ssl: utiliser le protocole SSL
- copy: dupliquer un serveur
- rename: renommer un serveur
- keep: garder le serveur dans le fichier de configuration (pour les serveurs temporaires seulement)
- del: supprimer un serveur
- deloutq: supprimer la file d'attente des messages sortants pour tous les serveurs (tous les messages que WeeChat est actuellement en train d'envoyer)
- raw: ouvre le tampon avec les données brutes IRC
- switch: changer le serveur actif (quand un tampon est utilisé pour tous les serveurs, touche par défaut: alt-s sur le tampon serveur)
-
-Exemples:
- /server listfull
- /server add oftc irc.oftc.net/6697 -ssl
- /server add oftc6 irc6.oftc.net/6697 -ipv6 -ssl
- /server add freenode2 chat.eu.freenode.net/6667,chat.us.freenode.net/6667
- /server copy oftc oftcbis
- /server rename oftc newoftc
- /server del freenode
- /server deloutq
- /server switch
-</programlisting>
-
-<command>/service pseudo réservé distribution type réservé info</command>
-<programlisting>
-enregister un nouveau service
-
-distribution: visibilité du service
- type: réservé pour une utilisation future
-</programlisting>
-
-<command>/servlist [masque [type]]</command>
-<programlisting>
-lister les services actuellement connectés au réseau
-
-masque: lister seulement les services qui correspondent à ce masque
- type: lister seulement les services de ce type
-</programlisting>
-
-<command>/squery service texte</command>
-<programlisting>
-envoyer un message à un service
-
-service: nom du service
-texte: texte à envoyer
-</programlisting>
-
-<command>/squit serveur commentaire</command>
-<programlisting>
-déconnecter les liens vers un serveur
-
-serveur: nom du serveur
-commentaire: commentaire pour quitter
-</programlisting>
-
-<command>/stats [requête [serveur]]</command>
-<programlisting>
-demander des statistiques sur le serveur
-
-requête: c/h/i/k/l/m/o/y/u (voir la RFC1459)
-serveur: nom du serveur
-</programlisting>
-
-<command>/summon utilisateur [cible [canal]]</command>
-<programlisting>
-envoyer aux utilisateurs d'un serveur IRC un message leur demandant de rejoindre IRC
-
-utilisateur: nom d'utilisateur
- cible: nom du serveur
- canal: nom du canal
-</programlisting>
-
-<command>/time [cible]</command>
-<programlisting>
-demander l'heure locale de serveur
-
-cible: demander l'heure de ce serveur
-</programlisting>
-
-<command>/topic [canal] [titre]</command>
-<programlisting>
-recevoir/définir le titre du canal
-
-canal: nom du canal
-titre: nouveau titre pour le canal (si le titre est "-delete" alors le titre est supprimé)
-</programlisting>
-
-<command>/trace [cible]</command>
-<programlisting>
-trouver le chemin jusqu'à un serveur spécifique
-
-cible: serveur
-</programlisting>
-
-<command>/unban [canal] pseudo [pseudo ...]</command>
-<programlisting>
-supprime le bannissement sur des pseudos ou hôtes
-
- canal: nom du canal pour supprimer le bannissement
-pseudo: pseudo ou hôte pour supprimer le bannissement
-</programlisting>
-
-<command>/userhost pseudo [pseudo ...]</command>
-<programlisting>
-retourne une liste d'informations sur des pseudos
-
-pseudo: pseudo
-</programlisting>
-
-<command>/users [cible]</command>
-<programlisting>
-liste des utilisateurs connectés au serveur
-
-cible: serveur
-</programlisting>
-
-<command>/version [serveur | pseudo]</command>
-<programlisting>
-retourne la version du pseudo ou du serveur (courant ou spécifié)
-
-serveur: nom du serveur
- pseudo: pseudo
-</programlisting>
-
-<command>/voice [pseudo [pseudo]]</command>
-<programlisting>
-donne la voix à/aux pseudo(s)
-</programlisting>
-
-<command>/wallops texte</command>
-<programlisting>
-envoyer un message à tous les utilisateurs connectés qui ont activé le mode utilisateur 'w' pour eux-mêmes
-
-texte à envoyer
-</programlisting>
-
-<command>/who [masque ["o"]]</command>
-<programlisting>
-génère une requête qui retourne une liste d'information
-
-masque: information qui correspond à ce masque uniquement
- o: seul les opérateurs sont retournés correspondant au masque fourni
-</programlisting>
-
-<command>/whois [serveur] pseudo[,pseudo]</command>
-<programlisting>
-demande les informations sur le(s) utilisateur(s)
-
-serveur: nom du serveur
- pseudo: pseudo (peut être un masque)
-</programlisting>
-
-<command>/whowas pseudo [,pseudo [,pseudo ...]] [nombre [cible]]</command>
-<programlisting>
-demander de l'information sur un pseudo qui n'existe plus
-
-pseudo: pseudo à chercher
-nombre: nombre de réponses à retourner (recherche complète si nombre négatif)
- cible: la réponse doit correspondre à ce masque
-</programlisting>
-
diff --git a/doc/fr/autogen/irc_options.xml b/doc/fr/autogen/irc_options.xml
deleted file mode 100644
index dbbcbbb16..000000000
--- a/doc/fr/autogen/irc_options.xml
+++ /dev/null
@@ -1,488 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>irc.color.input_nick</command>: couleur du pseudo dans la barre de saisie
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightcyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.color.message_join</command>: couleur pour le texte dans les messages join
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: green)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.color.message_quit</command>: couleur pour le texte dans les messages part/quit
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: red)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.color_nicks_in_server_messages</command>: utiliser la couleur du pseudo dans les messages du serveur
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.display_away</command>: affiche un message pour l'absence/le retour
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: off, local, channel (valeur par défaut: local)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.display_channel_modes</command>: affiche les modes du canal dans l'objet de barre "buffer_name"
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.display_nick_modes</command>: affiche les modes du pseudo dans l'objet de barre "input_prompt"
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.display_old_topic</command>: afficher l'ancien titre lorsque le titre du canal est changé
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.hide_nickserv_pwd</command>: masquer le mot de passe affiché par nickserv
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.highlight_tags</command>: liste des tags pour les messages qui peuvent produire un highlight (séparés par des virgules, typiquement tout message venant d'un autre utilisateur, pas les messages du serveur, ...)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: 'irc_privmsg,irc_notice')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.nick_completion_smart</command>: complétion intelligente pour les pseudos (complète d'abord avec les personnes qui ont parlé récemment)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: off, speakers, speakers_highlights (valeur par défaut: speakers)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.nick_prefix</command>: texte à afficher avant le pseudo dans la fenêtre de discussion
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.nick_suffix</command>: texte à afficher après le pseudo dans la fenêtre de discussion
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.notice_as_pv</command>: afficher les notices comme des messages privés
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.one_server_buffer</command>: utiliser le même tampon pour tous les serveurs
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.open_near_server</command>: ouvrir les nouveaux canaux/privés près du serveur
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.raw_messages</command>: nombre de messages IRC bruts à sauvegarder en mémoire lorsque le tampon des données brutes est fermé (ces messages seront affichés lors de l'ouverture du tampon des données brutes)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 65535 (valeur par défaut: 256)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.show_away_once</command>: voir le message d'absence distant une seule fois en privé
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.smart_filter</command>: filtrer les messages join/part/quit pour un pseudo s'il n'a pas parlé pendant quelques minutes sur le canal (vous devez créer un filtre sur le tag "irc_smart_filter")
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.smart_filter_delay</command>: délai pour filtrer les messages join/part/quit (en minutes)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 1 .. 10080 (valeur par défaut: 5)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.look.topic_strip_colors</command>: supprimer les couleurs dans le titre (utilisé seulement lors de l'affichage du titre du tampon)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.anti_flood</command>: anti-flood: nombre de secondes entre deux messages utilisateur (0 = pas d'anti-flood)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 5 (valeur par défaut: 2)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.away_check</command>: intervalle entre deux vérifications des absences (en minutes, 0 = ne jamais vérifier)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 0)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.away_check_max_nicks</command>: ne pas vérifier les pseudos absents lorsqu'il y a un nombre important de pseudos (0 = pas de limite)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 0)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.colors_receive</command>: si désactivé, les codes couleurs des messages entrants sont ignorés
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.colors_send</command>: autorise l'utilisateur à envoyer des couleurs avec des codes spéciaux (^Cb=gras, ^Cxx=couleur, ^Ccxx,yy=couleur+fond, ^Cu=souligné, ^Cr=inversé)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.default_msg_part</command>: message par défaut pour le part (en quittant un canal) ('%v' sera remplacé par la version de WeeChat dans la chaîne)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: 'WeeChat %v')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.default_msg_quit</command>: message de fin par défaut (lors de la déconnexion du serveur) ('%v' sera remplacé par la version de WeeChat dans la chaîne)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: 'WeeChat %v')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.lag_check</command>: intervalle entre deux vérifications des absences (en secondes, 0 = ne jamais vérifier)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 60)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.lag_disconnect</command>: déconnexion après un lag important (en minutes, 0 = ne jamais se déconnecter)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 0)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.lag_min_show</command>: lag minimum à afficher (en secondes)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 1)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.network.send_unknown_commands</command>: envoie les commandes inconnues au serveur
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.addresses</command>: liste de nom/port ou IP/port pour le serveur (séparés par des virgules)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.autoconnect</command>: connexion automatique au serveur quand WeeChat démarre
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.autojoin</command>: liste des canaux (séparés par des virgules) à rejoindre lorsque connecté au serveur (exemple: "#chan1,#chan2,#chan3 key1,key2")
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.autoreconnect</command>: reconnexion automatique au serveur après une déconnexion
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.autoreconnect_delay</command>: délai (en secondes) avant de tenter une reconnexion au serveur
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 65535 (valeur par défaut: 30)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.autorejoin</command>: rejoindre automatiquement les canaux quand mis dehors
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.command</command>: commande(s) à exécuter lorsque connecté au serveur (plusieurs commandes doivent être séparées par ';', utilisez '\;' pour un point-virgule, les variables spéciales $nick, $channel et $server sont remplacées par leur valeur)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.command_delay</command>: délai (en secondes) après exécution de la commande (exemple: donner du temps pour l'authentification)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 3600 (valeur par défaut: 0)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.ipv6</command>: utiliser le protocole IPv6 pour la communication avec le serveur
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.local_hostname</command>: nom local de machine/IP personnalisé pour le serveur (optionnel, si non renseigné, le nom de machine local est utilisé)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.nicks</command>: pseudos à utiliser sur le serveur (séparés par des virgules)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.password</command>: mot de passe pour le serveur
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.proxy</command>: proxy utilisé pour ce serveur (optionnel)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.realname</command>: nom réel pour le serveur
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.ssl</command>: utiliser SSL pour la communication avec le serveur
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>irc.server_default.username</command>: nom d'utilisateur pour le serveur
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
diff --git a/doc/fr/autogen/jabber_commands.xml b/doc/fr/autogen/jabber_commands.xml
deleted file mode 100644
index f17769828..000000000
--- a/doc/fr/autogen/jabber_commands.xml
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/jabber [list [nom_serveur]] | [listfull [nom_serveur]] | [add nom_serveur nom_utilisateur nom[/port] mot_de_passe [-temp] [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy nom_serveur nouveau_nom_serveur] | [rename nom_serveur nouveau_nom_serveur] | [keep nom_serveur] | [del nom_serveur] | [switch]</command>
-<programlisting>
-liste, ajoute ou retire des serveurs Jabber
-
- list: afficher les serveurs (pas de paramètre implique cette liste)
- listfull: afficher les serveurs avec de l'info détaillée pour chaque
- add: créer un nouveau serveur
- nom_serveur: nom du serveur, pour usage interne et affichage
-nom_utilisateur: nom d'utilisateur pour ce serveur
- nom: nom ou adresse IP du serveur avec port en option (defaut: 5222)
- mot_de_passe: mot de passe pour l'utilisateur sur le serveur
- auto: se connecter automatiquement au serveur quand WeeChat démarre
- noauto: ne pas se connecter au serveur quand WeeChat démarre (par défaut)
- ipv6: utiliser le protocole IPv6
- tsl: utiliser le protocole de chiffrement TLS
- sasl: utiliser SASL pour l'authentification
- copy: dupliquer un serveur
- rename: renommer un serveur
- keep: garder le serveur dans le fichier de configuration (pour les serveurs temporaires seulement)
- del: supprimer un serveur
- switch: changer le serveur actif (quand un tampon est utilisé pour tous les serveurs, touche par défaut: alt-s sur le tampon serveur)
-
-Exemples:
- /jabber listfull
- /jabber add jabberfr user jabber.fr/5222 password -tls
- /jabber copy jabberfr jabberfr2
- /jabber rename jabberfr jabbfr
- /jabber del jabberfr
- /jabber switch
-</programlisting>
-
-<command>/jchat contact [texte]</command>
-<programlisting>
-discuter avec un contact
-
-contact: nom du contact pour la discussion
- texte: texte à envoyer
-</programlisting>
-
-<command>/jconnect [-all [-nojoin] | nom_serveur [nom_serveur ...] [-nojoin] | nom/IP [-port port] [-ipv6] [-tls] [-sasl]]</command>
-<programlisting>
-se connecter à un/plusieurs serveur(s) Jabber
-
- -all: se reconnecter à tous les serveurs
-nom_serveur: nom du serveur pour se connecter
- -nojoin: ne rejoindre aucun MUC (même si l'autojoin est activé pour le serveur)
- nom/IP: nom/IP pour se connecter
- port: port pour le serveur (nombre entier, 6667 par défaut)
- ipv6: utiliser le protocole IPv6
- tls: utiliser le protocole de chiffrement TLS
- sasl: utiliser SASL pour l'authentification
-</programlisting>
-
-<command>/jdisconnect [-all | nom_serveur [nom_serveur...]]</command>
-<programlisting>
-se déconnecter d'un/plusieurs serveur(s) Jabber
-
- -all: se déconnecter de tous les serveurs
-nom_serveur: nom du serveur pour se déconnecter
-</programlisting>
-
diff --git a/doc/fr/autogen/jabber_options.xml b/doc/fr/autogen/jabber_options.xml
deleted file mode 100644
index 099d6efc7..000000000
--- a/doc/fr/autogen/jabber_options.xml
+++ /dev/null
@@ -1,418 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>jabber.color.input_nick</command>: couleur du pseudo dans la barre de saisie
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightcyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.color.message_join</command>: couleur pour le texte dans les messages join
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: green)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.color.message_quit</command>: couleur pour le texte dans les messages part/quit
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: red)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.color_nicks_in_server_messages</command>: utiliser la couleur du pseudo dans les messages du serveur
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.display_away</command>: affiche un message pour l'absence/le retour
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: off, local, muc (valeur par défaut: local)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.display_muc_modes</command>: affiche les modes du MUC dans l'objet de barre "buffer_name"
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.display_nick_modes</command>: affiche les modes du pseudo dans l'objet de barre "input_prompt"
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.highlight_tags</command>: liste des tags pour les messages qui peuvent produire un highlight (séparés par des virgules, typiquement tout message venant d'un autre utilisateur, pas les messages du serveur, ...)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: 'jabber_chat_msg,jabber_notice')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.nick_completion_smart</command>: complétion intelligente pour les pseudos (complète d'abord avec les personnes qui ont parlé récemment)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.nick_prefix</command>: texte à afficher avant le pseudo dans la fenêtre de discussion
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.nick_suffix</command>: texte à afficher après le pseudo dans la fenêtre de discussion
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.one_server_buffer</command>: utiliser le même tampon pour tous les serveurs
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.open_near_server</command>: ouvrir les nouveaux MUCs/privés près du serveur
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.show_away_once</command>: voir le message d'absence distant une seule fois en privé
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.smart_filter</command>: filtrer les messages join/part/quit pour un pseudo s'il n'a pas parlé pendant quelques minutes sur le MUC (vous devez créer un filtre sur le tag "jabber_smart_filter")
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.look.smart_filter_delay</command>: délai pour filtrer les messages join/part/quit (en minutes)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 1 .. 10080 (valeur par défaut: 5)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.network.anti_flood</command>: anti-flood: nombre de secondes entre deux messages utilisateur (0 = pas d'anti-flood)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 5 (valeur par défaut: 2)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.network.colors_receive</command>: si désactivé, les codes couleurs des messages entrants sont ignorés
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.network.colors_send</command>: autorise l'utilisateur à envoyer des couleurs avec des codes spéciaux (^Cb=gras, ^Cxx=couleur, ^Ccxx,yy=couleur+fond, ^Cu=souligné, ^Cr=inversé)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.network.default_msg_part</command>: message par défaut pour le part (en quittant un MUC) ('%v' sera remplacé par la version de WeeChat dans la chaîne)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: 'WeeChat %v')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.network.default_msg_quit</command>: message de fin par défaut (lors de la déconnexion du serveur) ('%v' sera remplacé par la version de WeeChat dans la chaîne)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: 'WeeChat %v')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.network.lag_check</command>: intervalle entre deux vérifications des absences (en secondes, 0 = ne jamais vérifier)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 60)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.network.lag_disconnect</command>: déconnexion après un lag important (en minutes, 0 = ne jamais se déconnecter)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 5)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.network.lag_min_show</command>: lag minimum à afficher (en secondes)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 1)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.autoconnect</command>: connexion automatique au serveur quand WeeChat démarre
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.autojoin</command>: liste des MUCs (séparés par des virgules) à rejoindre lorsque connecté au serveur (exemple: "#chan1,#chan2,#chan3 key1,key2")
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.autoreconnect</command>: reconnexion automatique au serveur après une déconnexion
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.autoreconnect_delay</command>: délai (en secondes) avant de tenter une reconnexion au serveur
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 65535 (valeur par défaut: 10)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.autorejoin</command>: rejoindre automatiquement les MUCs quand mis dehors
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.command</command>: commande(s) à exécuter lorsque connecté au serveur (plusieurs commandes doivent être séparées par ';', utilisez '\;' pour un point-virgule, les variables spéciales $nick, $muc et $server sont remplacées par leur valeur)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.command_delay</command>: délai (en secondes) après exécution de la commande (exemple: donner du temps pour l'authentification)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 3600 (valeur par défaut: 0)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.ipv6</command>: utiliser le protocole IPv6 pour la communication avec le serveur
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.local_alias</command>: alias local
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.local_hostname</command>: nom local de machine/IP personnalisé pour le serveur (optionnel, si non renseigné, le nom de machine local est utilisé)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.password</command>: mot de passe
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.proxy</command>: proxy utilisé pour ce serveur (optionnel)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.resource</command>: ressource (pas exemple: Maison ou Travail)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.sasl</command>: utiliser SASL pour l'authentification
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.server</command>: nom/port ou IP/port pour le serveur
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.tls</command>: utiliser le protocole de chiffrement TLS pour la communication avec le serveur
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>jabber.server_default.username</command>: nom d'utilisateur pour le serveur
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
diff --git a/doc/fr/autogen/logger_commands.xml b/doc/fr/autogen/logger_commands.xml
deleted file mode 100644
index ed2dc123e..000000000
--- a/doc/fr/autogen/logger_commands.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/logger [list | set niveau | disable]</command>
-<programlisting>
-configuration de l'extension logger
-
- list: afficher le statut d'enregistrement pour les tampons ouverts
- set: définir le niveau d'enregistrement pour le tampon courant
- niveau: niveau pour les messages à enregistrer (0 = pas d'enregistrement, 1 = quelques messages (les plus importants) .. 9 = tous les messages)
-disable: désactiver l'enregistrement pour le tampon courant (définir le niveau à 0)
-
-Les options "logger.level.*" et "logger.mask.*" peuvent être utilisées pour définir le niveau ou le masque de nom de fichier pour un tampon, ou plusieurs tampons commençant par un nom.
-
-Exemples:
- définir le niveau d'enregistrement à 5 pour le tampon courant:
- /logger set 5
- désactiver l'enregistrement pour le tampon courant:
- /logger disable
- définir le niveau à 3 pour les tampons IRC:
- /set logger.level.irc 3
- désactiver l'enregistrement pour le tampon principal de WeeChat:
- /set logger.level.core.weechat 0
- utiliser un répertoire par serveur IRC et un fichier par canal dedans:
- /set logger.mask.irc "$server/$channel.weechatlog"
-
-Niveaux de log utilisés par l'extension IRC:
- 1: message d'utilisateur, notice, privé
- 2: changement de pseudo
- 3: message du serveur
- 4: join/part/quit
- 9: tous les autres messages
-</programlisting>
-
diff --git a/doc/fr/autogen/logger_options.xml b/doc/fr/autogen/logger_options.xml
deleted file mode 100644
index 5cd579701..000000000
--- a/doc/fr/autogen/logger_options.xml
+++ /dev/null
@@ -1,78 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>logger.file.auto_log</command>: sauve automatiquement le contenu des tampons dans des fichiers (sauf si un tampon désactive le log)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>logger.file.info_lines</command>: écrire une ligne d'information dans le fichier log quand le log démarre ou se termine pour un tampon
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>logger.file.mask</command>: masque de fichier par défaut pour les fichiers de log (le format est 'repertoire/vers/fichier' ou 'fichier', sans le premier '/' car l'option 'path' est utilisée pour construire le chemin complet vers le fichier); les variables locales du tampon sont permises
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '$plugin.$name.weechatlog')</para>
- </listitem>
-</itemizedlist>
-
-<command>logger.file.name_lower_case</command>: utiliser seulement des minuscules dans le nom des fichiers de log
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>logger.file.path</command>: chemin pour les fichiers de log WeeChat ('%h' sera remplacé par le répertoire de base WeeChat, par défaut: ~/.weechat)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '%h/logs/')</para>
- </listitem>
-</itemizedlist>
-
-<command>logger.file.time_format</command>: format de date/heure utilisé dans les fichiers log (voir strftime(3) pour le format de date/heure)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '%Y-%m-%d %H:%M:%S')</para>
- </listitem>
-</itemizedlist>
-
-<command>logger.look.backlog</command>: nombre maximum de lignes à afficher du fichier de log lors de l'ouverture du tampon (0 = ne rien afficher)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 20)</para>
- </listitem>
-</itemizedlist>
-
diff --git a/doc/fr/autogen/lua_commands.xml b/doc/fr/autogen/lua_commands.xml
deleted file mode 100644
index 7505a95d3..000000000
--- a/doc/fr/autogen/lua_commands.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/lua [list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]</command>
-<programlisting>
-liste/charge/décharge des scripts
-
-fichier: script (fichier) à charger
-nom: un nom de script
-
-Sans argument, cette commande liste tous les scripts chargés.
-</programlisting>
-
diff --git a/doc/fr/autogen/perl_commands.xml b/doc/fr/autogen/perl_commands.xml
deleted file mode 100644
index c2779a268..000000000
--- a/doc/fr/autogen/perl_commands.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/perl [list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]</command>
-<programlisting>
-liste/charge/décharge des scripts
-
-fichier: script (fichier) à charger
-nom: un nom de script
-
-Sans argument, cette commande liste tous les scripts chargés.
-</programlisting>
-
diff --git a/doc/fr/autogen/plugin_api/completions.txt b/doc/fr/autogen/plugin_api/completions.txt
new file mode 100644
index 000000000..30265d4b7
--- /dev/null
+++ b/doc/fr/autogen/plugin_api/completions.txt
@@ -0,0 +1,84 @@
+[width="65%",cols="^1,^2,8",options="header"]
+|========================================
+| Plugin | Name | Description
+| alias | alias | liste des alias
+
+| aspell | aspell_langs | liste des langues supportées pour aspell
+
+| irc | irc_channel | canal IRC courant
+
+| irc | irc_channel_nicks_hosts | pseudos et noms d'hôtes du canal IRC courant
+
+| irc | irc_channel_topic | titre du canal IRC courant
+
+| irc | irc_channels | canaux IRC (sur tous les serveurs)
+
+| 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_server | 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_servers | serveurs IRC (noms internes)
+
+| irc | nick | pseudos du canal IRC courant
+
+| lua | lua_script | liste des scripts
+
+| perl | perl_script | liste des scripts
+
+| python | python_script | liste des scripts
+
+| ruby | ruby_script | liste des scripts
+
+| tcl | tcl_script | liste des scripts
+
+| weechat | bars_names | noms des barres
+
+| weechat | bars_options | options pour les barres
+
+| weechat | buffers_names | noms des tampons
+
+| weechat | buffers_numbers | numéros des tampons
+
+| weechat | buffers_plugins_names | noms des tampons (incluant les noms d'extensions)
+
+| weechat | commands | commandes (weechat et extensions)
+
+| weechat | config_files | fichiers de configuration
+
+| weechat | config_option_values | valeurs pour une option de configuration
+
+| weechat | config_options | options de configuration
+
+| weechat | filename | nom de fichier
+
+| weechat | filters_names | noms des filtres
+
+| weechat | infolists | noms des infolistes accrochées
+
+| weechat | infos | noms des infos accrochées
+
+| weechat | keys_codes | codes des touches
+
+| weechat | nicks | pseudos dans la liste des pseudos du tampon courant
+
+| weechat | plugins_commands | commandes définies par les extensions
+
+| weechat | plugins_names | noms des extensions
+
+| weechat | proxies_names | noms des proxies
+
+| weechat | proxies_options | options pour les proxies
+
+| weechat | weechat_commands | commandes weechat
+
+| xfer | nick | pseudos de la discussion DCC
+
+|========================================
diff --git a/doc/fr/autogen/plugin_api/infolists.txt b/doc/fr/autogen/plugin_api/infolists.txt
new file mode 100644
index 000000000..0e75f8653
--- /dev/null
+++ b/doc/fr/autogen/plugin_api/infolists.txt
@@ -0,0 +1,56 @@
+[width="65%",cols="^1,^2,8",options="header"]
+|========================================
+| Plugin | Name | Description
+| alias | alias | liste des alias
+
+| irc | irc_channel | liste des canaux pour un serveur IRC
+
+| irc | irc_ignore | liste des ignore IRC
+
+| irc | irc_nick | liste des pseudos pour un canal IRC
+
+| irc | irc_server | liste des serveurs IRC
+
+| logger | logger_buffer | liste des enregistreurs de tampons (loggers)
+
+| lua | lua_script | list of lua scripts
+
+| perl | perl_script | list of perl scripts
+
+| python | python_script | list of python scripts
+
+| relay | relay | liste des clients pour le relai
+
+| ruby | ruby_script | list of ruby scripts
+
+| tcl | tcl_script | list of tcl scripts
+
+| weechat | bar | liste des barres
+
+| weechat | bar_item | liste des objets de barres
+
+| weechat | bar_window | liste des fenêtres de barre
+
+| weechat | buffer | liste des tampons
+
+| weechat | buffer_lines | lignes d'un tampon
+
+| weechat | filter | liste des filtres
+
+| weechat | hook | liste des hooks
+
+| weechat | hotlist | liste des tampons dans la hotlist
+
+| weechat | key | liste des associations de touches
+
+| weechat | nicklist | pseudos dans la liste des pseudos pour un tampon
+
+| weechat | option | liste des options
+
+| weechat | plugin | liste des extensions
+
+| weechat | window | liste des fenêtres
+
+| xfer | xfer | liste des xfer
+
+|========================================
diff --git a/doc/fr/autogen/plugin_api/infos.txt b/doc/fr/autogen/plugin_api/infos.txt
new file mode 100644
index 000000000..dbdbb7c24
--- /dev/null
+++ b/doc/fr/autogen/plugin_api/infos.txt
@@ -0,0 +1,38 @@
+[width="65%",cols="^1,^2,8",options="header"]
+|========================================
+| Plugin | Name | Description
+| fifo | fifo_filename | nom du tube FIFO
+
+| irc | irc_buffer | retourne le pointeur vers le tampon pour un serveur/canal IRC
+
+| irc | irc_current_server | serveur actuellement sélectionné (seulement si un tampon est utilisé pour tous les serveurs)
+
+| irc | irc_is_channel | 1 si la chaîne est un canal IRC
+
+| irc | irc_nick | retourne le pseudo utilisé actuellement sur un serveur
+
+| irc | irc_nick_from_host | retourne le pseudo à partir d'un host IRC
+
+| weechat | charset_internal | charset interne à WeeChat
+
+| weechat | charset_terminal | charset du terminal
+
+| weechat | date | date de compilation de WeeChat
+
+| weechat | dir_separator | séparateur de répertoire
+
+| weechat | filters_enabled | 1 si les filtres sont activés
+
+| weechat | inactivity | inactivité du clavier (secondes)
+
+| weechat | version | version de WeeChat
+
+| weechat | weechat_dir | répertoire de WeeChat
+
+| weechat | weechat_libdir | répertoire "lib" de WeeChat
+
+| weechat | weechat_localedir | répertoire "locale" de WeeChat
+
+| weechat | weechat_sharedir | répertoire "share" de WeeChat
+
+|========================================
diff --git a/doc/fr/autogen/python_commands.xml b/doc/fr/autogen/python_commands.xml
deleted file mode 100644
index 17d93c1a6..000000000
--- a/doc/fr/autogen/python_commands.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/python [list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]</command>
-<programlisting>
-liste/charge/décharge des scripts
-
-fichier: script (fichier) à charger
-nom: un nom de script
-
-Sans argument, cette commande liste tous les scripts chargés.
-</programlisting>
-
diff --git a/doc/fr/autogen/relay_commands.xml b/doc/fr/autogen/relay_commands.xml
deleted file mode 100644
index 9a51a2d0e..000000000
--- a/doc/fr/autogen/relay_commands.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/relay [list | listfull]</command>
-<programlisting>
-contrôle du relai
-
- list: liste les clients pour le relai
-listfull: liste les clients pour le relai (verbeux)
-
-Sans paramètre, cette commande ouvre le tampon avec la liste des clients pour le relai.
-</programlisting>
-
diff --git a/doc/fr/autogen/relay_options.xml b/doc/fr/autogen/relay_options.xml
deleted file mode 100644
index 99354e561..000000000
--- a/doc/fr/autogen/relay_options.xml
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>relay.color.status_active</command>: couleur du texte pour le statut "connecté"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightblue)</para>
- </listitem>
-</itemizedlist>
-
-<command>relay.color.status_auth_failed</command>: couleur du texte pour le statut "échec auth"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightred)</para>
- </listitem>
-</itemizedlist>
-
-<command>relay.color.status_connecting</command>: couleur du texte pour le statut "connexion"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: yellow)</para>
- </listitem>
-</itemizedlist>
-
-<command>relay.color.status_disconnected</command>: couleur du texte pour le statut "déconnecté"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightred)</para>
- </listitem>
-</itemizedlist>
-
-<command>relay.color.status_waiting_auth</command>: couleur du texte pour le statut "attente auth"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: brown)</para>
- </listitem>
-</itemizedlist>
-
-<command>relay.color.text</command>: couleur du texte
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: default)</para>
- </listitem>
-</itemizedlist>
-
-<command>relay.color.text_bg</command>: couleur du fond
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: default)</para>
- </listitem>
-</itemizedlist>
-
-<command>relay.color.text_selected</command>: couleur du texte pour la ligne client sélectionnée
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: white)</para>
- </listitem>
-</itemizedlist>
-
-<command>relay.look.auto_open_buffer</command>: ouvrir automatiquement le tampon des clients pour le relai lorsqu'un nouveau client est ajouté à la liste
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>relay.network.enabled</command>: activer le relai
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>relay.network.listen_port_range</command>: numéro de port (ou intervalle de ports) sur lesquels écoute l'extension relay (syntaxe: un port simple, par exemple 5000, un intervalle de ports, par exemple 5000-5015)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '22373-22400')</para>
- </listitem>
-</itemizedlist>
-
diff --git a/doc/fr/autogen/ruby_commands.xml b/doc/fr/autogen/ruby_commands.xml
deleted file mode 100644
index 79ff8c183..000000000
--- a/doc/fr/autogen/ruby_commands.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/ruby [list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]</command>
-<programlisting>
-liste/charge/décharge des scripts
-
-fichier: script (fichier) à charger
-nom: un nom de script
-
-Sans argument, cette commande liste tous les scripts chargés.
-</programlisting>
-
diff --git a/doc/fr/autogen/tcl_commands.xml b/doc/fr/autogen/tcl_commands.xml
deleted file mode 100644
index 414dac45b..000000000
--- a/doc/fr/autogen/tcl_commands.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/tcl [list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]</command>
-<programlisting>
-liste/charge/décharge des scripts
-
-fichier: script (fichier) à charger
-nom: un nom de script
-
-Sans argument, cette commande liste tous les scripts chargés.
-</programlisting>
-
diff --git a/doc/fr/autogen/user/alias_commands.txt b/doc/fr/autogen/user/alias_commands.txt
new file mode 100644
index 000000000..aeffbec08
--- /dev/null
+++ b/doc/fr/autogen/user/alias_commands.txt
@@ -0,0 +1,15 @@
+&bull; *`/alias`* `[nom_alias [commande [paramètres]]]`::
+
+........................................
+ créer un alias pour une commande
+
+ nom_alias: nom de l'alias
+ commande: nom de la commande (plusieurs commandes peuvent être séparées par des point-virgules)
+ paramètres: paramètres pour la commande
+
+ Sans paramètre, cette commande liste tous les alias définis.
+
+ Note: dans la commande, les variables spéciales $1, $2,..,$9 sont remplacés par les paramètres donnés par l'utilisateur, et $* est remplacé par tous les paramètres.
+ Les variables $nick, $channel et $server sont remplacées par le pseudo/canal/serveur courant.
+........................................
+
diff --git a/doc/fr/autogen/user/aspell_commands.txt b/doc/fr/autogen/user/aspell_commands.txt
new file mode 100644
index 000000000..c1d8c80db
--- /dev/null
+++ b/doc/fr/autogen/user/aspell_commands.txt
@@ -0,0 +1,13 @@
+&bull; *`/aspell`* `dictlist | enable lang | disable | addword [lang] word`::
+
+........................................
+ configuration de l'extension aspell
+
+ dictlist: afficher les dictionnaires installés
+ enable: active aspell sur le tampon courant
+ disable: désactive aspell sur le tampon courant
+ addword: ajoute un mot dans le dictionnaire personnel aspell
+
+ Les lignes d'entrée commençant par '/' ne sont pas vérifiées, sauf pour certaines commandes.
+........................................
+
diff --git a/doc/fr/autogen/user/aspell_options.txt b/doc/fr/autogen/user/aspell_options.txt
new file mode 100644
index 000000000..c7479ffaf
--- /dev/null
+++ b/doc/fr/autogen/user/aspell_options.txt
@@ -0,0 +1,30 @@
+* *aspell.check.commands*
+** description: liste de commandes (séparées par des virgules) pour lesquelles la vérification orthographique est activée (la vérification est désactivée pour toutes les autres commandes)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic")
+
+* *aspell.check.default_dict*
+** description: 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 blanc pour désactiver aspell sur les tampons pour lesquels vous ne l'avez pas explicitement activé)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *aspell.check.during_search*
+** description: vérifier les mots pendant la recherche de texte dans le tampon
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *aspell.check.real_time*
+** description: vérification orthographique des mots en temps réel (plus lent, désactivé par défaut: les mots sont vérifiés seulement s'il y a un délimiteur après)
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *aspell.check.word_min_length*
+** description: longueur minimum d'un mot pour que l'otrhographe soit vérifiée (utilisez 0 pour vérifier tous les mots)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 2)
+
+* *aspell.look.color*
+** description: couleur utilisée pour les mots mal orthographiés
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightred)
+
diff --git a/doc/fr/autogen/user/charset_commands.txt b/doc/fr/autogen/user/charset_commands.txt
new file mode 100644
index 000000000..5e0a98428
--- /dev/null
+++ b/doc/fr/autogen/user/charset_commands.txt
@@ -0,0 +1,11 @@
+&bull; *`/charset`* `[[decode | encode] charset] | [reset]`::
+
+........................................
+ changer le charset pour le tampon courant
+
+ decode: changer le charset de décodage
+ encode: changer le charset d'encodage
+ charset: nouveau charset pour le tampon courant
+ reset: réinitialiser les charsets pour le tampon courant
+........................................
+
diff --git a/doc/fr/autogen/user/charset_options.txt b/doc/fr/autogen/user/charset_options.txt
new file mode 100644
index 000000000..de0b008af
--- /dev/null
+++ b/doc/fr/autogen/user/charset_options.txt
@@ -0,0 +1,10 @@
+* *charset.default.decode*
+** description: charset de décodage global
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "iso-8859-1")
+
+* *charset.default.encode*
+** description: charset d'encodage global
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
diff --git a/doc/fr/autogen/user/demo_commands.txt b/doc/fr/autogen/user/demo_commands.txt
new file mode 100644
index 000000000..f3680b1fb
--- /dev/null
+++ b/doc/fr/autogen/user/demo_commands.txt
@@ -0,0 +1,42 @@
+&bull; *`/demo_buffer`* `nom`::
+
+........................................
+ ouvrir un nouveau tampon
+........................................
+
+&bull; *`/demo_buffer_set`* `propriété valeur`::
+
+........................................
+ définir une propriété de tampon
+........................................
+
+&bull; *`/demo_info`* `[info [paramètres]]`::
+
+........................................
+ lit et affiche une info
+
+ info: info à afficher
+ paramètres: paramètres optionnels pour l'info
+
+ Sans paramètre, cette commande affiche la liste des infos disponibles
+........................................
+
+&bull; *`/demo_infolist`* `[infolist [paramètres]]`::
+
+........................................
+ lit et affiche une infolist
+
+ infolist: infolist à afficher
+ paramètres: paramètres optionnels pour l'infolist
+
+ Sans paramètre, cette commande affiche la liste des infolists disponibles
+........................................
+
+&bull; *`/demo_printf`* `[texte]`::
+
+........................................
+ affiche des messages sur le tampon courant
+
+ texte: affiche ce texte
+........................................
+
diff --git a/doc/fr/autogen/user/irc_commands.txt b/doc/fr/autogen/user/irc_commands.txt
new file mode 100644
index 000000000..5ff078b0d
--- /dev/null
+++ b/doc/fr/autogen/user/irc_commands.txt
@@ -0,0 +1,589 @@
+&bull; *`/admin`* `[cible]`::
+
+........................................
+ trouver les informations sur l'administrateur du serveur
+
+ cible: serveur
+........................................
+
+&bull; *`/ame`* `message`::
+
+........................................
+ envoyer une action CTCP à tous les canaux de tous les serveurs connectés
+
+ message: message à envoyer
+........................................
+
+&bull; *`/amsg`* `texte`::
+
+........................................
+ envoyer un message à tous les canaux de tous les serveurs connectés
+
+ texte: texte à envoyer
+........................................
+
+&bull; *`/away`* `[-all] [message]`::
+
+........................................
+ basculer le statut absent
+
+ -all: basculer le statut absent sur tous les serveurs connectés
+ message: message pour l'absence (si pas de message donné, le statut d'absence est supprimé)
+........................................
+
+&bull; *`/ban`* `[canal] [pseudo [pseudo ...]]`::
+
+........................................
+ bannit des pseudos ou hôtes
+
+ canal: nom du canal pour le bannissement
+ pseudo: pseudo ou hôte pour le bannissement
+........................................
+
+&bull; *`/connect`* `[-all [-nojoin] | nom_serveur [nom_serveur ...] [-nojoin] | nom/IP [-port port] [-ipv6] [-ssl]]`::
+
+........................................
+ se connecter à un/plusieurs serveur(s) IRC
+
+ -all: se reconnecter à tous les serveurs
+ nom_serveur: nom du serveur pour se connecter
+ -nojoin: ne rejoindre aucun canal (même si l'autojoin est activé pour le serveur)
+ nom/IP: nom/IP pour se connecter
+ port: port pour le serveur (nombre entier, 6667 par défaut)
+ ipv6: utiliser le protocole IPv6
+ ssl: utiliser le protocole SSL
+........................................
+
+&bull; *`/ctcp`* `cible type [arguments]`::
+
+........................................
+ envoyer un message CTCP (Client-To-Client Protocol)
+
+ cible: pseudo à qui envoyer le CTCP
+ type: type de CTCP (exemples: "version", "ping", etc...)
+ arguments: arguments pour le CTCP
+........................................
+
+&bull; *`/cycle`* `[canal[,canal]] [message_de_fin]`::
+
+........................................
+ quitter et rejoindre un canal
+
+ canal: canal pour le cycle
+ message_de_fin: message de fin (affiché aux autres utilisateurs)
+........................................
+
+&bull; *`/dcc`* `action [pseudo [fichier]]`::
+
+........................................
+ démarre le DCC (fichier ou discussion)
+
+ action: 'send' (envoi de fichier) ou 'chat' (discussion)
+ pseudo: pseudo pour envoyer le fichier ou discuter
+ fichier: nom du fichier (sur la machine locale)
+........................................
+
+&bull; *`/dehalfop`* `[pseudo [pseudo]]`::
+
+........................................
+ retire le statut de demi-opérateur du canal à/aux pseudo(s)
+........................................
+
+&bull; *`/deop`* `[pseudo [pseudo]]`::
+
+........................................
+ retire le statut d'opérateur du canal à/aux pseudo(s)
+........................................
+
+&bull; *`/devoice`* `[pseudo [pseudo]]`::
+
+........................................
+ retire la voix du/des pseudo(s)
+........................................
+
+&bull; *`/die`*::
+
+........................................
+ arrêter le serveur
+........................................
+
+&bull; *`/disconnect`* `[-all | nom_serveur [nom_serveur...]]`::
+
+........................................
+ se déconnecter d'un/plusieurs serveur(s) IRC
+
+ -all: se déconnecter de tous les serveurs
+ nom_serveur: nom du serveur pour se déconnecter
+........................................
+
+&bull; *`/halfop`* `[pseudo [pseudo]]`::
+
+........................................
+ donner le statut de demi-opérateur à un/des pseudo(s)
+........................................
+
+&bull; *`/ignore`* `[list] | [add [re:]pseudo/hote [server [channel]]] | [del numéro|-all]`::
+
+........................................
+ ignore des pseudos/hôtes de serveurs ou canaux
+
+ list: liste tous les ignore
+ add: ajoute un ignore
+ del: supprime un ignore
+ numéro: numéro du ignore à supprimer (voir la liste des ignore pour le trouver)
+ -all: supprime tous les ignore
+ pseudo/hôte: pseudo ou hôte à ignorer: la syntaxe est "re:regex" ou "masque" (un masque est une chaîne avec des "*" pour remplacer un ou plusieurs caractères)
+ serveur: nom de serveur interne où le ignore fonctionnera
+ canal: canal où le ignore fonctionnera
+
+ Exemples:
+ ignorer le pseudo "toto" partout:
+ /ignore add toto
+ ignorer le hôte "toto@domain.com" sur le serveur freenode:
+ /ignore add toto@domain.com freenode
+ ignorer le hôte "toto*@*.domain.com" sur freenode/#weechat:
+ /ignore add toto*@*.domain.com freenode #weechat
+........................................
+
+&bull; *`/info`* `[cible]`::
+
+........................................
+ voir les informations décrivant le serveur
+
+ cible: nom du serveur
+........................................
+
+&bull; *`/invite`* `pseudo canal`::
+
+........................................
+ inviter un pseudo sur un canal
+
+ pseudo: pseudo à inviter
+ canal: canal pour l'invitation
+........................................
+
+&bull; *`/ison`* `pseudo [pseudo ...]`::
+
+........................................
+ vérifier si un pseudo est actuellement sur IRC
+
+ pseudo: pseudo
+........................................
+
+&bull; *`/join`* `canal[,canal] [clé[,clé]]`::
+
+........................................
+ joindre un canal
+
+ canal: nom du canal à rejoindre
+ clé: clé pour rejoindre le canal
+........................................
+
+&bull; *`/kick`* `[canal] pseudo [commentaire]`::
+
+........................................
+ retirer par la force un utilisateur d'un canal
+
+ canal: canal où l'utilisateur se trouve
+ pseudo: pseudo à éliminer
+ commentaire: commentaire pour l'élimination
+........................................
+
+&bull; *`/kickban`* `[canal] pseudo [commentaire]`::
+
+........................................
+ retirer par la force un pseudo d'un canal et le bannir
+
+ canal: canal où l'utilisateur se trouve
+ pseudo: pseudo à éliminer et bannir
+ commentaire: commentaire pour l'élimination
+........................................
+
+&bull; *`/kill`* `pseudo commentaire`::
+
+........................................
+ fermer la connexion client-serveur
+
+ pseudo: pseudo
+ commentaire: commentaire pour la mort
+........................................
+
+&bull; *`/links`* `[[serveur] masque_serveur]`::
+
+........................................
+ lister tous les noms de serveurs connus du serveur qui répondent à la requête
+
+ serveur: ce serveur doit répondre à la requête
+ masque_serveur: liste des serveurs correspondant au masque
+........................................
+
+&bull; *`/list`* `[canal[,canal] [serveur]]`::
+
+........................................
+ lister les canaux et leur titre
+
+ canal: canal à lister (une expression régulière est acceptée)
+ serveur: nom du serveur
+........................................
+
+&bull; *`/lusers`* `[masque [cible]]`::
+
+........................................
+ obtenir des statistiques sur la taille du réseau IRC
+
+ masque: serveurs qui correspondent au masque seulement
+ cible: serveur pour faire suivre la requête
+........................................
+
+&bull; *`/me`* `message`::
+
+........................................
+ envoyer une action CTCP au canal courant
+
+ message: message à envoyer
+........................................
+
+&bull; *`/mode`* `{ [canal] {[+|-]|o|p|s|i|t|n|b|v} [limite] [utilisateur] [masque de banissement] } | { pseudo {[+|-]|i|w|s|o} }`::
+
+........................................
+ changer le mode du canal ou de l'utilisateur
+
+ modes de canaux:
+ canal: nom du canal à modifier (par défaut le canal courant)
+ o: donner/reprendre le statut privilégié d'opérateur
+ p: indicateur de canal privé
+ s: indicateur de canal secret
+ i: indicateur de canal avec invitation seulement
+ t: le titre est modifiable seulement par un opérateur du canal
+ n: aucun message au canal depuis l'extérieur
+ m: canal modéré
+ l: fixer la limite d'utilisateurs pour le canal
+ b: paramétrer un masque de banissement pour garder des utilisateurs dehors
+ e: paramétrer un masque d'exception
+ v: donner/reprendre la possibilité de parler sur un canal modéré
+ k: définir une clé (mot de passe) pour accéder au canal
+ modes utilisateur:
+ pseudo: pseudo à modifier
+ i: marquer un utilisateur comme invisible
+ s: marquer un utilisateur pour recevoir les notices du serveur
+ w: l'utilisateur reçoit les wallops
+ o: drapeau opérateur
+........................................
+
+&bull; *`/motd`* `[cible]`::
+
+........................................
+ obtenir le message du jour
+
+ cible: nom du serveur
+........................................
+
+&bull; *`/msg`* `[-server serveur] cible[,cible] texte`::
+
+........................................
+ envoyer un message à un pseudo ou canal
+
+ serveur: envoyer à ce serveur (nom interne)
+ cible: pseudo ou canal (peut-être un masque, '*' = canal courant)
+ texte: texte à envoyer
+........................................
+
+&bull; *`/names`* `[canal[,canal]]`::
+
+........................................
+ lister les pseudos sur des canaux
+
+ canal: nom du canal
+........................................
+
+&bull; *`/nick`* `[-all] pseudo`::
+
+........................................
+ changer le pseudo courant
+
+ -all: définir le nouveau pseudo sur tous les serveurs connectés
+ pseudo: nouveau pseudo
+........................................
+
+&bull; *`/notice`* `[-server serveur] pseudo texte`::
+
+........................................
+ envoyer un message notice à un utilisateur
+
+ serveur: envoyer à ce serveur (nom interne)
+ pseudo: pseudo cible pour la notice
+ texte: texte à envoyer
+........................................
+
+&bull; *`/op`* `pseudo [pseudo]`::
+
+........................................
+ donner le statut opérateur à un/des pseudo(s)
+........................................
+
+&bull; *`/oper`* `utilisateur mot_de_passe`::
+
+........................................
+ obtenir le statut d'opérateur
+
+ utilisateur/mot_de_passe: utilisé pour obtenir les privilèges sur le serveur IRC courant
+........................................
+
+&bull; *`/part`* `[canal[,canal]] [message_de_fin]`::
+
+........................................
+ quitter un canal
+
+ canal: canal à quitter
+ message_de_fin: message de fin (affiché aux autres utilisateurs)
+........................................
+
+&bull; *`/ping`* `serveur1 [serveur2]`::
+
+........................................
+ pinguer un serveur
+
+ serveur1: serveur à pinguer
+ serveur2: faire suivre le ping à ce serveur
+........................................
+
+&bull; *`/pong`* `démon [démon2]`::
+
+........................................
+ répondre à un message ping
+
+ démon: démon qui a répondu au message Ping
+ démon2: faire suivre le message à ce démon
+........................................
+
+&bull; *`/query`* `[-server serveur] pseudo [texte]`::
+
+........................................
+ envoyer un message privé à un pseudo
+
+ serveur: envoyer à ce serveur (nom interne)
+ pseudo: pseudo pour la conversation privée
+ texte: texte à envoyer
+........................................
+
+&bull; *`/quote`* `[-server serveur] données`::
+
+........................................
+ envoyer des données brutes au serveur sans analyse
+
+ serveur: envoyer à ce serveur (nom interne)
+ données: données brutes à envoyer
+........................................
+
+&bull; *`/reconnect`* `[-all [-nojoin] | nom_serveur [nom_serveur...] [-nojoin]]`::
+
+........................................
+ se reconnecter à un/plusieurs serveur(s)
+
+ -all: se reconnecter à tous les serveurs
+ nom_serveur: nom du serveur pour se reconnecter
+ -nojoin: ne rejoindre aucun canal (même si l'autojoin est activé pour le serveur)
+........................................
+
+&bull; *`/rehash`*::
+
+........................................
+ demander au serveur de recharger son fichier de configuration
+........................................
+
+&bull; *`/restart`*::
+
+........................................
+ demander au serveur de redémarrer
+........................................
+
+&bull; *`/server`* `[list [nom_serveur]] | [listfull [nom_serveur]] | [add nom_serveur nom[/port] [-temp] [-auto | -noauto] [-ipv6] [-ssl]] | [copy nom_serveur nouveau_nom_serveur] | [rename nom_serveur nouveau_nom_serveur] | [keep nom_serveur] | [del nom_serveur] | [deloutq] | [raw] | [switch]`::
+
+........................................
+ liste, ajoute ou retire des serveurs IRC
+
+ list: afficher les serveurs (pas de paramètre implique cette liste)
+ listfull: afficher les serveurs avec de l'info détaillée pour chaque
+ add: créer un nouveau serveur
+ nom_serveur: nom du serveur, pour usage interne et affichage
+ nom: nom ou adresse IP du serveur avec port en option (defaut: 6667)
+ auto: se connecter automatiquement au serveur quand WeeChat démarre
+ noauto: ne pas se connecter au serveur quand WeeChat démarre (par défaut)
+ ipv6: utiliser le protocole IPv6
+ ssl: utiliser le protocole SSL
+ copy: dupliquer un serveur
+ rename: renommer un serveur
+ keep: garder le serveur dans le fichier de configuration (pour les serveurs temporaires seulement)
+ del: supprimer un serveur
+ deloutq: supprimer la file d'attente des messages sortants pour tous les serveurs (tous les messages que WeeChat est actuellement en train d'envoyer)
+ raw: ouvre le tampon avec les données brutes IRC
+ switch: changer le serveur actif (quand un tampon est utilisé pour tous les serveurs, touche par défaut: alt-s sur le tampon serveur)
+
+ Exemples:
+ /server listfull
+ /server add oftc irc.oftc.net/6697 -ssl
+ /server add oftc6 irc6.oftc.net/6697 -ipv6 -ssl
+ /server add freenode2 chat.eu.freenode.net/6667,chat.us.freenode.net/6667
+ /server copy oftc oftcbis
+ /server rename oftc newoftc
+ /server del freenode
+ /server deloutq
+ /server switch
+........................................
+
+&bull; *`/service`* `pseudo réservé distribution type réservé info`::
+
+........................................
+ enregister un nouveau service
+
+ distribution: visibilité du service
+ type: réservé pour une utilisation future
+........................................
+
+&bull; *`/servlist`* `[masque [type]]`::
+
+........................................
+ lister les services actuellement connectés au réseau
+
+ masque: lister seulement les services qui correspondent à ce masque
+ type: lister seulement les services de ce type
+........................................
+
+&bull; *`/squery`* `service texte`::
+
+........................................
+ envoyer un message à un service
+
+ service: nom du service
+ texte: texte à envoyer
+........................................
+
+&bull; *`/squit`* `serveur commentaire`::
+
+........................................
+ déconnecter les liens vers un serveur
+
+ serveur: nom du serveur
+ commentaire: commentaire pour quitter
+........................................
+
+&bull; *`/stats`* `[requête [serveur]]`::
+
+........................................
+ demander des statistiques sur le serveur
+
+ requête: c/h/i/k/l/m/o/y/u (voir la RFC1459)
+ serveur: nom du serveur
+........................................
+
+&bull; *`/summon`* `utilisateur [cible [canal]]`::
+
+........................................
+ envoyer aux utilisateurs d'un serveur IRC un message leur demandant de rejoindre IRC
+
+ utilisateur: nom d'utilisateur
+ cible: nom du serveur
+ canal: nom du canal
+........................................
+
+&bull; *`/time`* `[cible]`::
+
+........................................
+ demander l'heure locale de serveur
+
+ cible: demander l'heure de ce serveur
+........................................
+
+&bull; *`/topic`* `[canal] [titre]`::
+
+........................................
+ recevoir/définir le titre du canal
+
+ canal: nom du canal
+ titre: nouveau titre pour le canal (si le titre est "-delete" alors le titre est supprimé)
+........................................
+
+&bull; *`/trace`* `[cible]`::
+
+........................................
+ trouver le chemin jusqu'à un serveur spécifique
+
+ cible: serveur
+........................................
+
+&bull; *`/unban`* `[canal] pseudo [pseudo ...]`::
+
+........................................
+ supprime le bannissement sur des pseudos ou hôtes
+
+ canal: nom du canal pour supprimer le bannissement
+ pseudo: pseudo ou hôte pour supprimer le bannissement
+........................................
+
+&bull; *`/userhost`* `pseudo [pseudo ...]`::
+
+........................................
+ retourne une liste d'informations sur des pseudos
+
+ pseudo: pseudo
+........................................
+
+&bull; *`/users`* `[cible]`::
+
+........................................
+ liste des utilisateurs connectés au serveur
+
+ cible: serveur
+........................................
+
+&bull; *`/version`* `[serveur | pseudo]`::
+
+........................................
+ retourne la version du pseudo ou du serveur (courant ou spécifié)
+
+ serveur: nom du serveur
+ pseudo: pseudo
+........................................
+
+&bull; *`/voice`* `[pseudo [pseudo]]`::
+
+........................................
+ donne la voix à/aux pseudo(s)
+........................................
+
+&bull; *`/wallops`* `texte`::
+
+........................................
+ envoyer un message à tous les utilisateurs connectés qui ont activé le mode utilisateur 'w' pour eux-mêmes
+
+ texte à envoyer
+........................................
+
+&bull; *`/who`* `[masque ["o"]]`::
+
+........................................
+ génère une requête qui retourne une liste d'information
+
+ masque: information qui correspond à ce masque uniquement
+ o: seul les opérateurs sont retournés correspondant au masque fourni
+........................................
+
+&bull; *`/whois`* `[serveur] pseudo[,pseudo]`::
+
+........................................
+ demande les informations sur le(s) utilisateur(s)
+
+ serveur: nom du serveur
+ pseudo: pseudo (peut être un masque)
+........................................
+
+&bull; *`/whowas`* `pseudo [,pseudo [,pseudo ...]] [nombre [cible]]`::
+
+........................................
+ demander de l'information sur un pseudo qui n'existe plus
+
+ pseudo: pseudo à chercher
+ nombre: nombre de réponses à retourner (recherche complète si nombre négatif)
+ cible: la réponse doit correspondre à ce masque
+........................................
+
diff --git a/doc/fr/autogen/user/irc_options.txt b/doc/fr/autogen/user/irc_options.txt
new file mode 100644
index 000000000..b5f85b1ef
--- /dev/null
+++ b/doc/fr/autogen/user/irc_options.txt
@@ -0,0 +1,240 @@
+* *irc.color.input_nick*
+** description: couleur du pseudo dans la barre de saisie
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightcyan)
+
+* *irc.color.message_join*
+** description: couleur pour le texte dans les messages join
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: green)
+
+* *irc.color.message_quit*
+** description: couleur pour le texte dans les messages part/quit
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: red)
+
+* *irc.look.color_nicks_in_server_messages*
+** description: utiliser la couleur du pseudo dans les messages du serveur
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *irc.look.display_away*
+** description: affiche un message pour l'absence/le retour
+** type: entier
+** valeurs: off, local, channel (valeur par défaut: local)
+
+* *irc.look.display_channel_modes*
+** description: affiche les modes du canal dans l'objet de barre "buffer_name"
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *irc.look.display_nick_modes*
+** description: affiche les modes du pseudo dans l'objet de barre "input_prompt"
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *irc.look.display_old_topic*
+** description: afficher l'ancien titre lorsque le titre du canal est changé
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *irc.look.hide_nickserv_pwd*
+** description: masquer le mot de passe affiché par nickserv
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *irc.look.highlight_tags*
+** description: liste des tags pour les messages qui peuvent produire un highlight (séparés par des virgules, typiquement tout message venant d'un autre utilisateur, pas les messages du serveur, ...)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "irc_privmsg,irc_notice")
+
+* *irc.look.nick_completion_smart*
+** description: complétion intelligente pour les pseudos (complète d'abord avec les personnes qui ont parlé récemment)
+** type: entier
+** valeurs: off, speakers, speakers_highlights (valeur par défaut: speakers)
+
+* *irc.look.nick_prefix*
+** description: texte à afficher avant le pseudo dans la fenêtre de discussion
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *irc.look.nick_suffix*
+** description: texte à afficher après le pseudo dans la fenêtre de discussion
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *irc.look.notice_as_pv*
+** description: afficher les notices comme des messages privés
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *irc.look.one_server_buffer*
+** description: utiliser le même tampon pour tous les serveurs
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *irc.look.open_near_server*
+** description: ouvrir les nouveaux canaux/privés près du serveur
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *irc.look.raw_messages*
+** description: nombre de messages IRC bruts à sauvegarder en mémoire lorsque le tampon des données brutes est fermé (ces messages seront affichés lors de l'ouverture du tampon des données brutes)
+** type: entier
+** valeurs: 0 .. 65535 (valeur par défaut: 256)
+
+* *irc.look.show_away_once*
+** description: voir le message d'absence distant une seule fois en privé
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *irc.look.smart_filter*
+** description: filtrer les messages join/part/quit pour un pseudo s'il n'a pas parlé pendant quelques minutes sur le canal (vous devez créer un filtre sur le tag "irc_smart_filter")
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *irc.look.smart_filter_delay*
+** description: délai pour filtrer les messages join/part/quit (en minutes)
+** type: entier
+** valeurs: 1 .. 10080 (valeur par défaut: 5)
+
+* *irc.look.topic_strip_colors*
+** description: supprimer les couleurs dans le titre (utilisé seulement lors de l'affichage du titre du tampon)
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *irc.network.anti_flood*
+** description: anti-flood: nombre de secondes entre deux messages utilisateur (0 = pas d'anti-flood)
+** type: entier
+** valeurs: 0 .. 5 (valeur par défaut: 2)
+
+* *irc.network.away_check*
+** description: intervalle entre deux vérifications des absences (en minutes, 0 = ne jamais vérifier)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 0)
+
+* *irc.network.away_check_max_nicks*
+** description: ne pas vérifier les pseudos absents lorsqu'il y a un nombre important de pseudos (0 = pas de limite)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 0)
+
+* *irc.network.colors_receive*
+** description: si désactivé, les codes couleurs des messages entrants sont ignorés
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *irc.network.colors_send*
+** description: autorise l'utilisateur à envoyer des couleurs avec des codes spéciaux (ctrl-c + un code et une couleur optionnelle: b=gras, cxx=couleur, cxx,yy=couleur+fond, u=souligné, r=inversé)
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *irc.network.default_msg_part*
+** description: message par défaut pour le part (en quittant un canal) ("%v" sera remplacé par la version de WeeChat dans la chaîne)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "WeeChat %v")
+
+* *irc.network.default_msg_quit*
+** description: message de fin par défaut (lors de la déconnexion du serveur) ("%v" sera remplacé par la version de WeeChat dans la chaîne)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "WeeChat %v")
+
+* *irc.network.lag_check*
+** description: intervalle entre deux vérifications des absences (en secondes, 0 = ne jamais vérifier)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 60)
+
+* *irc.network.lag_disconnect*
+** description: déconnexion après un lag important (en minutes, 0 = ne jamais se déconnecter)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 0)
+
+* *irc.network.lag_min_show*
+** description: lag minimum à afficher (en secondes)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 1)
+
+* *irc.network.send_unknown_commands*
+** description: envoie les commandes inconnues au serveur
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *irc.server_default.addresses*
+** description: liste de nom/port ou IP/port pour le serveur (séparés par des virgules)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *irc.server_default.autoconnect*
+** description: connexion automatique au serveur quand WeeChat démarre
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *irc.server_default.autojoin*
+** description: liste des canaux (séparés par des virgules) à rejoindre lorsque connecté au serveur (exemple: "#chan1,#chan2,#chan3 key1,key2")
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *irc.server_default.autoreconnect*
+** description: reconnexion automatique au serveur après une déconnexion
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *irc.server_default.autoreconnect_delay*
+** description: délai (en secondes) avant de tenter une reconnexion au serveur
+** type: entier
+** valeurs: 0 .. 65535 (valeur par défaut: 30)
+
+* *irc.server_default.autorejoin*
+** description: rejoindre automatiquement les canaux quand mis dehors
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *irc.server_default.command*
+** description: commande(s) à exécuter lorsque connecté au serveur (plusieurs commandes doivent être séparées par ";", utilisez "\;" pour un point-virgule, les variables spéciales $nick, $channel et $server sont remplacées par leur valeur)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *irc.server_default.command_delay*
+** description: délai (en secondes) après exécution de la commande (exemple: donner du temps pour l'authentification)
+** type: entier
+** valeurs: 0 .. 3600 (valeur par défaut: 0)
+
+* *irc.server_default.ipv6*
+** description: utiliser le protocole IPv6 pour la communication avec le serveur
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *irc.server_default.local_hostname*
+** description: nom local de machine/IP personnalisé pour le serveur (optionnel, si non renseigné, le nom de machine local est utilisé)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *irc.server_default.nicks*
+** description: pseudos à utiliser sur le serveur (séparés par des virgules)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *irc.server_default.password*
+** description: mot de passe pour le serveur
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *irc.server_default.proxy*
+** description: proxy utilisé pour ce serveur (optionnel)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *irc.server_default.realname*
+** description: nom réel pour le serveur
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *irc.server_default.ssl*
+** description: utiliser SSL pour la communication avec le serveur
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *irc.server_default.username*
+** description: nom d'utilisateur pour le serveur
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
diff --git a/doc/fr/autogen/user/jabber_commands.txt b/doc/fr/autogen/user/jabber_commands.txt
new file mode 100644
index 000000000..9a4c4bdef
--- /dev/null
+++ b/doc/fr/autogen/user/jabber_commands.txt
@@ -0,0 +1,65 @@
+&bull; *`/jabber`* `[list [nom_serveur]] | [listfull [nom_serveur]] | [add nom_serveur nom_utilisateur nom[/port] mot_de_passe [-temp] [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy nom_serveur nouveau_nom_serveur] | [rename nom_serveur nouveau_nom_serveur] | [keep nom_serveur] | [del nom_serveur] | [switch]`::
+
+........................................
+ liste, ajoute ou retire des serveurs Jabber
+
+ list: afficher les serveurs (pas de paramètre implique cette liste)
+ listfull: afficher les serveurs avec de l'info détaillée pour chaque
+ add: créer un nouveau serveur
+ nom_serveur: nom du serveur, pour usage interne et affichage
+ nom_utilisateur: nom d'utilisateur pour ce serveur
+ nom: nom ou adresse IP du serveur avec port en option (defaut: 5222)
+ mot_de_passe: mot de passe pour l'utilisateur sur le serveur
+ auto: se connecter automatiquement au serveur quand WeeChat démarre
+ noauto: ne pas se connecter au serveur quand WeeChat démarre (par défaut)
+ ipv6: utiliser le protocole IPv6
+ tsl: utiliser le protocole de chiffrement TLS
+ sasl: utiliser SASL pour l'authentification
+ copy: dupliquer un serveur
+ rename: renommer un serveur
+ keep: garder le serveur dans le fichier de configuration (pour les serveurs temporaires seulement)
+ del: supprimer un serveur
+ switch: changer le serveur actif (quand un tampon est utilisé pour tous les serveurs, touche par défaut: alt-s sur le tampon serveur)
+
+ Exemples:
+ /jabber listfull
+ /jabber add jabberfr user jabber.fr/5222 password -tls
+ /jabber copy jabberfr jabberfr2
+ /jabber rename jabberfr jabbfr
+ /jabber del jabberfr
+ /jabber switch
+........................................
+
+&bull; *`/jchat`* `contact [texte]`::
+
+........................................
+ discuter avec un contact
+
+ contact: nom du contact pour la discussion
+ texte: texte à envoyer
+........................................
+
+&bull; *`/jconnect`* `[-all [-nojoin] | nom_serveur [nom_serveur ...] [-nojoin] | nom/IP [-port port] [-ipv6] [-tls] [-sasl]]`::
+
+........................................
+ se connecter à un/plusieurs serveur(s) Jabber
+
+ -all: se reconnecter à tous les serveurs
+ nom_serveur: nom du serveur pour se connecter
+ -nojoin: ne rejoindre aucun MUC (même si l'autojoin est activé pour le serveur)
+ nom/IP: nom/IP pour se connecter
+ port: port pour le serveur (nombre entier, 6667 par défaut)
+ ipv6: utiliser le protocole IPv6
+ tls: utiliser le protocole de chiffrement TLS
+ sasl: utiliser SASL pour l'authentification
+........................................
+
+&bull; *`/jdisconnect`* `[-all | nom_serveur [nom_serveur...]]`::
+
+........................................
+ se déconnecter d'un/plusieurs serveur(s) Jabber
+
+ -all: se déconnecter de tous les serveurs
+ nom_serveur: nom du serveur pour se déconnecter
+........................................
+
diff --git a/doc/fr/autogen/user/jabber_options.txt b/doc/fr/autogen/user/jabber_options.txt
new file mode 100644
index 000000000..5d9d2ff4c
--- /dev/null
+++ b/doc/fr/autogen/user/jabber_options.txt
@@ -0,0 +1,205 @@
+* *jabber.color.input_nick*
+** description: couleur du pseudo dans la barre de saisie
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightcyan)
+
+* *jabber.color.message_join*
+** description: couleur pour le texte dans les messages join
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: green)
+
+* *jabber.color.message_quit*
+** description: couleur pour le texte dans les messages part/quit
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: red)
+
+* *jabber.look.color_nicks_in_server_messages*
+** description: utiliser la couleur du pseudo dans les messages du serveur
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *jabber.look.display_away*
+** description: affiche un message pour l'absence/le retour
+** type: entier
+** valeurs: off, local, muc (valeur par défaut: local)
+
+* *jabber.look.display_muc_modes*
+** description: affiche les modes du MUC dans l'objet de barre "buffer_name"
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *jabber.look.display_nick_modes*
+** description: affiche les modes du pseudo dans l'objet de barre "input_prompt"
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *jabber.look.highlight_tags*
+** description: liste des tags pour les messages qui peuvent produire un highlight (séparés par des virgules, typiquement tout message venant d'un autre utilisateur, pas les messages du serveur, ...)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "jabber_chat_msg,jabber_notice")
+
+* *jabber.look.nick_completion_smart*
+** description: complétion intelligente pour les pseudos (complète d'abord avec les personnes qui ont parlé récemment)
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *jabber.look.nick_prefix*
+** description: texte à afficher avant le pseudo dans la fenêtre de discussion
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *jabber.look.nick_suffix*
+** description: texte à afficher après le pseudo dans la fenêtre de discussion
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *jabber.look.one_server_buffer*
+** description: utiliser le même tampon pour tous les serveurs
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *jabber.look.open_near_server*
+** description: ouvrir les nouveaux MUCs/privés près du serveur
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *jabber.look.show_away_once*
+** description: voir le message d'absence distant une seule fois en privé
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *jabber.look.smart_filter*
+** description: filtrer les messages join/part/quit pour un pseudo s'il n'a pas parlé pendant quelques minutes sur le MUC (vous devez créer un filtre sur le tag "jabber_smart_filter")
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *jabber.look.smart_filter_delay*
+** description: délai pour filtrer les messages join/part/quit (en minutes)
+** type: entier
+** valeurs: 1 .. 10080 (valeur par défaut: 5)
+
+* *jabber.network.anti_flood*
+** description: anti-flood: nombre de secondes entre deux messages utilisateur (0 = pas d'anti-flood)
+** type: entier
+** valeurs: 0 .. 5 (valeur par défaut: 2)
+
+* *jabber.network.colors_receive*
+** description: si désactivé, les codes couleurs des messages entrants sont ignorés
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *jabber.network.colors_send*
+** description: autorise l'utilisateur à envoyer des couleurs avec des codes spéciaux (^Cb=gras, ^Cxx=couleur, ^Ccxx,yy=couleur+fond, ^Cu=souligné, ^Cr=inversé)
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *jabber.network.default_msg_part*
+** description: message par défaut pour le part (en quittant un MUC) ('%v' sera remplacé par la version de WeeChat dans la chaîne)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "WeeChat %v")
+
+* *jabber.network.default_msg_quit*
+** description: message de fin par défaut (lors de la déconnexion du serveur) ('%v' sera remplacé par la version de WeeChat dans la chaîne)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "WeeChat %v")
+
+* *jabber.network.lag_check*
+** description: intervalle entre deux vérifications des absences (en secondes, 0 = ne jamais vérifier)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 60)
+
+* *jabber.network.lag_disconnect*
+** description: déconnexion après un lag important (en minutes, 0 = ne jamais se déconnecter)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 5)
+
+* *jabber.network.lag_min_show*
+** description: lag minimum à afficher (en secondes)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 1)
+
+* *jabber.server_default.autoconnect*
+** description: connexion automatique au serveur quand WeeChat démarre
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *jabber.server_default.autojoin*
+** description: liste des MUCs (séparés par des virgules) à rejoindre lorsque connecté au serveur (exemple: "#chan1,#chan2,#chan3 key1,key2")
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *jabber.server_default.autoreconnect*
+** description: reconnexion automatique au serveur après une déconnexion
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *jabber.server_default.autoreconnect_delay*
+** description: délai (en secondes) avant de tenter une reconnexion au serveur
+** type: entier
+** valeurs: 0 .. 65535 (valeur par défaut: 10)
+
+* *jabber.server_default.autorejoin*
+** description: rejoindre automatiquement les MUCs quand mis dehors
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *jabber.server_default.command*
+** description: commande(s) à exécuter lorsque connecté au serveur (plusieurs commandes doivent être séparées par ';', utilisez '\;' pour un point-virgule, les variables spéciales $nick, $muc et $server sont remplacées par leur valeur)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *jabber.server_default.command_delay*
+** description: délai (en secondes) après exécution de la commande (exemple: donner du temps pour l'authentification)
+** type: entier
+** valeurs: 0 .. 3600 (valeur par défaut: 0)
+
+* *jabber.server_default.ipv6*
+** description: utiliser le protocole IPv6 pour la communication avec le serveur
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *jabber.server_default.local_alias*
+** description: alias local
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *jabber.server_default.local_hostname*
+** description: nom local de machine/IP personnalisé pour le serveur (optionnel, si non renseigné, le nom de machine local est utilisé)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *jabber.server_default.password*
+** description: mot de passe
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *jabber.server_default.proxy*
+** description: proxy utilisé pour ce serveur (optionnel)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *jabber.server_default.resource*
+** description: ressource (pas exemple: Maison ou Travail)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *jabber.server_default.sasl*
+** description: utiliser SASL pour l'authentification
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *jabber.server_default.server*
+** description: nom/port ou IP/port pour le serveur
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *jabber.server_default.tls*
+** description: utiliser le protocole de chiffrement TLS pour la communication avec le serveur
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *jabber.server_default.username*
+** description: nom d'utilisateur pour le serveur
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
diff --git a/doc/fr/autogen/user/logger_commands.txt b/doc/fr/autogen/user/logger_commands.txt
new file mode 100644
index 000000000..c6c4453c4
--- /dev/null
+++ b/doc/fr/autogen/user/logger_commands.txt
@@ -0,0 +1,32 @@
+&bull; *`/logger`* `[list | set niveau | disable]`::
+
+........................................
+ configuration de l'extension logger
+
+ list: afficher le statut d'enregistrement pour les tampons ouverts
+ set: définir le niveau d'enregistrement pour le tampon courant
+ niveau: niveau pour les messages à enregistrer (0 = pas d'enregistrement, 1 = quelques messages (les plus importants) .. 9 = tous les messages)
+ disable: désactiver l'enregistrement pour le tampon courant (définir le niveau à 0)
+
+ Les options "logger.level.*" et "logger.mask.*" peuvent être utilisées pour définir le niveau ou le masque de nom de fichier pour un tampon, ou plusieurs tampons commençant par un nom.
+
+ Exemples:
+ définir le niveau d'enregistrement à 5 pour le tampon courant:
+ /logger set 5
+ désactiver l'enregistrement pour le tampon courant:
+ /logger disable
+ définir le niveau à 3 pour les tampons IRC:
+ /set logger.level.irc 3
+ désactiver l'enregistrement pour le tampon principal de WeeChat:
+ /set logger.level.core.weechat 0
+ utiliser un répertoire par serveur IRC et un fichier par canal dedans:
+ /set logger.mask.irc "$server/$channel.weechatlog"
+
+ Niveaux de log utilisés par l'extension IRC:
+ 1: message d'utilisateur, notice, privé
+ 2: changement de pseudo
+ 3: message du serveur
+ 4: join/part/quit
+ 9: tous les autres messages
+........................................
+
diff --git a/doc/fr/autogen/user/logger_options.txt b/doc/fr/autogen/user/logger_options.txt
new file mode 100644
index 000000000..c03afa966
--- /dev/null
+++ b/doc/fr/autogen/user/logger_options.txt
@@ -0,0 +1,35 @@
+* *logger.file.auto_log*
+** description: sauve automatiquement le contenu des tampons dans des fichiers (sauf si un tampon désactive le log)
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *logger.file.info_lines*
+** description: écrire une ligne d'information dans le fichier log quand le log démarre ou se termine pour un tampon
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *logger.file.mask*
+** description: masque de fichier par défaut pour les fichiers de log (le format est "repertoire/vers/fichier" ou "fichier", sans le premier "/" car l'option "path" est utilisée pour construire le chemin complet vers le fichier); les variables locales du tampon sont permises
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "$plugin.$name.weechatlog")
+
+* *logger.file.name_lower_case*
+** description: utiliser seulement des minuscules dans le nom des fichiers de log
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *logger.file.path*
+** description: chemin pour les fichiers de log WeeChat ("%h" sera remplacé par le répertoire de base WeeChat, par défaut: "~/.weechat")
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "%h/logs/")
+
+* *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
+** valeurs: toute chaîne (valeur par défaut: "%Y-%m-%d %H:%M:%S")
+
+* *logger.look.backlog*
+** description: nombre maximum de lignes à afficher du fichier de log lors de l'ouverture du tampon (0 = ne rien afficher)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 20)
+
diff --git a/doc/fr/autogen/user/lua_commands.txt b/doc/fr/autogen/user/lua_commands.txt
new file mode 100644
index 000000000..cff96e97e
--- /dev/null
+++ b/doc/fr/autogen/user/lua_commands.txt
@@ -0,0 +1,11 @@
+&bull; *`/lua`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]`::
+
+........................................
+ liste/charge/décharge des scripts
+
+ fichier: script (fichier) à charger
+ nom: un nom de script
+
+ Sans argument, cette commande liste tous les scripts chargés.
+........................................
+
diff --git a/doc/fr/autogen/user/perl_commands.txt b/doc/fr/autogen/user/perl_commands.txt
new file mode 100644
index 000000000..046a2d224
--- /dev/null
+++ b/doc/fr/autogen/user/perl_commands.txt
@@ -0,0 +1,11 @@
+&bull; *`/perl`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]`::
+
+........................................
+ liste/charge/décharge des scripts
+
+ fichier: script (fichier) à charger
+ nom: un nom de script
+
+ Sans argument, cette commande liste tous les scripts chargés.
+........................................
+
diff --git a/doc/fr/autogen/user/python_commands.txt b/doc/fr/autogen/user/python_commands.txt
new file mode 100644
index 000000000..a6ff13f3c
--- /dev/null
+++ b/doc/fr/autogen/user/python_commands.txt
@@ -0,0 +1,11 @@
+&bull; *`/python`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]`::
+
+........................................
+ liste/charge/décharge des scripts
+
+ fichier: script (fichier) à charger
+ nom: un nom de script
+
+ Sans argument, cette commande liste tous les scripts chargés.
+........................................
+
diff --git a/doc/fr/autogen/user/relay_commands.txt b/doc/fr/autogen/user/relay_commands.txt
new file mode 100644
index 000000000..90361da68
--- /dev/null
+++ b/doc/fr/autogen/user/relay_commands.txt
@@ -0,0 +1,11 @@
+&bull; *`/relay`* `[list | listfull]`::
+
+........................................
+ contrôle du relai
+
+ list: liste les clients pour le relai
+ listfull: liste les clients pour le relai (verbeux)
+
+ Sans paramètre, cette commande ouvre le tampon avec la liste des clients pour le relai.
+........................................
+
diff --git a/doc/fr/autogen/user/relay_options.txt b/doc/fr/autogen/user/relay_options.txt
new file mode 100644
index 000000000..36353b7f6
--- /dev/null
+++ b/doc/fr/autogen/user/relay_options.txt
@@ -0,0 +1,55 @@
+* *relay.color.status_active*
+** description: couleur du texte pour le statut "connecté"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightblue)
+
+* *relay.color.status_auth_failed*
+** description: couleur du texte pour le statut "échec auth"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightred)
+
+* *relay.color.status_connecting*
+** description: couleur du texte pour le statut "connexion"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: yellow)
+
+* *relay.color.status_disconnected*
+** description: couleur du texte pour le statut "déconnecté"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightred)
+
+* *relay.color.status_waiting_auth*
+** description: couleur du texte pour le statut "attente auth"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: brown)
+
+* *relay.color.text*
+** description: couleur du texte
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: default)
+
+* *relay.color.text_bg*
+** description: couleur du fond
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: default)
+
+* *relay.color.text_selected*
+** description: couleur du texte pour la ligne client sélectionnée
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: white)
+
+* *relay.look.auto_open_buffer*
+** description: ouvrir automatiquement le tampon des clients pour le relai lorsqu'un nouveau client est ajouté à la liste
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *relay.network.enabled*
+** description: activer le relai
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *relay.network.listen_port_range*
+** description: numéro de port (ou intervalle de ports) sur lesquels écoute l'extension relay (syntaxe: un port simple, par exemple 5000, un intervalle de ports, par exemple 5000-5015)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "22373-22400")
+
diff --git a/doc/fr/autogen/user/ruby_commands.txt b/doc/fr/autogen/user/ruby_commands.txt
new file mode 100644
index 000000000..ad046db04
--- /dev/null
+++ b/doc/fr/autogen/user/ruby_commands.txt
@@ -0,0 +1,11 @@
+&bull; *`/ruby`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]`::
+
+........................................
+ liste/charge/décharge des scripts
+
+ fichier: script (fichier) à charger
+ nom: un nom de script
+
+ Sans argument, cette commande liste tous les scripts chargés.
+........................................
+
diff --git a/doc/fr/autogen/user/tcl_commands.txt b/doc/fr/autogen/user/tcl_commands.txt
new file mode 100644
index 000000000..a0afc511a
--- /dev/null
+++ b/doc/fr/autogen/user/tcl_commands.txt
@@ -0,0 +1,11 @@
+&bull; *`/tcl`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload] | [unload [nom]]`::
+
+........................................
+ liste/charge/décharge des scripts
+
+ fichier: script (fichier) à charger
+ nom: un nom de script
+
+ Sans argument, cette commande liste tous les scripts chargés.
+........................................
+
diff --git a/doc/fr/autogen/user/weechat_commands.txt b/doc/fr/autogen/user/weechat_commands.txt
new file mode 100644
index 000000000..bb29c29c6
--- /dev/null
+++ b/doc/fr/autogen/user/weechat_commands.txt
@@ -0,0 +1,368 @@
+&bull; *`/bar`* `[add nombarre type[,cond1,cond2,...] position taille separateur objet1,objet2,...] | [default] | [del nombarre|-all] | [set nombarre option valeur] | [hide|show|toggle nombarre] | [scroll nombarre tampon valeur_scroll] | [list] | [listfull] | [listitems]`::
+
+........................................
+ gestion des barres
+
+ add: ajoute une nouvelle barre
+ nombarre: nom de la barre (doit être unique)
+ type: root: en dehors des fenêtres
+ window: dans les fenêtres, avec condition(s) optionnelle(s) (voir ci-dessous)
+ cond1,...: condition(s) pour afficher cette barre (seulement pour le type "window"):
+ active: sur la fenêtre active
+ inactive: sur les fenêtres inactives
+ 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))
+ default: créer les barres par défaut
+ del: supprime une barre (ou toutes les barres avec -all)
+ set: change la valeur d'une propriété de la barre
+ option: option à modifier (pour la liste des options, voir /set weechat.bar.<nombarre>.*
+ valeur: nouvelle valeur pour l'option
+ hide: cache la barre
+ show: montre une barre cachée
+ toggle: cache/montre une barre
+ scroll: défilement de la barre vers le haut/bas
+ tampon: catégorie et nom du tampon ('*' signifie le tampon courant, vous devez utiliser '*' pour les barres de type root)
+ valeur_scroll: valeur pour le défilement: 'x' ou 'y', suivi par '+', '-', 'b' (début) ou 'e' (fin), valeur (pour +/-), et un %% optionnel (pour faire défiler par %% de la largeur/hauteur, sinon la valeur est un nombre de caractères)
+ list: liste toutes les barres
+ listfull: liste toutes les barres (verbeux)
+ listitems: liste tous les objets de barre
+
+ Exemples:
+ créer une barre avec l'heure, numéro + nom de tampon, et la complétion:
+ /bar add mabarre root bottom 1 0 [time],buffer_number+:+buffer_name,completion
+ cacher une barre:
+ /bar hide mabarre
+ faire défiler la liste des pseudos de 10 lignes vers le bas sur le tampon courant:
+ /bar scroll nicklist * y+10
+ faire défiler la liste des pseudos d'une page vers le haut sur le tampon #weechat:
+ /bar scroll nicklist #weechat y-100%
+ faire défiler la liste des pseudos à la fin sur le tampon courant:
+ /bar scroll nicklist * ye
+........................................
+
+&bull; *`/buffer`* `[clear [nombre | -all] | move nombre | close [n1[-n2]] | list | notify niveau | localvar | set propriété valeur | nombre | nom]`::
+
+........................................
+ gestion des tampons
+
+ clear: efface le contenu du tampon (-all pour tous les tampons, un numéro pour un tampon, ou rien pour le tampon courant)
+ move: déplace le tampon dans la liste (peut être relatif, par exemple -1)
+ close: ferme le tampon (nombre/intervalle optionnel)
+ list: liste les tampons ouverts (pas de paramètre affiche cette liste)
+ notify: définit le niveau de notification pour le tampon courant: ce niveau détermine si le buffer doit être ajouté à la hotlist ou pas:
+ none: jamais
+ highlight: pour les highlights seulement
+ message: pour les messages d'utilisateurs + highlights
+ all: pout tous les messages
+ reset: réinitialise à valeur par défaut (all)
+ localvar: affiche la liste des variables locales pour le tampon courant
+ set: modifier une propriété du tampon courant
+ nombre: saute au tampon qui a ce numéro, préfixe possible:
+ '+': saut relatif, ajoute le numéro au courant,
+ '-': saut relatif, soustrait le numéro au courant,
+ '*': saut au numéro en utilisant l'option "jump_current_to_previous_buffer"
+ nom: saute au tampon par nom (partiel)
+
+ Exemples:
+ effacer le tampon courant: /buffer clear
+ effacer tous les tampons: /buffer clear -all
+ déplacer le tampon: /buffer move 5
+ fermer le tampon courant: /buffer close
+ fermer les tampons 5 à 7: /buffer close 5-7
+ aller sur #weechat: /buffer #weechat
+ aller au tampon suivant: /buffer +1
+........................................
+
+&bull; *`/command`* `extension commande`::
+
+........................................
+ lancer explicitement une commande WeeChat ou d'une extension
+
+ extension: nom de l'extension ('weechat' pour une commande interne WeeChat)
+ commande: commande à exécuter (un '/' est automatiquement ajouté s'il n'est pas trouvé au début de la commande)
+........................................
+
+&bull; *`/debug`* `[list | extension niveau | dump | buffer windows]`::
+
+........................................
+ contrôle du debug pour le coeur/les extensions
+
+ extension: nom de l'extension ("core" pour le coeur de WeeChat)
+ niveau: niveau de debug pour l'extension
+ dump: affiche les variables mémoire WeeChat dans le fichier log (les mêmes messages sont affichés lorsque WeeChat plante)
+ buffer: affiche le contenu du tampon en valeurs hexadécimales dans le fichier log
+ windows: affiche l'arbre des fenêtres<
+ texte: envoie le signal "debug" avec "texte" comme paramètre
+........................................
+
+&bull; *`/filter`* `[list] | [enable|disable|toggle [nom]] | [add nom extension.tampon tags regex] | [del nom|-all]`::
+
+........................................
+ filtre les messages dans les tampons, pour les cacher/afficher selon des tags ou expressions régulières
+
+ list: liste tous les filtres
+ enable: active les filtres (par défaut les filtres sont activés)
+ disable: désactive les filtres
+ toggle: active/désactive les filtres
+ nom: nom de filtre
+ add: ajoute un filtre
+ del: supprime un filtre
+ -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)
+
+ La touche par défaut alt+'=' active/désactive le filtrage.
+
+ Exemples:
+ utiliser le filtre intelligent IRC pour les messages join/part/quit:
+ /filter add irc_smart * irc_smart_filter *
+ filtrer tous les messages IRC join/part/quit:
+ /filter add joinquit * irc_join,irc_part,irc_quit *
+ filtrer le pseudo "toto" sur le canal IRC #weechat:
+ /filter add toto irc.freenode.#weechat * toto\t
+ filtrer les lignes contenant le mot "spam":
+ /filter add filtrespam * * spam
+ filtrer les lignes contenant "weechat sucks" sur le canal IRC #weechat:
+ /filter add sucks irc.freenode.#weechat * weechat sucks
+........................................
+
+&bull; *`/help`* `[commande | option]`::
+
+........................................
+ afficher l'aide sur les commandes et les options
+
+ commande: nom d'une commande
+ option: nom d'une option (utilisez /set pour voir la liste)
+........................................
+
+&bull; *`/history`* `[clear | valeur]`::
+
+........................................
+ affiche l'historique des commandes du tampon
+
+ clear: effacer l'historique
+ valeur: nombre d'entrées dans l'historique à afficher
+........................................
+
+&bull; *`/input`* `return | complete_next | complete_previous | search_next | delete_previous_char | delete_next_char | delete_previous_word | delete_next_word | delete_beginning_of_line | delete_end_of_line | delete_line | clipboard_paste | transpose_chars | move_beginning_of_line | move_end_of_line | move_previous_char | move_next_char | move_previous_word | move_next_word | history_previous | history_next | history_global_previous | history_global_next | jump_smart | jump_last_buffer | jump_previously_visited_buffer | jump_next_visited_buffer | hotlist_clear | grab_key | scroll_unread | set_unread | set_unread_current_buffer | insert [args]`::
+
+........................................
+ fonctions pour la ligne de commande
+
+ Cette commande est utilisée par les associations de touches ou les extensions.
+........................................
+
+&bull; *`/key`* `[bind touche [commande [args]]] | [unbind touche] | [reset -yes] | [missing]`::
+
+........................................
+ associer/libérer des touches
+
+ bind: associer une commande à une touche ou afficher la commande associée à la touche
+ unbind: supprimer l'association à une touche
+ reset: restaure les touches aux valeurs par défaut et supprime TOUTES les touches personnelles (utiliser avec précaution !)
+ missing: ajoute les touches manquantes (en utilisant les touches par défaut)
+........................................
+
+&bull; *`/layout`* `[[save | apply | reset] [buffers | windows]]`::
+
+........................................
+ sauve/applique/réinitialise la disposition des tampons et fenêtres
+
+ save: sauve la disposition courante
+ apply: applique la disposition sauvegardée
+ reset: supprime la disposition sauvegardée
+ buffers: sauve/applique seulement pour les tampons (ordre des tampons)
+ windows: sauve/applique seulement pour les fenêtres (le tampon affiché par chaque fenêtre)
+
+ Sans paramètre, cette commande affiche la disposition sauvegardée.
+........................................
+
+&bull; *`/plugin`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload [nom]] | [unload [nom]]`::
+
+........................................
+ liste/charge/décharge des extensions
+
+ list: lister les extensions chargées
+ listfull: lister les extensions chargées (verbeux)
+ load: charger une extension
+ autoload: charger automatiquement les extensions dans un répertoire système ou utilisateur
+ reload: recharger une extension (si pas de nom donné, décharger toutes les extensions, puis puis recharger automatiquement les extensions)
+ unload: décharger une ou plusieurs exteneions
+
+ Sans paramètre, cette commande liste les extensions chargées.
+........................................
+
+&bull; *`/proxy`* `[add nomproxy type addresse port [utilisateur [motdepasse]]] | [del nomproxy|-all] | [set nomproxy option valeur] | [list]`::
+
+........................................
+ gestion des proxies
+
+ add: ajoute un nouveau proxy
+ nomproxy: nom du proxy (doit être unique)
+ type: http, socks4 ou socks5
+ addresse: IP ou nom de machine
+ port: port
+ utilisateur: nom d'utilisateur (optionnel)
+ motdepasse: mot de passe (optionnel)
+ del: supprime un proxy (ou tous les proxies avec -all)
+ set: change la valeur d'une propriété d'un proxy
+ option: option à modifier (pour la liste des options, voir /set weechat.proxy.<proxyname>.*)
+ valeur: nouvelle valeur pour l'option
+ list: liste de tous les proxies
+
+ Exemples:
+ créer un proxy http, tournant en local, port 8888:
+ /proxy add local http 127.0.0.1 8888
+ créer un proxy http en utilisant le protocole IPv6:
+ /proxy add local http 127.0.0.1 8888
+ /proxy set local ipv6 on
+ créer un proxy socks5 avec un utilisateur/mot de passe:
+ /proxy add myproxy socks5 sample.host.org 3128 myuser mypass
+ supprimer un proxy:
+ /proxy del myproxy
+........................................
+
+&bull; *`/quit`*::
+
+........................................
+ quitter WeeChat
+........................................
+
+&bull; *`/reload`* `[fichier [fichier...]]`::
+
+........................................
+ recharger les fichiers de configuration depuis le disque
+
+ fichier: fichier de configuration à recharger
+
+ Sans paramètre, tous les fichiers (WeeChat et extensions) sont rechargés.
+........................................
+
+&bull; *`/save`* `[fichier [fichier...]]`::
+
+........................................
+ sauvegarder les fichiers de configuration sur disque
+
+ fichier: fichier de configuration à sauvegarder
+
+ Sans paramètre, tous les fichiers (WeeChat et extensions) sont sauvegardés.
+........................................
+
+&bull; *`/set`* `[option [valeur]]`::
+
+........................................
+ modifier des options de configuration
+
+ option: nom d'une option
+ valeur: nouvelle valeur pour l'option
+
+ La nouvelle valeur peut être, selon le type de l'option:
+ booléen: on, off ou toggle
+ entier : nombre, ++nombre ou --nombre
+ chaîne : toute chaîne ("" pour une chaîne vide)
+ couleur: nom de couleur, ++nombre ou --nombre
+
+ Pour tous les types, vous pouvez utiliser null pour supprimer la valeur de l'option (valeur non définie). Cela ne fonctionne qu'avec certaines options spéciales des extensions.
+........................................
+
+&bull; *`/unset`* `[option]`::
+
+........................................
+ supprimer/réinitialiser des options de configuration
+
+ option: nom d'une option (peut commencer ou se terminer par "*" pour réinitialiser plusieurs options, à utiliser avec prudence !)
+
+ Selon l'option, elle est réinitialisée (pour les options standards) ou supprimée (pour les options facultatives, comme les valeurs pour les serveurs).
+........................................
+
+&bull; *`/upgrade`* `[chemin_vers_binaire]`::
+
+........................................
+ mettre à jour WeeChat sans se déconnecter des serveurs
+
+ chemin_vers_binaire: chemin vers le binaire WeeChat (par défaut le binaire courant)
+
+ Cette commande lance à nouveau un binaire WeeChat, il doit donc avoir été compilé ou installé via un gestionnaire de paquet avant de lancer cette commande.
+........................................
+
+&bull; *`/uptime`* `[-o]`::
+
+........................................
+ montrer l'uptime de WeeChat
+
+ -o: envoyer l'uptime sur le tampon courant comme entrée
+........................................
+
+&bull; *`/version`* `[-o]`::
+
+........................................
+ afficher la version de WeeChat et la date de compilation
+
+ -o: envoyer la version sur le tampon courant comme entrée
+........................................
+
+&bull; *`/wait`* `nombre[unité] commande`::
+
+........................................
+ planifie l'exécution d'une commande dans le futur
+
+ nombre: temps à attendre (nombre entier)
+ unité: optionnelle, valeurs possibles:
+ ms: millisecondes
+ s: secondes (par défaut)
+ m: minutes
+ h: heures
+ commande: commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')
+
+ Note: la commande est exécutée sur le tampon où /wait a été exécuté (si le tampon n'est pas trouvé, alors la commande est exécutée sur le tampon WeeChat principal).
+
+ Exemples:
+ rejoindre le canal dans 10 sec: /wait 10 join #test
+ passer absent dans 15 min: /wait 15m away -all I'm away
+ dire 'bonjour' dans 2 min: /wait 2m bonjour
+........................................
+
+&bull; *`/window`* `[list | -1 | +1 | b# | up | down | left | right | splith [pct] | splitv [ptc] | resize pct | merge [all] | page_up | page_down | refresh | scroll | scroll_up | scroll_down | scroll_top | scroll_bottom | scroll_previous_highlight | scroll_next_highlight | zoom]`::
+
+........................................
+ gestion des fenêtres
+
+ list: liste les fenêtres ouvertes (pas de paramètre affiche cette liste)
+ -1: saute à la fenêtre précédente
+ +1: saute à la fenêtre suivante
+ b#: saute à la fenêtre affichant le tampon #
+ up: saute à la fenêtre au dessus
+ down: saute à la fenêtre au dessous
+ left: saute à la fenêtre à gauche
+ right: saute à la fenêtre à droite
+ splith: éclate la fenêtre en deux horizontalement
+ splitv: éclate la fenêtre en deux verticalement
+ resize: redimensionne une fenêtre, la nouvelle taille est <pct> pourcentage de la fenêtre parent
+ merge: fusionne la fenêtre avec une autre
+ page_up: défilement d'une page vers le haut
+ page_down: défilement d'une page vers le bas
+ refresh: redessine l'écran
+ scroll: défilement d'un nombre de lignes (+/-N) ou avec du temps: s=secondes, m=minutes, h=heures, d=jours, M=mois, y=année
+ scroll_up: défilement de quelques lignes vers le haut
+ scroll_down: défilement de quelques lignes vers le bas
+ scroll_top: défilement jusqu'au début du tampon
+ scroll_bottom: défilement jusqu'au bas du tampon
+ scroll_previous_highlight: défilement jusqu'au highlight précédent
+ scroll_next_highlight: défilement jusqu'au highlight suivant
+ zoom: zoom sur la fenêtre
+
+ Pour splith et splitv, pct est un pourcentage qui représente la taille de la nouvelle fenêtre, calculée par rapport à la taille de la fenêtre courante. Par exemple 25 signifie créer une fenêtre qui a pour taille: taille_courante / 4
+
+ Exemples:
+ sauter à la fenêtre affichant le tampon 1: /window b1
+ défilement de 2 lignes vers le haut: /window scroll -2
+ défilement de 2 jours vers le haut: /window scroll -2d
+ défilement jusqu'au début du jour courant: /window scroll -d
+........................................
+
diff --git a/doc/fr/autogen/user/weechat_options.txt b/doc/fr/autogen/user/weechat_options.txt
new file mode 100644
index 000000000..b67ab8f78
--- /dev/null
+++ b/doc/fr/autogen/user/weechat_options.txt
@@ -0,0 +1,575 @@
+* *weechat.color.bar_more*
+** description: couleur du texte pour les '+' lors du défilement des barres
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightmagenta)
+
+* *weechat.color.chat*
+** description: couleur du texte pour la discussion
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: default)
+
+* *weechat.color.chat_bg*
+** description: couleur du fond pour la discussion
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: default)
+
+* *weechat.color.chat_buffer*
+** description: couleur du texte pour le nom des tampons
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: white)
+
+* *weechat.color.chat_channel*
+** description: couleur du texte pour le nom des canaux
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: white)
+
+* *weechat.color.chat_delimiters*
+** description: couleur du texte pour les délimiteurs
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: green)
+
+* *weechat.color.chat_highlight*
+** description: couleur du texte pour le préfixe surligné (highlight)
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: yellow)
+
+* *weechat.color.chat_highlight_bg*
+** description: couleur du fond pour le préfixe surligné (highlight)
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: magenta)
+
+* *weechat.color.chat_host*
+** description: couleur du texte pour les noms d'hôtes
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: cyan)
+
+* *weechat.color.chat_nick*
+** description: couleur du texte pour l'heure dans la fenêtre de discussion
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightcyan)
+
+* *weechat.color.chat_nick_color01*
+** description: couleur du texte n°1 pour le pseudo
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: cyan)
+
+* *weechat.color.chat_nick_color02*
+** description: couleur du texte n°2 pour le pseudo
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: magenta)
+
+* *weechat.color.chat_nick_color03*
+** description: couleur du texte n°3 pour le pseudo
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: green)
+
+* *weechat.color.chat_nick_color04*
+** description: couleur du texte n°4 le pseudo
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: brown)
+
+* *weechat.color.chat_nick_color05*
+** description: couleur du texte n°5 pour le pseudo
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightblue)
+
+* *weechat.color.chat_nick_color06*
+** description: couleur du texte n°6 pour le pseudo
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: default)
+
+* *weechat.color.chat_nick_color07*
+** description: couleur du texte n°7 pour le pseudo
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightcyan)
+
+* *weechat.color.chat_nick_color08*
+** description: couleur du texte n°8 pour le pseudo
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightmagenta)
+
+* *weechat.color.chat_nick_color09*
+** description: couleur du texte n°9 pour le pseudo
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightgreen)
+
+* *weechat.color.chat_nick_color10*
+** description: couleur du texte n°10 pour le pseudo
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: blue)
+
+* *weechat.color.chat_nick_other*
+** description: couleur du texte pour l'autre pseudo dans le tampon privée
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: cyan)
+
+* *weechat.color.chat_nick_self*
+** description: couleur du texte pour le pseudo local dans la fenêtre de discussion
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: white)
+
+* *weechat.color.chat_prefix_action*
+** description: couleur du texte pour le préfixe d'action
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: white)
+
+* *weechat.color.chat_prefix_error*
+** description: couleur du texte pour le préfixe d'erreur
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: yellow)
+
+* *weechat.color.chat_prefix_join*
+** description: couleur du texte pour le préfixe d'arrivée
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightgreen)
+
+* *weechat.color.chat_prefix_more*
+** description: couleur du texte pour les '+' lorsque le préfixe est trop long
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightmagenta)
+
+* *weechat.color.chat_prefix_network*
+** description: couleur du texte pour le préfixe réseau
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: magenta)
+
+* *weechat.color.chat_prefix_quit*
+** description: couleur du texte pour le préfixe de départ
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightred)
+
+* *weechat.color.chat_prefix_suffix*
+** description: couleur du texte pour le suffixe (après le préfixe)
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: green)
+
+* *weechat.color.chat_read_marker*
+** description: couleur du texte pour le marqueur de données non lues
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: magenta)
+
+* *weechat.color.chat_read_marker_bg*
+** description: couleur du fond pour le marqueur de données non lues
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: default)
+
+* *weechat.color.chat_server*
+** description: couleur du texte pour le nom des serveurs
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: brown)
+
+* *weechat.color.chat_text_found*
+** description: couleur du texte pour le marqueur sur les lignes où le texte demandé est trouvé
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: yellow)
+
+* *weechat.color.chat_text_found_bg*
+** description: couleur du fond pour le marqueur sur les lignes où le texte demandé est trouvé
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightmagenta)
+
+* *weechat.color.chat_time*
+** description: couleur du texte pour l'heure dans la fenêtre de discussion
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: default)
+
+* *weechat.color.chat_time_delimiters*
+** description: couleur du texte pour les délimiteurs de l'heure
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: brown)
+
+* *weechat.color.chat_value*
+** description: couleur du texte pour les valeurs
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: cyan)
+
+* *weechat.color.input_actions*
+** description: couleur du texte pour les actions dans la ligne de saisie
+** 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
+** valeurs: un nom de couleur (valeur par défaut: red)
+
+* *weechat.color.nicklist_away*
+** description: couleur du texte pour les pseudos absents
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: cyan)
+
+* *weechat.color.nicklist_group*
+** description: couleur du texte pour les groupes dans la liste des pseudos
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: green)
+
+* *weechat.color.nicklist_more*
+** description: couleur du texte pour les '+' lors du défilement des pseudos dans la liste des pseudos
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightmagenta)
+
+* *weechat.color.nicklist_prefix1*
+** description: couleur du texte pour le préfixe n°1 de la liste des pseudos
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightgreen)
+
+* *weechat.color.nicklist_prefix2*
+** description: couleur du texte pour le préfixe n°2 de la liste des pseudos
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightmagenta)
+
+* *weechat.color.nicklist_prefix3*
+** description: couleur du texte pour le préfixe n°3 de la liste des pseudos
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: yellow)
+
+* *weechat.color.nicklist_prefix4*
+** description: couleur du texte pour le préfixe n°4 de la liste des pseudos
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: blue)
+
+* *weechat.color.nicklist_prefix5*
+** description: couleur du texte pour le préfixe n°5 de la liste des pseudos
+** 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
+** valeurs: un nom de couleur (valeur par défaut: blue)
+
+* *weechat.color.status_data_highlight*
+** description: couleur du texte pour un tampon avec un highlight (barre de statut)
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightmagenta)
+
+* *weechat.color.status_data_msg*
+** description: couleur du texte pour un tampon avec de nouveaux messages (barre de statut)
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: yellow)
+
+* *weechat.color.status_data_other*
+** description: couleur du texte pour un tampon avec des nouvelles données (pas des messages) (barre de statut)
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: default)
+
+* *weechat.color.status_data_private*
+** description: couleur du texte pour un tampon avec un message privé (barre de statut)
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightgreen)
+
+* *weechat.color.status_filter*
+** description: couleur du texte pour l'indicateur de filtrage dans la barre de statut
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: green)
+
+* *weechat.color.status_more*
+** description: couleur du texte pour un tampon avec des nouvelles données (barre de statut)
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: yellow)
+
+* *weechat.color.status_name*
+** description: couleur du texte pour le nom du tampon courant dans la barre de statut
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: white)
+
+* *weechat.color.status_number*
+** description: couleur du texte pour le numéro du tampon courant dans la barre de statut
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: yellow)
+
+* *weechat.completion.default_template*
+** description: modèle de complétion par défaut (merci de consulter la documentation pour les codes et valeurs du modèle)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "%(nicks)|%(irc_channels)")
+
+* *weechat.completion.nick_add_space*
+** description: ajouter un espace après la complétion du pseudo (quand le pseudo n'est pas le premier mot sur la ligne de commande)
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.completion.nick_completor*
+** description: chaîne affichée après la complétion des pseudos
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: ":")
+
+* *weechat.completion.nick_first_only*
+** description: compléter seulement avec le premier pseudo trouvé
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *weechat.completion.nick_ignore_chars*
+** description: caractères à ignorer pour la complétion des pseudos
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "[]-^")
+
+* *weechat.completion.partial_completion_alert*
+** description: alterte de l'utilisateur lorsqu'une complétion partielle survient
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.completion.partial_completion_command*
+** description: complète partiellement les noms de commandes (stoppe quand plusieurs commandes trouvées commencent par les mêmes lettres)
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *weechat.completion.partial_completion_command_arg*
+** description: complète partiellement les paramètres de commande (stoppe quand plusieurs paramètres trouvés commencent par les mêmes lettres)
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *weechat.completion.partial_completion_count*
+** description: afficher le compteur pour chaque complétion partielle dans l'objet de barre
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.completion.partial_completion_other*
+** description: complète partiellement en dehors des commandes (stoppe quand plusieurs mots trouvés commencent par les mêmes lettres)
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *weechat.history.display_default*
+** description: nombre maximum de commandes à afficher par défaut dans le listing d'historique (0 = sans limite)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 5)
+
+* *weechat.history.max_commands*
+** description: nombre maximum de commandes utilisateur dans l'historique (0 = sans limite)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 100)
+
+* *weechat.history.max_lines*
+** description: nombre maximum de lignes dans l'historique (0 = sans limite)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 4096)
+
+* *weechat.history.max_visited_buffers*
+** description: nombre maximum de tampons visités à garder en mémoire
+** type: entier
+** valeurs: 0 .. 1000 (valeur par défaut: 50)
+
+* *weechat.look.buffer_notify_default*
+** description: niveau de notification par défaut pour les tampons (utilisé pour dire à WeeChat si le tampon doit être affiché dans la hotlist ou non, selon l'importance du message)
+** type: entier
+** valeurs: none, highlight, message, all (valeur par défaut: all)
+
+* *weechat.look.buffer_time_format*
+** description: format de date/heure pour les tampons
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "%H:%M:%S")
+
+* *weechat.look.color_nicks_number*
+** description: nombre de couleurs à utiliser pour les couleurs des pseudos
+** type: entier
+** valeurs: 1 .. 10 (valeur par défaut: 10)
+
+* *weechat.look.color_real_white*
+** description: si activé, utilise la vraie couleur blanche, désactivé par défaut pour les terminaux avec un fond blanc (si vous n'utilisez jamais de fond blanc, vous devriez activer cette option pour voir du vrai blanc au lieu de la couleur d'avant plan par défaut du terminal)
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *weechat.look.day_change*
+** description: affiche un message quand le jour change
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.look.day_change_time_format*
+** description: format de date pour la date affichée quand le jour a changé
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "%a, %d %b %Y")
+
+* *weechat.look.highlight*
+** description: liste des mots pour la notification (séparés par des virgules, la comparaison ne tient pas compte de la casse, les mots peuvent commencer ou se terminer par "*" pour une comparaison partielle)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *weechat.look.hotlist_names_count*
+** description: nombre maximum de noms dans la liste d'activité (0 = pas de nom affiché, seulement les numéros de tampons)
+** type: entier
+** valeurs: 0 .. 32 (valeur par défaut: 3)
+
+* *weechat.look.hotlist_names_length*
+** description: nombre maximum des noms dans la liste d'activité (0 = pas de limite)
+** type: entier
+** valeurs: 0 .. 32 (valeur par défaut: 0)
+
+* *weechat.look.hotlist_names_level*
+** description: niveau pour l'affichage des noms dans la liste d'activité (combinaison de: 1=join/part, 2=message, 4=privé, 8=highlight, par exemple: 12=privé+highlight)
+** type: entier
+** valeurs: 1 .. 15 (valeur par défaut: 12)
+
+* *weechat.look.hotlist_short_names*
+** description: si défini, utilie des noms courts pour afficher les noms de tampons dans la hotlist (commence après le premier '.' dans le nom)
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.look.hotlist_sort*
+** description: type de tri pour la liste d'activité (group_time_asc (par défaut), group_time_desc, group_number_asc, group_number_desc, number_asc, number_desc)
+** type: entier
+** valeurs: group_time_asc, group_time_desc, group_number_asc, group_number_desc, number_asc, number_desc (valeur par défaut: group_time_asc)
+
+* *weechat.look.item_time_format*
+** description: format de date/heure pour l'objet de barre "time"
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "%H:%M")
+
+* *weechat.look.jump_current_to_previous_buffer*
+** description: sauter au tampon affiché précédemment lors du saut vers le numéro de tampon courant avec /buffer *N (où N est un numéro de tampon), pour facilement basculer à un autre tampon, puis revenir au tampon courant
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.look.jump_previous_buffer_when_closing*
+** description: sauter au tampon précédemment visité lors de la fermeture d'un tampon (si désactivé, alors le saut se fait vers le numéro de tampon - 1)
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.look.nickmode*
+** description: afficher le mode du pseudo ((half)op/voice) devant chaque utilisateur
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.look.nickmode_empty*
+** description: afficher un espace si le mode du pseudo n'est pas (half)op/voice
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *weechat.look.paste_max_lines*
+** description: nombre maximum de lignes pour la détection de collage sans demander à l'utilisateur (0 = désactiver cette fonctionnalité)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 3)
+
+* *weechat.look.prefix_action*
+** description: préfixe pour les messages d'action
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: " *")
+
+* *weechat.look.prefix_align*
+** description: alignement de préfixe (none, left, right (par défaut))
+** type: entier
+** valeurs: none, left, right (valeur par défaut: right)
+
+* *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)
+
+* *weechat.look.prefix_error*
+** description: préfixe pour les messages d'erreur
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "=!=")
+
+* *weechat.look.prefix_join*
+** description: préfixe pour les messages d'arrivée
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "-->")
+
+* *weechat.look.prefix_network*
+** description: préfixe pour les messages réseau
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "--")
+
+* *weechat.look.prefix_quit*
+** description: préfixe pour les messages de départ
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "<--")
+
+* *weechat.look.prefix_suffix*
+** description: chaîne affichée après le préfixe
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "|")
+
+* *weechat.look.read_marker*
+** description: utiliser un marqueur (ligne ou caractère) sur les tampons pour montrer la première ligne non lue
+** type: entier
+** valeurs: none, line, dotted-line, char (valeur par défaut: dotted-line)
+
+* *weechat.look.save_config_on_exit*
+** description: sauvegarder la configuration en quittant
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *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)
+
+* *weechat.look.scroll_amount*
+** description: nombre de lignes pour le défilement avec scroll_up et scroll_down
+** type: entier
+** valeurs: 1 .. 2147483647 (valeur par défaut: 3)
+
+* *weechat.look.scroll_page_percent*
+** description: 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)
+** type: entier
+** valeurs: 1 .. 100 (valeur par défaut: 100)
+
+* *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
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.network.gnutls_dh_prime_bitsmax_lines*
+** description: taille minimum en bits pour la poignée de main (handshake) utilisant un échange de clé Diffie Hellman
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 512)
+
+* *weechat.plugin.autoload*
+** description: liste des extensions à charger automatiquement au démarrage, "*" signifie toutes (séparées par des virgules, les noms peuvent être partiels, par exemple "perl" est ok pour "perl.so")
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "*")
+
+* *weechat.plugin.debug*
+** description: active les messages de debug par défaut pour toutes les extensions (option désactivée par défaut, ce qui est hautement recommandé)
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *weechat.plugin.extension*
+** description: extension par défaut des extensions (par example ".so" sous Linux ou ".dll" sous Microsoft Windows)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: ".so")
+
+* *weechat.plugin.path*
+** description: chemin de recherche des extensions ("%h" sera remplacé par le répertoire de base WeeChat, par défaut: "~/.weechat")
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "%h/plugins")
+
+* *weechat.plugin.save_config_on_unload*
+** description: sauvegarder les fichiers de configuration lors du déchargement des extensions
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.startup.command_after_plugins*
+** description: commande exécutée quand WeeChat démarre, après le chargement des extensions
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *weechat.startup.command_before_plugins*
+** description: commande exécutée quand WeeChat démarre, avant le chargement des extensions
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *weechat.startup.display_logo*
+** description: afficher le logo WeeChat au démarrage
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.startup.display_version*
+** description: afficher la version de WeeChat au démarrage
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *weechat.startup.weechat_slogan*
+** description: slogan WeeChat (si vide, le slogan ne sera pas utilisé)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "le client de discussion le plus geek !")
+
diff --git a/doc/fr/autogen/user/xfer_commands.txt b/doc/fr/autogen/user/xfer_commands.txt
new file mode 100644
index 000000000..c4c398559
--- /dev/null
+++ b/doc/fr/autogen/user/xfer_commands.txt
@@ -0,0 +1,11 @@
+&bull; *`/xfer`* `[list | listfull]`::
+
+........................................
+ contrôle xfer
+
+ list: liste les xfer
+ listfull: liste les xfer (verbeux)
+
+ Sans paramètre, cette commande ouvre le tampon avec la liste des xfer.
+........................................
+
diff --git a/doc/fr/autogen/user/xfer_options.txt b/doc/fr/autogen/user/xfer_options.txt
new file mode 100644
index 000000000..a52e1a50a
--- /dev/null
+++ b/doc/fr/autogen/user/xfer_options.txt
@@ -0,0 +1,125 @@
+* *xfer.color.status_aborted*
+** description: couleur du texte pour le statut "interrompu"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightred)
+
+* *xfer.color.status_active*
+** description: couleur du texte pour le statut "actif"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightblue)
+
+* *xfer.color.status_connecting*
+** description: couleur du texte pour le statut "connexion"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: yellow)
+
+* *xfer.color.status_done*
+** description: couleur du texte pour le statut "terminé"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightgreen)
+
+* *xfer.color.status_failed*
+** description: couleur du texte pour le statut "échoué"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightred)
+
+* *xfer.color.status_waiting*
+** description: couleur du texte pour le statut "en attente"
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: lightcyan)
+
+* *xfer.color.text*
+** description: couleur du texte
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: default)
+
+* *xfer.color.text_bg*
+** description: couleur du fond
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: default)
+
+* *xfer.color.text_selected*
+** description: couleur du texte pour la ligne xfer sélectionnée
+** type: couleur
+** valeurs: un nom de couleur (valeur par défaut: white)
+
+* *xfer.file.auto_accept_chats*
+** description: accepte automatiquement les demandes de discussion (à utiliser avec précaution !)
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *xfer.file.auto_accept_files*
+** description: accepte automatiquement les demandes d'envoi de fichiers (à utiliser avec précaution !)
+** type: booléen
+** valeurs: on, off (valeur par défaut: off)
+
+* *xfer.file.auto_rename*
+** description: renommer les fichiers reçus s'ils existent déjà (ajoute ".1", ".2", ...)
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *xfer.file.auto_resume*
+** description: continuer automatiquement les transferts de fichiers si la connexion avec l'hôte a été perdue
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *xfer.file.convert_spaces*
+** description: convertir les espaces en underscores lors d'envoi de fichiers
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *xfer.file.download_path*
+** description: chemin où écrire les fichiers reçus
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "%h/xfer")
+
+* *xfer.file.upload_path*
+** description: chemin pour lire les fichiers envoyés (quand aucun chemin n'est spécifié par l'utilisateur)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "~")
+
+* *xfer.file.use_nick_in_filename*
+** description: utiliser le pseudo distant comme préfixe dans le nom de fichier local lors de la réception d'un fichier
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *xfer.look.auto_open_buffer*
+** description: ouvrir automatiquement le tampon xfer lorsqu'un nouveau xfer est ajouté à la liste
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *xfer.look.progress_bar_size*
+** description: taille de la barre de progression, en caractères (si 0, la barre de progression est désactivée)
+** type: entier
+** valeurs: 0 .. 256 (valeur par défaut: 20)
+
+* *xfer.network.blocksize*
+** description: taille de bloc pour les paquets envoyés, en octets
+** type: entier
+** valeurs: 1024 .. 102400 (valeur par défaut: 65536)
+
+* *xfer.network.fast_send*
+** description: n'attend pas les accusés de réception lors de l'envoi de fichier
+** type: booléen
+** valeurs: on, off (valeur par défaut: on)
+
+* *xfer.network.own_ip*
+** description: adresse IP ou DNS utilisée pour envoyer les fichiers/discussions (si non renseigné, l'interface IP locale est utilisée)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *xfer.network.port_range*
+** description: restreint les fichiers/discussions sortants à utiliser des ports dans l'intervalle donné (pratique pour le NAT) (syntaxe: un port simple, par exemple 5000, un intervalle de ports, par exemple 5000-5015, si non renseigné tout port peut être utilisé)
+** type: chaîne
+** valeurs: toute chaîne (valeur par défaut: "")
+
+* *xfer.network.speed_limit*
+** description: limitation de vitesse pour l'envoi des fichiers, en kilo-octets par seconde (0 signifie pas de limite)
+** type: entier
+** valeurs: 0 .. 2147483647 (valeur par défaut: 0)
+
+* *xfer.network.timeout*
+** description: délai d'attente pour la requête xfer (en secondes)
+** type: entier
+** valeurs: 5 .. 2147483647 (valeur par défaut: 300)
+
diff --git a/doc/fr/autogen/weechat_commands.xml b/doc/fr/autogen/weechat_commands.xml
deleted file mode 100644
index 386e44364..000000000
--- a/doc/fr/autogen/weechat_commands.xml
+++ /dev/null
@@ -1,354 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/bar [add nombarre type[,cond1,cond2,...] position taille separateur objet1,objet2,...] | [default] | [del nombarre|-all] | [set nombarre option valeur] | [hide|show|toggle nombarre] | [scroll nombarre tampon valeur_scroll] | [list] | [listfull] | [listitems]</command>
-<programlisting>
-gestion des barres
-
- add: ajoute une nouvelle barre
- nombarre: nom de la barre (doit être unique)
- type: root: en dehors des fenêtres
- window: dans les fenêtres, avec condition(s) optionnelle(s) (voir ci-dessous)
- cond1,...: condition(s) pour afficher cette barre (seulement pour le type "window"):
- active: sur la fenêtre active
- inactive: sur les fenêtres inactives
- 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))
- default: créer les barres par défaut
- del: supprime une barre (ou toutes les barres avec -all)
- set: change la valeur d'une propriété de la barre
- option: option à modifier (pour la liste des options, voir /set weechat.bar.&lt;nombarre&gt;.*
- valeur: nouvelle valeur pour l'option
- hide: cache la barre
- show: montre une barre cachée
- toggle: cache/montre une barre
- scroll: défilement de la barre vers le haut/bas
- tampon: catégorie et nom du tampon ('*' signifie le tampon courant, vous devez utiliser '*' pour les barres de type root)
-valeur_scroll: valeur pour le défilement: 'x' ou 'y', suivi par '+', '-', 'b' (début) ou 'e' (fin), valeur (pour +/-), et un %% optionnel (pour faire défiler par %% de la largeur/hauteur, sinon la valeur est un nombre de caractères)
- list: liste toutes les barres
- listfull: liste toutes les barres (verbeux)
- listitems: liste tous les objets de barre
-
-Exemples:
- créer une barre avec l'heure, numéro + nom de tampon, et la complétion:
- /bar add mabarre root bottom 1 0 [time],buffer_number+:+buffer_name,completion
- cacher une barre:
- /bar hide mabarre
- faire défiler la liste des pseudos de 10 lignes vers le bas sur le tampon courant:
- /bar scroll nicklist * y+10
- faire défiler la liste des pseudos d'une page vers le haut sur le tampon #weechat:
- /bar scroll nicklist #weechat y-100%
- faire défiler la liste des pseudos à la fin sur le tampon courant:
- /bar scroll nicklist * ye
-</programlisting>
-
-<command>/buffer [clear [nombre | -all] | move nombre | close [n1[-n2]] | list | notify niveau | localvar | set propriété valeur | nombre | nom]</command>
-<programlisting>
-gestion des tampons
-
- clear: efface le contenu du tampon (-all pour tous les tampons, un numéro pour un tampon, ou rien pour le tampon courant)
- move: déplace le tampon dans la liste (peut être relatif, par exemple -1)
- close: ferme le tampon (nombre/intervalle optionnel)
- list: liste les tampons ouverts (pas de paramètre affiche cette liste)
- notify: définit le niveau de notification pour le tampon courant: ce niveau détermine si le buffer doit être ajouté à la hotlist ou pas:
- none: jamais
- highlight: pour les highlights seulement
- message: pour les messages d'utilisateurs + highlights
- all: pout tous les messages
- reset: réinitialise à valeur par défaut (all)
-localvar: affiche la liste des variables locales pour le tampon courant
- set: modifier une propriété du tampon courant
- nombre: saute au tampon qui a ce numéro, préfixe possible:
- '+': saut relatif, ajoute le numéro au courant,
- '-': saut relatif, soustrait le numéro au courant,
- '*': saut au numéro en utilisant l'option "jump_current_to_previous_buffer"
- nom: saute au tampon par nom (partiel)
-
-Exemples:
-effacer le tampon courant: /buffer clear
- effacer tous les tampons: /buffer clear -all
- déplacer le tampon: /buffer move 5
- fermer le tampon courant: /buffer close
- fermer les tampons 5 à 7: /buffer close 5-7
- aller sur #weechat: /buffer #weechat
- aller au tampon suivant: /buffer +1
-</programlisting>
-
-<command>/command extension commande</command>
-<programlisting>
-lancer explicitement une commande WeeChat ou d'une extension
-
-extension: nom de l'extension ('weechat' pour une commande interne WeeChat)
- commande: commande à exécuter (un '/' est automatiquement ajouté s'il n'est pas trouvé au début de la commande)
-</programlisting>
-
-<command>/debug [list | extension niveau | dump | buffer windows]</command>
-<programlisting>
-contrôle du debug pour le coeur/les extensions
-
-extension: nom de l'extension ("core" pour le coeur de WeeChat)
- niveau: niveau de debug pour l'extension
- dump: affiche les variables mémoire WeeChat dans le fichier log (les mêmes messages sont affichés lorsque WeeChat plante)
- buffer: affiche le contenu du tampon en valeurs hexadécimales dans le fichier log
- windows: affiche l'arbre des fenêtres&lt;
- texte: envoie le signal "debug" avec "texte" comme paramètre
-</programlisting>
-
-<command>/filter [list] | [enable|disable|toggle [nom]] | [add nom extension.tampon tags regex] | [del nom|-all]</command>
-<programlisting>
-filtre les messages dans les tampons, pour les cacher/afficher selon des tags ou expressions régulières
-
- list: liste tous les filtres
- enable: active les filtres (par défaut les filtres sont activés)
- disable: désactive les filtres
- toggle: active/désactive les filtres
- nom: nom de filtre
- add: ajoute un filtre
- del: supprime un filtre
- -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)
-
-La touche par défaut alt+'=' active/désactive le filtrage.
-
-Exemples:
- utiliser le filtre intelligent IRC pour les messages join/part/quit:
- /filter add irc_smart * irc_smart_filter *
- filtrer tous les messages IRC join/part/quit:
- /filter add joinquit * irc_join,irc_part,irc_quit *
- filtrer le pseudo "toto" sur le canal IRC #weechat:
- /filter add toto irc.freenode.#weechat * toto\t
- filtrer les lignes contenant le mot "spam":
- /filter add filtrespam * * spam
- filtrer les lignes contenant "weechat sucks" sur le canal IRC #weechat:
- /filter add sucks irc.freenode.#weechat * weechat sucks
-</programlisting>
-
-<command>/help [commande | option]</command>
-<programlisting>
-afficher l'aide sur les commandes et les options
-
-commande: nom d'une commande
- option: nom d'une option (utilisez /set pour voir la liste)
-</programlisting>
-
-<command>/history [clear | valeur]</command>
-<programlisting>
-affiche l'historique des commandes du tampon
-
-clear: effacer l'historique
-valeur: nombre d'entrées dans l'historique à afficher
-</programlisting>
-
-<command>/input return | complete_next | complete_previous | search_next | delete_previous_char | delete_next_char | delete_previous_word | delete_next_word | delete_beginning_of_line | delete_end_of_line | delete_line | clipboard_paste | transpose_chars | move_beginning_of_line | move_end_of_line | move_previous_char | move_next_char | move_previous_word | move_next_word | history_previous | history_next | history_global_previous | history_global_next | jump_smart | jump_last_buffer | jump_previously_visited_buffer | jump_next_visited_buffer | hotlist_clear | grab_key | scroll_unread | set_unread | set_unread_current_buffer | insert [args]</command>
-<programlisting>
-fonctions pour la ligne de commande
-
-Cette commande est utilisée par les associations de touches ou les extensions.
-</programlisting>
-
-<command>/key [bind touche [commande [args]]] | [unbind touche] | [reset -yes] | [missing]</command>
-<programlisting>
-associer/libérer des touches
-
- bind: associer une commande à une touche ou afficher la commande associée à la touche
- unbind: supprimer l'association à une touche
- reset: restaure les touches aux valeurs par défaut et supprime TOUTES les touches personnelles (utiliser avec précaution !)
-missing: ajoute les touches manquantes (en utilisant les touches par défaut)
-</programlisting>
-
-<command>/layout [[save | apply | reset] [buffers | windows]]</command>
-<programlisting>
-sauve/applique/réinitialise la disposition des tampons et fenêtres
-
- save: sauve la disposition courante
- apply: applique la disposition sauvegardée
- reset: supprime la disposition sauvegardée
-buffers: sauve/applique seulement pour les tampons (ordre des tampons)
-windows: sauve/applique seulement pour les fenêtres (le tampon affiché par chaque fenêtre)
-
-Sans paramètre, cette commande affiche la disposition sauvegardée.
-</programlisting>
-
-<command>/plugin [list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload [nom]] | [unload [nom]]</command>
-<programlisting>
-liste/charge/décharge des extensions
-
- list: lister les extensions chargées
-listfull: lister les extensions chargées (verbeux)
- load: charger une extension
-autoload: charger automatiquement les extensions dans un répertoire système ou utilisateur
- reload: recharger une extension (si pas de nom donné, décharger toutes les extensions, puis puis recharger automatiquement les extensions)
- unload: décharger une ou plusieurs exteneions
-
-Sans paramètre, cette commande liste les extensions chargées.
-</programlisting>
-
-<command>/proxy [add nomproxy type addresse port [utilisateur [motdepasse]]] | [del nomproxy|-all] | [set nomproxy option valeur] | [list]</command>
-<programlisting>
-gestion des proxies
-
- add: ajoute un nouveau proxy
- nomproxy: nom du proxy (doit être unique)
- type: http, socks4 ou socks5
- addresse: IP ou nom de machine
- port: port
- utilisateur: nom d'utilisateur (optionnel)
- motdepasse: mot de passe (optionnel)
- del: supprime un proxy (ou tous les proxies avec -all)
- set: change la valeur d'une propriété d'un proxy
- option: option à modifier (pour la liste des options, voir /set weechat.proxy.&lt;proxyname&gt;.*)
- valeur: nouvelle valeur pour l'option
- list: liste de tous les proxies
-
-Exemples:
- créer un proxy http, tournant en local, port 8888:
- /proxy add local http 127.0.0.1 8888
- créer un proxy http en utilisant le protocole IPv6:
- /proxy add local http 127.0.0.1 8888
- /proxy set local ipv6 on
- créer un proxy socks5 avec un utilisateur/mot de passe:
- /proxy add myproxy socks5 sample.host.org 3128 myuser mypass
- supprimer un proxy:
- /proxy del myproxy
-</programlisting>
-
-<command>/quit</command>
-<programlisting>
-quitter WeeChat
-</programlisting>
-
-<command>/reload [fichier [fichier...]]</command>
-<programlisting>
-recharger les fichiers de configuration depuis le disque
-
-fichier: fichier de configuration à recharger
-
-Sans paramètre, tous les fichiers (WeeChat et extensions) sont rechargés.
-</programlisting>
-
-<command>/save [fichier [fichier...]]</command>
-<programlisting>
-sauvegarder les fichiers de configuration sur disque
-
-fichier: fichier de configuration à sauvegarder
-
-Sans paramètre, tous les fichiers (WeeChat et extensions) sont sauvegardés.
-</programlisting>
-
-<command>/set [option [valeur]]</command>
-<programlisting>
-modifier des options de configuration
-
-option: nom d'une option
-valeur: nouvelle valeur pour l'option
-
-La nouvelle valeur peut être, selon le type de l'option:
- booléen: on, off ou toggle
- entier : nombre, ++nombre ou --nombre
- chaîne : toute chaîne ("" pour une chaîne vide)
- couleur: nom de couleur, ++nombre ou --nombre
-
-Pour tous les types, vous pouvez utiliser null pour supprimer la valeur de l'option (valeur non définie). Cela ne fonctionne qu'avec certaines options spéciales des extensions.
-</programlisting>
-
-<command>/unset [option]</command>
-<programlisting>
-supprimer/réinitialiser des options de configuration
-
-option: nom d'une option (peut commencer ou se terminer par "*" pour réinitialiser plusieurs options, à utiliser avec prudence !)
-
-Selon l'option, elle est réinitialisée (pour les options standards) ou supprimée (pour les options facultatives, comme les valeurs pour les serveurs).
-</programlisting>
-
-<command>/upgrade [chemin_vers_binaire]</command>
-<programlisting>
-mettre à jour WeeChat sans se déconnecter des serveurs
-
-chemin_vers_binaire: chemin vers le binaire WeeChat (par défaut le binaire courant)
-
-Cette commande lance à nouveau un binaire WeeChat, il doit donc avoir été compilé ou installé via un gestionnaire de paquet avant de lancer cette commande.
-</programlisting>
-
-<command>/uptime [-o]</command>
-<programlisting>
-montrer l'uptime de WeeChat
-
--o: envoyer l'uptime sur le tampon courant comme entrée
-</programlisting>
-
-<command>/version [-o]</command>
-<programlisting>
-afficher la version de WeeChat et la date de compilation
-
--o: envoyer la version sur le tampon courant comme entrée
-</programlisting>
-
-<command>/wait nombre[unité] commande</command>
-<programlisting>
-planifie l'exécution d'une commande dans le futur
-
- nombre: temps à attendre (nombre entier)
- unité: optionnelle, valeurs possibles:
- ms: millisecondes
- s: secondes (par défaut)
- m: minutes
- h: heures
-commande: commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')
-
-Note: la commande est exécutée sur le tampon où /wait a été exécuté (si le tampon n'est pas trouvé, alors la commande est exécutée sur le tampon WeeChat principal).
-
-Exemples:
- rejoindre le canal dans 10 sec: /wait 10 join #test
- passer absent dans 15 min: /wait 15m away -all I'm away
- dire 'bonjour' dans 2 min: /wait 2m bonjour
-</programlisting>
-
-<command>/window [list | -1 | +1 | b# | up | down | left | right | splith [pct] | splitv [ptc] | resize pct | merge [all] | page_up | page_down | refresh | scroll | scroll_up | scroll_down | scroll_top | scroll_bottom | scroll_previous_highlight | scroll_next_highlight | zoom]</command>
-<programlisting>
-gestion des fenêtres
-
- list: liste les fenêtres ouvertes (pas de paramètre affiche cette liste)
- -1: saute à la fenêtre précédente
- +1: saute à la fenêtre suivante
- b#: saute à la fenêtre affichant le tampon #
- up: saute à la fenêtre au dessus
- down: saute à la fenêtre au dessous
- left: saute à la fenêtre à gauche
- right: saute à la fenêtre à droite
- splith: éclate la fenêtre en deux horizontalement
- splitv: éclate la fenêtre en deux verticalement
- resize: redimensionne une fenêtre, la nouvelle taille est &lt;pct&gt; pourcentage de la fenêtre parent
- merge: fusionne la fenêtre avec une autre
- page_up: défilement d'une page vers le haut
- page_down: défilement d'une page vers le bas
- refresh: redessine l'écran
- scroll: défilement d'un nombre de lignes (+/-N) ou avec du temps: s=secondes, m=minutes, h=heures, d=jours, M=mois, y=année
- scroll_up: défilement de quelques lignes vers le haut
- scroll_down: défilement de quelques lignes vers le bas
- scroll_top: défilement jusqu'au début du tampon
-scroll_bottom: défilement jusqu'au bas du tampon
-scroll_previous_highlight: défilement jusqu'au highlight précédent
-scroll_next_highlight: défilement jusqu'au highlight suivant
- zoom: zoom sur la fenêtre
-
-Pour splith et splitv, pct est un pourcentage qui représente la taille de la nouvelle fenêtre, calculée par rapport à la taille de la fenêtre courante. Par exemple 25 signifie créer une fenêtre qui a pour taille: taille_courante / 4
-
-Exemples:
- sauter à la fenêtre affichant le tampon 1: /window b1
- défilement de 2 lignes vers le haut: /window scroll -2
- défilement de 2 jours vers le haut: /window scroll -2d
- défilement jusqu'au début du jour courant: /window scroll -d
-</programlisting>
-
diff --git a/doc/fr/autogen/weechat_options.xml b/doc/fr/autogen/weechat_options.xml
deleted file mode 100644
index c0928e1f0..000000000
--- a/doc/fr/autogen/weechat_options.xml
+++ /dev/null
@@ -1,1158 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>weechat.color.bar_more</command>: couleur du texte pour les '+' lors du défilement des barres
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightmagenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat</command>: couleur du texte pour la discussion
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: default)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_bg</command>: couleur du fond pour la discussion
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: default)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_buffer</command>: couleur du texte pour le nom des tampons
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: white)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_channel</command>: couleur du texte pour le nom des canaux
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: white)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_delimiters</command>: couleur du texte pour les délimiteurs
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: green)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_highlight</command>: couleur du texte pour le préfixe surligné (highlight)
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: yellow)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_highlight_bg</command>: couleur du fond pour le préfixe surligné (highlight)
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: magenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_host</command>: couleur du texte pour les noms d'hôtes
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: cyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick</command>: couleur du texte pour l'heure dans la fenêtre de discussion
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightcyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_color01</command>: couleur du texte n°1 pour le pseudo
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: cyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_color02</command>: couleur du texte n°2 pour le pseudo
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: magenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_color03</command>: couleur du texte n°3 pour le pseudo
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: green)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_color04</command>: couleur du texte n°4 le pseudo
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: brown)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_color05</command>: couleur du texte n°5 pour le pseudo
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightblue)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_color06</command>: couleur du texte n°6 pour le pseudo
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: default)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_color07</command>: couleur du texte n°7 pour le pseudo
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightcyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_color08</command>: couleur du texte n°8 pour le pseudo
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightmagenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_color09</command>: couleur du texte n°9 pour le pseudo
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightgreen)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_color10</command>: couleur du texte n°10 pour le pseudo
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: blue)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_other</command>: couleur du texte pour l'autre pseudo dans le tampon privée
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: cyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_nick_self</command>: couleur du texte pour le pseudo local dans la fenêtre de discussion
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: white)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_prefix_action</command>: couleur du texte pour le préfixe d'action
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: white)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_prefix_error</command>: couleur du texte pour le préfixe d'erreur
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: yellow)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_prefix_join</command>: couleur du texte pour le préfixe d'arrivée
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightgreen)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_prefix_more</command>: couleur du texte pour les '+' lorsque le préfixe est trop long
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightmagenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_prefix_network</command>: couleur du texte pour le préfixe réseau
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: magenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_prefix_quit</command>: couleur du texte pour le préfixe de départ
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightred)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_prefix_suffix</command>: couleur du texte pour le suffixe (après le préfixe)
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: green)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_read_marker</command>: couleur du texte pour le marqueur de données non lues
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: magenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_read_marker_bg</command>: couleur du fond pour le marqueur de données non lues
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: default)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_server</command>: couleur du texte pour le nom des serveurs
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: brown)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_text_found</command>: couleur du texte pour le marqueur sur les lignes où le texte demandé est trouvé
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: yellow)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_text_found_bg</command>: couleur du fond pour le marqueur sur les lignes où le texte demandé est trouvé
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightmagenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_time</command>: couleur du texte pour l'heure dans la fenêtre de discussion
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: default)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_time_delimiters</command>: couleur du texte pour les délimiteurs de l'heure
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: brown)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.chat_value</command>: couleur du texte pour les valeurs
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: cyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.input_actions</command>: couleur du texte pour les actions dans la ligne de saisie
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightgreen)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.input_nick</command>: couleur du texte pour le pseudo dans la ligne de saisie
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightcyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.input_text_not_found</command>: couleur du texte pour la recherche infructueuse de texte dans la ligne de saisie
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: red)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.nicklist_away</command>: couleur du texte pour les pseudos absents
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: cyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.nicklist_group</command>: couleur du texte pour les groupes dans la liste des pseudos
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: green)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.nicklist_more</command>: couleur du texte pour les '+' lors du défilement des pseudos dans la liste des pseudos
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightmagenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.nicklist_prefix1</command>: couleur du texte pour le préfixe n°1 de la liste des pseudos
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightgreen)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.nicklist_prefix2</command>: couleur du texte pour le préfixe n°2 de la liste des pseudos
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightmagenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.nicklist_prefix3</command>: couleur du texte pour le préfixe n°3 de la liste des pseudos
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: yellow)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.nicklist_prefix4</command>: couleur du texte pour le préfixe n°4 de la liste des pseudos
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: blue)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.nicklist_prefix5</command>: couleur du texte pour le préfixe n°5 de la liste des pseudos
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: brown)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.nicklist_separator</command>: couleur du texte pour le séparateur de la liste des pseudos
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: blue)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.separator</command>: couleur du fond pour les séparateurs de fenêtres (quand divisé)
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: blue)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.status_data_highlight</command>: couleur du texte pour un tampon avec un highlight (barre de statut)
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightmagenta)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.status_data_msg</command>: couleur du texte pour un tampon avec de nouveaux messages (barre de statut)
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: yellow)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.status_data_other</command>: couleur du texte pour un tampon avec des nouvelles données (pas des messages) (barre de statut)
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: default)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.status_data_private</command>: couleur du texte pour un tampon avec un message privé (barre de statut)
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightgreen)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.status_filter</command>: couleur du texte pour l'indicateur de filtrage dans la barre de statut
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: green)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.status_more</command>: couleur du texte pour un tampon avec des nouvelles données (barre de statut)
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: yellow)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.status_name</command>: couleur du texte pour le nom du tampon courant dans la barre de statut
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: white)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.color.status_number</command>: couleur du texte pour le numéro du tampon courant dans la barre de statut
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: yellow)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.completion.default_template</command>: modèle de complétion par défaut (merci de consulter la documentation pour les codes et valeurs du modèle)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '%(nicks)|%(irc_channels)')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.completion.nick_add_space</command>: ajouter un espace après la complétion du pseudo (quand le pseudo n'est pas le premier mot sur la ligne de commande)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.completion.nick_completor</command>: chaîne affichée après la complétion des pseudos
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: ':')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.completion.nick_first_only</command>: compléter seulement avec le premier pseudo trouvé
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.completion.nick_ignore_chars</command>: caractères à ignorer pour la complétion des pseudos
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '[]-^')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.completion.partial_completion_alert</command>: alterte de l'utilisateur lorsqu'une complétion partielle survient
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.completion.partial_completion_command</command>: complète partiellement les noms de commandes (stoppe quand plusieurs commandes trouvées commencent par les mêmes lettres)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.completion.partial_completion_command_arg</command>: complète partiellement les paramètres de commande (stoppe quand plusieurs paramètres trouvés commencent par les mêmes lettres)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.completion.partial_completion_count</command>: afficher le compteur pour chaque complétion partielle dans l'objet de barre
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.completion.partial_completion_other</command>: complète partiellement en dehors des commandes (stoppe quand plusieurs mots trouvés commencent par les mêmes lettres)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.history.display_default</command>: nombre maximum de commandes à afficher par défaut dans le listing d'historique (0 = sans limite)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 5)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.history.max_commands</command>: nombre maximum de commandes utilisateur dans l'historique (0 = sans limite)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 100)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.history.max_lines</command>: nombre maximum de lignes dans l'historique (0 = sans limite)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 4096)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.history.max_visited_buffers</command>: nombre maximum de tampons visités à garder en mémoire
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 1000 (valeur par défaut: 50)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.buffer_notify_default</command>: niveau de notification par défaut pour les tampons (utilisé pour dire à WeeChat si le tampon doit être affiché dans la hotlist ou non, selon l'importance du message)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: none, highlight, message, all (valeur par défaut: all)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.buffer_time_format</command>: format de date/heure pour les tampons
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '%H:%M:%S')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.color_nicks_number</command>: nombre de couleurs à utiliser pour les couleurs des pseudos
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 1 .. 10 (valeur par défaut: 10)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.color_real_white</command>: si activé, utilise la vraie couleur blanche, désactivé par défaut pour les terminaux avec un fond blanc (si vous n'utilisez jamais de fond blanc, vous devriez activer cette option pour voir du vrai blanc au lieu de la couleur d'avant plan par défaut du terminal)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.day_change</command>: affiche un message quand le jour change
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.day_change_time_format</command>: format de date pour la date affichée quand le jour a changé
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '%a, %d %b %Y')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.highlight</command>: liste des mots pour la notification (séparés par des virgules, la comparaison ne tient pas compte de la casse, les mots peuvent commencer ou se terminer par "*" pour une comparaison partielle)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.hotlist_names_count</command>: nombre maximum de noms dans la liste d'activité (0 = pas de nom affiché, seulement les numéros de tampons)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 32 (valeur par défaut: 3)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.hotlist_names_length</command>: nombre maximum des noms dans la liste d'activité (0 = pas de limite)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 32 (valeur par défaut: 0)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.hotlist_names_level</command>: niveau pour l'affichage des noms dans la liste d'activité (combinaison de: 1=join/part, 2=message, 4=privé, 8=highlight, par exemple: 12=privé+highlight)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 1 .. 15 (valeur par défaut: 12)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.hotlist_short_names</command>: si défini, utilie des noms courts pour afficher les noms de tampons dans la hotlist (commence après le premier '.' dans le nom)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.hotlist_sort</command>: type de tri pour la liste d'activité (group_time_asc (par défaut), group_time_desc, group_number_asc, group_number_desc, number_asc, number_desc)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: group_time_asc, group_time_desc, group_number_asc, group_number_desc, number_asc, number_desc (valeur par défaut: group_time_asc)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.item_time_format</command>: format de date/heure pour l'objet de barre "time"
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '%H:%M')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.jump_current_to_previous_buffer</command>: sauter au tampon affiché précédemment lors du saut vers le numéro de tampon courant avec /buffer *N (où N est un numéro de tampon), pour facilement basculer à un autre tampon, puis revenir au tampon courant
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.jump_previous_buffer_when_closing</command>: sauter au tampon précédemment visité lors de la fermeture d'un tampon (si désactivé, alors le saut se fait vers le numéro de tampon - 1)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.nickmode</command>: afficher le mode du pseudo ((half)op/voice) devant chaque utilisateur
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.nickmode_empty</command>: afficher un espace si le mode du pseudo n'est pas (half)op/voice
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.paste_max_lines</command>: nombre maximum de lignes pour la détection de collage sans demander à l'utilisateur (0 = désactiver cette fonctionnalité)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 3)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.prefix_action</command>: préfixe pour les messages d'action
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: ' *')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.prefix_align</command>: alignement de préfixe (none, left, right (par défaut))
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: none, left, right (valeur par défaut: right)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.prefix_align_max</command>: taille maximum pour le préfixe (0 = pas de taille maximum)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 64 (valeur par défaut: 0)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.prefix_error</command>: préfixe pour les messages d'erreur
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '=!=')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.prefix_join</command>: préfixe pour les messages d'arrivée
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '--&gt;')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.prefix_network</command>: préfixe pour les messages réseau
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '--')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.prefix_quit</command>: préfixe pour les messages de départ
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '&lt;--')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.prefix_suffix</command>: chaîne affichée après le préfixe
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '|')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.read_marker</command>: utiliser un marqueur (ligne ou caractère) sur les tampons pour montrer la première ligne non lue
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: none, line, dotted-line, char (valeur par défaut: dotted-line)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.save_config_on_exit</command>: sauvegarder la configuration en quittant
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.save_layout_on_exit</command>: sauve la disposition en quittant (tampons, fenêtres, ou les deux)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: none, buffers, windows, all (valeur par défaut: all)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.scroll_amount</command>: nombre de lignes pour le défilement avec scroll_up et scroll_down
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 1 .. 2147483647 (valeur par défaut: 3)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.scroll_page_percent</command>: 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)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 1 .. 100 (valeur par défaut: 100)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.look.set_title</command>: définit le titre de la fenêtre (terminal pour l'interface Curses) avec le nom et la version
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.network.gnutls_dh_prime_bitsmax_lines</command>: taille minimum en bits pour la poignée de main (handshake) utilisant un échange de clé Diffie Hellman
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 512)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.plugin.autoload</command>: liste des extensions à charger automatiquement au démarrage, "*" signifie toutes (séparées par des virgules, les noms peuvent être partiels, par exemple "perl" est ok pour "perl.so")
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '*')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.plugin.debug</command>: active les messages de debug par défaut pour toutes les extensions (option désactivée par défaut, ce qui est hautement recommandé)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.plugin.extension</command>: extension par défaut des extensions (par example ".so" sous Linux ou ".dll" sous Microsoft Windows)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '.so')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.plugin.path</command>: chemin de recherche des extensions ('%h' sera remplacé par le répertoire de base WeeChat, par défaut: ~/.weechat)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '%h/plugins')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.plugin.save_config_on_unload</command>: sauvegarder les fichiers de configuration lors du déchargement des extensions
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.startup.command_after_plugins</command>: commande exécutée quand WeeChat démarre, après le chargement des extensions
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.startup.command_before_plugins</command>: commande exécutée quand WeeChat démarre, avant le chargement des extensions
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.startup.display_logo</command>: afficher le logo WeeChat au démarrage
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.startup.display_version</command>: afficher la version de WeeChat au démarrage
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>weechat.startup.weechat_slogan</command>: slogan WeeChat (si vide, le slogan ne sera pas utilisé)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: 'le client de discussion le plus geek !')</para>
- </listitem>
-</itemizedlist>
-
diff --git a/doc/fr/autogen/xfer_commands.xml b/doc/fr/autogen/xfer_commands.xml
deleted file mode 100644
index aecee776e..000000000
--- a/doc/fr/autogen/xfer_commands.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>/xfer [list | listfull]</command>
-<programlisting>
-contrôle xfer
-
- list: liste les xfer
-listfull: liste les xfer (verbeux)
-
-Sans paramètre, cette commande ouvre le tampon avec la liste des xfer.
-</programlisting>
-
diff --git a/doc/fr/autogen/xfer_options.xml b/doc/fr/autogen/xfer_options.xml
deleted file mode 100644
index b097a7ef5..000000000
--- a/doc/fr/autogen/xfer_options.xml
+++ /dev/null
@@ -1,258 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ********* WARNING! *********
-
- This file is autogenerated with docgen.pl script. *** DO NOT EDIT! ***
- docgen.pl builds XML doc files to include in many languages
--->
-
-<command>xfer.color.status_aborted</command>: couleur du texte pour le statut "interrompu"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightred)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.color.status_active</command>: couleur du texte pour le statut "actif"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightblue)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.color.status_connecting</command>: couleur du texte pour le statut "connexion"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: yellow)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.color.status_done</command>: couleur du texte pour le statut "terminé"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightgreen)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.color.status_failed</command>: couleur du texte pour le statut "échoué"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightred)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.color.status_waiting</command>: couleur du texte pour le statut "en attente"
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: lightcyan)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.color.text</command>: couleur du texte
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: default)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.color.text_bg</command>: couleur du fond
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: default)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.color.text_selected</command>: couleur du texte pour la ligne xfer sélectionnée
-<itemizedlist>
- <listitem>
- <para>type: couleur</para>
- </listitem>
- <listitem>
- <para>valeurs: un nom de couleur (valeur par défaut: white)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.file.auto_accept_chats</command>: accepte automatiquement les demandes de discussion (à utiliser avec précaution !)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.file.auto_accept_files</command>: accepte automatiquement les demandes d'envoi de fichiers (à utiliser avec précaution !)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: off)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.file.auto_rename</command>: renommer les fichiers reçus s'ils existent déjà (ajoute '.1', '.2', ...)
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.file.auto_resume</command>: continuer automatiquement les transferts de fichiers si la connexion avec l'hôte a été perdue
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.file.convert_spaces</command>: convertir les espaces en underscores lors d'envoi de fichiers
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.file.download_path</command>: chemin où écrire les fichiers reçus
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '%h/xfer')</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.file.upload_path</command>: chemin pour lire les fichiers envoyés (quand aucun chemin n'est spécifié par l'utilisateur)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '~')</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.file.use_nick_in_filename</command>: utiliser le pseudo distant comme préfixe dans le nom de fichier local lors de la réception d'un fichier
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.look.auto_open_buffer</command>: ouvrir automatiquement le tampon xfer lorsqu'un nouveau xfer est ajouté à la liste
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.look.progress_bar_size</command>: taille de la barre de progression, en caractères (si 0, la barre de progression est désactivée)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 256 (valeur par défaut: 20)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.network.blocksize</command>: taille de bloc pour les paquets envoyés, en octets
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 1024 .. 102400 (valeur par défaut: 65536)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.network.fast_send</command>: n'attend pas les accusés de réception lors de l'envoi de fichier
-<itemizedlist>
- <listitem>
- <para>type: booléen</para>
- </listitem>
- <listitem>
- <para>valeurs: on, off (valeur par défaut: on)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.network.own_ip</command>: adresse IP ou DNS utilisée pour envoyer les fichiers/discussions (si non renseigné, l'interface IP locale est utilisée)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.network.port_range</command>: restreint les fichiers/discussions sortants à utiliser des ports dans l'intervalle donné (pratique pour le NAT) (syntaxe: un port simple, par exemple 5000, un intervalle de ports, par exemple 5000-5015, si non renseigné tout port peut être utilisé)
-<itemizedlist>
- <listitem>
- <para>type: chaîne</para>
- </listitem>
- <listitem>
- <para>valeurs: toute chaîne (valeur par défaut: '')</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.network.speed_limit</command>: limitation de vitesse pour l'envoi des fichiers, en kilo-octets par seconde (0 signifie pas de limite)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 0 .. 2147483647 (valeur par défaut: 0)</para>
- </listitem>
-</itemizedlist>
-
-<command>xfer.network.timeout</command>: délai d'attente pour la requête xfer (en secondes)
-<itemizedlist>
- <listitem>
- <para>type: entier</para>
- </listitem>
- <listitem>
- <para>valeurs: 5 .. 2147483647 (valeur par défaut: 300)</para>
- </listitem>
-</itemizedlist>
-
diff --git a/doc/fr/dev/plugin_api.fr.xml b/doc/fr/dev/plugin_api.fr.xml
deleted file mode 100644
index 9ccfa416e..000000000
--- a/doc/fr/dev/plugin_api.fr.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<chapter id="chapPluginAPI">
- <title>API extension</title>
-
- &plugin_c_api.fr.xml;
-
- &plugin_script_api.fr.xml;
-
-</chapter>
diff --git a/doc/fr/dev/plugin_c_api.fr.xml b/doc/fr/dev/plugin_c_api.fr.xml
deleted file mode 100644
index 4565113e4..000000000
--- a/doc/fr/dev/plugin_c_api.fr.xml
+++ /dev/null
@@ -1,10497 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secPluginCApi">
- <!-- TRANSLATION NEEDED -->
- <title>C plugin API</title>
-
- <!-- =============================[ plugins ]============================ -->
-
- <section id="secPluginCApi_plugins">
- <title>Plugins</title>
-
- <para>
- Functions to get infos about plugins.
- </para>
-
- <section id="secPluginCApi_weechat_plugin_get_name">
- <title>weechat_plugin_get_name</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_plugin_get_name (struct t_weechat_plugin *plugin);
-</programlisting>
- </para>
- <para>
- Get plugin name (return "core" for WeeChat - NULL pointer).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>plugin</option>: plugin pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>const char *name = weechat_plugin_get_name (plugin);</screen>
- </para>
- </section>
-
- </section>
-
- <!-- =============================[ strings ]============================ -->
-
- <section id="secPluginCApi_strings">
- <title>Strings</title>
-
- <para>
- Many string functions below are already available thru standard C
- functions, but it's recommended to use functions in this API because
- they are ok with UTF-8 and locale.
- </para>
-
- <section id="secPluginCApi_weechat_charset_set">
- <title>weechat_charset_set</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_charset_set (const char *charset);
-</programlisting>
- </para>
- <para>
- Set new plugin charset.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>charset</option>: new charset to use
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>weechat_charset_set (plugin, "iso-8859-1");</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_iconv_to_internal">
- <title>weechat_iconv_to_internal</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_iconv_to_internal (const char *charset, const char *string);
-</programlisting>
- </para>
- <para>
- Convert string to WeeChat internal charset (UTF-8).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>charset</option>: charset to convert
- </para>
- </listitem>
- <listitem>
- <para>
- <option>string</option>: string to convert
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: converted string.
- </para>
- <note>
- <para>
- Result has to be free by a call to "free" after use.
- </para>
- </note>
- <para>
- Example:
- <screen>char *str = weechat_iconv_to_internal (plugin, "iso-8859-1", "iso string: é à");</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_iconv_from_internal">
- <title>weechat_iconv_from_internal</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_iconv_from_internal (const char *charset, const char *string);
-</programlisting>
- </para>
- <para>
- Convert string from internal WeeChat charset (UTF-8) to another.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>charset</option>: target charset
- </para>
- </listitem>
- <listitem>
- <para>
- <option>string</option>: string to convert
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: converted string.
- </para>
- <note>
- <para>
- Result has to be free by a call to "free" after use.
- </para>
- </note>
- <para>
- Example:
- <screen>char *str = weechat_iconv_from_internal ("iso-8859-1", "utf-8 string: é à");</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_gettext">
- <title>weechat_gettext</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_gettext (const char *string);
-</programlisting>
- </para>
- <para>
- Return translated string (depends on local language).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string to translate
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: translated string.
- </para>
- <para>
- Example:
- <screen>char *str = weechat_gettext ("hello !");</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_ngettext">
- <title>weechat_ngettext</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_ngettext (const char *string, const char *plural, int count);
-</programlisting>
- </para>
- <para>
- Return translated string, using single or plural form, according to
- count.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>single</option>: string to translate (single form)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>plural</option>: string to translate (plural form)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>count</option>: used to choose between single and plural
- form
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: translated string.
- </para>
- <para>
- Example:
- <screen>char *str = weechat_ngettext ("file", "files", num_files);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_strndup">
- <title>weechat_strndup</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_strndup (const char *string, int length);
-</programlisting>
- </para>
- <para>
- Return duplicated string, with max "length" chars.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string to duplicate
- </para>
- </listitem>
- <listitem>
- <para>
- <option>length</option>: max chars to duplicate
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: duplicated string.
- </para>
- <note>
- <para>
- Result has to be free by a call to "free" after use.
- </para>
- </note>
- <para>
- Example:
- <screen>char *str = weechat_strndup ("abcdef", 3); /* result: "abc" */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_tolower">
- <title>weechat_string_tolower</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_string_tolower (const char *string);
-</programlisting>
- </para>
- <para>
- Convert UTF-8 string to lower case.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string to convert
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: none.
- </para>
- <para>
- Example:
- <screen>weechat_string_tolower ("AbCdEé"); /* result: "abcdeé" */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_toupper">
- <title>weechat_string_toupper</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_string_toupper (const char *string);
-</programlisting>
- </para>
- <para>
- Convert UTF-8 string to upper case.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string to convert
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: none.
- </para>
- <para>
- Example:
- <screen>weechat_string_toupper ("AbCdEé"); /* result: "ABCDEé" */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_strcasecmp">
- <title>weechat_strcasecmp</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_strcasecmp (const char *string1, const char *string2);
-</programlisting>
- </para>
- <para>
- Locale and case independent string comparison.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string1</option>: first string for comparison
- </para>
- </listitem>
- <listitem>
- <para>
- <option>string2</option>: second string for comparison
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: difference between two strings: negative if
- string1 &lt; string2, zero if string1 == string2, positive if
- string1 &gt; string2
- </para>
- <para>
- Example:
- <screen>int diff = weechat_strcasecmp ("aaa", "CCC"); /* == -2 */ </screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_strncasecmp">
- <title>weechat_strncasecmp</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_strncasecmp (const char *string1, const char *string2, int max);
-</programlisting>
- </para>
- <para>
- Locale and case independent string comparison, for "max" chars.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string1</option>: first string for comparison
- </para>
- </listitem>
- <listitem>
- <para>
- <option>string2</option>: second string for comparison
- </para>
- </listitem>
- <listitem>
- <para>
- <option>max</option>: max number of chars for comparison
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: difference between two strings: negative if
- string1 &lt; string2, zero if string1 == string2, positive if
- string1 &gt; string2
- </para>
- <para>
- Example:
- <screen>int diff = weechat_strncasecmp ("aaa", "CCC", 2); /* == -2 */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_strcmp_ignore_chars">
- <title>weechat_strcmp_ignore_chars</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_strcmp_ignore_chars (
- const char *string1,
- const char *string2,
- const char *chars_ignored,
- int case_sensitive);
-</programlisting>
- </para>
- <para>
- Locale (and optionally case independent) string comparison, ignoring
- some chars.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string1</option>: first string for comparison
- </para>
- </listitem>
- <listitem>
- <para>
- <option>string2</option>: second string for comparison
- </para>
- </listitem>
- <listitem>
- <para>
- <option>chars_ignored</option>: string with chars to ignore
- </para>
- </listitem>
- <listitem>
- <para>
- <option>case_sensitive</option>: 1 for case sensitive comparison,
- 0 otherwise
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: difference between two strings: negative if
- string1 &lt; string2, zero if string1 == string2, positive if
- string1 &gt; string2
- </para>
- <para>
- Example:
- <screen>int diff = weechat_strcmp_ignore_chars ("a-b", "--a-e", "-", 1); /* == -3 */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_strcasestr">
- <title>weechat_strcasestr</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_strcasestr (const char *string, const char *search);
-</programlisting>
- </para>
- <para>
- Locale and case independent string search.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>search</option>: string to search in "string"
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to string found, or NULL if not found
- </para>
- <para>
- Example:
- <screen>char *pos = weechat_strcasestr ("aBcDeF", "de"); /* result: pointer to "DeF" */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_match">
- <title>weechat_string_match</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_string_match (
- const char *string,
- const char *mask,
- int case_sensitive);
-</programlisting>
- </para>
- <para>
- Check if a string matches a mask. Mask can begin or end with "*" (no
- other "*" are allowed inside mask).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>mask</option>: mask
- </para>
- </listitem>
- <listitem>
- <para>
- <option>case_sensitive</option>: 1 for case sensitive search,
- otherwise 0
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if string matches mask, otherwise 0.
- </para>
- <para>
- Examples:
-<screen>
-int match1 = weechat_string_match ("abcdef", "abc*", 0); /* == 1 */
-int match2 = weechat_string_match ("abcdef", "*dd*", 0); /* == 0 */
-int match3 = weechat_string_match ("abcdef", "*def", 0); /* == 1 */
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_replace">
- <title>weechat_string_replace</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_string_replace (const char *string, const char *search,
- const char *replace);
-</programlisting>
- </para>
- <para>
- Replace "search" string by new one in a string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>search</option>: string to replace
- </para>
- </listitem>
- <listitem>
- <para>
- <option>replace</option>: replacement for "search" string
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string with "search" replaced by "replace".
- </para>
- <note>
- <para>
- Result has to be free by a call to "free" after use.
- </para>
- </note>
- <para>
- Example:
- <screen>char *str = weechat_string_replace ("test", "s", "x"); /* result: "text" */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_remove_quotes">
- <title>weechat_string_remove_quotes</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_string_remove_quotes (const char *string, const char *quotes);
-</programlisting>
- </para>
- <para>
- Remove quotes at beginning/end of string (ignore spaces if there are
- before first quote or after last quote).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>quotes</option>: string with list of quotes
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string without quotes at beginning/end.
- </para>
- <note>
- <para>
- Result has to be free by a call to "free" after use.
- </para>
- </note>
- <para>
- Example:
- <screen>char *str = weechat_string_remove_quotes (string, " 'abc' ", "'"); /* result: "abc" */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_strip">
- <title>weechat_string_strip</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_string_strip (
- const char *string,
- int left,
- int right,
- const char *chars);
-</programlisting>
- </para>
- <para>
- Strip chars at beginning and/or end of string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>left</option>: strip left chars if different from 0
- </para>
- </listitem>
- <listitem>
- <para>
- <option>right</option>: strip right chars if different from 0
- </para>
- </listitem>
- <listitem>
- <para>
- <option>chars</option>: string with chars to strip
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: stripped string.
- </para>
- <note>
- <para>
- Result has to be free by a call to "free" after use.
- </para>
- </note>
- <para>
- Example:
-<screen>
-char *str = weechat_string_strip (string, " ", 0, 1); /* remove spaces at end of string */
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_has_highlight">
- <title>weechat_string_has_highlight</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_string_has_highlight (
- const char *string,
- const char highlight_words);
-</programlisting>
- </para>
- <para>
- Check if a string has highlights, using list of highlight words.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>highlight_words</option>: list of highlight words,
- separated by comma
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if string has one or more highlights, 0 otherwise.
- </para>
- <para>
- Example:
- <screen>if (weechat_string_has_highlight (string, "word1,word2")) ...</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_mask_to_regex">
- <title>weechat_string_mask_to_regex</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_string_mask_to_regex (const char *mask);
-</programlisting>
- </para>
- <para>
- Return a regex, built with a mask, where only special char is "*".
- All special chars for regex are escaped.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>mask</option>: mask
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: regex.
- </para>
- <para>
- Example:
- <screen>char *regex = weechat_string_mask_to_regex ("test*mask");</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_explode">
- <title>weechat_string_explode</title>
-
- <para>
- Prototype:
-<programlisting>
-char **weechat_string_explode (
- const char *string,
- const char *separators, int keep_eol,
- int num_items_max, int *num_items);
-</programlisting>
- </para>
- <para>
- Explode a string according to one or more delimiter(s).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string to explode
- </para>
- </listitem>
- <listitem>
- <para>
- <option>separators</option>: delimiters used for explosion
- </para>
- </listitem>
- <listitem>
- <para>
- <option>keep_eol</option>: if different from 0, then each
- argument will contain all string until end of line (see example
- below)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>num_items_max</option>: maximum number of items
- created (0 = no limit)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>num_items</option>: pointer to int which will
- contain number of items created
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: array of strings, NULL if problem.
- </para>
- <note>
- <para>
- Result has to be free by a call to "weechat_string_free_exploded"
- after use.
- </para>
- </note>
- <para>
- Examples:
-<screen>
-char **argv;
-int argc;
-argv = weechat_string_explode ("abc de fghi", " ", 0, 0, &amp;argc);
-/* result: argv[0] == "abc"
- argv[1] == "de"
- argv[2] == "fghi"
- argv[3] == NULL
- argc == 3
-*/
-weechat_string_free_exploded (argv);
-
-argv = weechat_string_explode ("abc de fghi", " ", 1, 0, &amp;argc);
-/* result: argv[0] == "abc de fghi"
- argv[1] == "de fghi"
- argv[2] == "fghi"
- argv[3] == NULL
- argc == 3
-*/
-weechat_string_free_exploded (argv);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_free_exploded">
- <title>weechat_string_free_exploded</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_string_free_exploded (char **exploded_string);
-</programlisting>
- </para>
- <para>
- Free memory used by a string explosion.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>exploded_string</option>: string exploded by
- "weechat_string_explode" function
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: none.
- </para>
- <para>
- Example:
-<screen>
-char *argv;
-int argc;
-argv = weechat_string_explode (string, " ", 0, 0, &amp;argc);
-...
-weechat_string_free_exploded (, argv);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_build_with_exploded">
- <title>weechat_string_build_with_exploded</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_string_build_with_exploded (
- char **exploded_string,
- const char *separator);
-</programlisting>
- </para>
- <para>
- Build a string with exploded string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>exploded_string</option>: string exploded by
- "weechat_string_explode" function
- </para>
- </listitem>
- <listitem>
- <para>
- <option>separator</option>: string used to separate strings
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string built with exploded string.
- </para>
- <note>
- <para>
- Result has to be free by a call to "free" after use.
- </para>
- </note>
- <para>
- Example:
-<screen>
-char **argv;
-int argc;
-argv = weechat_string_explode ("abc def ghi", " ", 0, 0, &amp;argc);
-char *string = weechat_string_build_with_exploded (argv, ";");
-/* string == "abc;def;ghi" */
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_split_command">
- <title>weechat_string_split_command</title>
-
- <para>
- Prototype:
-<programlisting>
-char **weechat_string_split_command (const char *command, char separator);
-</programlisting>
- </para>
- <para>
- Split a list of commands separated by 'separator' (which can be escaped
- by '\' in string).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>command</option>: command to split
- </para>
- </listitem>
- <listitem>
- <para>
- <option>separator</option>: separator
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: array of strings, NULL if problem.
- </para>
- <note>
- <para>
- Result has to be free by a call to
- "weechat_string_free_split_command" after use.
- </para>
- </note>
- <para>
- Example:
- <screen>char **argv = weechat_string_split_command ("/command1;/command2", ';');</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_split_command">
- <title>weechat_string_free_split_command</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_string_free_split_command (char **split_command);
-</programlisting>
- </para>
- <para>
- Free memory used by a split command.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>split_command</option>: command split by
- "weechat_string_split_commaand" function
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: none.
- </para>
- <para>
- Example:
-<screen>
-char **argv = weechat_string_split_command ("/command1;/command2", ';');
-...
-weechat_string_free_split_command (argv);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_format_size">
- <title>weechat_string_format_size</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_string_format_size (unsigned long size);
-</programlisting>
- </para>
- <para>
- Build a string with formatted size and translated unit.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>size</option>: size
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string with formatted size and translated unit.
- </para>
- <note>
- <para>
- Result has to be free by a call to "free" after use.
- </para>
- </note>
- <para>
- Example:
-<screen>
-char *str = weechat_string_format_size (0); /* str == "0 byte" (english locale) */
-if (str)
- free (str);
-char *str = weechat_string_format_size (200); /* str == "200 bytes" (english locale) */
-if (str)
- free (str);
-char *str = weechat_string_format_size (1536); /* str == "1.5 KB" (english locale) */
-if (str)
- free (str);
-char *str = weechat_string_format_size (2097152); /* str == "2 MB" (english locale) */
-if (str)
- free (str);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_string_remove_color">
- <title>weechat_string_remove_color</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_string_remove_color (const char *string, const char *replacement);
-</programlisting>
- </para>
- <para>
- Remove WeeChat colors from a string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>replacement</option>: if not NULL and not empty, WeeChat
- color codes are replaced by first char of this string, otherwise
- WeeChat color codes and following chars (if related to color) are
- removed from string
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string without color.
- </para>
- <note>
- <para>
- Result has to be free by a call to "free" after use.
- </para>
- </note>
- <para>
- Example:
-<screen>
-char *str1 = weechat_string_remove_color (my_string1, NULL); /* remove colors and related chars */
-char *str2 = weechat_string_remove_color (my_string2, "?"); /* replace color codes by "?" */
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ==============================[ UTF-8 ]============================= -->
-
- <section id="secPluginCApi_utf8">
- <title>UTF-8</title>
-
- <para>
- Some UTF-8 string functions.
- </para>
-
- <section id="secPluginCApi_weechat_utf8_has_8bits">
- <title>weechat_utf8_has_8bits</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_utf8_has_8bits (const char *string);
-</programlisting>
- </para>
- <para>
- Check if a string has 8-bits chars.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if string has 8-buts chars, 0 if only 7-bits chars.
- </para>
- <para>
- Example:
- <screen>if (weechat_utf8_has_8bits (string)) ...</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_is_valid">
- <title>weechat_utf8_is_valid</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_utf8_is_valid (const char *string, char **error);
-</programlisting>
- </para>
- <para>
- Check if a string is UTF-8 valid.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>error</option>: if not NULL, it is set with first non
- valid UTF-8 char in string, if any
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if UTF-8 string is valid, 0 otherwise.
- </para>
- <para>
- Example:
-<screen>
-char *error;
-if (weechat_utf8_is_valid (string, &amp;error)) ...
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_normalize">
- <title>weechat_utf8_normalize</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_utf8_normalize (const char *string, char replacement);
-</programlisting>
- </para>
- <para>
- Normalize UTF-8 string: remove non UTF-8 chars and replace them by a
- char
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>replacement</option>: replacement char for non UTF-8 chars
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: none.
- </para>
- <para>
- Example:
- <screen>weechat_utf8_normalize (string, '?');</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_prev_char">
- <title>weechat_utf8_prev_char</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_utf8_prev_char (const char *string_start, const char *string);
-</programlisting>
- </para>
- <para>
- Return previous UTF-8 char in a string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string_start</option>: start of string (function will not
- return a char before this pointer)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>string</option>: pointer to string (must be >=
- string_start)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to previous UTF-8 char, NULL if not found
- (start of string reached)
- </para>
- <para>
- Example:
- <screen>char *prev_char = weechat_utf8_prev_char (string, ptr_in_string);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_next_char">
- <title>weechat_utf8_next_char</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_utf8_next_char (const char *string);
-</programlisting>
- </para>
- <para>
- Return next UTF-8 char in a string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to next UTF-8 char, NULL if not found
- (end of string reached)
- </para>
- <para>
- Example:
- <screen>char *next_char = weechat_utf8_next_char (string);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_char_size">
- <title>weechat_utf8_char_size</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_utf8_char_size (const char *string);
-</programlisting>
- </para>
- <para>
- Return UTF-8 char size (in bytes).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: UTF-8 char size (in bytes).
- </para>
- <para>
- Example:
- <screen>int char_size = weechat_utf8_char_size ("être"); /* == 2 */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_strlen">
- <title>weechat_utf8_strlen</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_utf8_strlen (const char *string);
-</programlisting>
- </para>
- <para>
- Return UTF-8 string length (multi-byte char is considered as 1 char).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: UTF-8 string length (number of real chars).
- </para>
- <para>
- Example:
- <screen>int length = weechat_utf8_strlen ("chêne"); /* == 5 */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_strnlen">
- <title>weechat_utf8_strnlen</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_utf8_strnlen (const char *string, int bytes);
-</programlisting>
- </para>
- <para>
- Return UTF-8 string length (multi-byte char is considered as 1 char),
- for max bytes in string
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>bytes</option>: max bytes in string
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: UTF-8 string length (number of real chars).
- </para>
- <para>
- Example:
- <screen>int length = weechat_utf8_strnlen ("chêne", 4); /* == 3 */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_strlen_screen">
- <title>weechat_utf8_strlen_screen</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_utf8_strlen_screen (const char *string);
-</programlisting>
- </para>
- <para>
- Return number of chars needed on screen to display UTF-8 string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: number of chars needed on screen to display UTF-8 string.
- </para>
- <para>
- Example:
- <screen>int length_on_screen = weechat_utf8_strlen_screen ("&#x4E1C;"); /* == 2 */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_charcasecmp">
- <title>weechat_utf8_charcasecmp</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_utf8_charcasecmp (const char *string1, const char *string2);
-</programlisting>
- </para>
- <para>
- Compare two UTF-8 chars (case is ignored).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string1</option>: first string for comparison
- </para>
- </listitem>
- <listitem>
- <para>
- <option>string2</option>: second string for comparison
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: difference between first char of each string: negative if
- char1 &lt; char2, zero if char1 == char2, positive if char1 &gt; char2
- </para>
- <para>
- Example:
- <screen>if (weechat_utf8_charcasecmp (string1, string2) != 0) ...</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_char_size_screen">
- <title>weechat_utf8_char_size_screen</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_utf8_char_size_screen (const char *string);
-</programlisting>
- </para>
- <para>
- Return number of chars needed on screen to display UTF-8 char.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: number of chars needed on screen to display UTF-8 char.
- </para>
- <para>
- Example:
- <screen>int length_on_screen = weechat_utf8_char_size_screen (string)</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_add_offset">
- <title>weechat_utf8_add_offset</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_utf8_add_offset (const char *string, int offset);
-</programlisting>
- </para>
- <para>
- Move forward N chars in an UTF-8 string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>offset</option>: number of chars
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to string, N chars after (NULL if it's not
- reachable).
- </para>
- <para>
- Example:
- <screen>char *ptr = weechat_utf8_add_offset ("chêne", 3); /* points to "ne" */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_real_pos">
- <title>weechat_utf8_real_pos</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_utf8_real_pos (const char *string, int pos);
-</programlisting>
- </para>
- <para>
- Get real position in UTF-8 string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>pos</option>: position in chars
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: real position (in bytes) for "pos" chars in string.
- </para>
- <para>
- Example:
- <screen>int pos = weechat_utf8_real_pos ("chêne", 3); /* == 4 */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_pos">
- <title>weechat_utf8_pos</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_utf8_pos (const char *string, int real_pos);
-</programlisting>
- </para>
- <para>
- Get position in UTF-8 string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>real_pos</option>: position in bytes
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: position (in chars) for "real_pos" bytes in string.
- </para>
- <para>
- Example:
- <screen>int pos = weechat_utf8_real_pos ("chêne", 4); /* == 3 */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_utf8_strndup">
- <title>weechat_utf8_strndup</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_utf8_strndup (const char *string, int max_chars);
-</programlisting>
- </para>
- <para>
- Return duplicate string, with max N chars.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>string</option>: string
- </para>
- </listitem>
- <listitem>
- <para>
- <option>max_chars</option>: max chars
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: duplicated string, NULL if error.
- </para>
- <para>
- Example:
- <screen>char *string = weechat_utf8_strndup ("chêne", 3); /* returns "chê" */</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ===========================[ directories ]========================== -->
-
- <section id="secPluginCApi_directories">
- <title>Directories</title>
-
- <para>
- Some functions related to directories.
- </para>
-
- <section id="secPluginCApi_weechat_mkdir_home">
- <title>weechat_mkdir_home</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_mkdir_home (char *directory, int mode);
-</programlisting>
- </para>
- <para>
- Create a directory in WeeChat home.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>directory</option>: directory to create
- </para>
- </listitem>
- <listitem>
- <para>
- <option>mode</option>: mode for new directory
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if directory was successfully created, 0 if an
- error occurred.
- </para>
- <para>
- Example:
- <screen>if (!weechat_mkdir_home ("temp")) ... </screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_mkdir">
- <title>weechat_mkdir</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_mkdir (char *directory, int mode);
-</programlisting>
- </para>
- <para>
- Create a directory.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>directory</option>: directory to create
- </para>
- </listitem>
- <listitem>
- <para>
- <option>mode</option>: mode for new directory
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if directory was successfully created, 0 if an
- error occurred.
- </para>
- <para>
- Example:
- <screen>if (!weechat_mkdir ("/tmp/mydir")) ... </screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_mkdir_parents">
- <title>weechat_mkdir_parents</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_mkdir_parents (char *directory, int mode);
-</programlisting>
- </para>
- <para>
- Create a directory and make parent directories as needed.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>directory</option>: directory to create
- </para>
- </listitem>
- <listitem>
- <para>
- <option>mode</option>: mode for new directory (and parents)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if directory was successfully created, 0 if an
- error occurred.
- </para>
- <para>
- Example:
- <screen>if (!weechat_mkdir_parents ("/tmp/my/dir")) ... </screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_exec_on_files">
- <title>weechat_exec_on_files</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_exec_on_files (
- const char *directory,
- void *data,
- int (*callback)(void *data, const char *filename));
-</programlisting>
- </para>
- <para>
- Find files in a directory and execute a callback on each file.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>directory</option>: directory for searching files
- </para>
- </listitem>
- <listitem>
- <para>
- <option>data</option>: pointer given to callback when it is
- called by WeeChat
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called for each file
- found, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>filename</entry>
- <entry>filename found</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: none.
- </para>
- <para>
- Example:
-<screen>
-int callback (void *data, const char *filename)
-{
- /* ... */
- return 1;
-}
-...
-plugin->exec_on_files (plugin, "/tmp", &amp;callback);
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ==============================[ util ]============================== -->
-
- <section id="secPluginCApi_util">
- <title>Util</title>
-
- <para>
- Some useful functions.
- </para>
-
- <section id="secPluginCApi_weechat_timeval_cmp">
- <title>weechat_timeval_cmp</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_timeval_cmp (struct timeval *tv1, struct timeval *tv2);
-</programlisting>
- </para>
- <para>
- Compare 2 timeval structures.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>tv1</option>: first timeval structure
- </para>
- </listitem>
- <listitem>
- <para>
- <option>tv2</option>: second timeval structure
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: -1 if tv1 &lt; char2, zero if tv1 == tv2, +1 if tv1 &gt;
- tv2
- </para>
- <para>
- Example:
- <screen>if (weechat_timeval_cmp (&amp;tv1, &amp;tv2) > 0) ...</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_timeval_diff">
- <title>weechat_timeval_diff</title>
-
- <para>
- Prototype:
-<programlisting>
-long weechat_timeval_diff (struct timeval *tv1, struct timeval *tv2);
-</programlisting>
- </para>
- <para>
- Return difference (in milliseconds) between 2 timeval structures.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>tv1</option>: first timeval structure
- </para>
- </listitem>
- <listitem>
- <para>
- <option>tv2</option>: second timeval structure
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: difference in milliseconds.
- </para>
- <para>
- Example:
- <screen>long diff = weechat_timeval_diff (&amp;tv1, &amp;tv2);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_timeval_add">
- <title>weechat_timeval_add</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_timeval_add (struct timeval *tv, long interval);
-</programlisting>
- </para>
- <para>
- Add interval (in milliseconds) to a timeval structure.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>tv</option>: timeval structure
- </para>
- </listitem>
- <listitem>
- <para>
- <option>interval</option>: interval (in milliseconds)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: none.
- </para>
- <para>
- Example:
- <screen>weechat_timeval_add (&amp;tv, 2000); /* add 2 seconds */</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ==========================[ sorted list ]=========================== -->
-
- <section id="secPluginCApi_sorted_list">
- <title>Sorted lists</title>
-
- <para>
- Sorted list functions.
- </para>
-
- <section id="secPluginCApi_weechat_list_new">
- <title>weechat_list_new</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_weelist *weechat_list_new ();
-</programlisting>
- </para>
- <para>
- Create a new list.
- </para>
- <para>
- Return value: pointer to new list.
- </para>
- <para>
- Example:
- <screen>struct t_weelist *list = weechat_list_new ();</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_add">
- <title>weechat_list_add</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_weelist_item *weechat_list_add (
- struct t_weelist *weelist,
- const char *data,
- const char *where,
- void *user_data);
-</programlisting>
- </para>
- <para>
- Add an item in a list.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>weelist</option>: list pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>data</option>: data to insert in list
- </para>
- </listitem>
- <listitem>
- <para>
- <option>where</option>: position in list (constants are:
- WEECHAT_LIST_POS_SORT, WEECHAT_LIST_POS_BEGINNING or
- WEECHAT_LIST_POS_END)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>user_data</option>: any pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new item.
- </para>
- <para>
- Example:
- <screen>weechat_list_add (list, "my data", WEECHAT_LIST_POS_SORT, NULL);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_search">
- <title>weechat_list_search</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_weelist_item *weechat_list_search (
- struct t_weelist *weelist,
- const char *data);
-</programlisting>
- </para>
- <para>
- Search an item in a list.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>weelist</option>: list pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>data</option>: data to search in list
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to item found, NULL if item was not found.
- </para>
- <para>
- Example:
- <screen>struct t_weelist_item *item = weechat_list_search (list, "my data");</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_casesearch">
- <title>weechat_list_casesearch</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_weelist_item *weechat_list_casesearch (
- struct t_weelist *weelist,
- const char *data);
-</programlisting>
- </para>
- <para>
- Search an item in a list (case sensitive search).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>weelist</option>: list pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>data</option>: data to search in list
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to item found, NULL if item was not found.
- </para>
- <para>
- Example:
- <screen>struct t_weelist_item *item = weechat_list_casesearch (list, "my data");</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_get">
- <title>weechat_list_get</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_weelist_item *weechat_list_get (
- struct t_weelist *weelist,
- int position);
-</programlisting>
- </para>
- <para>
- Get an item in a list by position.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>weelist</option>: list pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>position</option>: position in list (0 is first item)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to item found, NULL if item position was not
- found.
- </para>
- <para>
- Example:
- <screen>struct t_weelist_item *item = weechat_list_get (list, 0); /* first item */</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_set">
- <title>weechat_list_set</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_list_set (struct t_weelist_item *item, const char *value);
-</programlisting>
- </para>
- <para>
- Set new value for an item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>item</option>: item pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>value</option>: new value for item
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>weechat_list_set (item, "new data");</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_next">
- <title>weechat_list_next</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_weelist_item *weechat_list_next (struct t_weelist_item *item);
-</programlisting>
- </para>
- <para>
- Get next item in list.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>item</option>: item pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to next item, NULL if pointer was last item in
- list.
- </para>
- <para>
- Example:
- <screen>struct t_weelist_item *next_item = weechat_list_next_item (item);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_prev">
- <title>weechat_list_prev</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_weelist_item *weechat_list_prev (struct t_weelist_item *item);
-</programlisting>
- </para>
- <para>
- Get previous item in list.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>item</option>: item pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to previous item, NULL if pointer was first item
- in list.
- </para>
- <para>
- Example:
- <screen>struct t_weelist_item *prev_item = weechat_list_prev_item (item);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_string">
- <title>weechat_list_string</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_list_string (struct t_weelist_item *item);
-</programlisting>
- </para>
- <para>
- Get string value of an item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>item</option>: item pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string value of item.
- </para>
- <para>
- Example:
- <screen>char *value = weechat_list_string (item);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_size">
- <title>weechat_list_size</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_list_size (struct t_weelist *weelist);
-</programlisting>
- </para>
- <para>
- Get size of list (number of items).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>weelist</option>: list pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: size of list (number of items), 0 if list is empty.
- </para>
- <para>
- Example:
- <screen>int size = weechat_list_size (list);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_remove">
- <title>weechat_list_remove</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_list_remove (
- struct t_weelist *weelist,
- struct t_weelist_item *item);
-</programlisting>
- </para>
- <para>
- Remove an item in a list.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>list</option>: list pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>item</option>: item pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>weechat_list_remove (list, item);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_remove_all">
- <title>weechat_list_remove_all</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_list_remove_all (struct t_weelist *weelist);
-</programlisting>
- </para>
- <para>
- Remove all items in a list.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>list</option>: list pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>weechat_list_remove_all (list);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_list_free">
- <title>weechat_list_free</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_list_free (struct t_weelist *weelist);
-</programlisting>
- </para>
- <para>
- Free a list.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>list</option>: list pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>weechat_list_free (list);</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ==========================[ config files ]========================== -->
-
- <section id="secPluginCApi_configuration_files">
- <title>Configuration files</title>
-
- <para>
- Functions for configuration files.
- </para>
-
- <section id="secPluginCApi_weechat_config_new">
- <title>weechat_config_new</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_config_file *weechat_config_new (
- const char *name,
- int (*callback_reload)(void *data,
- struct t_config_file *config_file),
- void *callback_reload_data);
-</programlisting>
- </para>
- <para>
- Create a new configuration file.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>name</option>: name of configuration file (without path
- or extension)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_reload</option>: callback called when
- configuration file is reloaded with /reload (optional, can be
- NULL), arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_config_file *</entry>
- <entry>config_file</entry>
- <entry>configuration file pointer</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_reload_data</option>: pointer given to reload
- callback when it is called by WeeChat
- NULL)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new configuration file, NULL if an error
- occured.
- </para>
- <note>
- <para>
- File is NOT created by this function. It will be created by call to
- function <xref linkend="secPluginCApi_weechat_config_write" /> (you
- should do that only after adding some sections (with
- <xref linkend="secPluginCApi_weechat_config_new_section" />) and
- options (with
- <xref linkend="secPluginCApi_weechat_config_new_option" />).
- </para>
- </note>
- <para>
- Example:
-<screen>
-int
-my_config_reload_cb (void *data, struct t_config_file *config_file)
-{
- /* ... */
-
- return WEECHAT_RC_OK;
-}
-
-struct t_config_file *config_file = weechat_config_new ("test",
- &amp;my_config_reload_cb,
- NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_new_section">
- <title>weechat_config_new_section</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_config_section *weechat_config_new_section (
- struct t_config_file *config_file,
- const char *name,
- int user_can_add_options,
- int user_can_delete_options,
- int (*callback_read)(void *data,
- struct t_config_file *config_file,
- struct t_config_section *section,
- const char *option_name,
- const char *value),
- void *callback_read_data,
- int (*callback_write)(void *data,
- struct t_config_file *config_file,
- struct t_config_section *section,
- const char *option_name),
- void *callback_write_data,
- int (*callback_write_default)(void *data,
- struct t_config_file *config_file,
- const char *section_name);
- void *callback_write_default_data,
- int (*callback_create_option)(void *data,
- struct t_config_file *config_file,
- struct t_config_section *section,
- const char *option_name,
- const char *value),
- void *callback_create_option_data,
- int (*callback_delete_option)(void *data,
- struct t_config_file *config_file,
- struct t_config_section *section,
- struct t_config_option *option),
- void *callback_delete_option_data);
-</programlisting>
- </para>
- <para>
- Create a new section in configuration file.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>config_file</option>: configuration file pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: name of section
- </para>
- </listitem>
- <listitem>
- <para>
- <option>user_can_add_options</option>: 1 if user can add options
- in section, or 0 if it is forbidden
- </para>
- </listitem>
- <listitem>
- <para>
- <option>user_can_delete_options</option>: 1 if user can delete
- options in section, or 0 if it is forbidden
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_read</option>: callback called when an option
- in section is read from disk (should be NULL for most cases,
- except if options in your section need custom function),
- arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_config_file *</entry>
- <entry>config_file</entry>
- <entry>configuration file pointer</entry>
- </row>
- <row>
- <entry>struct t_config_section *</entry>
- <entry>section</entry>
- <entry>section pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>option_name</entry>
- <entry>name of option</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>value</entry>
- <entry>value</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_read_data</option>: pointer given to read
- callback when it is called by WeeChat
- NULL)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_write</option>: callback called when section
- is written in file (should be NULL for most cases, except if your
- section needs to be written by a custom function), arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_config_file *</entry>
- <entry>config_file</entry>
- <entry>configuration file pointer</entry>
- </row>
- <row>
- <entry>struct t_config_section *</entry>
- <entry>section</entry>
- <entry>section pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>option_name</entry>
- <entry>name of option</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_write_data</option>: pointer given to write
- callback when it is called by WeeChat
- NULL)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_write_default</option>: callback called when
- default values for section must be written in file, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_config_file *</entry>
- <entry>config_file</entry>
- <entry>configuration file pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>section_name</entry>
- <entry>name of section</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_write_default_data</option>: pointer given to
- write_default callback when it is called by WeeChat
- NULL)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_create_option</option>: callback called when a
- new option is created in section (NULL if section does not allow
- new options to be created), arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_config_file *</entry>
- <entry>config_file</entry>
- <entry>configuration file pointer</entry>
- </row>
- <row>
- <entry>struct t_config_section *</entry>
- <entry>section</entry>
- <entry>section pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>option_name</entry>
- <entry>name of option</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>value</entry>
- <entry>value</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_create_option_data</option>: pointer given to
- create_option callback when it is called by WeeChat
- NULL)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_delete_option</option>: callback called when an
- option is deleted (NULL if section does not allow options to be
- deleted), arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_config_file *</entry>
- <entry>config_file</entry>
- <entry>configuration file pointer</entry>
- </row>
- <row>
- <entry>struct t_config_section *</entry>
- <entry>section</entry>
- <entry>section pointer</entry>
- </row>
- <row>
- <entry>struct t_config_option *option</entry>
- <entry>option</entry>
- <entry>option pointer</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_delete_option_data</option>: pointer given to
- delete_option callback when it is called by WeeChat
- NULL)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new section in configuration file, NULL if an
- error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_section_read_cb (void *data, struct t_config_file *config_file,
- struct t_config_section *section, const char *option_name,
- const char *value)
-{
- /* ... */
-
- return WEECHAT_RC_OK;
-}
-
-int
-my_section_write_cb (void *data, struct t_config_file *config_file,
- const char *section_name)
-{
- /* ... */
-
- return WEECHAT_RC_OK;
-}
-
-int
-my_section_write_default_cb (void *data, struct t_config_file *config_file,
- const char *section_name)
-{
- /* ... */
-
- return WEECHAT_RC_OK;
-}
-
-int
-my_section_create_option_cb (void *data, struct t_config_file *config_file,
- struct t_config_section *section,
- const char *option_name, const char *value)
-{
- /* ... */
-
- return WEECHAT_RC_OK;
-}
-
-int
-my_section_delete_option_cb (void *data, struct t_config_file *config_file,
- struct t_config_section *section,
- struct t_config_option *option)
-{
- /* ... */
-
- return WEECHAT_RC_OK;
-}
-
-/* standard section, user can not add/delete options */
-struct t_config_section *new_section1 =
- weechat_config_new ("section1", 0, 0,
- NULL, NULL, /* read callback */
- NULL, NULL, /* write callback */
- NULL, NULL, /* write default callback */
- NULL, NULL, /* create option callback */
- NULL, NULL); /* delete option callback */
-
-/* special section, user can add/delete options, and options need
- callback to be read/written */
-struct t_config_section *new_section2 =
- weechat_config_new ("section2", 1, 1,
- &amp;my_section_read_cb, NULL,
- &amp;my_section_write_cb, NULL,
- &amp;my_section_write_default_cb, NULL,
- &amp;my_section_create_option_cb, NULL,
- &amp;my_section_delete_option_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_search_section">
- <title>weechat_config_search_section</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_config_section *weechat_config_search_section (
- struct t_config_file *config_file,
- const char *section_name);
-</programlisting>
- </para>
- <para>
- Search a section in a configuration file.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>config_file</option>: configuration file pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>section_name</option>: name of section to search
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to section found, NULL if section was not found.
- </para>
- <para>
- Example:
-<screen>
-struct t_config_section *section = weechat_config_search_section (config_file, "section");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_new_option">
- <title>weechat_config_new_option</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_config_option *weechat_config_new_option (
- struct t_config_file *config_file,
- struct t_config_section *section,
- const char *name,
- const char *type,
- const char *description,
- const char *string_values,
- int min,
- int max,
- const char *default_value,
- const char *value,
- int null_value_allowed,
- int (*callback_check_value)(void *data,
- struct t_config_option *option,
- const char *value),
- void *callback_check_value_data,
- int (*callback_change)(void *data,
- struct t_config_option *option),
- void *callback_change_data,
- int (*callback_delete)(void *data,
- struct t_config_option *option),
- void *callback_delete_data);
-</programlisting>
- </para>
- <para>
- Create a new option in a section of a configuration file.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>config_file</option>: configuration file pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>section</option>: section pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: name of option
- </para>
- </listitem>
- <listitem>
- <para>
- <option>type</option>: type of option, one of:
- <itemizedlist>
- <listitem>
- <para>boolean</para>
- </listitem>
- <listitem>
- <para>integer</para>
- </listitem>
- <listitem>
- <para>string</para>
- </listitem>
- <listitem>
- <para>color</para>
- </listitem>
- </itemizedlist>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>description</option>: description of option
- </para>
- </listitem>
- <listitem>
- <para>
- <option>string_values</option>: values as string (separated by
- "|"), used for type integer (optional)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>min</option>: minimum value (for integer)
- NULL)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>max</option>: maximum value (for integer)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>default_value</option>: default value for option (used
- when option is reset)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>value</option>: value for option
- </para>
- </listitem>
- <listitem>
- <para>
- <option>null_value_allowed</option>: 1 if null (undefined value)
- is allowed for option, otherwise 0
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_check_value</option>: callback called to check
- new value for an option (optional), arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_config_option *</entry>
- <entry>option</entry>
- <entry>option pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>value</entry>
- <entry>new value for option</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_check_value_data</option>: pointer given to
- check_value callback when it is called by WeeChat
- NULL)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_change</option>: callback called when value of
- option has changed (optional), arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_config_option *</entry>
- <entry>option</entry>
- <entry>option pointer</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_change_data</option>: pointer given to change
- callback when it is called by WeeChat
- NULL)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_delete</option>: callback called when option
- will be deleted (optional), arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_config_option *</entry>
- <entry>option</entry>
- <entry>option pointer</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_delete_data</option>: pointer given to delete
- callback when it is called by WeeChat
- NULL)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new option in section, NULL if an error
- occured.
- </para>
- <para>
- Example:
-<screen>
-/* boolean */
-struct t_config_option *option1 =
- weechat_config_new_option (config_file, section,
- "option1", "My option, type boolean"
- NULL, /* string values */
- 0, 0, /* min, max */
- "on", /* default */
- "on", /* value */
- 0, /* null value allowed */
- NULL, NULL, /* check callback */
- NULL, NULL, /* change callback */
- NULL, NULL); /* delete callback */
-
-/* integer */
-struct t_config_option *option2 =
- weechat_config_new_option (config_file, section,
- "option2", "My option, type integer"
- NULL, /* string values */
- 0, 100, /* min, max */
- "15", /* default */
- "15", /* value */
- 0, /* null value allowed */
- NULL, NULL, /* check callback */
- NULL, NULL, /* change callback */
- NULL, NULL); /* delete callback */
-
-/* integer (with string values) */
-struct t_config_option *option3 =
- weechat_config_new_option (config_file, section,
- "option3", "My option, type integer (with string values)"
- "top|bottom|left|right", /* string values */
- 0, 0, /* min, max */
- "bottom", /* default */
- "bottom", /* value */
- 0, /* null value allowed */
- NULL, NULL, /* check callback */
- NULL, NULL, /* change callback */
- NULL, NULL); /* delete callback */
-
-/* string */
-struct t_config_option *option4 =
- weechat_config_new_option (config_file, section,
- "option4", "My option, type string"
- NULL, /* string values */
- 0, 0, /* min, max */
- "test", /* default */
- "test", /* value */
- 1, /* null value allowed */
- NULL, NULL, /* check callback */
- NULL, NULL, /* change callback */
- NULL, NULL); /* delete callback */
-
-/* color */
-struct t_config_option *option5 =
- weechat_config_new_option (config_file, section,
- "option5", "My option, type color"
- NULL, /* string values */
- 0, 0, /* min, max */
- "lightblue", /* default */
- "lightblue", /* value */
- 0, /* null value allowed */
- NULL, NULL, /* check callback */
- NULL, NULL, /* change callback */
- NULL, NULL); /* delete callback */
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_search_option">
- <title>weechat_config_search_option</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_config_option *weechat_config_search_option (
- struct t_config_file *config_file,
- struct t_config_section *section,
- const char *option_name);
-</programlisting>
- </para>
- <para>
- Search an option in a section of a configuration file.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>config_file</option>: configuration file pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>section</option>: section pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>option_name</option>: name of option to search
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to option found, NULL if option was not found.
- </para>
- <para>
- Example:
-<screen>
-struct t_config_option *option =
- weechat_config_search_option (config_file, section, "option");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_search_with_string">
- <title>weechat_config_search_with_string</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_config_search_with_string (
- const char *option_name,
- struct t_config_file **config_file,
- struct t_config_section **section,
- struct t_config_option **option);
-</programlisting>
- </para>
- <para>
- Search an option in a configuration file with string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option_name</option>: full option name (format:
- "file.section.option")
- </para>
- </listitem>
- <listitem>
- <para>
- <option>config_file</option>: pointer to a configuration file
- pointer, will be set to configuration file of option, if found
- </para>
- </listitem>
- <listitem>
- <para>
- <option>section</option>: pointer to a section pointer, will be
- set to section of option, if found
- </para>
- </listitem>
- <listitem>
- <para>
- <option>option</option>: pointer to an option pointer, will be
- set to option pointer, if found
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-struct t_config_file *ptr_config_file;
-struct t_config_section *ptr_section;
-struct t_config_option *ptr_option;
-
-weechat_config_search_with_string ("file.section.option",
- &amp;ptr_config_file,
- &amp;ptr_section,
- &amp;ptr_option);
-if (ptr_option)
-{
- /* option found */
- /* ... */
-}
-else
-{
- /* option not found */
- /* ... */
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_string_to_boolean">
- <title>weechat_config_string_to_boolean</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_string_to_boolean (const char *text);
-</programlisting>
- </para>
- <para>
- Check if a text is "true" or "false".
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>text</option>: text to analyze
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if text is "true" ("on", "yes", "y", "true", "t", "1"),
- or 0 if text is "false" ("off", "no", "n", "false", "f", "0").
- </para>
- <para>
- Example:
-<screen>
-if (weechat_config_string_to_boolean ("on"))
-{
- /* true */
- /* ... */
-}
-else
-{
- /* false */
- /* never executed! */
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_option_reset">
- <title>weechat_config_option_reset</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_option_reset (
- struct t_config_option *option,
- int run_callback);
-</programlisting>
- </para>
- <para>
- Reset an option to its default value.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>run_callback</option>: 1 for calling change callback if
- option is changed, 0 otherwise
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: WEECHAT_CONFIG_OPTION_SET_OK_CHANGED if option value has
- been reset, WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE if value was not
- changed, WEECHAT_CONFIG_OPTION_SET_ERROR if an error occured.
- </para>
- <para>
- Example:
-<screen>
-switch (weechat_config_option_reset (option, 1))
-{
- case WEECHAT_CONFIG_OPTION_SET_OK_CHANGED:
- /* .... */
- break;
- case WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE:
- /* .... */
- break;
- case WEECHAT_CONFIG_OPTION_SET_ERROR:
- /* .... */
- break;
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_option_set">
- <title>weechat_config_option_set</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_option_set (
- struct t_config_option *option,
- const char *value, int run_callback);
-</programlisting>
- </para>
- <para>
- Set new value for an option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>value</option>: new value for option
- </para>
- </listitem>
- <listitem>
- <para>
- <option>run_callback</option>: 1 for calling change callback if
- option is changed, 0 otherwise
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: WEECHAT_CONFIG_OPTION_SET_OK_CHANGED if option value has
- been reset, WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE if value was not
- changed, WEECHAT_CONFIG_OPTION_SET_ERROR if an error occured.
- </para>
- <para>
- Example:
-<screen>
-switch (weechat_config_option_set (option, "new_value", 1))
-{
- case WEECHAT_CONFIG_OPTION_SET_OK_CHANGED:
- /* .... */
- break;
- case WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE:
- /* .... */
- break;
- case WEECHAT_CONFIG_OPTION_SET_ERROR:
- /* .... */
- break;
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_option_set_null">
- <title>weechat_config_option_set_null</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_option_set_null (
- struct t_config_option *option,
- int run_callback);
-</programlisting>
- </para>
- <para>
- Set null (undefined value) for an option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>run_callback</option>: 1 for calling change callback if
- option is changed (if it was not null), 0 otherwise
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <note>
- <para>
- You can set value to null only if option allows null value
- (see <xref linkend="secPluginCApi_weechat_config_new_option" />).
- </para>
- </note>
- <para>
- Return value: WEECHAT_CONFIG_OPTION_SET_OK_CHANGED if option value has
- been reset, WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE if value was not
- changed, WEECHAT_CONFIG_OPTION_SET_ERROR if an error occured.
- </para>
- <para>
- Example:
-<screen>
-switch (weechat_config_option_set_null (option, 1))
-{
- case WEECHAT_CONFIG_OPTION_SET_OK_CHANGED:
- /* .... */
- break;
- case WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE:
- /* .... */
- break;
- case WEECHAT_CONFIG_OPTION_SET_ERROR:
- /* .... */
- break;
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_option_unset">
- <title>weechat_config_option_unset</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_option_unset (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Unset/reset option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET if option value
- has not been reset, WEECHAT_CONFIG_OPTION_UNSET_OK_RESET if option
- value has been reset, WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED if option
- has been removed, WEECHAT_CONFIG_OPTION_UNSET_ERROR if an error
- occured.
- </para>
- <para>
- Example:
-<screen>
-switch (weechat_config_option_unset (option))
-{
- case WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET:
- /* .... */
- break;
- case WEECHAT_CONFIG_OPTION_UNSET_OK_RESET:
- /* .... */
- break;
- case WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED:
- /* .... */
- break;
- case WEECHAT_CONFIG_OPTION_UNSET_ERROR:
- /* .... */
- break;
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_option_rename">
- <title>weechat_config_option_rename</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_config_option_rename (
- struct t_config_option *option,
- const char *new_name);
-</programlisting>
- </para>
- <para>
- Rename an option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>new_name</option>: new name for option
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_config_option_rename (option, "new_name");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_option_get_pointer">
- <title>weechat_config_option_get_pointer</title>
-
- <para>
- Prototype:
-<programlisting>
-void *weechat_config_option_get_pointer (
- struct t_config_option *option,
- const char *property);
-</programlisting>
- </para>
- <para>
- Get a pointer on an option property.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>property</option>: property name:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Property</entry>
- <entry>Type</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>config_file</entry>
- <entry>struct t_config_file *</entry>
- <entry>configuration file pointer</entry>
- </row>
- <row>
- <entry>section</entry>
- <entry>struct t_config_section *</entry>
- <entry>section pointer</entry>
- </row>
- <row>
- <entry>name</entry>
- <entry>char *</entry>
- <entry>option name</entry>
- </row>
- <row>
- <entry>type</entry>
- <entry>int</entry>
- <entry>option type</entry>
- </row>
- <row>
- <entry>description</entry>
- <entry>char *</entry>
- <entry>option description</entry>
- </row>
- <row>
- <entry>string_values</entry>
- <entry>char **</entry>
- <entry>string values</entry>
- </row>
- <row>
- <entry>min</entry>
- <entry>int</entry>
- <entry>minimum value</entry>
- </row>
- <row>
- <entry>max</entry>
- <entry>int</entry>
- <entry>maximum value</entry>
- </row>
- <row>
- <entry>default_value</entry>
- <entry>(depends on type)</entry>
- <entry>default value</entry>
- </row>
- <row>
- <entry>value</entry>
- <entry>(depends on type)</entry>
- <entry>current value</entry>
- </row>
- <row>
- <entry>prev_option</entry>
- <entry>struct t_config_option *</entry>
- <entry>previous option pointer</entry>
- </row>
- <row>
- <entry>next_option</entry>
- <entry>struct t_config_option *</entry>
- <entry>next option pointer</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to property asked.
- </para>
- <para>
- Example:
-<screen>
-char *description = weechat_config_option_get_pointer (option, "description");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_option_is_null">
- <title>weechat_config_option_is_null</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_option_is_null (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Check if an option is null (undefined value).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-if (weechat_config_option_is_null (option))
-{
- /* value is null */
-}
-else
-{
- /* value is not null */
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_boolean">
- <title>weechat_config_boolean</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_boolean (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Get boolean value of option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: boolean value of option (0 or 1).
- </para>
- <para>
- Example:
-<screen>
-if (weechat_config_boolean (option))
-{
- /* true */
-}
-else
-{
- /* false */
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_boolean_default">
- <title>weechat_config_boolean_default</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_boolean_default (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Get default boolean value of option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: default boolean value of option (0 or 1).
- </para>
- <para>
- Example:
-<screen>
-if (weechat_config_boolean_default (option))
-{
- /* true */
-}
-else
-{
- /* false */
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_integer">
- <title>weechat_config_integer</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_integer (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Get integer value of option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: integer value of option.
- </para>
- <para>
- Example:
- <screen>int value = weechat_config_integer (option);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_integer_default">
- <title>weechat_config_integer_default</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_integer_default (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Get default integer value of option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: default integer value of option.
- </para>
- <para>
- Example:
- <screen>int value = weechat_config_integer (option);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_string">
- <title>weechat_config_string</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_config_string (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Get string value of option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string value of option.
- </para>
- <para>
- Example:
- <screen>char *value = weechat_config_string (option);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_string_default">
- <title>weechat_config_string_default</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_config_string_default (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Get default string value of option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: default string value of option.
- </para>
- <para>
- Example:
- <screen>char *value = weechat_config_string_default (option);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_color">
- <title>weechat_config_color</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_config_color (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Get color value of option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: color value of option (string with name of color).
- </para>
- <para>
- Example:
- <screen>char *color = weechat_config_color (option);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_color_default">
- <title>weechat_config_color_default</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_config_color_default (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Get default color value of option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: default color value of option (string with name of color).
- </para>
- <para>
- Example:
- <screen>char *color = weechat_config_color_default (option);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_write_option">
- <title>weechat_config_write_option</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_config_write_option (
- struct t_config_file *config_file,
- struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Write a line in a configuration file with option and its value (this
- function should be called only in "write" or "write_default" callbacks
- for a section).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>config_file</option>: configuration file pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-int
-my_section_write_cb (void *data, struct t_config_file *config_file,
- const char *section_name)
-{
- weechat_config_write_line (config_file, "my_section", NULL);
-
- weechat_config_write_option (config_file, option);
-
- return WEECHAT_RC_OK;
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_write_line">
- <title>weechat_config_write_line</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_config_write_line (
- struct t_config_file *config_file,
- const char *option_name,
- const char *value, ...);
-</programlisting>
- </para>
- <para>
- Write a line in a configuration file (this function should be called
- only in "write" or "write_default" callbacks for a section).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>config_file</option>: configuration file pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>option_name</option>: option name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>value</option>: value
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <note>
- <para>
- If value is NULL, then line with section name is written
- (for example: "[section]").
- </para>
- </note>
- <para>
- Example:
-<screen>
-int
-my_section_write_cb (void *data, struct t_config_file *config_file,
- const char *section_name)
-{
- weechat_config_write_line (config_file, "my_section", NULL);
-
- weechat_config_write_line (config_file, "option", "%s;%d",
- "value", 123);
-
- return WEECHAT_RC_OK;
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_write">
- <title>weechat_config_write</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_write (struct t_config_file *config_file);
-</programlisting>
- </para>
- <para>
- Write configuration file to disk.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>config_file</option>: configuration file pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: WEECHAT_CONFIG_WRITE_OK if configuration was written,
- WEECHAT_CONFIG_WRITE_ERROR if an error occured,
- WEECHAT_CONFIG_WRITE_MEMORY_ERROR if there was not enough memory.
- </para>
- <para>
- Example:
-<screen>
-switch (weechat_config_write (config_file))
-{
- case WEECHAT_CONFIG_WRITE_OK:
- /* ... */
- break;
- case WEECHAT_CONFIG_WRITE_ERROR:
- /* ... */
- break;
- case WEECHAT_CONFIG_WRITE_MEMORY_ERROR:
- /* ... */
- break;
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_read">
- <title>weechat_config_read</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_read (struct t_config_file *config_file);
-</programlisting>
- </para>
- <para>
- Read configuration file from disk.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>config_file</option>: configuration file pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: WEECHAT_CONFIG_READ_OK if configuration was loaded,
- WEECHAT_CONFIG_READ_MEMORY_ERROR if there was not enough memory,
- WEECHAT_CONFIG_READ_FILE_NOT_FOUND if file was not found.
- </para>
- <para>
- Example:
-<screen>
-switch (weechat_config_read (config_file))
-{
- case WEECHAT_CONFIG_READ_OK:
- /* ... */
- break;
- case WEECHAT_CONFIG_READ_MEMORY_ERROR:
- /* ... */
- break;
- case WEECHAT_CONFIG_READ_FILE_NOT_FOUND:
- /* ... */
- break;
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_reload">
- <title>weechat_config_reload</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_reload (struct t_config_file *config_file);
-</programlisting>
- </para>
- <para>
- Reload configuration file from disk.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>config_file</option>: configuration file pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: WEECHAT_CONFIG_READ_OK if configuration was reloaded,
- WEECHAT_CONFIG_READ_MEMORY_ERROR if there was not enough memory,
- WEECHAT_CONFIG_READ_FILE_NOT_FOUND if file was not found.
- </para>
- <para>
- Example:
-<screen>
-switch (weechat_config_reload (config_file))
-{
- case WEECHAT_CONFIG_READ_OK:
- /* ... */
- break;
- case WEECHAT_CONFIG_READ_MEMORY_ERROR:
- /* ... */
- break;
- case WEECHAT_CONFIG_READ_FILE_NOT_FOUND:
- /* ... */
- break;
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_option_free">
- <title>weechat_config_option_free</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_config_option_free (struct t_config_option *option);
-</programlisting>
- </para>
- <para>
- Free an option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>weechat_config_option_free (option);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_section_free_options">
- <title>weechat_config_section_free_options</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_config_section_free_options (struct t_config_section *section);
-</programlisting>
- </para>
- <para>
- Free all options in a section.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>section</option>: section pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>weechat_config_section_free_options (section);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_section_free">
- <title>weechat_config_section_free</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_config_section_free (struct t_config_section *section);
-</programlisting>
- </para>
- <para>
- Free a section.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>section</option>: section pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>weechat_config_section_free (section);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_free">
- <title>weechat_config_free</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_config_free (struct t_config_file *config_file);
-</programlisting>
- </para>
- <para>
- Free a configuration file.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>config_file</option>: configuration file pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>weechat_config_free (config_file);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_get">
- <title>weechat_config_get</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_config_option *weechat_config_get (const char *option_name);
-</programlisting>
- </para>
- <para>
- Search an option in a configuration file with string.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option_name</option>: full option name (format:
- "file.section.option")
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to option found, NULL if option was not found.
- </para>
- <para>
- Example:
-<screen>
-struct t_config_option *option = weechat_config_get ("weechat.look.item_time_format");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_get_plugin">
- <title>weechat_config_get_plugin</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_config_get_plugin (const char *option_name);
-</programlisting>
- </para>
- <para>
- Search an option in plugins configuration file (plugins.conf), by
- adding prefix with current plugin name.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option_name</option>: option name, WeeChat will add
- prefix "plugins.var.xxxx." (where xxxx is current plugin name).
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to option found, NULL if option was not found.
- </para>
- <para>
- Example:
-<screen>
-/* if current plugin is "test", then look for value of option
- "plugins.var.test.option" in plugins.conf file */
-char *value = weechat_config_get_plugin ("option");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_is_set_plugin">
- <title>weechat_config_is_set_plugin</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_is_set_plugin (const char *option_name);
-</programlisting>
- </para>
- <para>
- Check if option is set in plugins configuration file (plugins.conf).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option_name</option>: option name, WeeChat will add
- prefix "plugins.var.xxxx." (where xxxx is current plugin name).
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if option is set, 0 if option does not exist.
- </para>
- <para>
- Example:
-<screen>
-if (weechat_config_is_set_plugin ("option"))
-{
- /* ... */
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_set_plugin">
- <title>weechat_config_set_plugin</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_set_plugin (const char *option_name, const char *value);
-</programlisting>
- </para>
- <para>
- Set value for option in plugins configuration file (plugins.conf).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option_name</option>: option name, WeeChat will add
- prefix "plugins.var.xxxx." (where xxxx is current plugin name).
- </para>
- </listitem>
- <listitem>
- <para>
- <option>value</option>: value for option
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: WEECHAT_CONFIG_OPTION_SET_OK_CHANGED if option value has
- been reset, WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE if value was not
- changed, WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND if option was not
- found, WEECHAT_CONFIG_OPTION_SET_ERROR if other error occured.
- </para>
- <para>
- Example:
-<screen>
-weechat_config_set_plugin ("option", "test_value");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_config_unset_plugin">
- <title>weechat_config_unset_plugin</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_config_unset_plugin (const char *option_name);
-</programlisting>
- </para>
- <para>
- Unset option in plugins configuration file (plugins.conf).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option_name</option>: option name, WeeChat will add
- prefix "plugins.var.xxxx." (where xxxx is current plugin name).
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET if option value
- has not been reset, WEECHAT_CONFIG_OPTION_UNSET_OK_RESET if option
- value has been reset, WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED if option
- has been removed, WEECHAT_CONFIG_OPTION_UNSET_ERROR if an error
- occured.
- </para>
- <para>
- Example:
-<screen>
-weechat_config_unset_plugin ("option");
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ============================[ display ]============================= -->
-
- <section id="secPluginCApi_display">
- <title>Display</title>
-
- <para>
- Functions to display text in buffers.
- </para>
-
- <section id="secPluginCApi_weechat_prefix">
- <title>weechat_prefix</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_prefix (const char *prefix);
-</programlisting>
- </para>
- <para>
- Get a prefix.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>prefix</option>: name of prefix:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Prefix</entry>
- <entry>Default value</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>error</entry>
- <entry>=!=</entry>
- <entry>error message</entry>
- </row>
- <row>
- <entry>network</entry>
- <entry>--</entry>
- <entry>message from network</entry>
- </row>
- <row>
- <entry>action</entry>
- <entry>*</entry>
- <entry>self action</entry>
- </row>
- <row>
- <entry>join</entry>
- <entry>--&gt;</entry>
- <entry>someone joins current chat</entry>
- </row>
- <row>
- <entry>quit</entry>
- <entry>&lt;--</entry>
- <entry>someone leaves current chat</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: prefix value, empty string if prefix is not found
- (not NULL).
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "%sThis is an error...",
- weechat_prefix ("error"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_color">
- <title>weechat_color</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_color (const char *color_name);
-</programlisting>
- </para>
- <para>
- Get a string color code for display.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>color_name</option>: name of color: can be a WeeChat
- color name (from weechat.color.xxx), a color with optional
- background (separated by comma), attribute ("bold", "-bold",
- "reverse", "-reverse", "italic", "-italic", "underline",
- "-underline", ) or a bar color ("bar_fg", "bar_delim", "bar_bg").
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string with color code, or a "reset color" code if color
- is not found.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "Color: %sblue %schat default %sred on green",
- weechat_color ("blue"),
- weechat_color ("chat"),
- weechat_color ("red,green"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_printf">
- <title>weechat_printf</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_printf (struct t_gui_buffer *buffer, const char *message, ...);
-</programlisting>
- </para>
- <para>
- Display a message on a buffer.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer, if NULL, message is
- displayed on WeeChat buffer.
- </para>
- </listitem>
- <listitem>
- <para>
- <option>message</option>: message to display
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "Hello on WeeChat buffer");
-weechat_printf (buffer, "Hello on this buffer");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_printf_date">
- <title>weechat_printf_date</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_printf_date (
- struct t_gui_buffer *buffer, time_t date,
- const char *message, ...);
-</programlisting>
- </para>
- <para>
- Display a message on a buffer, using a custom date.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer, if NULL, message is
- displayed on WeeChat buffer.
- </para>
- </listitem>
- <listitem>
- <para>
- <option>date</option>: date for message
- </para>
- </listitem>
- <listitem>
- <para>
- <option>message</option>: message to display
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, time (NULL) - 120, "Hello, 2 minutes ago");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_printf_tags">
- <title>weechat_printf_tags</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_printf_tags (
- struct t_gui_buffer *buffer,
- const char *tags,
- const char *message, ...);
-</programlisting>
- </para>
- <para>
- Display a message on a buffer, using a custom tags.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer, if NULL, message is
- displayed on WeeChat buffer.
- </para>
- </listitem>
- <listitem>
- <para>
- <option>tags</option>: tags for message, separated by a comma
- </para>
- </listitem>
- <listitem>
- <para>
- <option>message</option>: message to display
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_printf_tags (NULL, "notify_message", "Hello with a message notify tag");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_printf_date_tags">
- <title>weechat_printf_date_tags</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_printf_date_tags (
- struct t_gui_buffer *buffer,
- time_t date,
- const char *tags,
- const char *message, ...);
-</programlisting>
- </para>
- <para>
- Display a message on a buffer, using a custom date and tags.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer, if NULL, message is
- displayed on WeeChat buffer.
- </para>
- </listitem>
- <listitem>
- <para>
- <option>date</option>: date for message
- </para>
- </listitem>
- <listitem>
- <para>
- <option>tags</option>: tags for message, separated by a comma
- </para>
- </listitem>
- <listitem>
- <para>
- <option>message</option>: message to display
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_printf_date_tags (NULL, time (NULL) - 120, "notify_message",
- "Hello, 2 minutes ago, with a message notify tag");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_printf_y">
- <title>weechat_printf_y</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_printf_y (
- struct t_gui_buffer *buffer,
- int y,
- const char *message, ...);
-</programlisting>
- </para>
- <para>
- Display a message on a line of a buffer with free content (see
- <xref linkend="secPluginCApi_weechat_buffer_set" />).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer, if NULL, message is
- displayed on WeeChat buffer.
- </para>
- </listitem>
- <listitem>
- <para>
- <option>y</option>: line number (0 for first line)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>message</option>: message to display
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_printf_y (buffer, 2, "My message on third line");
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- =============================[ hooks ]============================== -->
-
- <section id="secPluginCApi_hooks">
- <title>Hooks</title>
-
- <para>
- Functions to hook/unhook something.
- </para>
-
- <section id="secPluginCApi_weechat_hook_command">
- <title>weechat_hook_command</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_command (
- const char *command,
- const char *description,
- const char *args,
- const char *args_description,
- const char *completion,
- int (*callback)(void *data,
- struct t_gui_buffer *buffer,
- int argc, char **argv,
- char **argv_eol),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a command.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>command</option>: new command name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>description</option>: description of command (displayed
- with <command>/help command</command>)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>args</option>: arguments for command (displayed with
- <command>/help command</command>)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>args_description</option>: description of arguments
- (displayed with <command>/help command</command>)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>completion</option>: completion template for command:
- list of completions for each arguments, separated by space. Many
- completions are possible for one argument, separated by "|".
- Many templates are possible for same command, separeted by "||".
- Default completion codes are:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Plugin</entry>
- <entry>Code</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- &completions.xml;
- </tbody>
- </tgroup>
- </informaltable>
- Special codes:
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Code</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>%%command</entry>
- <entry>Reuse completion template from /command</entry>
- </row>
- <row>
- <entry>%-</entry>
- <entry>Stop completion</entry>
- </row>
- <row>
- <entry>%*</entry>
- <entry>Repeat last completion</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when command is used,
- arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_gui_buffer *</entry>
- <entry>buffer</entry>
- <entry>buffer where command is executed</entry>
- </row>
- <row>
- <entry>int</entry>
- <entry>argc</entry>
- <entry>argument count</entry>
- </row>
- <row>
- <entry>char **</entry>
- <entry>argv</entry>
- <entry>arguments</entry>
- </row>
- <row>
- <entry>char **</entry>
- <entry>argv_eol</entry>
- <entry>arguments (until end of line)</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- <para>
- For example, if command called is
- <command>/command abc def ghi</command>, then argv and argv_eol
- contain following values:
- <itemizedlist>
- <listitem><para>argv[0] == "abc"</para></listitem>
- <listitem><para>argv[1] == "def"</para></listitem>
- <listitem><para>argv[2] == "ghi"</para></listitem>
- <listitem><para>argv_eol[0] == "abc def ghi"</para></listitem>
- <listitem><para>argv_eol[1] == "def ghi"</para></listitem>
- <listitem><para>argv_eol[2] == "ghi"</para></listitem>
- </itemizedlist>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_command_cb (void *data, struct t_gui_buffer *buffer, int argc,
- char **argv, char **argv_eol)
-{
- /* ... */
- return WEECHAT_RC_OK;
-}
-
-/* this is an example, inspired by weechat command /filter */
-struct t_hook *my_command_hook =
- weechat_hook_command (/* command name */
- "myfilter",
- /* description */
- "description of myfilter",
- /* args */
- "[list] | [enable|disable|toggle [name]] | "
- "[add name plugin.buffer tags regex] | "
- "[del name|-all]",
- /* args description */
- "description of arguments...",
- /* completion */
- "list"
- " || enable %(filters_names)"
- " || disable %(filters_names)"
- " || toggle %(filters_names)"
- " || add %(filters_names) %(buffers_plugins_names)|*"
- " || del %(filters_names)|-all",
- /* callback */
- &amp;my_command_cb,
- /* callback_data */
- NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_command_run">
- <title>weechat_hook_command_run</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_command_run (
- const char *command,
- int (*callback)(void *data,
- struct t_gui_buffer *buffer,
- const char *command),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a command when WeeChat runs it.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>command</option>: command to hook, may start or end with
- "*" as joker
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when command is run,
- arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_gui_buffer *</entry>
- <entry>buffer</entry>
- <entry>buffer where command is executed</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>command</entry>
- <entry>the command executed, with its arguments</entry>
- </row>
- </tbody>
- </tgroup>
- The callback can return WEECHAT_RC_OK or WEECHAT_RC_OK_EAT (ok
- and "eat" command, will not be executed by WeeChat after
- callback).
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_command_run_cb (void *data, struct t_gui_buffer *buffer,
- const char *command)
-{
- weechat_printf (NULL,
- "You wanted to complete? I'm eating the completion ahah!");
- return WEECHAT_RC_OK_EAT;
-}
-
-struct t_hook *my_command_run_hook =
- weechat_hook_command_run ("/input complete*",
- &amp;my_command_run_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_timer">
- <title>weechat_hook_timer</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_timer (
- long interval,
- const char *align_second,
- const char *max_calls,
- int (*callback)(void *data, int remaining_calls),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a timer.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>interval</option>: interval between two calls
- (milliseconds, so 1000 = 1 second)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>align_second</option>: alignment on a second: align timer
- on a second. For example, if current time is 09:00, if
- interval = 60000 (60 seconds), and align_second = 60, then timer
- is called each minute when second is 00.
- </para>
- </listitem>
- <listitem>
- <para>
- <option>max_calls</option>: number of calls to timer (if 0, then
- timer has no end)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when time is reached,
- arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>int</entry>
- <entry>remaining_calls</entry>
- <entry>remaining calls (-1 if timer has no end)</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_timer_cb (void *data, int remaining_calls)
-{
- /* ... */
- return WEECHAT_RC_OK;
-}
-
-/* timer called each 20 seconds */
-struct t_hook *my_timer_hook =
- weechat_hook_timer (20 * 1000, 0, 0, &amp;my_timer_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_fd">
- <title>weechat_hook_fd</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_fd (
- int fd,
- int flag_read,
- int flag_write,
- int flag_exception,
- int (*callback)(void *data, int fd),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a file descriptor (file or socket).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>fd</option>: file descriptor
- </para>
- </listitem>
- <listitem>
- <para>
- <option>flag_read</option>: 1 for catching read event, 0 for
- ignoring it
- </para>
- </listitem>
- <listitem>
- <para>
- <option>flag_write</option>: 1 for catching write event, 0 for
- ignoring it
- </para>
- </listitem>
- <listitem>
- <para>
- <option>flag_exception</option>: 1 for catching exception event,
- 0 for ignoring it
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when a selected event
- occurs, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>int</entry>
- <entry>fd</entry>
- <entry>file descriptor</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_fd_cb (void *data, int fd)
-{
- /* ... */
- return WEECHAT_RC_OK;
-}
-
-int sock = socket (AF_INET, SOCK_STREAM, 0);
-/* set socket options */
-/* ... */
-/* hook socket */
-struct t_hook *my_fd_hook =
- weechat_hook_fd (sock, 1, 0, 0, &amp;my_fd_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_process">
- <title>weechat_hook_process</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_process (
- const char *command,
- int timeout,
- int (*callback)(void *data,
- const char *command,
- int return_code,
- const char *stdout,
- const char *stderr),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a process (with fork), and catch output.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>command</option>: command to launch in child process
- </para>
- </listitem>
- <listitem>
- <para>
- <option>timeout</option>: timeout for command (in milliseconds):
- after this timeout, child process is killed (0 means no timeout)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when data from child
- is available, or when child has ended, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>command</entry>
- <entry>command executed by child</entry>
- </row>
- <row>
- <entry>int</entry>
- <entry>return_code</entry>
- <entry>
- if &gt;= 0, it's child (command) return code (it's last
- call to this callback), if &lt; 0, it can be
- WEECHAT_HOOK_PROCESS_OK_RUNNING (data available, but
- child still running) or WEECHAT_HOOK_PROCESS_ERROR
- (error when launching command).
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_process_cb (void *data, const char *command, int return_code,
- const char *stdout, const char *stderr)
-{
- if (return_code == WEECHAT_HOOK_PROCESS_ERROR)
- {
- weechat_printf (NULL, "Error with command '%s'", command);
- return;
- }
-
- if (return_code &gt;= 0)
- {
- weechat_printf (NULL, "return_code = %d", return_code);
- }
-
- if (stdout)
- {
- weechat_printf (NULL, "stdout: %s", stdout);
- }
-
- if (stderr)
- {
- weechat_printf (NULL, "stderr: %s", stderr);
- }
-
- return WEECHAT_RC_OK;
-}
-
-struct t_hook *my_process_hook =
- weechat_hook_process ("ls", 5000, &amp;my_process_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_connect">
- <title>weechat_hook_connect</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_connect (
- const char *address,
- int port,
- int sock,
- int ipv6,
- void *gnutls_sess,
- const char *local_hostname,
- int (*callback)(void *data,
- int status,
- const char *ip_address),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a connection (background connection to a remote host).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>address</option>: name or IP address to connect to
- </para>
- </listitem>
- <listitem>
- <para>
- <option>port</option>: port number
- </para>
- </listitem>
- <listitem>
- <para>
- <option>sock</option>: socket used to connect
- </para>
- </listitem>
- <listitem>
- <para>
- <option>ipv6</option>: 1 to use IPv6, 0 to use IPv4
- </para>
- </listitem>
- <listitem>
- <para>
- <option>gnutls_sess</option>: GnuTLS session (optional)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when connection is ok
- or failed, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>int</entry>
- <entry>status</entry>
- <entry>
- constant with connection status:
- <itemizedlist>
- <listitem>
- <para>WEECHAT_HOOK_CONNECT_OK</para>
- </listitem>
- <listitem>
- <para>WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND</para>
- </listitem>
- <listitem>
- <para>WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND</para>
- </listitem>
- <listitem>
- <para>WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED</para>
- </listitem>
- <listitem>
- <para>WEECHAT_HOOK_CONNECT_PROXY_ERROR</para>
- </listitem>
- <listitem>
- <para>WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR</para>
- </listitem>
- <listitem>
- <para>WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR</para>
- </listitem>
- <listitem>
- <para>WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR</para>
- </listitem>
- <listitem>
- <para>WEECHAT_HOOK_CONNECT_MEMORY_ERROR</para>
- </listitem>
- </itemizedlist>
- </entry>
- </row>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_connect_cb (void *data, int status, const char *ip_address)
-{
- switch (status)
- {
- case WEECHAT_HOOK_CONNECT_OK:
- /* ... */
- break;
- case WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND:
- /* ... */
- break;
- case WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND:
- /* ... */
- break;
- case WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED:
- /* ... */
- break;
- case WEECHAT_HOOK_CONNECT_PROXY_ERROR:
- /* ... */
- break;
- case WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR:
- /* ... */
- break;
- case WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR:
- /* ... */
- break;
- case WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR:
- /* ... */
- break;
- case WEECHAT_HOOK_CONNECT_MEMORY_ERROR:
- /* ... */
- break;
- }
- return WEECHAT_RC_OK;
-}
-
-struct t_hook *my_connect_hook =
- weechat_hook_connect (sock, 1, 0, 0, &amp;my_connect_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_print">
- <title>weechat_hook_print</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_print (
- struct t_gui_buffer *buffer,
- const char *tags,
- const char *message,
- int strip_colors,
- int (*callback)(void *data,
- struct t_gui_buffer *buffer,
- time_t date,
- int tags_count,
- const char **tags,
- int displayed,
- int highlight,
- const char *prefix,
- const char *message),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a message printed.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer, if NULL, messages from
- any buffer are caught
- </para>
- </listitem>
- <listitem>
- <para>
- <option>tags</option>: only messages with these tags (comma
- separated list) will be caught (optional)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>message</option>: only messages with this string will be
- caught (optional)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>strip_colors</option>: colors will be stripped from
- message displayed, before calling callback
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when message is
- printed, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_gui_buffer *</entry>
- <entry>buffer</entry>
- <entry>buffer pointer</entry>
- </row>
- <row>
- <entry>time_t</entry>
- <entry>date</entry>
- <entry>date</entry>
- </row>
- <row>
- <entry>int</entry>
- <entry>tags_count</entry>
- <entry>number of tags for line</entry>
- </row>
- <row>
- <entry>const char **</entry>
- <entry>tags</entry>
- <entry>tags for line</entry>
- </row>
- <row>
- <entry>int</entry>
- <entry>displayed</entry>
- <entry>
- 1 if line is displayed, 0 if it is filtered
- </entry>
- </row>
- <row>
- <entry>int</entry>
- <entry>highlight</entry>
- <entry>1 if line has highlight, otherwise 0</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>prefix</entry>
- <entry>prefix</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>message</entry>
- <entry>message</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_print_cb (void *data, struct t_gui_buffer *buffer, time_t date,
- int tags_count, const char **tags,
- int displayed, int highlight,
- const char *prefix, const char *message)
-{
- /* ... */
- return WEECHAT_RC_OK;
-}
-
-/* catch all messages, on all buffers, without color */
-struct t_hook *my_print_hook =
- weechat_hook_print (NULL, NULL, NULL, 1, &amp;my_print_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_signal">
- <title>weechat_hook_signal</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_signal (
- const char *signal,
- int (*callback)(void *data,
- const char *signal,
- const char *type_data,
- void *signal_data),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a signal.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>signal</option>: signal to catch. List of signals sent by
- WeeChat or plugins:
- <informaltable colsep="0" frame="none">
- <tgroup cols="4">
- <thead>
- <row>
- <entry>Plugin</entry>
- <entry>Signal</entry>
- <entry>Arguments</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>irc</entry>
- <entry>xxx,irc_in_yyy (xxx is server name, yyy is command name)</entry>
- <entry>string: message</entry>
- <entry>irc message from server (before irc plugin uses it)</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>xxx,irc_in2_yyy (xxx is server name, yyy is command name)</entry>
- <entry>string: message</entry>
- <entry>irc message from server (after irc plugin uses it)</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>xxx,irc_out_yyy (xxx is server name, yyy is command name)</entry>
- <entry>string: message</entry>
- <entry>irc message sent to server</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_ctcp</entry>
- <entry>string: message</entry>
- <entry>CTCP received</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_dcc</entry>
- <entry>string: message</entry>
- <entry>new DCC</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_pv</entry>
- <entry>string: message</entry>
- <entry>private message received</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_channel_opened</entry>
- <entry>pointer: buffer</entry>
- <entry>channel opened</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_pvl_opened</entry>
- <entry>pointer: buffer</entry>
- <entry>private opened</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_server_connecting</entry>
- <entry>string: server name</entry>
- <entry>connecting to server</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_server_connected</entry>
- <entry>string: server name</entry>
- <entry>connected to server</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_server_disconnected</entry>
- <entry>string: server name</entry>
- <entry>disconnected from server</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_ignore_removing</entry>
- <entry>pointer: ignore</entry>
- <entry>removing ignore</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_ignore_removed</entry>
- <entry>pointer: ignore</entry>
- <entry>ignore removed</entry>
- </row>
- <row>
- <entry>logger</entry>
- <entry>logger_start</entry>
- <entry>pointer: buffer</entry>
- <entry>start logging for buffer</entry>
- </row>
- <row>
- <entry>logger</entry>
- <entry>logger_stop</entry>
- <entry>pointer: buffer</entry>
- <entry>stop logging for buffer</entry>
- </row>
- <row>
- <entry>logger</entry>
- <entry>logger_backlog</entry>
- <entry>pointer: buffer</entry>
- <entry>display backlog for buffer</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_closing</entry>
- <entry>pointer: buffer</entry>
- <entry>closing buffer</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_closed</entry>
- <entry>pointer: buffer</entry>
- <entry>buffer closed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_lines_hidden</entry>
- <entry>pointer: buffer</entry>
- <entry>lines hidden in buffer</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_localvar_added</entry>
- <entry>pointer: buffer</entry>
- <entry>local variable has been added</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_localvar_changed</entry>
- <entry>pointer: buffer</entry>
- <entry>local variable has changed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_localvar_removed</entry>
- <entry>pointer: buffer</entry>
- <entry>local variable has been removed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_moved</entry>
- <entry>pointer: buffer</entry>
- <entry>buffer moved</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_opened</entry>
- <entry>pointer: buffer</entry>
- <entry>buffer opened</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_renamed</entry>
- <entry>pointer: buffer</entry>
- <entry>buffer renamed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_switch</entry>
- <entry>pointer: buffer</entry>
- <entry>switching buffer</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_title_changed</entry>
- <entry>pointer: buffer</entry>
- <entry>title of buffer changed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>buffer_type_changed</entry>
- <entry>pointer: buffer</entry>
- <entry>type of buffer changed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>debug_dump</entry>
- <entry>-</entry>
- <entry>dump request</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>filter_added</entry>
- <entry>pointer: new filter</entry>
- <entry>filter added</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>filter_removing</entry>
- <entry>pointer: filter</entry>
- <entry>removing filter</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>filter_removed</entry>
- <entry>pointer: filter</entry>
- <entry>filter removed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>filters_enabled</entry>
- <entry>-</entry>
- <entry>filters enabled</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>filters_disabled</entry>
- <entry>-</entry>
- <entry>filters disabled</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>hotlist_changed</entry>
- <entry>-</entry>
- <entry>hotlist changed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>input_paste_pending</entry>
- <entry>-</entry>
- <entry>paste pending</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>input_search</entry>
- <entry>-</entry>
- <entry>input search</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>input_text_changed</entry>
- <entry>-</entry>
- <entry>input text changed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>input_text_cursor_moved</entry>
- <entry>-</entry>
- <entry>input text cursor moved</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>key_pressed</entry>
- <entry>string: key pressed</entry>
- <entry>key pressed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>nicklist_changed</entry>
- <entry>-</entry>
- <entry>nicklist has changed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>partial_completion</entry>
- <entry>-</entry>
- <entry>partial completion happened</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>quit</entry>
- <entry>arguments for command /quit</entry>
- <entry>command /quit issued by user</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>upgrade</entry>
- <entry>-</entry>
- <entry>command /upgrade issued by user</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>weechat_highlight</entry>
- <entry>string: message with prefix</entry>
- <entry>highlight displayed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>weechat_pv</entry>
- <entry>string: message with prefix</entry>
- <entry>private message displayed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>window_scrolled</entry>
- <entry>pointer: window</entry>
- <entry>scroll in window</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>window_unzooming</entry>
- <entry>pointer: current window</entry>
- <entry>unzooming window</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>window_unzoomed</entry>
- <entry>pointer: current window</entry>
- <entry>window unzoomed</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>window_zooming</entry>
- <entry>pointer: current window</entry>
- <entry>unzooming window</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>window_zoomed</entry>
- <entry>pointer: current window</entry>
- <entry>window unzoomed</entry>
- </row>
- <row>
- <entry>xfer</entry>
- <entry>xfer_add</entry>
- <entry>pointer: infolist with xfer info</entry>
- <entry>new xfer</entry>
- </row>
- <row>
- <entry>xfer</entry>
- <entry>xfer_send_ready</entry>
- <entry>pointer: infolist with xfer info</entry>
- <entry>xfer ready (file or chat, send)</entry>
- </row>
- <row>
- <entry>xfer</entry>
- <entry>xfer_accept_resume</entry>
- <entry>pointer: infolist with xfer info</entry>
- <entry>xfer accepts resume (send)</entry>
- </row>
- <row>
- <entry>xfer</entry>
- <entry>xfer_send_accept_resume</entry>
- <entry>pointer: infolist with xfer info</entry>
- <entry>xfer accepts resume (send)</entry>
- </row>
- <row>
- <entry>xfer</entry>
- <entry>xfer_start_resume</entry>
- <entry>pointer: infolist with xfer info</entry>
- <entry>start resume</entry>
- </row>
- <row>
- <entry>xfer</entry>
- <entry>xfer_resume_ready</entry>
- <entry>pointer: infolist with xfer info</entry>
- <entry>xfer resume ready</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when signal is
- received, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>signal</entry>
- <entry>signal received</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>type_data</entry>
- <entry>
- type of data sent with signal:
- WEECHAT_HOOK_SIGNAL_STRING, WEECHAT_HOOK_SIGNAL_INT
- or WEECHAT_HOOK_SIGNAL_POINTER
- </entry>
- </row>
- <row>
- <entry>void *</entry>
- <entry>signal_data</entry>
- <entry>data sent with signal</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_signal_cb (void *data, const char *signal, const char *type_data,
- void *signal_data)
-{
- /* ... */
- return WEECHAT_RC_OK;
-}
-
-/* catch signal "quit", sent by WeeChat when /quit command is executed */
-struct t_hook *my_signal_hook =
- weechat_hook_signal ("quit", &amp;my_signal_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_signal_send">
- <title>weechat_hook_signal_send</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_hook_signal_send (
- const char *signal,
- const char *type_data,
- void *signal_data);
-</programlisting>
- </para>
- <para>
- Send a signal.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>signal</option>: signal to send
- </para>
- </listitem>
- <listitem>
- <para>
- <option>type_data</option>: type of data sent with signal
- (see <xref linkend="secPluginCApi_weechat_hook_signal" />)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>signal_data</option>: data sent with signal
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_hook_signal_send ("my_signal", WEECHAT_HOOK_SIGNAL_STRING, my_string);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_config">
- <title>weechat_hook_config</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_config (
- const char *option,
- int (*callback)(void *data,
- const char *option,
- const char *value),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a configuration option.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>option</option>: option, format is full name, as used
- with /set command (for example:
- <literal>weechat.look.item_time_format</literal>)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when configuration
- option is changed, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>option</entry>
- <entry>name of option</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>value</entry>
- <entry>new value for option</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_config_cb (void *data, const char *option, const char *value)
-{
- /* ... */
- return WEECHAT_RC_OK;
-}
-
-/* catch changes to option "weechat.look.item_time_format" */
-struct t_hook *my_config_hook =
- weechat_hook_config ("weechat.look.item_time_format",
- &amp;my_config_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_completion">
- <title>weechat_hook_completion</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_completion (
- const char *completion_item,
- int (*callback)(void *data,
- const char *completion_item,
- struct t_gui_buffer *buffer,
- struct t_gui_completion *completion),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a completion.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>completion_item</option>: name of completion item,
- after you can use <literal>%(name)</literal> in a command hooked
- (argument "<literal>completion</literal>", see
- <xref linkend="secPluginCApi_weechat_hook_command" />)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when completion item
- is used (user is completing something using this item),
- arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>completion_item</entry>
- <entry>name of completion item</entry>
- </row>
- <row>
- <entry>struct t_gui_buffer *</entry>
- <entry>buffer</entry>
- <entry>buffer where completion was done</entry>
- </row>
- <row>
- <entry>struct t_gui_completion *</entry>
- <entry>completion</entry>
- <entry>
- structure used to add words for completion
- (see
- <xref linkend="secPluginCApi_weechat_hook_completion_list_add" />)
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_completion_cb (void *data, const char *completion_item,
- struct t_gui_buffer *buffer,
- struct t_gui_completion *completion)
-{
- /* ... */
- return WEECHAT_RC_OK;
-}
-
-struct t_hook *my_completion_hook =
- weechat_hook_completion ("myitem",
- &amp;my_completion_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_completion_list_add">
- <title>weechat_hook_completion_list_add</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_hook_completion_list_add (
- struct t_gui_completion *completion,
- const char *word,
- int nick_completion,
- const char *where);
-</programlisting>
- </para>
- <para>
- Add a word for a completion.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>completion</option>: completion pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>word</option>: word to add
- </para>
- </listitem>
- <listitem>
- <para>
- <option>nick_completion</option>: 1 if word is a nick, 0 if word
- is not a nick
- </para>
- </listitem>
- <listitem>
- <para>
- <option>where</option>: position where word will be inserted in
- list: WEECHAT_LIST_POS_SORT, WEECHAT_LIST_POS_BEGINNING or
- WEECHAT_LIST_POS_END
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-int
-my_completion_cb (void *data, const char *completion_item,
- struct t_gui_buffer *buffer,
- struct t_gui_completion *completion)
-{
- weechat_hook_completion_list_add (completion, "word1",
- 0, WEECHAT_LIST_POS_SORT);
- weechat_hook_completion_list_add (completion, "test_word2",
- 0, WEECHAT_LIST_POS_SORT);
- return WEECHAT_RC_OK;
-}
-
-struct t_hook *my_completion_hook =
- weechat_hook_completion ("myitem",
- &amp;my_completion_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_modifier">
- <title>weechat_hook_modifier</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_modifier (
- const char *modifier,
- char *(*callback)(void *data,
- const char *modifier,
- const char *modifier_data,
- const char *string),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook a modifier.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>modifier</option>: modifier name, list of modifiers used
- by Weechat or plugins:
- <informaltable colsep="0" frame="none">
- <tgroup cols="5">
- <thead>
- <row>
- <entry>Plugin</entry>
- <entry>Modifier</entry>
- <entry>Modifier data</entry>
- <entry>String</entry>
- <entry>Output</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>charset</entry>
- <entry>charset_decode</entry>
- <entry>plugin.buffer_name</entry>
- <entry>any string</entry>
- <entry>string decoded from charset found for plugin/buffer to UTF-8</entry>
- </row>
- <row>
- <entry>charset</entry>
- <entry>charset_encode</entry>
- <entry>plugin.buffer_name</entry>
- <entry>any string</entry>
- <entry>string encoded from UTF-8 to charset found for plugin/buffer</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_color_decode</entry>
- <entry>"1" to keep colors, "0" to remove colors</entry>
- <entry>any string</entry>
- <entry>string with WeeChat color codes, or without color</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_color_encode</entry>
- <entry>"1" to keep colors, "0" to remove colors</entry>
- <entry>any string, with user colors</entry>
- <entry>string with IRC color codes, or without color</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_in_xxx (xxx is IRC command name)</entry>
- <entry>server name</entry>
- <entry>content of message received from IRC server</entry>
- <entry>new content of message</entry>
- </row>
- <row>
- <entry>irc</entry>
- <entry>irc_out_xxx (xxx is IRC command name)</entry>
- <entry>server name</entry>
- <entry>content of message about to be sent to IRC server</entry>
- <entry>new content of message</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>input_text_content</entry>
- <entry>string with buffer pointer ("0x123..")</entry>
- <entry>input buffer (from user)</entry>
- <entry>new content of input buffer</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>input_text_display</entry>
- <entry>string with buffer pointer ("0x123..")</entry>
- <entry>input buffer (from user), without cursor tag</entry>
- <entry>new content of input buffer, for display only (input buffer is not changed)</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>input_text_display_with_cursor</entry>
- <entry>string with buffer pointer ("0x123..")</entry>
- <entry>input buffer (from user), with cursor tag</entry>
- <entry>new content of input buffer, for display only (input buffer is not changed)</entry>
- </row>
- <row>
- <entry>weechat</entry>
- <entry>weechat_print</entry>
- <entry>plugin;buffer_name;tags</entry>
- <entry>message printed</entry>
- <entry>new message printed</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when modifier is
- received, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>modifier</entry>
- <entry>name of modifier</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>modifier_data</entry>
- <entry>modifier data</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>string</entry>
- <entry>
- string to modify (function must return copy of this
- string, no changes are allowed in this string)
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-char *
-my_modifier_cb (void *data, const char *modifier,
- const char *modifier_data,
- const char *string)
-{
- char *result;
- int length;
-
- if (!string)
- return NULL;
-
- length = strlen (string) + 4;
- result = malloc (length);
- if (result)
- {
- /* add "xxx" to any message printed */
- snprintf (result, length, "%s xxx", string);
- }
-
- return result;
-}
-
-struct t_hook *my_modifier_hook =
- weechat_hook_modifier ("weechat_print",
- &amp;my_modifier_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_modifier_exec">
- <title>weechat_hook_modifier_exec</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_hook_modifier_exec (
- const char *modifier,
- const char *modifier_data,
- const char *string);
-</programlisting>
- </para>
- <para>
- Execute modifier(s).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>modifier</option>: modifier name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>modifier_data</option>: modifier data
- </para>
- </listitem>
- <listitem>
- <para>
- <option>string</option>: string to modify
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string modified, NULL if no changes in string were
- made by modifier(s).
- </para>
- <para>
- Example:
-<screen>
- char *new_string =
- weechat_hook_modifier_exec ("my_modifier", my_data, my_string);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_info">
- <title>weechat_hook_info</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_info (
- const char *info_name,
- const char *description,
- const char *(*callback)(void *data,
- const char *info_name,
- const char *arguments),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook an information: callback will return pointer to info asked.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>info_name</option>: name of info
- </para>
- </listitem>
- <listitem>
- <para>
- <option>description</option>: description
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when info is asked,
- arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>info_name</entry>
- <entry>name of info to return</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>arguments</entry>
- <entry>additional arguments, depending on info</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-const char *
-my_info_cb (void *data, const char *info_name, const char *arguments)
-{
- /* ... */
- return pointer_to_string;
-}
-
-/* add info "my_info" */
-struct t_hook *my_info =
- weechat_hook_info ("my_info", "Some info about something",
- &amp;my_info_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_hook_infolist">
- <title>weechat_hook_infolist</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_hook *weechat_hook_infolist (
- const char *infolist_name,
- const char *description,
- const char *(*callback)(void *data,
- const char *infolist_name,
- void *pointer,
- const char *arguments),
- void *callback_data);
-</programlisting>
- </para>
- <para>
- Hook an infolist: callback will return pointer to infolist asked.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist_name</option>: name of infolist
- </para>
- </listitem>
- <listitem>
- <para>
- <option>description</option>: description
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback</option>: function called when infolist is asked,
- arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>infolist_name</entry>
- <entry>name of infolist to return</entry>
- </row>
- <row>
- <entry>void *</entry>
- <entry>pointer</entry>
- <entry>
- pointer to an item infolist must return (to get only
- one item in infolist)
- </entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>arguments</entry>
- <entry>additional arguments, depending on infolist</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>callback_data</option>: pointer given to callback when it
- is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new hook, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-struct t_infolist *
-my_infolist_cb (void *data, const char *infolist_name, void *pointer,
- const char *arguments)
-{
- /* ... build infolist ... */
- return my_infolist;
-}
-
-/* add info "my_infolist" */
-struct t_hook *my_infolist =
- weechat_hook_infolist ("my_infolist", "Infolist with some data",
- &amp;my_infolist_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_unhook">
- <title>weechat_unhook</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_unhook (struct t_hook *hook);
-</programlisting>
- </para>
- <para>
- Unhook something hooked.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>hook</option>: something hooked with weechat_hook_xxxx()
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-struct t_hook *my_hook = weechat_hook_command (...);
-/* ... */
-weechat_unhook (my_hook);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_unhook_all">
- <title>weechat_unhook_all</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_unhook_all ();
-</programlisting>
- </para>
- <para>
- Unhook everything that has been hooked by current plugin.
- </para>
- <para>
- Example:
-<screen>
-weechat_unhook_all ();
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ============================[ buffers ]============================= -->
-
- <section id="secPluginCApi_buffers">
- <title>Buffers</title>
-
- <para>
- Functions to create/query/close buffers.
- </para>
-
- <section id="secPluginCApi_weechat_buffer_new">
- <title>weechat_buffer_new</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_buffer *weechat_buffer_new (
- const char *name,
- int (*input_callback)(void *data,
- struct t_gui_buffer *buffer,
- const char *input_data),
- void *input_callback_data,
- int (*close_callback)(void *data,
- struct t_gui_buffer *buffer),
- void *close_callback_data);
-</programlisting>
- </para>
- <para>
- Open a new buffer.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>name</option>: name of buffer (must be unique)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>input_callback</option>: function called when input text
- is entered on buffer, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_gui_buffer *</entry>
- <entry>buffer</entry>
- <entry>buffer pointer</entry>
- </row>
- <row>
- <entry>const char *</entry>
- <entry>input_data</entry>
- <entry>input data</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>input_callback_data</option>: pointer given to input
- callback when it is called by WeeChat
- </para>
- </listitem>
- <listitem>
- <para>
- <option>close_callback</option>: function called when buffer is
- closed, arguments:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>void *</entry>
- <entry>data</entry>
- <entry>pointer</entry>
- </row>
- <row>
- <entry>struct t_gui_buffer *</entry>
- <entry>buffer</entry>
- <entry>buffer pointer</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>close_callback_data</option>: pointer given to close
- callback when it is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new buffer, NULL if error occured.
- </para>
- <para>
- Example:
-<screen>
-int
-my_input_cb (void *data, struct t_gui_buffer *buffer, const char *input_data)
-{
- weechat_printf (buffer, "Text: %s", input_data);
- return WEECHAT_RC_OK;
-}
-
-int
-my_close_cb (void *data, struct t_gui_buffer *buffer)
-{
- weechat_printf (NULL, "Buffer '%s' will be closed!",
- weechat_buffer_get_string (buffer, "name"));
- return WEECHAT_RC_OK;
-}
-
-struct t_gui_buffer *my_buffer =
- weechat_buffer_new ("my_buffer",
- &amp;my_input_cb, NULL, &amp;my_close_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_current_buffer">
- <title>weechat_current_buffer</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_buffer *weechat_current_buffer ();
-</programlisting>
- </para>
- <para>
- Return pointer to current buffer (buffer displayed by current window).
- </para>
- <para>
- Return value: pointer to current buffer.
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_buffer *current_buffer = weechat_current_buffer ();
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_buffer_search">
- <title>weechat_buffer_search</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_buffer *weechat_buffer_search (const char *plugin, const char *name);
-</programlisting>
- </para>
- <para>
- Search a buffer by plugin and/or buffer name.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>plugin</option>: name of plugin
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: name of buffer. If it is NULL or empty
- string, then current buffer is returned (buffer displayed by
- current window).
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to buffer found, NULL if not found.
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_buffer *weechat_buffer = weechat_buffer_search ("core", "weechat");
-struct t_gui_buffer *my_buffer = weechat_buffer_search ("myplugin", "my_buffer");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_buffer_clear">
- <title>weechat_buffer_clear</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_buffer_clear (struct t_gui_buffer *buffer);
-</programlisting>
- </para>
- <para>
- Clear content of a buffer.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_buffer *my_buffer = weechat_buffer_search ("myplugin", "my_buffer");
-if (my_buffer)
-{
- weechat_buffer_clear (my_buffer);
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_buffer_close">
- <title>weechat_buffer_close</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_buffer_close (struct t_gui_buffer *buffer)
-</programlisting>
- </para>
- <para>
- Close a buffer.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_buffer *my_buffer =
- weechat_buffer_new ("my_buffer",
- &amp;my_input_cb, NULL, &amp;my_close_cb, NULL);
-/* ... */
-weechat_buffer_close (my_buffer);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_buffer_get_integer">
- <title>weechat_buffer_get_integer</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_buffer_get_integer (struct t_gui_buffer *buffer, const char *property);
-</programlisting>
- </para>
- <para>
- Get integer value of a buffer property.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>property</option>: property name:
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>number</entry>
- <entry>number of buffer (1 to # open buffers)</entry>
- </row>
- <row>
- <entry>num_displayed</entry>
- <entry>number of windows displaying buffer</entry>
- </row>
- <row>
- <entry>notify</entry>
- <entry>notify level for buffer</entry>
- </row>
- <row>
- <entry>lines_hidden</entry>
- <entry>
- 1 if at least one line is hidden on buffer
- (filtered), or 0 if all lines are displayed
- </entry>
- </row>
- <row>
- <entry>prefix_max_length</entry>
- <entry>max length for prefix in this buffer</entry>
- </row>
- <row>
- <entry>time_for_each_line</entry>
- <entry>
- 1 if time is displayed for each line in buffer
- (default), 0 otherwise
- </entry>
- </row>
- <row>
- <entry>text_search</entry>
- <entry>
- text search type: 0 = disabled, 1 = backward, 2 = forward
- </entry>
- </row>
- <row>
- <entry>text_search_exact</entry>
- <entry>1 if text search is exact (case sensitive)</entry>
- </row>
- <row>
- <entry>text_search_found</entry>
- <entry>1 if text found, 0 otherwise</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: integer value of property.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "my buffer number is: %d",
- weechat_buffer_get_integer (my_buffer, "number"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_buffer_get_string">
- <title>weechat_buffer_get_string</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_buffer_get_string (struct t_gui_buffer *buffer, const char *property);
-</programlisting>
- </para>
- <para>
- Get string value of a buffer property.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>property</option>: property name:
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>plugin</entry>
- <entry>
- name of plugin which created this buffer ("core" for
- WeeChat main buffer)
- </entry>
- </row>
- <row>
- <entry>name</entry>
- <entry>name of buffer</entry>
- </row>
- <row>
- <entry>short_name</entry>
- <entry>short name of buffer</entry>
- </row>
- <row>
- <entry>tilte</entry>
- <entry>title of buffer</entry>
- </row>
- <row>
- <entry>input</entry>
- <entry>input text</entry>
- </row>
- <row>
- <entry>localvar_xxx</entry>
- <entry>
- get content of local varialbe "xxx" (replace
- "xxx" by the name of variable you want to read)
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string value of property.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "name / short name of buffer are: %s / %s",
- weechat_buffer_get_string (my_buffer, "name"),
- weechat_buffer_get_string (my_buffer, "short_name"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_buffer_get_pointer">
- <title>weechat_buffer_get_pointer</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_buffer_pointer (struct t_gui_buffer *buffer, const char *property);
-</programlisting>
- </para>
- <para>
- Get pointer value of a buffer property.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>property</option>: property name:
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>plugin</entry>
- <entry>plugin pointer</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer value of property.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "plugin pointer of my buffer: %lx",
- weechat_buffer_get_pointer (my_buffer, "plugin"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_buffer_set">
- <title>weechat_buffer_set</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_buffer_set (struct t_gui_buffer *buffer, const char *property,
- const char *value);
-</programlisting>
- </para>
- <para>
- Set string value of a buffer property.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>property</option>: property name:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Name</entry>
- <entry>Value</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>hotlist</entry>
- <entry>
- "+", "-", WEECHAT_HOTLIST_LOW, WEECHAT_HOTLIST_MESSAGE,
- WEECHAT_HOTLIST_PRIVATE, WEECHAT_HOTLIST_HIGHLIGHT
- </entry>
- <entry>
- <para>
- "+": enable hotlist (global setting, buffer pointer
- is not used)
- </para>
- <para>
- "-": disable hotlist (global setting, buffer pointer
- is not used); when hotlist is disabled, messages
- printed in buffers does not change hotlist (but
- content of current hotlist is not cleared)
- </para>
- <para>
- priority: add buffer to hotlist with this priority
- </para>
- </entry>
- </row>
- <row>
- <entry>unread</entry>
- <entry>N/A</entry>
- <entry>
- set unread marker on current line for buffer
- </entry>
- </row>
- <row>
- <entry>display</entry>
- <entry>"1", "auto"</entry>
- <entry>
- switch to this buffer in current window (if value is
- "auto", then it's considered as auto-switch and read
- marker is not reset for current buffer)
- </entry>
- </row>
- <row>
- <entry>name</entry>
- <entry>any string</entry>
- <entry>set new name for buffer</entry>
- </row>
- <row>
- <entry>short_name</entry>
- <entry>any string</entry>
- <entry>set new short name for buffer</entry>
- </row>
- <row>
- <entry>type</entry>
- <entry>"formatted" or "free"</entry>
- <entry>
- set type for buffer: "formatted" (for printing
- chat messages), or "free" for free content
- </entry>
- </row>
- <row>
- <entry>notify</entry>
- <entry>"0", "1", "2", "3"</entry>
- <entry>
- set notify level for buffer: "0" = never add to hotlist,
- "1" = add for highlights only, "2" = add for highlights
- and messages, "3" = add for ell messages
- </entry>
- </row>
- <row>
- <entry>title</entry>
- <entry>any string</entry>
- <entry>set new title for buffer</entry>
- </row>
- <row>
- <entry>time_for_each_line</entry>
- <entry>"0" or "1"</entry>
- <entry>
- "0" to hide time for all lines in buffer, "1" to
- see time for all lines (default for a new buffer)
- </entry>
- </row>
- <row>
- <entry>nicklist</entry>
- <entry>"0" or "1"</entry>
- <entry>
- "0" to remove nicklist for buffer, "1" to add
- nicklist for buffer
- </entry>
- </row>
- <row>
- <entry>nicklist_case_sensitive</entry>
- <entry>"0" or "1"</entry>
- <entry>
- "0" to have case insensitive nicklist, "1" to have
- case sensitive nicklist
- </entry>
- </row>
- <row>
- <entry>nicklist_display_groups</entry>
- <entry>"0" or "1"</entry>
- <entry>
- "0" to hide nicklist groups, "1" to display nicklist
- groups
- </entry>
- </row>
- <row>
- <entry>highlight_words</entry>
- <entry>"-" or comma separated list of words</entry>
- <entry>
- "-" is a special value to disable any highlight on this
- buffer, or comma separated list of words to highlight
- in this buffer, for example: "abc,def,ghi"
- </entry>
- </row>
- <row>
- <entry>highlight_tags</entry>
- <entry>comma separated list of tags</entry>
- <entry>
- comma separated list of tags to highlight in this
- buffer
- </entry>
- </row>
- <row>
- <entry>key_bind_xxx</entry>
- <entry>any string</entry>
- <entry>
- bind a new key, specific to this buffer (replace "xxx"
- by the key, for example "meta-I" to bind alt+i) ; the
- value is text or command to execute
- </entry>
- </row>
- <row>
- <entry>key_bind_xxx</entry>
- <entry>N/A</entry>
- <entry>
- unbind a key (which was bound with above property)
- </entry>
- </row>
- <row>
- <entry>input</entry>
- <entry>any string</entry>
- <entry>set new value for buffer input</entry>
- </row>
- <row>
- <entry>input_get_unknown_commands</entry>
- <entry>"0" or "1"</entry>
- <entry>
- "0" to disable unknown commands on this buffer
- (default behaviour), "1" to get unknown commands,
- for example if user type "/unknowncmd", buffer will
- receive it (no error about unknown command)
- </entry>
- </row>
- <row>
- <entry>localvar_set_xxx</entry>
- <entry>any string</entry>
- <entry>
- set new value for a local variable (replace "xxx" by
- variable name) ; variable is created if it does not
- exist
- </entry>
- </row>
- <row>
- <entry>localvar_del_xxx</entry>
- <entry>any string</entry>
- <entry>
- remove a local variable (replace "xxx" by variable name)
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-/* disable hotlist (for all buffers) */
-weechat_buffer_set (NULL, "hotlist", "-");
-
-/* enable again hotlist */
-weechat_buffer_set (NULL, "hotlist", "+");
-
-/* change buffer name */
-weechat_buffer_set (my_buffer, "name", "my_new_name");
-
-/* add new local variable "toto" with value "my_value" */
-weechat_buffer_set (my_buffer, "localvar_set_toto", "my_value");
-
-/* remove local variable "toto" */
-weechat_buffer_set (my_buffer, "localvar_del_toto", NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_buffer_set_pointer">
- <title>weechat_buffer_set_pointer</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_buffer_set_pointer (struct t_gui_buffer *buffer, const char *property,
- void *pointer);
-</programlisting>
- </para>
- <para>
- Set pointer value of a buffer property.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>property</option>: property name:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Name</entry>
- <entry>Value</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>close_callback</entry>
- <entry>close callback function</entry>
- <entry>close callback function</entry>
- </row>
- <row>
- <entry>close_callback_data</entry>
- <entry>close callback data pointer</entry>
- <entry>close callback data pointer</entry>
- </row>
- <row>
- <entry>input_callback</entry>
- <entry>input callback function</entry>
- <entry>input callback function</entry>
- </row>
- <row>
- <entry>input_callback_data</entry>
- <entry>input callback data pointer</entry>
- <entry>input callback data pointer</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-int
-my_close_cb (void *data, struct t_gui_buffer *buffer)
-{
- /* ... */
- return WEECHAT_RC_OK;
-}
-
-weechat_buffer_set_pointer (NULL, "close_callback", &amp;my_close_cb);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_buffer_string_replace_local_var">
- <title>weechat_buffer_string_replace_local_var</title>
-
- <para>
- Prototype:
-<programlisting>
-char *weechat_buffer_string_replace_local_var (struct t_gui_buffer *buffer,
- const char *string);
-</programlisting>
- </para>
- <para>
- Replace local variables in a string by their value, using buffer local
- variables.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>string</option>: string with text and local variables
- using format "$var"
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string with value for local variables.
- </para>
- <note>
- <para>
- Result has to be free by a call to "free" after use.
- </para>
- </note>
- <para>
- Example:
-<screen>
-weechat_buffer_set (my_buffer, "localvar_set_toto", "my_value");
-
-char *str = weechat_buffer_string_replace_local_var (my_buffer,
- "test with $toto");
-/* str contains "test with my_value" */
-/* ... */
-free (str);
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ============================[ windows ]============================= -->
-
- <section id="secPluginCApi_windows">
- <title>Windows</title>
-
- <para>
- Functions to query windows.
- </para>
-
- <section id="secPluginCApi_weechat_current_window">
- <title>weechat_current_window</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_window *weechat_current_window ();
-</programlisting>
- </para>
- <para>
- Return pointer to current window.
- </para>
- <para>
- Return value: pointer to current window.
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_window *current_window = weechat_current_window ();
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_window_get_integer">
- <title>weechat_window_get_integer</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_window_get_integer (struct t_gui_window *window, const char *property);
-</programlisting>
- </para>
- <para>
- Get integer value of a window property.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>window</option>: window pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>property</option>: property name:
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>win_x</entry>
- <entry>
- X position of window in terminal (0 is first column)
- </entry>
- </row>
- <row>
- <entry>win_y</entry>
- <entry>
- Y position of window in terminal (0 is first column)
- </entry>
- </row>
- <row>
- <entry>win_width</entry>
- <entry>width of window, in chars</entry>
- </row>
- <row>
- <entry>win_height</entry>
- <entry>height of window, in chars</entry>
- </row>
- <row>
- <entry>win_width_pct</entry>
- <entry>
- percentage size, compared to parent window (if 50,
- width is half)
- </entry>
- </row>
- <row>
- <entry>win_height_pct</entry>
- <entry>
- percentage size, compared to parent window (if 50,
- height is half)
- </entry>
- </row>
- <row>
- <entry>win_chat_x</entry>
- <entry>
- X position of chat window in terminal (0 is first
- column)
- </entry>
- </row>
- <row>
- <entry>win_chat_y</entry>
- <entry>
- Y position of chat window in terminal (0 is first
- column)
- </entry>
- </row>
- <row>
- <entry>win_chat_width</entry>
- <entry>width of chat window, in chars</entry>
- </row>
- <row>
- <entry>win_chat_height</entry>
- <entry>height of chat window, in chars</entry>
- </row>
- <row>
- <entry>first_line_displayed</entry>
- <entry>
- 1 if first line of buffer is displayed on screen,
- otherwise 0
- </entry>
- </row>
- <row>
- <entry>scroll</entry>
- <entry>
- 1 if scroll is active on window (last line not
- displayed)
- </entry>
- </row>
- <row>
- <entry>scroll_lines_after</entry>
- <entry>
- number of lines not displayed after last one displayed
- (when scrolling)
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: integer value of property.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "current window is at position (x,y): (%d,%d)",
- weechat_window_get_integer (weechat_current_window, "win_x"),
- weechat_window_get_integer (weechat_current_window, "win_y"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_window_get_string">
- <title>weechat_window_get_string</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_window_get_string (struct t_gui_window *window, const char *property);
-</programlisting>
- </para>
- <para>
- Get string value of a window property. NOT USED TODAY, reserved for
- future version.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>window</option>: window pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>property</option>: property name
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string value of property.
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_window_get_pointer">
- <title>weechat_window_get_pointer</title>
-
- <para>
- Prototype:
-<programlisting>
-void *weechat_window_get_pointer (struct t_gui_window *window, const char *property);
-</programlisting>
- </para>
- <para>
- Get pointer value of a window property.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>window</option>: window pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>property</option>: property name:
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>current</entry>
- <entry>current window pointer</entry>
- </row>
- <row>
- <entry>buffer</entry>
- <entry>pointer to buffer displayed by window</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer value of property.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "current window pointer is: %lx, buffer displayed is: %lx",
- weechat_window_get_pointer (NULL, "current"),
- weechat_window_get_integer (weechat_current_window, "buffer"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_window_set_title">
- <title>weechat_window_set_title</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_window_set_title (const char *title);
-</programlisting>
- </para>
- <para>
- Set title for window (terminal for Curses interface).
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>title</option>: new title (if empty, then title is reset)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_window_set_title ("new title");
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ============================[ nicklist ]============================ -->
-
- <section id="secPluginCApi_nicklist">
- <title>Nicklist</title>
-
- <para>
- Functions for buffer nicklist.
- </para>
-
- <section id="secPluginCApi_weechat_nicklist_add_group">
- <title>weechat_nicklist_add_group</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_nick_group *weechat_nicklist_add_group (
- struct t_gui_buffer *buffer,
- struct t_gui_nick_group *parent_group,
- const char *name,
- const char *color,
- int visible);
-</programlisting>
- </para>
- <para>
- Add a group in a nicklist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>parent_group</option>: pointer to parent of group, NULL
- if group has no parent (nicklist root)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: group name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>visible</option>: 1 if group and sub-groups/nicks are
- visible, 0 if they are hidden
- </para>
- </listitem>
- <listitem>
- <para>
- <option>color</option>: color option name
- ("weechat.color.xxx" or "file.section.option") or color name
- ("blue", "red",..) or "bar_fg"/"bar_bg"/"bar_delim" (bar
- foreground/background/delimiter)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <note>
- <para>
- The group name can begin with one or more digits, followed by pipe,
- and then group name. When such string is found at beginning, it's
- used to sort groups in nicklist. For examples groups "1|test" and
- "2|abc" will be sorted: "test" first, "abc" second, whereas "test"
- and "abc" will be sorted: "abc" first, "test" second.
- </para>
- </note>
- <para>
- Return value: pointer to new group, NULL if an error occured.
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_nick_group *my_group =
- weechat_nicklist_add_group (my_buffer, my_parent_group,
- "test_group", "weechat.color.nicklist_group", 1);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_nicklist_search_group">
- <title>weechat_nicklist_search_group</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_nick_group *weechat_nicklist_search_group (
- struct t_gui_buffer *buffer,
- struct t_gui_nick_group *from_group,
- const char *name);
-</programlisting>
- </para>
- <para>
- Search a group in a nicklist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>from_group</option>: search from this group only, if NULL,
- then search in whole nicklist
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: group name to search
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to group found, NULL if not found.
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_nick_group *ptr_group =
- weechat_nicklist_search_group (my_buffer, NULL, "test_group");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_nicklist_add_nick">
- <title>weechat_nicklist_add_nick</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_nick_group *weechat_nicklist_add_nick (
- struct t_gui_buffer *buffer,
- struct t_gui_nick_group *group,
- const char *name,
- const char *color,
- const char *prefix,
- const char *prefix_color,
- int visible);
-</programlisting>
- </para>
- <para>
- Add a nick in a group.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>group</option>: group pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: nick name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>color</option>: color option name
- ("weechat.color.xxx" or "file.section.option") or color name
- ("blue", "red",..) or "bar_fg"/"bar_bg"/"bar_delim" (bar
- foreground/background/delimiter)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>prefix</option>: prefix displayed before nick
- </para>
- </listitem>
- <listitem>
- <para>
- <option>prefix_color</option>: color option name
- ("weechat.color.xxx" or "file.section.option") or color name
- ("blue", "red",..) or "bar_fg"/"bar_bg"/"bar_delim" (bar
- foreground/background/delimiter)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>visible</option>: 1 if nick is visible, 0 if it is hidden
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new nick, NULL if an error occured.
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_nick *my_nick =
- weechat_nicklist_add_nick (my_buffer, my_group,
- "test_nick",
- (nick_away) ? "weechat.color.nicklist_away" : "bar_fg",
- "@", "lightgreen",
- 1);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_nicklist_search_nick">
- <title>weechat_nicklist_search_nick</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_nick *weechat_nicklist_search_nick (
- struct t_gui_buffer *buffer,
- struct t_gui_nick_group *from_group,
- const char *name);
-</programlisting>
- </para>
- <para>
- Search a nick in a nicklist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>from_group</option>: search from this group only, if NULL,
- then search in whole nicklist
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: nick name to search
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to nick found, NULL if not found.
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_nick *ptr_nick =
- weechat_nicklist_search_nick (my_buffer, NULL, "test_nick");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_nicklist_remove_group">
- <title>weechat_nicklist_remove_group</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_nicklist_remove_group (
- struct t_gui_buffer *buffer,
- struct t_gui_nick_group *group);
-</programlisting>
- </para>
- <para>
- Remove a group from a nicklist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>group</option>: group pointer to remove (all
- sub-groups/nicks will be removed too)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_nicklist_remove_group (my_buffer, my_group);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_nicklist_remove_nick">
- <title>weechat_nicklist_remove_nick</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_nicklist_remove_nick (
- struct t_gui_buffer *buffer,
- struct t_gui_nick *nick);
-</programlisting>
- </para>
- <para>
- Remove a nick from a nicklist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>nick</option>: nick pointer to remove
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_nicklist_remove_nick (my_buffer, my_nick);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_nicklist_remove_all">
- <title>weechat_nicklist_remove_all</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_nicklist_remove_all (struct t_gui_buffer *buffer);
-</programlisting>
- </para>
- <para>
- Remove all groups/nicks from a nicklist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_nicklist_remove_all (my_buffer);
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ==============================[ bars ]============================== -->
-
- <section id="secPluginCApi_bars">
- <title>Bars</title>
-
- <para>
- Functions for bars.
- </para>
-
- <section id="secPluginCApi_weechat_bar_item_search">
- <title>weechat_bar_item_search</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_bar_item *weechat_bar_item_search (const char *name);
-</programlisting>
- </para>
- <para>
- Search a bar item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>name</option>: bar item name
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to bar item found, NULL if bar item was not found.
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_bar_item *bar_item = weechat_bar_item_search ("myitem");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_bar_item_new">
- <title>weechat_bar_item_new</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_bar_item *weechat_bar_item_new (
- const char *name,
- char *(build_callback)(void *data,
- struct t_gui_bar_item *item,
- struct t_gui_window *window),
- void *build_callback_data);
-</programlisting>
- </para>
- <para>
- Create a new bar item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>name</option>: bar item name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>build_callback</option>: function called when bar item
- is built: it must return content of bar item
- </para>
- </listitem>
- <listitem>
- <para>
- <option>build_callback_data</option>: pointer given to build
- callback, when it is called by Weechat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new bar item, NULL if an error occured.
- </para>
- <para>
- Example:
-<screen>
-char *
-my_build_callback (void *data,
- struct t_gui_bar_item *item,
- struct t_gui_window *window)
-{
- return strdup ("my content");
-}
-
-struct t_gui_bar_item *my_item = weechat_bar_item_new ("myitem",
- &amp;my_build_callback,
- NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_bar_item_update">
- <title>weechat_bar_item_update</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_bar_item_update (const char *name);
-</programlisting>
- </para>
- <para>
- Update content of a bar item, by calling its build callback.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>name</option>: bar item name
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_bar_item_update ("myitem");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_bar_item_remove">
- <title>weechat_bar_item_remove</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_bar_item_remove (struct t_gui_bar_item *item);
-</programlisting>
- </para>
- <para>
- Remove a bar item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>item</option>: bar item pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_bar_item_remove (&amp;my_item);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_bar_search">
- <title>weechat_bar_search</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_bar_item *weechat_bar_search (const char *name);
-</programlisting>
- </para>
- <para>
- Search a bar.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>name</option>: bar name
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to bar found, NULL if bar was not found.
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_bar *bar = weechat_bar_search ("mybar");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_bar_new">
- <title>weechat_bar_new</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_gui_bar *weechat_bar_new (
- const char *name,
- const char *hidden,
- const char *priority,
- const char *type,
- const char *condition,
- const char *position,
- const char *filling_top_bottom,
- const char *filling_left_right,
- const char *size,
- const char *size_max,
- const char *color_fg,
- const char *color_delim,
- const char *color_bg,
- const char *separator,
- const char *items);
-</programlisting>
- </para>
- <para>
- Create a new item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>name</option>: bar item name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>hidden</option>: "on" if bar is hidden, "off" is bar is
- visible
- </para>
- </listitem>
- <listitem>
- <para>
- <option>priority</option>: bar priority (integer)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>type</option>: "root" (bar displayed once, outside
- windows), or "window" (bar displayed in each window)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>condition</option>: condition for displaying bar, one of
- following:
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Condition</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>active</entry>
- <entry>
- bar is displayed in active window only
- </entry>
- </row>
- <row>
- <entry>inactive</entry>
- <entry>
- bar is displayed in inactive window(s) only
- </entry>
- </row>
- <row>
- <entry>nicklist</entry>
- <entry>bar is displayed in window(s) with nicklist</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>position</option>: "top", "bottom", "left" or "right"
- </para>
- </listitem>
- <listitem>
- <para>
- <option>filling_top_bottom</option>: filling when bar is in
- position "top" or "bottom", one of following:
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Filling</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>horizontal</entry>
- <entry>
- items are filled horitontally (space after each item)
- </entry>
- </row>
- <row>
- <entry>vertical</entry>
- <entry>
- items are filled verticaly (new line after each item)
- </entry>
- </row>
- <row>
- <entry>columns_horizontal</entry>
- <entry>
- items are filled horizontally, displayed with columns
- </entry>
- </row>
- <row>
- <entry>columns_vertical</entry>
- <entry>
- items are filled vertically, displayed with columns
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>filling_left_right</option>: filling when bar is in
- position "left" or "right", one of following:
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Filling</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>horizontal</entry>
- <entry>
- items are filled horitontally (space after each item)
- </entry>
- </row>
- <row>
- <entry>vertical</entry>
- <entry>
- items are filled verticaly (new line after each item)
- </entry>
- </row>
- <row>
- <entry>columns_horizontal</entry>
- <entry>
- items are filled horizontally, displayed with columns
- </entry>
- </row>
- <row>
- <entry>columns_vertical</entry>
- <entry>
- items are filled vertically, displayed with columns
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>size</option>: bar size in chars (0 means automatic
- size)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>size_max</option>: max size for bar (0 means no max size)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>color_fg</option>: color for text in bar
- </para>
- </listitem>
- <listitem>
- <para>
- <option>color_delim</option>: color for delimiters in bar
- </para>
- </listitem>
- <listitem>
- <para>
- <option>color_bg</option>: background color for bar
- </para>
- </listitem>
- <listitem>
- <para>
- <option>separator</option>: "on" if bar has separator line with
- other windows/bars, "off" otherwise
- </para>
- </listitem>
- <listitem>
- <para>
- <option>items</option>: list of items in bar, separated by comma
- (space between items), or "+" (glued items)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new bar, NULL if an error occured.
- </para>
- <para>
- Example:
-<screen>
-struct t_gui_bar *my_bar =
- weechat_bar_new ("mybar",
- "off",
- 100,
- "window",
- "",
- "top",
- "horizontal",
- "vertical",
- "0",
- "5",
- "default",
- "cyan",
- "blue",
- "off",
- "time,buffer_number+buffer_name");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_bar_set">
- <title>weechat_bar_set</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_bar_set (struct t_gui_bar *bar,
- const char *property,
- const char *value);
-</programlisting>
- </para>
- <para>
- Set a new value for a bar property.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>bar</option>: bar pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>property</option>: property name: name, hidden, priority,
- conditions, position, filling_top_bottom, filling_left_right,
- size, size_max, color_fg, color_delim, color_bg, separator, items
- (see <xref linkend="secPluginCApi_weechat_bar_new" />)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>value</option>: new value for property
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if new value was set, 0 if an error occured.
- </para>
- <para>
- Example: <screen>weechat_bar_set (mybar, "position", "bottom");</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_bar_update">
- <title>weechat_bar_update</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_bar_update (const char *name);
-</programlisting>
- </para>
- <para>
- Refresh content of a bar on screen.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>name</option>: bar name
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example: <screen>weechat_bar_update ("mybar");</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_bar_remove">
- <title>weechat_bar_remove</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_bar_remove (struct t_gui_bar *bar);
-</programlisting>
- </para>
- <para>
- Remove a bar.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>bar</option>: bar pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example: <screen>weechat_bar_remove (mybar);</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ============================[ commands ]============================ -->
-
- <section id="secPluginCApi_commands">
- <title>Commands</title>
-
- <para>
- Functions for executing WeeChat commands.
- </para>
-
- <section id="secPluginCApi_weechat_command">
- <title>weechat_command</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_command (struct t_gui_buffer *buffer,
- const char *command);
-</programlisting>
- </para>
- <para>
- Execute a command.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>buffer</option>: buffer pointer (command is executed
- on this buffer, use NULL for WeeChat core buffer)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>command</option>: command to execute (if beginning with a
- "/"), or text is sent to buffer (without leading "/")
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
-<screen>
-weechat_command (weechat_buffer_search ("irc", "freenode.#weechat"),
- "/whois FlashCode");
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ============================[ network ]============================= -->
-
- <section id="secPluginCApi_network">
- <title>Network</title>
-
- <para>
- Network functions.
- </para>
-
- <section id="secPluginCApi_weechat_network_pass_proxy">
- <title>weechat_network_pass_proxy</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_network_pass_proxy (const char *proxy,
- int sock,
- const char *address,
- int port);
-</programlisting>
- </para>
- <para>
- Establish a connection/authentification to a proxy.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>proxy</option>: proxy name to use
- </para>
- </listitem>
- <listitem>
- <para>
- <option>sock</option>: socket to use
- </para>
- </listitem>
- <listitem>
- <para>
- <option>address</option>: address (hostname or IP)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>port</option>: port
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if connection is ok, 0 if an error occured.
- </para>
- <para>
- Example:
-<screen>
-if (weechat_network_pass_proxy ("myproxy", sock, "irc.freenode.net", 6667))
-{
- /* OK */
-}
-else
-{
- /* error */
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_network_connect_to">
- <title>weechat_network_network_connect_to</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_network_connect_to (const char *proxy,
- int sock,
- unsigned long address,
- int port);
-</programlisting>
- </para>
- <para>
- Establish a connection to a remote host.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>proxy</option>: proxy name to use
- </para>
- </listitem>
- <listitem>
- <para>
- <option>sock</option>: socket to use
- </para>
- </listitem>
- <listitem>
- <para>
- <option>address</option>: address
- </para>
- </listitem>
- <listitem>
- <para>
- <option>port</option>: port
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if connection is ok, 0 if an error occured.
- </para>
- <para>
- Example:
-<screen>
-struct sockaddr_in addr;
-socklen_t length;
-unsigned long address;
-
-memset (&amp;addr, 0, sizeof (struct sockaddr_in));
-length = sizeof (addr);
-getsockname (sock, (struct sockaddr *) &amp;addr, &amp;length);
-addr.sin_family = AF_INET;
-address = ntohl (addr.sin_addr.s_addr);
-
-if (weechat_network_connect_to (NULL, sock, address, 6667))
-{
- /* OK */
-}
-else
-{
- /* error */
-}
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- =============================[ infos ]============================== -->
-
- <section id="secPluginCApi_infos">
- <title>Infos</title>
-
- <para>
- Functions to get infos.
- </para>
-
- <section id="secPluginCApi_weechat_info_get">
- <title>weechat_info_get</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_info_get (const char *info_name,
- const char *arguments);
-</programlisting>
- </para>
- <para>
- Get info from WeeChat or a plugin.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>info_name</option>: name of info to read:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Plugin</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- &infos.xml;
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>arguments</option>: arguments for info asked (optional,
- NULL if no argument is needed)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: const string with info asked, NULL if an error occured.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "Current WeeChat version is: %s (compiled on %s)",
- weechat_info_get ("version", NULL),
- weechat_info_get ("date", NULL));
-weechat_printf (NULL, "WeeChat home is: %s",
- weechat_info_get ("weechat_dir"));
-</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ===========================[ infolists ]============================ -->
-
- <section id="secPluginCApi_infolists">
- <title>Infolists</title>
-
- <para>
- Infolists functions.
- </para>
-
- <para>
- An infolist is a list of "items". Each item contains variables.
- For example, infolist "irc_server" has N items (N is number of IRC
- servers defined). For each item, there is variables like "name",
- "buffer", "is_connected", ...
- Each variable has a type and a value. Possible types are:
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Type</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>integer</entry>
- <entry>any integer value</entry>
- </row>
- <row>
- <entry>string</entry>
- <entry>any string value</entry>
- </row>
- <row>
- <entry>pointer</entry>
- <entry>any pointer</entry>
- </row>
- <row>
- <entry>buffer</entry>
- <entry>buffer with fixed length, containing any data</entry>
- </row>
- <row>
- <entry>time</entry>
- <entry>time value</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
-
- <section id="secPluginCApi_weechat_infolist_new">
- <title>weechat_infolist_new</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_infolist *weechat_infolist_new ();
-</programlisting>
- </para>
- <para>
- Create a new infolist.
- </para>
- <para>
- Return value: pointer to new infolist.
- </para>
- <para>
- Example:
- <screen>struct t_infolist *infolist = weechat_infolist_new ();</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_new_item">
- <title>weechat_infolist_new_item</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_infolist_item *weechat_infolist_new_item (struct t_infolist *infolist);
-</programlisting>
- </para>
- <para>
- Add an item in an infolist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new item.
- </para>
- <para>
- Example:
-<screen>
-struct t_infolist_item *item = weechat_infolist_new_item (infolist);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_new_var_integer">
- <title>weechat_infolist_new_var_integer</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_infolist_var *weechat_infolist_new_var_integer (
- struct t_infolist_item *item,
- const char *name,
- int value);
-</programlisting>
- </para>
- <para>
- Add an integer variable to an infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>item</option>: infolist item pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: variable name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>value</option>: integer value
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new variable.
- </para>
- <para>
- Example:
-<screen>
-struct t_infolist_var *var =
- weechat_infolist_new_variable_integer (item, "my_integer", 123);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_new_var_string">
- <title>weechat_infolist_new_var_string</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_infolist_var *weechat_infolist_new_var_string (
- struct t_infolist_item *item,
- const char *name,
- const char *value);
-</programlisting>
- </para>
- <para>
- Add a string variable to an infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>item</option>: infolist item pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: variable name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>value</option>: string value
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new variable.
- </para>
- <para>
- Example:
-<screen>
-struct t_infolist_var *var =
- weechat_infolist_new_variable_string (item, "my_string", "value here");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_new_var_pointer">
- <title>weechat_infolist_new_var_pointer</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_infolist_var *weechat_infolist_new_var_pointer (
- struct t_infolist_item *item,
- const char *name,
- void *pointer);
-</programlisting>
- </para>
- <para>
- Add a pointer variable to an infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>item</option>: infolist item pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: variable name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>pointer</option>: pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new variable.
- </para>
- <para>
- Example:
-<screen>
-struct t_infolist_var *var =
- weechat_infolist_new_variable_pointer (item, "my_pointer", &amp;something);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_new_var_buffer">
- <title>weechat_infolist_new_var_buffer</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_infolist_var *weechat_infolist_new_var_buffer (
- struct t_infolist_item *item,
- const char *name,
- void *pointer,
- int size);
-</programlisting>
- </para>
- <para>
- Add a buffer variable to an infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>item</option>: infolist item pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: variable name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>pointer</option>: pointer to buffer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>size</option>: size of buffer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new variable.
- </para>
- <para>
- Example:
-<screen>
-char buffer[256];
-/* ... */
-struct t_infolist_var *var =
- weechat_infolist_new_variable_buffer (item, "my_buffer",
- &amp;buffer, sizeof (buffer));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_new_var_time">
- <title>weechat_infolist_new_var_time</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_infolist_var *weechat_infolist_new_var_time (
- struct t_infolist_item *item,
- const char *name,
- time_t time);
-</programlisting>
- </para>
- <para>
- Add a time variable to an infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>item</option>: infolist item pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>name</option>: variable name
- </para>
- </listitem>
- <listitem>
- <para>
- <option>time</option>: time value
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new variable.
- </para>
- <para>
- Example:
-<screen>
-struct t_infolist_var *var =
- weechat_infolist_new_variable_time (item, "my_time", time (NULL));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_get">
- <title>weechat_infolist_get</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_infolist *weechat_infolist_get (const char *infolist_name,
- void *pointer,
- const char *arguments);
-</programlisting>
- </para>
- <para>
- Get infolist from WeeChat or a plugin.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist_name</option>: name of infolist to read:
- <informaltable colsep="0" frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Plugin</entry>
- <entry>Name</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- &infolists.xml;
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </listitem>
- <listitem>
- <para>
- <option>pointer</option>: pointer to an item, to get only this
- item in infolist (optional, can be NULL)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>arguments</option>: name/type of item to retrieve
- (optional, can be NULL)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to infolist, NULL if an error occured.
- </para>
- <para>
- Example:
-<screen>
-struct t_infolist *infolist = weechat_infolist_get ("irc_server", NULL, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_next">
- <title>weechat_infolist_next</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_infolist_next (struct t_infolist *infolist);
-</programlisting>
- </para>
- <para>
- Move "cursor" to next item in an infolist. The first call to this
- function for an infolist moves cursor to first item in infolist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if pointer is now on next item, 0 if end of list was
- reached.
- </para>
- <para>
- Example:
-<screen>
-if (weechat_infolist_next (infolist))
-{
- /* read variables in item... */
-}
-else
-{
- /* no more item available */
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_prev">
- <title>weechat_infolist_prev</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_infolist_prev (struct t_infolist *infolist);
-</programlisting>
- </para>
- <para>
- Move "cursor" to previous item in an infolist. The first call to this
- function for an infolist moves cursor to last item in infolist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if pointer is now on previous item, 0 if beginning of
- list was reached.
- </para>
- <para>
- Example:
-<screen>
-if (weechat_infolist_prev (infolist))
-{
- /* read variables in item... */
-}
-else
-{
- /* no more item available */
-}
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_reset_item_cursor">
- <title>weechat_infolist_reset_item_cursor</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_infolist_reset_item_cursor (struct t_infolist *infolist);
-</programlisting>
- </para>
- <para>
- Reset "cursor" for infolist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example: <screen>weechat_infolist_reset_item_cursor (infolist);</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_fields">
- <title>weechat_infolist_fields</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_infolist_fields (struct t_infolist *infolist);
-</programlisting>
- </para>
- <para>
- Get list of fields for current infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string with list of fields for current infolist item.
- List is comma separated, and contains letter for type, followed by
- variable name. Types are: "i" (integer), "s" (string), "p" (pointer),
- "b" (buffer), "t" (time).
- </para>
- <para>
- Example:
-<screen>
-const char *fields = weechat_infolist_fields (infolist);
-/* fields contains something like:
- "i:my_integer,s:my_string,p:my_pointer,b:my_buffer,t:my_time" */
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_integer">
- <title>weechat_infolist_integer</title>
-
- <para>
- Prototype:
-<programlisting>
-int weechat_infolist_integer (struct t_infolist *infolist,
- const char *var);
-</programlisting>
- </para>
- <para>
- Get value of integer variable in current infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>var</option>: variable name (must be type "integer")
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: integer value of variable.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "integer value = %d",
- weechat_infolist_integer (infolist, "my_integer"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_string">
- <title>weechat_infolist_string</title>
-
- <para>
- Prototype:
-<programlisting>
-const char *weechat_infolist_string (struct t_infolist *infolist,
- const char *var);
-</programlisting>
- </para>
- <para>
- Get value of string variable in current infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>var</option>: variable name (must be type "string")
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: string value of variable.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "string value = %s",
- weechat_infolist_string (infolist, "my_string"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_pointer">
- <title>weechat_infolist_pointer</title>
-
- <para>
- Prototype:
-<programlisting>
-void *weechat_infolist_pointer (struct t_infolist *infolist,
- const char *var);
-</programlisting>
- </para>
- <para>
- Get value of pointer variable in current infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>var</option>: variable name (must be type "pointer")
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer value of variable.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "pointer value = 0x%lx",
- weechat_infolist_pointer (infolist, "my_pointer"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_buffer">
- <title>weechat_infolist_buffer</title>
-
- <para>
- Prototype:
-<programlisting>
-void *weechat_infolist_buffer (struct t_infolist *infolist,
- const char *var,
- int *size);
-</programlisting>
- </para>
- <para>
- Get value of buffer variable in current infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>var</option>: variable name (must be type "buffer")
- </para>
- </listitem>
- <listitem>
- <para>
- <option>size</option>: pointer to integer variable, will be set
- with buffer size
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: buffer pointer.
- </para>
- <para>
- Example:
-<screen>
-int size;
-void *pointer = weechat_infolist_buffer (infolist, "my_buffer", &amp;size);
-weechat_printf (NULL, "buffer pointer = 0x%lx, size = %d",
- pointer, size);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_time">
- <title>weechat_infolist_time</title>
-
- <para>
- Prototype:
-<programlisting>
-time_t weechat_infolist_time (struct t_infolist *infolist,
- const char *var);
-</programlisting>
- </para>
- <para>
- Get value of time variable in current infolist item.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- <listitem>
- <para>
- <option>var</option>: variable name (must be type "time")
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: time value of variable.
- </para>
- <para>
- Example:
-<screen>
-weechat_printf (NULL, "time value = 0x%ld",
- weechat_infolist_time (infolist, "my_time"));
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_infolist_free">
- <title>weechat_infolist_free</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_infolist_free (struct t_infolist *infolist);
-</programlisting>
- </para>
- <para>
- Free an infolist.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>infolist</option>: infolist pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example:
- <screen>weechat_infolist_free (infolist);</screen>
- </para>
- </section>
-
- </section>
-
- <!-- ============================[ upgrade ]============================= -->
-
- <section id="secPluginCApi_upgrade">
- <title>Upgrade</title>
-
- <para>
- Functions for WeeChat upgrading.
- </para>
-
- <section id="secPluginCApi_weechat_upgrade_new">
- <title>weechat_upgrade_new</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_upgrade_file *weechat_upgrade_new (const char *filename,
- int write);
-</programlisting>
- </para>
- <para>
- Create or read a file for upgrade.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>filename</option>: name of file (extension ".upgrade"
- will be added to this name by WeeChat)
- </para>
- <para>
- <option>write</option>: 1 to create file (write mode, before
- upgrade), 0 to read file (after upgrade)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: pointer to new upgrade file.
- </para>
- <para>
- Example:
-<screen>
-struct t_upgrade_file *upgrade_file = weechat_upgrade_new ("my_file");
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_upgrade_write_object">
- <title>weechat_upgrade_write_object</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_upgrade_file *weechat_upgrade_write_object (
- struct t_upgrade_file *upgrade_file,
- int object_id,
- struct t_infolist *infolist);
-</programlisting>
- </para>
- <para>
- Write an object in upgrade file.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>upgrade_file</option>: upgrade file pointer
- </para>
- <para>
- <option>object_id</option>: id for object
- </para>
- <para>
- <option>infolist</option>: infolist to write in file
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if ok, 0 if error.
- </para>
- <para>
- Example:
-<screen>
-weechat_upgrade_write_object (upgrade_file, 1, &amp;infolist);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_upgrade_read">
- <title>weechat_upgrade_read</title>
-
- <para>
- Prototype:
-<programlisting>
-struct t_upgrade_file *weechat_upgrade_read (
- struct t_upgrade_file *upgrade_file,
- int (*callback_read)(void *data,
- struct t_upgrade_file *upgrade_file,
- int object_id,
- struct t_infolist *infolist),
- void *callback_read_data);
-</programlisting>
- </para>
- <para>
- Read an upgrade file.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>upgrade_file</option>: upgrade file pointer
- </para>
- <para>
- <option>callback_read</option>: callback called for each object
- read in upgrade file
- </para>
- <para>
- <option>callback_read_data</option>: pointer given to read
- callback when it is called by WeeChat
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Return value: 1 if ok, 0 if error.
- </para>
- <para>
- Example:
-<screen>
-int
-my_upgrade_read_cb (struct t_upgrade_file *upgrade_file,
- int object_id,
- struct t_infolist *infolist)
-{
- /* read variables... */
- return WEECHAT_RC_OK;
-}
-
-weechat_upgrade_read (upgrade_file, &amp;my_upgrade_read_cb, NULL);
-</screen>
- </para>
- </section>
-
- <section id="secPluginCApi_weechat_upgrade_close">
- <title>weechat_upgrade_close</title>
-
- <para>
- Prototype:
-<programlisting>
-void weechat_upgrade_close (struct t_upgrade_file *upgrade_file);
-</programlisting>
- </para>
- <para>
- Close an upgrade file.
- </para>
- <para>
- Arguments:
- <itemizedlist>
- <listitem>
- <para>
- <option>upgrade_file</option>: upgrade file pointer
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Example: <screen>weechat_upgrade_close (upgrade_file);</screen>
- </para>
- </section>
-
- </section>
-
-</section>
diff --git a/doc/fr/dev/plugin_script_api.fr.xml b/doc/fr/dev/plugin_script_api.fr.xml
deleted file mode 100644
index 508ab36d0..000000000
--- a/doc/fr/dev/plugin_script_api.fr.xml
+++ /dev/null
@@ -1,471 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secExtensionsScripts">
- <title>Extensions pour scripts</title>
-
- <para>
- Cinq extensions sont fournies en standard avec WeeChat pour utiliser
- des langages de script : Perl, Python, Ruby, Lua et Tcl.
- </para>
-
- <section id="secChargerDechargerScripts">
- <title>Charger / décharger des scripts</title>
-
- <para>
- Les scripts sont chargés et déchargés avec les commandes
- <command>/perl</command>, <command>/python</command>,
- <command>/ruby</command>, <command>/lua</command>
- et <command>/tcl</command> (tapez <command>/help</command> dans WeeChat
- pour obtenir de l'aide sur les commandes).
- </para>
-
- <para>
- Exemples :
- <itemizedlist>
- <listitem>
- <para>
- Charger un script Perl :
- <command><userinput>/perl load /tmp/essai.pl</userinput></command>
- </para>
- </listitem>
- <listitem>
- <para>
- Lister les scripts Perl chargés :
- <command><userinput>/perl</userinput></command>
- </para>
- </listitem>
- <listitem>
- <para>
- Charger un script Python :
- <command><userinput>/python load /tmp/essai.py</userinput></command>
- </para>
- </listitem>
- <listitem>
- <para>
- Lister les scripts Python chargés :
- <command><userinput>/python</userinput></command>
- </para>
- </listitem>
- <listitem>
- <para>
- Charger un script Ruby :
- <command><userinput>/ruby load /tmp/essai.rb</userinput></command>
- </para>
- </listitem>
- <listitem>
- <para>
- Lister les scripts Ruby chargés :
- <command><userinput>/ruby</userinput></command>
- </para>
- </listitem>
- <listitem>
- <para>
- Charger un script Lua :
- <command><userinput>/lua load /tmp/essai.lua</userinput></command>
- </para>
- </listitem>
- <listitem>
- <para>
- Lister les scripts Lua chargés :
- <command><userinput>/lua</userinput></command>
- </para>
- </listitem>
- <listitem>
- <para>
- Charger un script Tcl :
- <command><userinput>/tcl load /tmp/essai.tcl</userinput></command>
- </para>
- </listitem>
- <listitem>
- <para>
- Lister les scripts Tcl chargés :
- <command><userinput>/tcl</userinput></command>
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- </section>
-
- <section id="secSyntaxeParLangage">
- <title>Syntaxe par langage</title>
-
- <section id="secScriptPerl">
- <title>Perl</title>
-
- <para>
- Dans un script Perl WeeChat, toutes les fonctions et variables
- de l'interface sont préfixées par "<literal>weechat::</literal>".
- Exemple :
-<screen>
-weechat::register("test", "Auteur &lt;auteur\@domaine.com&gt;", "1.0",
- "GPL3", "Description du script", "au_revoir", "");
-</screen>
- </para>
-
- </section>
-
- <section id="secScriptPython">
- <title>Python</title>
-
- <para>
- Un script Python WeeChat doit commencer par importer weechat :
- <screen>import weechat</screen>
- </para>
-
- <para>
- Toutes les fonctions et variables de l'interface sont préfixées
- par "<literal>weechat.</literal>".
- Exemple :
-<screen>
-weechat.register("test", "Auteur &lt;auteur@domaine.com&gt;", "1.0",
- "GPL3", "Description du script", "au_revoir", "")
-</screen>
- </para>
-
- </section>
-
- <section id="secScriptRuby">
- <title>Ruby</title>
-
- <para>
- Dans un script Ruby WeeChat, tout le code doit être dans des
- fonctions. Pour le code principal, vous devez définir une
- fonction "<literal>weechat_init</literal>", qui est appelée
- automatiquement quand le script est chargé par WeeChat.
- Exemple :
-<screen>
-def weechat_init
- Weechat.register("test", "Auteur &lt;auteur@domaine.com&gt;", "1.0",
- "GPL3", "Description du script", "au_revoir", "")
- return Weechat::WEECHAT_RC_OK
-end
-</screen>
- </para>
-
- <para>
- Toutes les fonctions de l'interface sont préfixées par
- "<literal>Weechat.</literal>" et les variables par
- "<literal>Weechat::</literal>".
- </para>
-
- </section>
-
- <section id="secScriptLua">
- <title>Lua</title>
-
- <para>
- Dans un script Lua WeeChat, toutes les fonctions de l'interface
- sont préfixées par "<literal>weechat.</literal>".
- Les variables sont préfixées par "<literal>weechat.</literal>" et
- suffixées par "<literal>()</literal>".
- Exemple :
-<screen>
-weechat.register("test", "Auteur &lt;auteur@domaine.com&gt;", "1.0",
- "GPL3", "Description du script", "au_revoir", "")
-</screen>
- </para>
-
- </section>
-
- <section id="secScriptTcl">
- <title>Tcl</title>
-
- <para>
- Dans un script Tcl WeeChat, toutes les fonctions de l'interface
- sont préfixées par "<literal>weechat::</literal>".
- Les variables sont préfixées par "<literal>$weechat::</literal>".
- Exemple :
-<screen>
-weechat::register "test" "Auteur &lt;auteur@domaine.com&gt;" "1.0" "GPL3" "Description du script" "au_revoir" ""
-</screen>
- </para>
-
- </section>
-
- </section>
-
- <section id="secInterfaceWeeChatScripts">
- <title>Interface WeeChat / scripts</title>
-
- <section id="sec_script_register">
- <title>register</title>
-
- <para>
- Prototype Perl :
- <command>
- weechat::register(nom, auteur, version, licence, description,
- fonction_de_fin, charset);
- </command>
- </para>
- <para>
- Prototype Python :
- <command>
- weechat.register(nom, auteur, version, licence, description,
- fonction_de_fin, charset)
- </command>
- </para>
- <para>
- Prototype Ruby :
- <command>
- Weechat.register(nom, auteur, version, licence, description,
- fonction_de_fin, charset)
- </command>
- </para>
- <para>
- Prototype Lua :
- <command>
- weechat.register(nom, auteur, version, licence, description,
- fonction_de_fin, charset)
- </command>
- </para>
- <para>
- Prototype Tcl :
- <command>
- weechat::register nom auteur version licence description
- fonction_de_fin charset
- </command>
- </para>
- <para>
- C'est la première fonction à appeler dans le script.
- Tout script pour WeeChat doit appeler cette fonction.
- </para>
- <para>
- Paramètres :
- <itemizedlist>
- <listitem>
- <para>
- <option>nom</option> : nom unique pour identifier le script
- (chaque script doit avoir un nom différent)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>auteur</option> : chaîne avec l'auteur (peut include
- nom, pseudo, e-mail, etc...)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>version</option> : version du script
- </para>
- </listitem>
- <listitem>
- <para>
- <option>description</option> : brève description du script
- </para>
- </listitem>
- <listitem>
- <para>
- <option>fonction_de_fin</option> : fonction appelée quand
- le script est déchargé (paramètre facultatif, une chaîne
- vide signifiant qu'il n'y a pas de fonction à appeler)
- </para>
- </listitem>
- <listitem>
- <para>
- <option>charset</option> : jeu de caractères du script, à
- préciser si le script n'est PAS écrit en UTF-8 (vous pouvez
- laisser blanc pour un script UTF-8, c'est le jeu de caractère
- par défaut)
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Valeur renvoyée : 1 si le script a été enregistré, 0 si une erreur
- s'est produite.
- </para>
- <para>
- Exemples :
-<screen>
-# perl
-weechat::register("test", "Auteur &lt;auteur\@domaine.com&gt;", "1.0",
- "GPL3", "Description du script", "au_revoir", "");
-
-# python
-weechat.register("test", "Auteur &lt;auteur@domaine.com&gt;", "1.0",
- "GPL3", "Description du script", "au_revoir", "")
-
-# ruby
-Weechat.register("test", "Auteur &lt;auteur@domaine.com&gt;", "1.0",
- "GPL3", "Description du script", "au_revoir", "")
-
--- lua
-weechat.register("test", "Auteur &lt;auteur@domaine.com&gt;", "1.0",
- "GPL3", "Description du script", "au_revoir", "")
-
-# tcl
-weechat::register "test" "Auteur &lt;auteur@domaine.com&gt;" "1.0" "GPL3" "Description du script" "au_revoir" ""
-</screen>
- </para>
- </section>
-
- <section id="secOther_functions">
- <title>Autres fonctions</title>
-
- <para>
- Les fonctions suivantes sont dans l'API scripts (pour la description,
- voir <xref linkend="secPluginCApi" />).
- <itemizedlist>
- <listitem><para>plugin_get_name</para></listitem>
- <listitem><para>set_charset</para></listitem>
- <listitem><para>plugin_get_name</para></listitem>
- <listitem><para>charset_set</para></listitem>
- <listitem><para>iconv_to_internal</para></listitem>
- <listitem><para>iconv_from_internal</para></listitem>
- <listitem><para>gettext</para></listitem>
- <listitem><para>ngettext</para></listitem>
- <listitem><para>string_remove_color</para></listitem>
- <listitem><para>mkdir_home</para></listitem>
- <listitem><para>mkdir</para></listitem>
- <listitem><para>mkdir_parents</para></listitem>
- <listitem><para>list_new</para></listitem>
- <listitem><para>list_add</para></listitem>
- <listitem><para>list_search</para></listitem>
- <listitem><para>list_casesearch</para></listitem>
- <listitem><para>list_get</para></listitem>
- <listitem><para>list_set</para></listitem>
- <listitem><para>list_next</para></listitem>
- <listitem><para>list_prev</para></listitem>
- <listitem><para>list_string</para></listitem>
- <listitem><para>list_size</para></listitem>
- <listitem><para>list_remove</para></listitem>
- <listitem><para>list_remove_all</para></listitem>
- <listitem><para>list_free</para></listitem>
- <listitem><para>config_new</para></listitem>
- <listitem><para>config_new_section</para></listitem>
- <listitem><para>config_search_section</para></listitem>
- <listitem><para>config_new_option</para></listitem>
- <listitem><para>config_search_option</para></listitem>
- <listitem><para>config_string_to_boolean</para></listitem>
- <listitem><para>config_option_reset</para></listitem>
- <listitem><para>config_option_set</para></listitem>
- <listitem><para>config_option_set_null</para></listitem>
- <listitem><para>config_option_unset</para></listitem>
- <listitem><para>config_option_rename</para></listitem>
- <listitem><para>config_option_is_null</para></listitem>
- <listitem><para>config_option_default_is_null</para></listitem>
- <listitem><para>config_boolean</para></listitem>
- <listitem><para>config_boolean_default</para></listitem>
- <listitem><para>config_integer</para></listitem>
- <listitem><para>config_integer_default</para></listitem>
- <listitem><para>config_string</para></listitem>
- <listitem><para>config_string_default</para></listitem>
- <listitem><para>config_color</para></listitem>
- <listitem><para>config_color_default</para></listitem>
- <listitem><para>config_write_option</para></listitem>
- <listitem><para>config_write_line</para></listitem>
- <listitem><para>config_write</para></listitem>
- <listitem><para>config_read</para></listitem>
- <listitem><para>config_reload</para></listitem>
- <listitem><para>config_option_free</para></listitem>
- <listitem><para>config_section_free_options</para></listitem>
- <listitem><para>config_section_free</para></listitem>
- <listitem><para>config_free</para></listitem>
- <listitem><para>config_get</para></listitem>
- <listitem><para>config_get_plugin</para></listitem>
- <listitem><para>config_set_plugin</para></listitem>
- <listitem><para>config_unset_plugin</para></listitem>
- <listitem><para>prefix</para></listitem>
- <listitem><para>color</para></listitem>
- <listitem><para>print</para></listitem>
- <listitem><para>print_date_tags</para></listitem>
- <listitem><para>print_y</para></listitem>
- <listitem><para>log_print</para></listitem>
- <listitem><para>hook_command</para></listitem>
- <listitem><para>hook_command_run</para></listitem>
- <listitem><para>hook_timer</para></listitem>
- <listitem><para>hook_fd</para></listitem>
- <listitem><para>hook_process</para></listitem>
- <listitem><para>hook_connect</para></listitem>
- <listitem><para>hook_print</para></listitem>
- <listitem><para>hook_signal</para></listitem>
- <listitem><para>hook_signal_send</para></listitem>
- <listitem><para>hook_config</para></listitem>
- <listitem><para>hook_completion</para></listitem>
- <listitem><para>hook_completion_list_add</para></listitem>
- <listitem><para>hook_modifier</para></listitem>
- <listitem><para>hook_modifier_exec</para></listitem>
- <listitem><para>hook_info</para></listitem>
- <listitem><para>hook_infolist</para></listitem>
- <listitem><para>unhook</para></listitem>
- <listitem><para>unhook_all</para></listitem>
- <listitem><para>buffer_new</para></listitem>
- <listitem><para>buffer_search</para></listitem>
- <listitem><para>current_buffer</para></listitem>
- <listitem><para>buffer_clear</para></listitem>
- <listitem><para>buffer_close</para></listitem>
- <listitem><para>buffer_get_integer</para></listitem>
- <listitem><para>buffer_get_string</para></listitem>
- <listitem><para>buffer_get_pointer</para></listitem>
- <listitem><para>buffer_set</para></listitem>
- <listitem><para>current_window</para></listitem>
- <listitem><para>window_get_integer</para></listitem>
- <listitem><para>window_get_string</para></listitem>
- <listitem><para>window_get_pointer</para></listitem>
- <listitem><para>nicklist_add_group</para></listitem>
- <listitem><para>nicklist_search_group</para></listitem>
- <listitem><para>nicklist_add_nick</para></listitem>
- <listitem><para>nicklist_search_nick</para></listitem>
- <listitem><para>nicklist_remove_group</para></listitem>
- <listitem><para>nicklist_remove_nick</para></listitem>
- <listitem><para>nicklist_remove_all</para></listitem>
- <listitem><para>bar_item_search</para></listitem>
- <listitem><para>bar_item_new</para></listitem>
- <listitem><para>bar_item_update</para></listitem>
- <listitem><para>bar_item_remove</para></listitem>
- <listitem><para>bar_search</para></listitem>
- <listitem><para>bar_new</para></listitem>
- <listitem><para>bar_set</para></listitem>
- <listitem><para>bar_update</para></listitem>
- <listitem><para>bar_remove</para></listitem>
- <listitem><para>command</para></listitem>
- <listitem><para>info_get</para></listitem>
- <listitem><para>infolist_new</para></listitem>
- <listitem><para>infolist_new_var_integer</para></listitem>
- <listitem><para>infolist_new_var_string</para></listitem>
- <listitem><para>infolist_new_var_pointer</para></listitem>
- <listitem><para>infolist_new_var_time</para></listitem>
- <listitem><para>infolist_get</para></listitem>
- <listitem><para>infolist_next</para></listitem>
- <listitem><para>infolist_prev</para></listitem>
- <listitem><para>infolist_fields</para></listitem>
- <listitem><para>infolist_integer</para></listitem>
- <listitem><para>infolist_string</para></listitem>
- <listitem><para>infolist_pointer</para></listitem>
- <listitem><para>infolist_time</para></listitem>
- <listitem><para>infolist_free</para></listitem>
- <listitem><para>upgrade_new</para></listitem>
- <listitem><para>upgrade_write_object</para></listitem>
- <listitem><para>upgrade_read</para></listitem>
- <listitem><para>upgrade_close</para></listitem>
- </itemizedlist>
- </para>
-
- </section>
-
- </section>
-
-</section>
diff --git a/doc/fr/dev/plugins.fr.xml b/doc/fr/dev/plugins.fr.xml
deleted file mode 100644
index 1ab31c0de..000000000
--- a/doc/fr/dev/plugins.fr.xml
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<chapter id="chapPlugins">
- <title>Extensions</title>
-
- <para>
- Ce chapitre décrit l'API extension de WeeChat et les extensions fournies
- par défaut avec WeeChat.
- </para>
-
- <section id="secPluginsInWeeChat">
- <title>Les extensions dans WeeChat</title>
-
- <para>
- Une extension ("plugin" en anglais) est un programme écrit en C
- qui peut appeler des fonctions de WeeChat définies dans une interface.
- </para>
-
- <para>
- Ce programme C n'a pas besoin des sources WeeChat pour être
- compilé et peut être chargé/déchargé dynamiquement dans
- WeeChat via la commande <command>/plugin</command>.
- </para>
-
- <para>
- L'extension doit être au format bibliothèque, chargeable
- dynamiquement par le système d'exploitation.
- Sous GNU/Linux, il s'agit d'un fichier ayant pour extension ".so",
- sous Windows ".dll".
- </para>
-
- </section>
-
- <section id="secWriteAPlugin">
- <title>Ecrire une extension</title>
-
- <para>
- L'extension doit inclure le fichier "weechat-plugin.h"
- (disponible dans les sources de WeeChat).
- Ce fichier définit les structures et types dont l'extension aura
- besoin pour communiquer avec WeeChat.
- </para>
-
- <para>
- L'extension doit comporter certaines macros obligatoires (pour définir
- des variables) et des fonctions (sans quoi l'extension ne peut être
- chargée) :
-
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Macro</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><literal>WEECHAT_PLUGIN_NAME</literal></entry>
- <entry>le nom de l'extension</entry>
- </row>
- <row>
- <entry><literal>WEECHAT_PLUGIN_DESCRIPTION</literal></entry>
- <entry>une courte description de l'extension</entry>
- </row>
- <row>
- <entry><literal>WEECHAT_PLUGIN_VERSION</literal></entry>
- <entry>la version de l'extension</entry>
- </row>
- <row>
- <entry><literal>WEECHAT_PLUGIN_WEECHAT_VERSION</literal></entry>
- <entry>
- la version de WeeChat pour laquelle l'extension est destinée
- (attention: l'extension ne pourra tourner sur aucune autre
- version de WeeChat !)
- </entry>
- </row>
- <row>
- <entry><literal>WEECHAT_PLUGIN_LICENSE</literal></entry>
- <entry>la licence de l'extension</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
-
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Fonction</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><literal>int weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])</literal></entry>
- <entry>
- fonction appelée au chargement de l'extension
- qui doit renvoyer WEECHAT_RC_OK en cas de succès,
- WEECHAT_RC_ERROR en cas d'erreur (si erreur, l'extension
- ne sera PAS chargée), argv/argv sont les paramètres pour
- l'extension (donnés sur la ligne de commande par l'utilisateur)
- </entry>
- </row>
- <row>
- <entry><literal>int weechat_plugin_end (struct t_weechat_plugin *plugin)</literal></entry>
- <entry>fonction appelée au déchargement de l'extension</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
-
- <section id="secCompilePlugin">
- <title>Compiler l'extension</title>
-
- <para>
- La compilation ne nécessite pas les sources WeeChat, mais seulement
- le fichier "<literal>weechat-plugin.h</literal>".
- </para>
-
- <para>
- Pour compiler une extension composée d'un fichier "toto.c" (sous
- GNU/Linux) :
-<screen>
-<prompt>$ </prompt><userinput>gcc -fPIC -Wall -c toto.c</userinput>
-<prompt>$ </prompt><userinput>gcc -shared -fPIC -o libtoto.so toto.o</userinput>
-</screen>
- </para>
-
- </section>
-
- <section id="secLoadPlugin">
- <title>Charger l'extension dans WeeChat</title>
-
- <para>
- Copier le fichier "libtoto.so" dans le répertoire système des
- extensions (par exemple
- "<literal>/usr/local/lib/weechat/plugins)</literal>" ou bien dans
- celui de l'utilisateur (par exemple
- "<literal>/home/xxxxx/.weechat/plugins</literal>").
- </para>
-
- <para>
- Sous WeeChat :
- <screen><userinput>/plugin load toto</userinput></screen>
- </para>
-
- </section>
-
- <section id="secPluginExample">
- <title>Exemple d'extension</title>
-
- <para>
- Un exemple complet d'extension, qui ajoute une commande /double
- affichant deux fois les paramètres passés sur le tampon courant
- ou exécutant deux fois une commande (d'accord ce n'est pas très utile
- mais ceci est un exemple !) :
-<screen>
-#include &lt;stdlib.h&gt;
-
-#include "weechat-plugin.h"
-
-WEECHAT_PLUGIN_NAME("double");
-WEECHAT_PLUGIN_DESCRIPTION("Test plugin for WeeChat");
-WEECHAT_PLUGIN_AUTHOR("FlashCode &lt;flashcode@flashtux.org&gt;");
-WEECHAT_PLUGIN_VERSION("0.1");
-WEECHAT_PLUGIN_WEECHAT_VERSION("0.3.0");
-WEECHAT_PLUGIN_LICENSE("GPL3");
-
-struct t_weechat_plugin *weechat_plugin = NULL;
-
-
-/* "/double" command manager */
-
-int
-double_cmd (void *data, struct t_gui_buffer *buffer, int argc,
- char **argv, char **argv_eol)
-{
- /* make C compiler happy */
- (void) argv;
-
- if (argc &gt; 1)
- {
- weechat_command (NULL, argv_eol[1]);
- weechat_command (NULL, argv_eol[1]);
- }
-
- return WEECHAT_RC_OK;
-}
-
-int
-weechat_plugin_init (struct t_weechat_plugin *plugin,
- int argc, char *argv[])
-{
- weechat_plugin = plugin;
-
- weechat_hook_command ("double",
- "Display two times a message",
- "msg",
- "msg: message to display two times",
- NULL,
- &amp;double_cmd, NULL);
-
- return WEECHAT_RC_OK;
-}
-
-int
-weechat_plugin_end (struct t_weechat_plugin *plugin)
-{
- /* nothing done here */
- (void) plugin;
-
- return WEECHAT_RC_OK;
-}
-</screen>
- </para>
-
- </section>
-
- </section>
-
-</chapter>
diff --git a/doc/fr/dev/weechat_dev.fr.xml b/doc/fr/dev/weechat_dev.fr.xml
deleted file mode 100644
index ceee38596..000000000
--- a/doc/fr/dev/weechat_dev.fr.xml
+++ /dev/null
@@ -1,105 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"file:///usr/share/xml/docbook/schema/dtd/4.2/docbookx.dtd"
-[
- <!-- ***** auto-built: ***** -->
- <!ENTITY date.xml SYSTEM "date.xml">
- <!ENTITY % include_autogen.xml SYSTEM "include_autogen.xml">
- %include_autogen.xml;
-
- <!-- ***** written by hand: ***** -->
- <!ENTITY intro.fr.xml SYSTEM "intro.fr.xml">
- <!ENTITY plugins.fr.xml SYSTEM "plugins.fr.xml">
- <!ENTITY plugin_api.fr.xml SYSTEM "plugin_api.fr.xml">
- <!ENTITY plugin_c_api.fr.xml SYSTEM "plugin_c_api.fr.xml">
- <!ENTITY plugin_script_api.fr.xml SYSTEM "plugin_script_api.fr.xml">
- <!ENTITY authors.fr.xml SYSTEM "authors.fr.xml">
-]>
-
-<book lang="fr">
-
- <bookinfo>
-
- <title>WeeChat 0.3.0-dev - Guide du développeur</title>
- <subtitle>Client de discussion rapide, léger et extensible</subtitle>
-
- <author>
- <firstname>Sébastien</firstname>
- <surname>Helleu</surname>
- <email>flashcode AT flashtux.org</email>
- </author>
-
- &date.xml;
-
- <copyright>
- <year>2009</year>
- <holder>Sébastien Helleu</holder>
- </copyright>
-
- <legalnotice>
- <para>
- This manual 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.
- </para>
- <para>
- 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.
- </para>
- <para>
- You should have received a copy of the GNU General Public License
- along with this program. If not, see
- &lt;http://www.gnu.org/licenses/&gt;.
- </para>
- </legalnotice>
-
- <abstract>
- <para>
- Ce manuel documente le développement de WeeChat et ses extensions.
- Il fait partie de WeeChat.
- </para>
- <para>
- La dernière version de ce document peut être téléchargée
- sur cette page :
- <ulink url="http://weechat.flashtux.org/doc.php">
- http://weechat.flashtux.org/doc.php
- </ulink>
- </para>
- </abstract>
-
- </bookinfo>
-
- &intro.fr.xml;
-
- &plugins.fr.xml;
-
- &plugin_api.fr.xml;
-
- &authors.fr.xml;
-
-</book>
diff --git a/doc/fr/intro.fr.xml b/doc/fr/intro.fr.xml
deleted file mode 100644
index da10dc45c..000000000
--- a/doc/fr/intro.fr.xml
+++ /dev/null
@@ -1,153 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<chapter id="chapIntroduction">
- <title>Introduction</title>
-
- <para>
- Ce chapitre décrit WeeChat et les pré-requis pour son installation.
- </para>
-
- <section id="secDescription">
- <title>Description</title>
-
- <para>
- 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.
- </para>
-
- <para>
- Ses principales caractéristiques sont les suivantes :
- <itemizedlist>
- <listitem>
- <para>
- multi-protocoles (IRC et bientôt d'autres)
- </para>
- </listitem>
- <listitem>
- <para>
- connexion multi-serveurs (avec SSL, IPv6, proxy)
- </para>
- </listitem>
- <listitem>
- <para>
- plusieurs interfaces : Curses (wxWidgets, Gtk et Qt en développement)
- </para>
- </listitem>
- <listitem>
- <para>
- petit, rapide et léger
- </para>
- </listitem>
- <listitem>
- <para>
- paramétrable et extensible avec des extensions et des scripts
- </para>
- </listitem>
- <listitem>
- <para>
- conforme aux <acronym>RFC</acronym>s IRC
- <ulink url="http://www.ietf.org/rfc/rfc1459.txt">1459</ulink>,
- <ulink url="http://www.ietf.org/rfc/rfc2810.txt">2810</ulink>,
- <ulink url="http://www.ietf.org/rfc/rfc2811.txt">2811</ulink>,
- <ulink url="http://www.ietf.org/rfc/rfc2812.txt">2812</ulink> et
- <ulink url="http://www.ietf.org/rfc/rfc2813.txt">2813</ulink>
- </para>
- </listitem>
- <listitem>
- <para>
- multi plates-formes (GNU/Linux, *BSD, MacOS X, Windows et
- d'autres systèmes)
- </para>
- </listitem>
- <listitem>
- <para>
- 100% GPL, logiciel libre
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- <para>
- La page d'accueil de WeeChat est ici :
- <ulink url="http://weechat.flashtux.org/">
- http://weechat.flashtux.org/
- </ulink>
- </para>
-
- </section>
-
- <section id="secPreRequisites">
- <title>Pré-requis</title>
-
- <para>
- Pour installer WeeChat, vous <emphasis>devez</emphasis> avoir :
- <itemizedlist>
- <listitem>
- <para>
- 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)
- </para>
- </listitem>
- <listitem>
- <para>
- droits "root" (pour installer WeeChat dans un répertoire système)
- </para>
- </listitem>
- <listitem>
- <para>
- selon l'interface, une des bibliothèques
- suivantes :
- <itemizedlist>
- <listitem>
- <para>
- Curses : la bibliothèque ncurses
- </para>
- </listitem>
- <listitem>
- <para>
- Gtk :
- <emphasis>*** interface non développée ***</emphasis>
- </para>
- </listitem>
- <listitem>
- <para>
- WxWidgets :
- <emphasis>*** interface non développée ***</emphasis>
- </para>
- </listitem>
- <listitem>
- <para>
- Qt :
- <emphasis>*** interface non développée ***</emphasis>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- </section>
-</chapter>
diff --git a/doc/fr/user/install.fr.xml b/doc/fr/user/install.fr.xml
deleted file mode 100644
index 1b5096560..000000000
--- a/doc/fr/user/install.fr.xml
+++ /dev/null
@@ -1,134 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<chapter id="chapInstallation">
- <title>Installation</title>
-
- <para>
- Ce chapitre explique comment installer WeeChat.
- </para>
-
- <section id="secBinaryPackages">
- <title>Paquets binaires</title>
-
- <para>
- Les paquets binaires sont disponibles pour beaucoup de distributions,
- dont :
- <itemizedlist>
- <listitem>
- <para>
- Debian (ou toute distribution compatible Debian) :
- <screen><userinput>apt-get install weechat</userinput></screen>
- </para>
- </listitem>
- <listitem>
- <para>
- Mandriva/RedHat (ou toute distribution compatible avec les RPM) :
- <screen><userinput>rpm -i /chemin/vers/weechat-x.y.z-1.i386.rpm</userinput></screen>
- </para>
- </listitem>
- <listitem>
- <para>
- Gentoo :
- <screen><userinput>emerge weechat</userinput></screen>
- </para>
- </listitem>
- </itemizedlist>
-
- Des paquets additionnels peuvent être utiles également, comme
- weechat-plugins.
-
- Pour les autres distributions supportées, merci de vous
- référer au manuel de la distribution pour la méthode d'installation.
- </para>
-
- </section>
-
- <section id="secSourcePackage">
- <title>Paquet source</title>
-
- <section id="secCompileWithAutotools">
- <title>Compiler avec les Autotools</title>
-
- <para>
- Dans une console ou un terminal :
-<screen><prompt>$ </prompt><userinput>./configure</userinput>
-<prompt>$ </prompt><userinput>make</userinput></screen>
- </para>
- <para>
- Obtenez les droits root et installez WeeChat :
-<screen><prompt>$ </prompt><userinput>su</userinput>
-(entrez le mot de passe root)
-<prompt># </prompt><userinput>make install</userinput></screen>
- </para>
-
- </section>
-
- <section id="secCompileWithCmake">
- <title>Compiler avec Cmake</title>
-
- <para>
- Dans une console ou un terminal :
-<screen><prompt>$ </prompt><userinput>mkdir build</userinput>
-<prompt>$ </prompt><userinput>cd build</userinput>
-<prompt>$ </prompt><userinput>cmake ..</userinput>
-<prompt>$ </prompt><userinput>make</userinput></screen>
- </para>
- <para>
- Obtenez les droits root et installez WeeChat :
-<screen><prompt>$ </prompt><userinput>su</userinput>
-(entrez le mot de passe root)
-<prompt># </prompt><userinput>make install</userinput></screen>
- </para>
-
- </section>
-
- </section>
-
- <section id="secGITSources">
- <title>Sources GIT</title>
-
- <para>
- 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 !
- </para>
-
- <para>
- Pour récupérer les sources GIT, tapez cette commande :
-<screen><prompt>$ </prompt><userinput>git clone git://git.sv.gnu.org/weechat.git</userinput></screen>
- </para>
-
- <para>
- Si vous utilisez les Autotools (et non cmake), exécutez ce script :
- <userinput>./autogen.sh</userinput>
- </para>
-
- <para>
- Suivez alors les instructions du paquet source
- (voir <xref linkend="secSourcePackage" />)
- </para>
-
- </section>
-
-</chapter>
diff --git a/doc/fr/user/plugin_alias.fr.xml b/doc/fr/user/plugin_alias.fr.xml
deleted file mode 100644
index 0228980f5..000000000
--- a/doc/fr/user/plugin_alias.fr.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secPluginAlias">
- <title>Extension Alias</title>
-
- <para>
- L'extension Alias permet de définir des alias pour des commandes (WeeChat
- ou d'autres extensions).
- </para>
-
- <section id="secAliasCommands">
- <title>Commandes</title>
-
- <para>
- &alias_commands.xml;
- </para>
-
- </section>
-
-</section>
diff --git a/doc/fr/user/plugin_aspell.fr.xml b/doc/fr/user/plugin_aspell.fr.xml
deleted file mode 100644
index 788ea8a7a..000000000
--- a/doc/fr/user/plugin_aspell.fr.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secPluginAspell">
- <title>Extension Aspell</title>
-
- <para>
- L'extension Aspell permet de vérifier l'orghographe de la ligne de
- commande.
- Il est possible d'utiliser plusieurs langages par tampon.
- </para>
-
- <section id="secAspellOptions">
- <title>Options (fichier aspell.conf)</title>
-
- <para>
- &aspell_options.xml;
- </para>
-
- </section>
-
- <section id="secAspellCommands">
- <title>Commandes</title>
-
- <para>
- &aspell_commands.xml;
- </para>
-
- </section>
-
-</section>
diff --git a/doc/fr/user/plugin_charset.fr.xml b/doc/fr/user/plugin_charset.fr.xml
deleted file mode 100644
index b0dfe4baf..000000000
--- a/doc/fr/user/plugin_charset.fr.xml
+++ /dev/null
@@ -1,169 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secPluginCharset">
- <title>Extension Charset</title>
-
- <para>
- L'extension Charset vous permet de décoder et encoder les données en
- utilisant un jeu de caractères. Il y a un jeu de caractère par défaut
- pour le décodage/encodage, et un spécifique pour les tampons (ou groupes
- de tampons).
- Cette extension est facultative, mais recommandée : si elle n'est pas
- chargée, WeeChat pourra uniquement lire/écrire des données UTF-8.
- </para>
-
- <para>
- L'extension Charset devrait être automatiquement chargée par WeeChat
- au démarrage.
- Pour s'assurer que l'extension est bien chargée, essayez :
- <command>/charset</command>.
- Si la commande n'est pas trouvée, alors chargez l'extension avec la
- commande :
- <screen>/plugin load charset</screen>
- Si l'extension n'est pas trouvée, alors vous devriez recompiler
- WeeChat avec les extensions et le support de Charset.
- </para>
-
- <para>
- Lorsque l'extension Charset démarre, elle affiche le jeu de caractères
- du terminal et l'interne.
- Le jeu de caractères du terminal dépend de votre locale, et l'interne
- est UTF-8.
- Par exemple :
- <screen>charset: terminal: ISO-8859-15, interne: UTF-8</screen>
- </para>
-
- <section id="secCharsetOptions">
- <title>Options (fichier charset.conf)</title>
-
- <para>
- &charset_options.xml;
- </para>
-
- <para>
- <itemizedlist>
- <listitem>
- <para>
- Pour modifier les jeux de caractères de décodage et d'encodage
- globaux, utilisez la commande <command>/set</command>".
- Par exemple :
-<screen>
-/set charset.default.decode ISO-8859-15
-/set charset.default.encode ISO-8859-15
-</screen>
- Si le jeu de caractères de décodage global n'est pas renseigné
- (par exemple pendant le premier chargement de Charset), il sera
- renseigné automatiquement avec le jeu de caractères du terminal
- (s'il est différent de UTF-8) ou par défaut à
- "<literal>ISO-8859-1</literal>".
- La valeur d'encodage par défaut est vide, donc WeeChat envoie par
- défaut avec le jeu de caractères interne (UTF-8).
- </para>
- </listitem>
- <listitem>
- <para>
- Pour modifier le jeu de caractères d'un serveur IRC, utilisez la
- commande <command>/charset</command> sur le tampon serveur.
- Si vous donnez seulement le jeu de caractères, alors vous
- modifiez en même temps les valeurs de décodage et d'encodage.
- Par exemple :
- <screen>/charset ISO-8859-15</screen>
- Ce qui est équivalent à :
-<screen>
-/charset decode ISO-8859-15
-/charset encode ISO-8859-15
-</screen>
- </para>
- </listitem>
- <listitem>
- <para>
- 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é).
- </para>
- </listitem>
- <listitem>
- <para>
- Pour modifier le jeu de caractères pour tous les canaux IRC (et
- conversations privées) d'un serveur IRC, utilisez la commande
- suivante :
- <screen>/set charset.decode.irc.freenode ISO-8859-15</screen>
- </para>
- </listitem>
- <listitem>
- <para>
- Pour voir tous les jeux de carcatères utilisés, utilisez la commande
- suivante :
- <screen>/set charset.*</screen>
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- </section>
-
- <section id="secCharsetCommands">
- <title>Commandes</title>
-
- <para>
- &charset_commands.xml;
- </para>
-
- </section>
-
- <section id="secCharsetFAQ">
- <title>FAQ</title>
-
- <para>
- Si vous avez des problèmes avec certains caractères ou les accents en
- utilisant l'extension Charset :
- <itemizedlist>
- <listitem>
- <para>
- vérifiez que weechat-curses est lié avec libncursesw
- (attention : nécessaire sur beaucoup de distributions, mais pas
- toutes) :
- <screen>ldd /chemin/vers/weechat-curses</screen>
- </para>
- </listitem>
- <listitem>
- <para>
- vérifiez la ligne charset (sur le tampon WeeChat), vous devriez
- voir ISO-XXXXXX ou UTF-8 pour le charset du terminal. Si vous
- voyez ANSI_X3.4-1968 ou d'autres valeurs, votre locale est
- probablement erronée.
- </para>
- </listitem>
- <listitem>
- <para>
- affectez la valeur pour le décodage global, par exemple :
- <screen>/set charset.default.decode ISO-8859-15</screen>
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- </section>
-
-</section>
diff --git a/doc/fr/user/plugin_fifo.fr.xml b/doc/fr/user/plugin_fifo.fr.xml
deleted file mode 100644
index 1564b8ff0..000000000
--- a/doc/fr/user/plugin_fifo.fr.xml
+++ /dev/null
@@ -1,98 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secFIFOpipe">
- <title>Tube FIFO</title>
-
- <para>
- Vous pouvez contrôler WeeChat à distance, en envoyant des commandes
- ou du texte dans un tube FIFO (si l'option "plugins.var.fifo.fifo" est
- activée, elle l'est par défaut).
- </para>
-
- <para>
- Le tube FIFO est dans le répertoire "<literal>~/.weechat/</literal>"
- et s'appelle "weechat_fifo_xxxxx" (où xxxxx est l'ID du processus
- (PID) du WeeChat qui tourne).
- </para>
-
- <para>
- La syntaxe pour envoyer des commandes ou du texte dans le tube FIFO
- est une des suivantes :
- <screen>
- extension.tampon *texte ou commande ici
- *texte ou commande ici
- </screen>
- </para>
-
- <para>
- Quelques exemples :
- <itemizedlist>
- <listitem>
- <para>
- changement du pseudo sur freenode en "autrepseudo" :
- <screen><prompt>$ </prompt><userinput>echo 'irc.server.freenode */nick autrepseudo' &gt;~/.weechat/weechat_fifo_12345</userinput></screen>
- </para>
- </listitem>
- <listitem>
- <para>
- affichage de texte sur le canal IRC #weechat :
- <screen><prompt>$ </prompt><userinput>echo 'irc.freenode.#weechat *bonjour tout le monde !' >~/.weechat/weechat_fifo_12345</userinput></screen>
- </para>
- </listitem>
- <listitem>
- <para>
- affichage de texte sur le tampon courant :
- <screen><prompt>$ </prompt><userinput>echo '*bonjour !' >~/.weechat/weechat_fifo_12345</userinput></screen>
- <emphasis>Attention :</emphasis> ceci est dangereux et vous ne
- devriez pas le faire sauf si vous savez ce que vous faites !
- </para>
- </listitem>
- <listitem>
- <para>
- envoyer deux commandes pour décharger/recharger les scripts Perl
- (vous devez les séparer par "\n") :
- <screen><prompt>$ </prompt><userinput>echo -e '*/perl unload\n*/perl autoload' >~/.weechat/weechat_fifo_12345</userinput></screen>
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- <para>
- Vous pouvez écrire un script qui envoie les commandes à tous les
- WeeChat qui tournent en même temps, par exemple :
-<screen>
-#!/bin/sh
-if [ $# -eq 1 ]; then
- for fifo in ~/.weechat/weechat_fifo_*
- do
- echo -e "$1" >$fifo
- done
-fi
-</screen>
- Si le script s'appelle "auto_weechat_command", vous pouvez le lancer
- ainsi :
-<screen><prompt>$ </prompt><userinput>./auto_weechat_command 'irc.freenode.#weechat *bonjour'</userinput></screen>
- </para>
-
-</section>
diff --git a/doc/fr/user/plugin_irc.fr.xml b/doc/fr/user/plugin_irc.fr.xml
deleted file mode 100644
index 709505222..000000000
--- a/doc/fr/user/plugin_irc.fr.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secPluginIrc">
- <title>Extension IRC</title>
-
- <para>
- L'extension IRC permet de dialoguer avec d'autres personnes via le
- protocole IRC.
- Elle est multi-serveurs, et offre toutes les commandes IRC supportées, y
- compris la discussion directe (DCC chat) and le transfert de fichier DCC
- (via l'extension xfer, voir <xref linkend="secPluginXfer" />).
- </para>
-
- <section id="secIrcCommandLineOptions">
- <title>Options de ligne de commande</title>
-
- <para>
- Il est possible de passer une URL pour un ou plusieurs serveurs, comme
- suit :
- <screen>irc[6][s]://[pseudo[:mot_passe]@]irc.example.org[:port][/channel][,channel[...]</screen>
- Exemple pour rejoindre #weechat et #toto sur le serveur
- "<literal>irc.freenode.net</literal>", port par défaut (6667), avec le
- pseudo "nono" :
- <screen><prompt>$ </prompt><userinput>weechat-curses irc://nono@irc.freenode.net/#weechat,#toto</userinput></screen>
- </para>
-
- </section>
-
- <section id="secIrcOptions">
- <title>Options (fichier irc.conf)</title>
-
- <para>
- &irc_options.xml;
- </para>
-
- </section>
-
- <section id="secIrcCommands">
- <title>Commandes</title>
-
- <para>
- Quasiment toutes les commandes doivent être exécutées sur un tampon de
- serveur ou canal. Les exceptions sont : <command>/server</command>,
- <command>/connect</command> et <command>/ignore</command>.
- </para>
-
- <para>
- &irc_commands.xml;
- </para>
-
- </section>
-
-</section>
diff --git a/doc/fr/user/plugin_jabber.fr.xml b/doc/fr/user/plugin_jabber.fr.xml
deleted file mode 100644
index 796928c76..000000000
--- a/doc/fr/user/plugin_jabber.fr.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secPluginJabber">
- <title>Extension Jabber</title>
-
- <para>
- L'extension Jabber permet de dialoguer avec d'autres personnes via le
- protocole XMPP.
- Elle est multi-serveurs.
- </para>
-
- <section id="secJabberOptions">
- <title>Options (fichier jabber.conf)</title>
-
- <para>
- &jabber_options.xml;
- </para>
-
- </section>
-
- <section id="secJabberCommands">
- <title>Commandes</title>
-
- <para>
- &jabber_commands.xml;
- </para>
-
- </section>
-
-</section>
diff --git a/doc/fr/user/plugin_logger.fr.xml b/doc/fr/user/plugin_logger.fr.xml
deleted file mode 100644
index 65d285d18..000000000
--- a/doc/fr/user/plugin_logger.fr.xml
+++ /dev/null
@@ -1,158 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secPluginLogger">
- <title>Extension Logger</title>
-
- <para>
- L'extension Logger permet de sauvegarder le contenu des tampons dans des
- fichiers, avec des options sur comment et quoi sauvegarder.
- </para>
-
- <section id="secLoggerOptions">
- <title>Options (fichier logger.conf)</title>
-
- <para>
- &logger_options.xml;
- </para>
-
- </section>
-
- <section id="secLoggerCommands">
- <title>Commandes</title>
-
- <para>
- &logger_commands.xml;
- </para>
-
- </section>
-
- <section id="secLoggerLevels">
- <title>Niveaux</title>
-
- <para>
- L'enregistrement est fait selon un niveau pour chaque tampon. Le niveau
- par défaut est 9 (enregistrer tous les messages affichés dans le tampon).
- Vous pouvez changer ce niveau pour un tampon, ou un groupe de tampons.
- </para>
- 2
- <para>
- Les niveaux possibles vont de 0 à 9. Zéro signifie "<literal>ne rien
- enregistrer</literal>" et 9 signifie "<literal>enregistrer tous les
- messages</literal>".
- </para>
-
- <para>
- Les extensions utilisent différent niveaux pour les messages affichés.
- L'extension IRC utilise les niveaux suivants :
- <itemizedlist>
- <listitem>
- <para>
- Niveau 1: message d'un utilisateur (sur un canal ou en privé)
- </para>
- </listitem>
- <listitem>
- <para>
- Niveau 2: changement de pseudo (vous ou quelqu'un d'autre)
- </para>
- </listitem>
- <listitem>
- <para>
- Niveau 3: tout message du serveur (sauf join/part/quit)
- </para>
- </listitem>
- <listitem>
- <para>
- Niveau 4: message join/part/quit du serveur
- </para>
- </listitem>
- </itemizedlist>
- Donc si vous affectez le niveau 3 pour un canal IRC, WeeChat enregistrera
- tous les messages sauf les join/part/quit.
- </para>
-
- <para>
- Quelques exemples :
- <itemizedlist>
- <listitem>
- <para>
- afecter le niveau 3 pour le canal IRC #weechat :
- <screen>/set logger.level.irc.freenode.#weechat 3</screen>
- </para>
- </listitem>
- <listitem>
- <para>
- affecter le niveau 3 pour le tampon serveur freenode :
- <screen>/set logger.level.irc.server.freenode 3</screen>
- </para>
- </listitem>
- <listitem>
- <para>
- affecter le niveau 3 pour tous les canaux sur le serveur freenode :
- <screen>/set logger.level.irc.freenode 3</screen>
- </para>
- </listitem>
- <listitem>
- <para>
- affecter le niveau 2 pour tous les tampons IRC :
- <screen>/set logger.level.irc 2</screen>
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- </section>
-
- <section id="secLoggerMasks">
- <title>Masques de nom de fichier</title>
-
- <para>
- Il est posible 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:
- <command>/buffer localvar</command>).
- </para>
-
- <para>
- Par exemple, si vous voulez un répertoire par serveur IRC et un fichier
- par canal dedans :
- <screen>/set logger.mask.irc "irc/$server/$channel.weechatlog"</screen>
- Vous obtiendrez les fichiers suivants :
-<screen>
-~/.weechat/
- |--- logs/
- |--- irc/
- |--- freenode/
- | freenode.weechatlog
- | #weechat.weechatlog
- | #mychan.weechatlog
- |--- oftc/
- | oftc.weechatlog
- | #chan1.weechatlog
- | #chan2.weechatlog
-</screen>
- </para>
-
- </section>
-
-</section>
diff --git a/doc/fr/user/plugin_scripts.fr.xml b/doc/fr/user/plugin_scripts.fr.xml
deleted file mode 100644
index b4c94c445..000000000
--- a/doc/fr/user/plugin_scripts.fr.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secPluginScripts">
- <title>Extensions scripts</title>
-
- <para>
- 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.
- </para>
-
- <para>
- Pour plus d'informations sur comment écrire des scripts, ou sur l'API
- WeeChat pour les scripts, merci de lire le "<literal>Guide du développeur
- WeeChat</literal>".
- </para>
-
- <para>
- Vous pouvez trouver des scripts pour WeeChat ici :
- <ulink url="http://weechat.flashtux.org/plugins.php">
- http://weechat.flashtux.org/plugins.php
- </ulink>
- </para>
-
- <section id="secScriptsCommands">
- <title>Commandes</title>
-
- <para>
- &perl_commands.xml;
- &python_commands.xml;
- &ruby_commands.xml;
- &lua_commands.xml;
- &tcl_commands.xml;
- </para>
-
- </section>
-
-</section>
diff --git a/doc/fr/user/plugin_xfer.fr.xml b/doc/fr/user/plugin_xfer.fr.xml
deleted file mode 100644
index 5ded80461..000000000
--- a/doc/fr/user/plugin_xfer.fr.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<section id="secPluginXfer">
- <title>Extension Xfer</title>
-
- <section id="secXferOptions">
- <title>Options (fichier xfer.conf)</title>
-
- <para>
- &xfer_options.xml;
- </para>
-
- </section>
-
- <section id="secXferCommands">
- <title>Commandes</title>
-
- <para>
- &xfer_commands.xml;
- </para>
-
- </section>
-
-</section>
diff --git a/doc/fr/user/plugins.fr.xml b/doc/fr/user/plugins.fr.xml
deleted file mode 100644
index ec61998d7..000000000
--- a/doc/fr/user/plugins.fr.xml
+++ /dev/null
@@ -1,149 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<chapter id="chapPlugins">
- <title>Extensions</title>
-
- <para>
- Ce chapître décrit le mécanisme d'extension dans WeeChat et les extensions
- par défaut fournies avec WeeChat.
- </para>
-
- <para>
- Pour en apprendre plus sur le développement d'extension ou de script (via
- l'API), merci de consulter le "<literal>Guide du développeur
- WeeChat</literal>".
- </para>
-
- <section id="secPluginsInWeeChat">
- <title>Extensions dans WeeChat</title>
-
- <para>
- Une extension est une bibliothèque dynamique, écrite en C et compilée,
- qui est chargée par WeeChat.
- Sous GNU/Linux, ce fichier a une extension ".so", et ".dll" sous Windows.
- </para>
-
- <para>
- 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 WeeChat tourne.
- </para>
-
- <para>
- Il est important de bien faire la différence entre une
- <literal>extension</literal> et un <literal>script</literal> : une
- extension est un fichier binaire compilé et chargé avec la commande
- <command>/plugin</command>, tandis qu'un script est un fichier texte
- chargé par une extension comme <literal>Perl</literal> par la commande
- <command>/perl</command>.
- </para>
-
- <para>
- Vous pouvez utiliser la commande <command>/plugin</command> pour
- charger/décharger une extension, ou afficher les extensions chargées.
- Quand une extension est déchargée, tous les tampons créés par cette
- extension sont automatiquement fermés.
- </para>
-
- <para>
- Exemples pour charger, décharger et afficher les extensions :
-<screen>
-/plugin load irc
-/plugin unload irc
-/plugin list
-</screen>
- </para>
-
- <para>
- Les extensions par défaut sont :
- <itemizedlist>
- <listitem>
- <para>alias: définir des alias pour les commandes</para>
- </listitem>
- <listitem>
- <para>aspell: vérification orthographique de la ligne de commande</para>
- </listitem>
- <listitem>
- <para>charset: décodage/encodage avec jeu de caractère sur les tampons</para>
- </listitem>
- <listitem>
- <para>demo: extension de démonstration (non compilée par défaut, non documentée)</para>
- </listitem>
- <listitem>
- <para>fifo: tube FIFO utilisé pour envoyer des commandes à distance vers WeeChat</para>
- </listitem>
- <listitem>
- <para>irc: discussion avec le protocole IRC</para>
- </listitem>
- <listitem>
- <para>jabber: discussion avec le protocole Jabber</para>
- </listitem>
- <listitem>
- <para>logger: enregistrement des tampons dans des fichiers</para>
- </listitem>
- <listitem>
- <para>notify: niveaux de notification des tampons</para>
- </listitem>
- <listitem>
- <para>perl: interface (API) pour scripts Perl</para>
- </listitem>
- <listitem>
- <para>python: interface (API) pour scripts Python</para>
- </listitem>
- <listitem>
- <para>ruby: interface (API) pour scripts Ruby</para>
- </listitem>
- <listitem>
- <para>lua: interface (API) pour scripts Lua</para>
- </listitem>
- <listitem>
- <para>tcl: interface (API) pour scripts Tcl</para>
- </listitem>
- <listitem>
- <para>xfer: transfert de fichier et discussion directe</para>
- </listitem>
- </itemizedlist>
- </para>
-
- </section>
-
- &plugin_alias.fr.xml;
-
- &plugin_aspell.fr.xml;
-
- &plugin_charset.fr.xml;
-
- &plugin_fifo.fr.xml;
-
- &plugin_irc.fr.xml;
-
- &plugin_jabber.fr.xml;
-
- &plugin_logger.fr.xml;
-
- &plugin_scripts.fr.xml;
-
- &plugin_xfer.fr.xml;
-
-</chapter>
diff --git a/doc/fr/user/usage.fr.xml b/doc/fr/user/usage.fr.xml
deleted file mode 100644
index 25301cf97..000000000
--- a/doc/fr/user/usage.fr.xml
+++ /dev/null
@@ -1,824 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<chapter id="chapUsage">
- <title>Utilisation</title>
-
- <para>
- Ce chapitre explique comment lancer WeeChat, les touches utilisées par
- défaut, les commandes internes et IRC, le fichier de configuration et
- l'utilisation du tube FIFO.
- </para>
-
- <section id="secRunWeeChat">
- <title>Lancer WeeChat</title>
-
- <para>
- Paramètres de ligne de commande :
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Paramètre</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><literal>-a, --no-connect</literal></entry>
- <entry>
- Supprimer la connexion automatique aux serveurs lors du
- démarrage
- </entry>
- </row>
- <row>
- <entry><literal>-d, --dir &lt;répertoire&gt;</literal></entry>
- <entry>
- Définir le répertoire comme étant la base de WeeChat
- (utilisé pour les fichiers de configuration, logs, extensions
- et scripts de l'utilisateur). La valeur par défaut est
- "<literal>~/.weechat</literal>". NB: le répertoire est créé
- s'il n'est pas trouvé par WeeChat.
- </entry>
- </row>
- <row>
- <entry><literal>-h, --help</literal></entry>
- <entry>
- Afficher l'aide
- </entry>
- </row>
- <row>
- <entry><literal>-k, --keys</literal></entry>
- <entry>
- Afficher les touches par défaut de WeeChat
- </entry>
- </row>
- <row>
- <entry><literal>-l, --license</literal></entry>
- <entry>
- Afficher la licence de WeeChat
- </entry>
- </row>
- <row>
- <entry><literal>-p, --no-plugin</literal></entry>
- <entry>
- Supprimer le chargement automatique des extensions au
- démarrage
- </entry>
- </row>
- <row>
- <entry><literal>-v, --version</literal></entry>
- <entry>
- Afficher la version de WeeChat
- </entry>
- </row>
- <row>
- <entry><literal>extension:option</literal></entry>
- <entry>
- Option pour l'extension (voir la doc de chaque extension)
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
-
- <para>
- Il est également possible de passer une URL pour un ou plusieurs
- serveurs IRC, de la forme :
- <screen>irc[6][s]://[pseudo[:mot_passe]@]irc.exemple.org[:port][/canal][,canal[...]</screen>
- Exemple pour rejoindre #weechat et #toto sur le serveur
- "<literal>irc.freenode.net</literal>", port par défaut (6667), sous
- le pseudo "nono" :
- <screen><prompt>$ </prompt><userinput>weechat-curses irc://nono@irc.freenode.net/#weechat,#toto</userinput></screen>
- </para>
-
- <para>
- Pour lancer WeeChat, tapez cette commande :
- <itemizedlist>
- <listitem>
- <para>
- pour l'interface Curses :
- <userinput>weechat-curses</userinput>
- </para>
- </listitem>
- <listitem>
- <para>
- pour l'interface Gtk :
- <userinput>weechat-gtk</userinput>
- </para>
- </listitem>
- <listitem>
- <para>
- pour l'interface wxWidgets :
- <userinput>weechat-wxwidgets</userinput>
- </para>
- </listitem>
- <listitem>
- <para>
- pour l'interface Qt :
- <userinput>weechat-qt</userinput>
- </para>
- </listitem>
- </itemizedlist>
- </para>
-
- <para>
- Lorsque vous lancez WeeChat pour la première fois, un fichier de
- configuration par défaut est créé, avec les options par défaut.
- Le fichier de configuration par défaut est :
- "<literal>~/.weechat/weechat.conf</literal>"
- </para>
-
- <para>
- Vous pouvez éditer ce fichier pour configurer WeeChat à votre
- convenance ou vous pouvez modifier les paramètres dans WeeChat avec la
- commande "<literal>/set</literal>"
- (voir <xref linkend="secWeechatCommands" />)
- </para>
-
- </section>
-
- <section id="secKeyboardShortcuts">
- <title>Raccourcis clavier</title>
-
- <para>
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Touche</entry>
- <entry>Action</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>Flèche gauche / Ctrl + B</entry>
- <entry>
- Aller au caractère précédent sur la ligne de commande
- </entry>
- </row>
- <row>
- <entry>Flèche droite / Ctrl + F</entry>
- <entry>
- Aller au caractère suivant sur la ligne de commande
- </entry>
- </row>
- <row>
- <entry>Ctrl + flèche gauche</entry>
- <entry>
- Aller au mot précédent sur la ligne de commande
- </entry>
- </row>
- <row>
- <entry>Ctrl + flèche droite</entry>
- <entry>
- Aller au mot suivant sur la ligne de commande
- </entry>
- </row>
- <row>
- <entry>Home / Ctrl + A</entry>
- <entry>
- Aller au début de la ligne de commande
- </entry>
- </row>
- <row>
- <entry>Ctrl + C puis B</entry>
- <entry>
- Insérer le code pour mettre le texte en gras.
- </entry>
- </row>
- <row>
- <entry>Ctrl + C puis C</entry>
- <entry>
- Insérer le code pour écrire en couleur.
- </entry>
- </row>
- <row>
- <entry>Ctrl + C puis I</entry>
- <entry>
- Insérer le code pour mettre le texte en italique.
- </entry>
- </row>
- <row>
- <entry>Ctrl + C puis O</entry>
- <entry>
- Insérer le code pour réinitaliser la couleur.
- </entry>
- </row>
- <row>
- <entry>Ctrl + C puis R</entry>
- <entry>
- Insérer le code pour écrire en couleur inversée.
- </entry>
- </row>
- <row>
- <entry>Ctrl + C puis U</entry>
- <entry>
- Insérer le code pour écrire en souligné.
- </entry>
- </row>
- <row>
- <entry>End / Ctrl + E</entry>
- <entry>
- Aller à la fin de la ligne de commande
- </entry>
- </row>
- <row>
- <entry>Ctrl + K</entry>
- <entry>
- Effacer du curseur jusqu'à la fin de la ligne de commande
- (la chaîne supprimée est copiée dans le presse-papiers)
- </entry>
- </row>
- <row>
- <entry>Ctrl + L</entry>
- <entry>
- Réafficher toute la fenêtre
- </entry>
- </row>
- <row>
- <entry>Ctrl + R</entry>
- <entry>
- Chercher du texte dans l'historique du tampon
- (deux appuis successifs pour rechercher du texte exact)
- </entry>
- </row>
- <row>
- <entry>Ctrl + S puis Ctrl + U</entry>
- <entry>
- Positionner le marqueur de données non lues sur tous les
- tampons
- </entry>
- </row>
- <row>
- <entry>Ctrl + T</entry>
- <entry>
- Inverser deux caractères
- </entry>
- </row>
- <row>
- <entry>Ctrl + U</entry>
- <entry>
- Effacer du curseur jusqu'au début de la ligne de commande
- (la chaîne supprimée est copiée dans le presse-papiers)
- </entry>
- </row>
- <row>
- <entry>Ctrl + W</entry>
- <entry>
- Effacer le mot précédent sur la ligne de commande
- (la chaîne supprimée est copiée dans le presse-papiers)
- </entry>
- </row>
- <row>
- <entry>Ctrl + Y</entry>
- <entry>
- Coller le contenu du presse-papiers
- </entry>
- </row>
- <row>
- <entry>Backspace / Ctrl + H</entry>
- <entry>
- Effacer le caractère précédent sur la ligne de commande
- </entry>
- </row>
- <row>
- <entry>Delete / Ctrl + D</entry>
- <entry>
- Effacer le caractère suivant sur la ligne de commande
- </entry>
- </row>
- <row>
- <entry>Tab</entry>
- <entry>
- Compléter la commande ou le pseudo
- (Tab de nouveau: trouver la complétion suivante)
- </entry>
- </row>
- <row>
- <entry>Shift + Tab</entry>
- <entry>
- Sans complétion, effectue une complétion partielle.
- Avec une complétion en cours, complète avec la complétion
- précécente.
- </entry>
- </row>
- <row>
- <entry>Tout caractère</entry>
- <entry>
- Insérer le caractère à la position du curseur
- sur la ligne de commande
- </entry>
- </row>
- <row>
- <entry>Entrée / Ctrl + J / Ctrl + M</entry>
- <entry>
- Exécuter la commande ou envoyer le message
- (en mode recherche: arrêter la recherche)
- </entry>
- </row>
- <row>
- <entry>Flèche haut / flèche bas</entry>
- <entry>
- Rappeler les dernières commandes ou messages
- (en mode recherche: chercher en haut/bas)
- </entry>
- </row>
- <row>
- <entry>Ctrl + flèche haut / Ctrl + flèche bas</entry>
- <entry>
- Rappeler les dernières commandes ou messages dans
- l'historique global (commun à tous les tampons)
- </entry>
- </row>
- <row>
- <entry>PageUp / PageDown</entry>
- <entry>
- Monter / descendre d'une page dans l'historique du tampon
- </entry>
- </row>
- <row>
- <entry>Alt + PageUp / Alt + PageDown</entry>
- <entry>
- Monter / descendre de quelques lignes dans l'historique
- du tampon
- </entry>
- </row>
- <row>
- <entry>Alt + Home / Alt + End</entry>
- <entry>
- Aller au début / à la fin du tampon
- </entry>
- </row>
- <row>
- <entry>Alt + flèche gauche / Alt + flèche haut / Ctrl + P / F5</entry>
- <entry>
- Aller au tampon précédent
- </entry>
- </row>
- <row>
- <entry>Alt + flèche droite / Alt + flèche bas / Ctrl + N / F6</entry>
- <entry>
- Aller au tampon suivant
- </entry>
- </row>
- <row>
- <entry>F7</entry>
- <entry>
- Aller à la fenêtre précédente
- </entry>
- </row>
- <row>
- <entry>F8</entry>
- <entry>
- Aller à la fenêtre suivante
- </entry>
- </row>
- <row>
- <entry>F9 / F10</entry>
- <entry>
- Faire défiler le titre du canal
- </entry>
- </row>
- <row>
- <entry>F11 / F12</entry>
- <entry>
- Faire défiler la liste des pseudos
- </entry>
- </row>
- <row>
- <entry>Alt + F11 / Alt + F12</entry>
- <entry>
- Aller au début / à la fin de la liste des pseudos
- </entry>
- </row>
- <row>
- <entry>Alt + A</entry>
- <entry>
- Sauter au prochain tampon avec activité
- (avec priorité : highlight, message, autre)
- </entry>
- </row>
- <row>
- <entry>Alt + B</entry>
- <entry>
- Aller au mot précédent
- </entry>
- </row>
- <row>
- <entry>Alt + D</entry>
- <entry>
- Effacer le mot suivant
- (la chaîne supprimée est copiée dans le presse-papiers)
- </entry>
- </row>
- <row>
- <entry>Alt + F</entry>
- <entry>
- Aller au mot suivant
- </entry>
- </row>
- <row>
- <entry>Alt + H</entry>
- <entry>
- Vider la hotlist
- (notification d'activité sur les autres tampons)
- </entry>
- </row>
- <row>
- <entry>Alt + I</entry>
- <entry>
- Effacer le dernier message de la barre d'informations
- </entry>
- </row>
- <row>
- <entry>Alt + J puis Alt + L</entry>
- <entry>
- Sauter au dernier tampon
- </entry>
- </row>
- <row>
- <entry>Alt + J puis Alt + R</entry>
- <entry>
- Sauter au tampon des données brutes IRC
- </entry>
- </row>
- <row>
- <entry>Alt + chiffre (0-9)</entry>
- <entry>
- Sauter au tampon qui porte ce numéro (0 = 10)
- </entry>
- </row>
- <row>
- <entry>Alt + J puis nombre (01-99)</entry>
- <entry>
- Sauter au tampon qui porte ce numéro
- </entry>
- </row>
- <row>
- <entry>Alt + K</entry>
- <entry>
- Capturer une touche et insérer son code sur la ligne
- de commande
- </entry>
- </row>
- <row>
- <entry>Alt + N</entry>
- <entry>
- Se positionner sur le highlight suivant
- </entry>
- </row>
- <row>
- <entry>Alt + P</entry>
- <entry>
- Se positionner sur le highlight précédent
- </entry>
- </row>
- <row>
- <entry>Alt + R</entry>
- <entry>
- Effacer entièrement la ligne de commande
- </entry>
- </row>
- <row>
- <entry>Alt + S</entry>
- <entry>
- Changer de serveur sur le tampon des serveurs
- (si l'option "look_one_server_buffer" est activée)
- </entry>
- </row>
- <row>
- <entry>Alt + U</entry>
- <entry>
- Se positionner sur la première ligne non lue du tampon
- </entry>
- </row>
- <row>
- <entry>Alt + W puis Alt + flèche</entry>
- <entry>
- Sauter à une fenêtre avec une direction
- </entry>
- </row>
- <row>
- <entry>Alt + Z</entry>
- <entry>
- Zoom sur la fenêtre courante
- </entry>
- </row>
- <row>
- <entry>Alt + &lt;</entry>
- <entry>
- Sauter au tampon précédent dans la liste des tampons visités
- </entry>
- </row>
- <row>
- <entry>Alt + &gt;</entry>
- <entry>
- Sauter au tampon suivant dans la liste des tampons visités
- </entry>
- </row>
- <row>
- <entry>Alt + =</entry>
- <entry>
- Active/désactive les filtres
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
-
- </section>
-
- <section id="secCommandLine">
- <title>La ligne de commande</title>
-
- <para>
- La ligne de commande WeeChat (située en bas de la fenêtre) permet
- d'exécuter des commandes ou d'envoyer du texte vers le tampon.
- </para>
-
- <para>
- Les commandes débutent par un caractère "/", suivi du nom de la
- commande. Par exemple pour afficher la liste de toutes les options :
- <screen><userinput>/set</userinput></screen>
- </para>
-
- <para>
- Le texte envoyé à un tampon est tout texte ne commençant pas par le
- caractère "/", par exemple pour envoyer "<literal>bonjour</literal>"
- sur le tampon courant :
- <screen><userinput>bonjour</userinput></screen>
- </para>
-
- <para>
- Il est cependant possible de faire débuter un texte par "/" en le
- doublant. Par exemple pour envoyer le texte
- "<literal>/set</literal>" sur le tampon courant :
- <screen><userinput>//set</userinput></screen>
- </para>
-
- <para>
- Pour certaines extensions comme IRC, il est possible d'utiliser
- des codes couleur et attributs cmome suit (appuyer sur Ctrl-C puis sur
- la lettre qui suit et éventuellement une valeur) :
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Code</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>^Cb</entry>
- <entry>
- texte gras
- </entry>
- </row>
- <row>
- <entry>^Ccxx</entry>
- <entry>
- couleur du texte "<literal>xx</literal>"
- (voir le tableau des couleurs ci-dessous)
- </entry>
- </row>
- <row>
- <entry>^Ccxx,yy</entry>
- <entry>
- couleur du texte "<literal>xx</literal>"
- et du fond "<literal>yy</literal>"
- (voir le tableau des couleurs ci-dessous)
- </entry>
- </row>
- <row>
- <entry>^Co</entry>
- <entry>
- désactiver la couleur et tous les attributs
- </entry>
- </row>
- <row>
- <entry>^Cr</entry>
- <entry>
- vidéo inverse (inversion de la couleur d'écriture et du fond)
- </entry>
- </row>
- <row>
- <entry>^Cu</entry>
- <entry>
- texte souligné
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- NB: le même code (sans le numéro pour ^Cc) peut être utilisé pour
- stopper l'attribut défini.
- </para>
-
- <para>
- Les codes couleur pour ^Cc sont :
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Code</entry>
- <entry>Couleur</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>00</entry>
- <entry>blanc</entry>
- </row>
- <row>
- <entry>01</entry>
- <entry>noir</entry>
- </row>
- <row>
- <entry>02</entry>
- <entry>bleu foncé</entry>
- </row>
- <row>
- <entry>03</entry>
- <entry>vert foncé</entry>
- </row>
- <row>
- <entry>04</entry>
- <entry>rouge clair</entry>
- </row>
- <row>
- <entry>05</entry>
- <entry>rouge foncé</entry>
- </row>
- <row>
- <entry>06</entry>
- <entry>magenta</entry>
- </row>
- <row>
- <entry>07</entry>
- <entry>orange</entry>
- </row>
- <row>
- <entry>08</entry>
- <entry>jaune</entry>
- </row>
- <row>
- <entry>09</entry>
- <entry>vert clair</entry>
- </row>
- <row>
- <entry>10</entry>
- <entry>cyan</entry>
- </row>
- <row>
- <entry>11</entry>
- <entry>cyan clair</entry>
- </row>
- <row>
- <entry>12</entry>
- <entry>bleu clair</entry>
- </row>
- <row>
- <entry>13</entry>
- <entry>magenta clair</entry>
- </row>
- <row>
- <entry>14</entry>
- <entry>gris</entry>
- </row>
- <row>
- <entry>15</entry>
- <entry>gris clair (blanc)</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
-
- <para>
- Exemple : affichage de "<literal>bonjour tout le monde !</literal>"
- avec "<literal>bonjour</literal>" en bleu clair gras, et
- "<literal>tout le monde</literal>" en rouge clair souligné :
-<screen><userinput>^Cc12^Cbbonjour^Cb^Cc04^Cu tout le monde^Cu^Cc !</userinput></screen>
- </para>
-
- </section>
-
- <section id="secWeechatOptions">
- <title>Options WeeChat (fichier weechat.conf)</title>
-
- <para>
- &weechat_options.xml;
- </para>
-
- <para>
- Les couleurs pour l'interface Curses sont :
- <informaltable colsep="0" frame="none">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Mot clé</entry>
- <entry>Couleur</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><literal>default</literal></entry>
- <entry>couleur par défaut (transparent pour le fond)</entry>
- </row>
- <row>
- <entry><literal>black</literal></entry>
- <entry>noir</entry>
- </row>
- <row>
- <entry><literal>red</literal></entry>
- <entry>rouge foncé</entry>
- </row>
- <row>
- <entry><literal>lightred</literal></entry>
- <entry>rouge clair</entry>
- </row>
- <row>
- <entry><literal>green</literal></entry>
- <entry>vert foncé</entry>
- </row>
- <row>
- <entry><literal>lightgreen</literal></entry>
- <entry>vert clair</entry>
- </row>
- <row>
- <entry><literal>brown</literal></entry>
- <entry>marron</entry>
- </row>
- <row>
- <entry><literal>yellow</literal></entry>
- <entry>jaune</entry>
- </row>
- <row>
- <entry><literal>blue</literal></entry>
- <entry>bleu foncé</entry>
- </row>
- <row>
- <entry><literal>lightblue</literal></entry>
- <entry>bleu clair</entry>
- </row>
- <row>
- <entry><literal>magenta</literal></entry>
- <entry>violet foncé</entry>
- </row>
- <row>
- <entry><literal>lightmagenta</literal></entry>
- <entry>violet clair</entry>
- </row>
- <row>
- <entry><literal>cyan</literal></entry>
- <entry>cyan foncé</entry>
- </row>
- <row>
- <entry><literal>lightcyan</literal></entry>
- <entry>cyan clair</entry>
- </row>
- <row>
- <entry><literal>white</literal></entry>
- <entry>blanc</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
-
- </section>
-
- <section id="secWeechatCommands">
- <title>Commandes WeeChat</title>
-
- <para>
- &weechat_commands.xml;
- </para>
-
- </section>
-
-</chapter>
diff --git a/doc/fr/user/weechat_user.fr.xml b/doc/fr/user/weechat_user.fr.xml
deleted file mode 100644
index 77c86fd09..000000000
--- a/doc/fr/user/weechat_user.fr.xml
+++ /dev/null
@@ -1,115 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-WeeChat documentation (french version)
-
-Copyright (c) 2003-2009 by FlashCode <flashcode@flashtux.org>
-
-This manual 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 manual 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/>.
-
--->
-
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"file:///usr/share/xml/docbook/schema/dtd/4.2/docbookx.dtd"
-[
- <!-- ***** auto-built: ***** -->
- <!ENTITY date.xml SYSTEM "date.xml">
- <!ENTITY % include_autogen.xml SYSTEM "include_autogen.xml">
- %include_autogen.xml;
-
- <!-- ***** written by hand: ***** -->
- <!ENTITY intro.fr.xml SYSTEM "intro.fr.xml">
- <!ENTITY install.fr.xml SYSTEM "install.fr.xml">
- <!ENTITY usage.fr.xml SYSTEM "usage.fr.xml">
- <!ENTITY plugins.fr.xml SYSTEM "plugins.fr.xml">
- <!ENTITY plugin_alias.fr.xml SYSTEM "plugin_alias.fr.xml">
- <!ENTITY plugin_aspell.fr.xml SYSTEM "plugin_aspell.fr.xml">
- <!ENTITY plugin_charset.fr.xml SYSTEM "plugin_charset.fr.xml">
- <!ENTITY plugin_fifo.fr.xml SYSTEM "plugin_fifo.fr.xml">
- <!ENTITY plugin_irc.fr.xml SYSTEM "plugin_irc.fr.xml">
- <!ENTITY plugin_jabber.fr.xml SYSTEM "plugin_jabber.fr.xml">
- <!ENTITY plugin_logger.fr.xml SYSTEM "plugin_logger.fr.xml">
- <!ENTITY plugin_scripts.fr.xml SYSTEM "plugin_scripts.fr.xml">
- <!ENTITY plugin_xfer.fr.xml SYSTEM "plugin_xfer.fr.xml">
- <!ENTITY authors.fr.xml SYSTEM "authors.fr.xml">
-]>
-
-<book lang="fr">
-
- <bookinfo>
-
- <title>WeeChat 0.3.0-dev - Guide utilisateur</title>
- <subtitle>Client de discussion rapide, léger et extensible</subtitle>
-
- <author>
- <firstname>Sébastien</firstname>
- <surname>Helleu</surname>
- <email>flashcode AT flashtux.org</email>
- </author>
-
- &date.xml;
-
- <copyright>
- <year>2009</year>
- <holder>Sébastien Helleu</holder>
- </copyright>
-
- <legalnotice>
- <para>
- This manual 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.
- </para>
- <para>
- 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.
- </para>
- <para>
- You should have received a copy of the GNU General Public License
- along with this program. If not, see
- &lt;http://www.gnu.org/licenses/&gt;.
- </para>
- </legalnotice>
-
- <abstract>
- <para>
- Ce manuel documente le client de messagerie instantanée WeeChat, il
- fait partie de WeeChat.
- </para>
- <para>
- La dernière version de ce document peut être téléchargée
- sur cette page :
- <ulink url="http://weechat.flashtux.org/doc.php">
- http://weechat.flashtux.org/doc.php
- </ulink>
- </para>
- </abstract>
-
- </bookinfo>
-
- &intro.fr.xml;
-
- &install.fr.xml;
-
- &usage.fr.xml;
-
- &plugins.fr.xml;
-
- &authors.fr.xml;
-
-</book>
diff --git a/doc/fr/weechat_faq.fr.txt b/doc/fr/weechat_faq.fr.txt
index 5470ccf73..981b18ec9 100644
--- a/doc/fr/weechat_faq.fr.txt
+++ b/doc/fr/weechat_faq.fr.txt
@@ -1,7 +1,6 @@
-WeeChat - Questions Fréquemment Posées (FAQ)
-============================================
+WeeChat FAQ (Questions Fréquemment Posées)
+==========================================
FlashCode <flashcode@flashtux.org>
-v0.3.0-dev, 2009-05-15
Général
diff --git a/doc/fr/weechat_quickstart.fr.txt b/doc/fr/weechat_quickstart.fr.txt
index 3f9b1f1c7..b22d066ce 100644
--- a/doc/fr/weechat_quickstart.fr.txt
+++ b/doc/fr/weechat_quickstart.fr.txt
@@ -1,7 +1,6 @@
-Guide de démarrage rapide WeeChat
+Guide de Démarrage Rapide WeeChat
=================================
FlashCode <flashcode@flashtux.org>
-v0.3.0-dev, 2009-05-15
[[start]]
diff --git a/doc/fr/weechat_tester.fr.txt b/doc/fr/weechat_tester.fr.txt
index 7e10c0784..cf55753c0 100644
--- a/doc/fr/weechat_tester.fr.txt
+++ b/doc/fr/weechat_tester.fr.txt
@@ -1,7 +1,6 @@
Guide du testeur WeeChat
========================
FlashCode <flashcode@flashtux.org>
-v0.3.0-dev, 2009-05-15
[[purpose]]
diff --git a/doc/fr/weechat_user.fr.txt b/doc/fr/weechat_user.fr.txt
new file mode 100644
index 000000000..a24797646
--- /dev/null
+++ b/doc/fr/weechat_user.fr.txt
@@ -0,0 +1,1199 @@
+Guide Utilisateur WeeChat
+=========================
+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://weechat.flashtux.org/doc.php
+
+
+[[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.
+
+[[features]]
+Fonctionnalités
+~~~~~~~~~~~~~~~
+
+Ses principales fonctionnalités sont les suivantes :
+
+* multi-protocoles (IRC et bientôt d'autres)
+* connexion multi-serveurs (avec SSL, IPv6, proxy)
+* plusieurs interfaces : Curses (wxWidgets, Gtk et Qt en développement)
+* petit, rapide et léger
+* paramétrable et extensible avec des extensions et des scripts
+* conforme aux RFCs IRC http://www.ietf.org/rfc/rfc1459.txt[1459],
+ http://www.ietf.org/rfc/rfc2810.txt[2810],
+ http://www.ietf.org/rfc/rfc2811.txt[2811],
+ http://www.ietf.org/rfc/rfc2812.txt[2812] et
+ http://www.ietf.org/rfc/rfc2813.txt[2813]
+* 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/
+
+[[pre-requisites]]
+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)
+* droits "root" (pour installer WeeChat dans un répertoire système)
+* la bibliothèque ncurses
+
+
+[[install]]
+Installation
+------------
+
+[[binary_packages]]
+Binary packages
+~~~~~~~~~~~~~~~
+
+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`
+
+Des paquets additionnels peuvent être utiles également, comme weechat-plugins.
+
+Pour les autres distributions supportées, merci de vous référer au manuel de
+la distribution pour la méthode d'installation.
+
+[[source_package]]
+Paquet source
+~~~~~~~~~~~~~
+
+WeeChat peut être compilé avec cmake ou les autotools (cmake est la méthode
+recommandée).
+
+Avec cmake
+^^^^^^^^^^
+
+* Installation dans les répertoires systèmes (nécessite les droits 'root') :
+
+----------------------------------------
+$ mkdir build
+$ cd build
+$ cmake ..
+$ make
+% make install (en root)
+----------------------------------------
+
+* Installation dans un répertoire spécifique :
+
+----------------------------------------
+$ mkdir build
+$ cd build
+$ cmake .. -DPREFIX=/chemin/vers/repertoire
+$ make
+$ make install
+----------------------------------------
+
+Avec autotools
+^^^^^^^^^^^^^^
+
+* Installation dans les répertoires systèmes (nécessite les droits 'root') :
+
+----------------------------------------
+$ ./configure
+$ make
+% make install (en root)
+----------------------------------------
+
+* Installation dans un répertoire spécifique :
+
+----------------------------------------
+$ ./configure --prefix=/chemin/vers/repertoire
+$ make
+$ make install
+----------------------------------------
+
+[[git_sources]]
+Sources Git
+~~~~~~~~~~~
+
+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 :
+
+----------------------------------------
+$ git clone git://git.sv.gnu.org/weechat.git
+----------------------------------------
+
+Si vous utilisez les autotools (et non cmake), exécutez ce script :
+
+----------------------------------------
+$ ./autogen.sh
+----------------------------------------
+
+Suivez alors les instructions du paquet source (voir <<source_package>>).
+
+
+[[usage]]
+Utilisation
+-----------
+
+[[running_weechat]]
+Lancer WeeChat
+~~~~~~~~~~~~~
+
+Paramètres de ligne de commande :
+
+-a, --no-connect::
+ Supprimer la connexion automatique aux serveurs lors du démarrage
+
+-d, --dir 'path'::
+ Définir le répertoire comme étant la base de WeeChat
+ (utilisé pour les fichiers de configuration, logs, extensions
+ et scripts de l'utilisateur), la valeur par défaut est '~/.weechat' (note :
+ le répertoire est créé s'il n'est pas trouvé par WeeChat)
+
+-h, --help::
+ Afficher l'aide
+
+-k, --keys::
+ Afficher les touches par défaut de WeeChat
+
+-l, --license::
+ Afficher la licence de WeeChat
+
+-p, --no-plugin::
+ Supprimer le chargement automatique des extensions au démarrage
+
+-v, --version::
+ Afficher la version de WeeChat
+
+plugin:option::
+ Option pour l'extension (voir la doc de chaque extension)
+
+Pour lancer WeeChat, tapez cette commande :
+
+----------------------------------------
+$ weechat-curses
+----------------------------------------
+
+Lorsque vous lancez WeeChat pour la première fois, un fichier de configuration
+par défaut est créé, avec les options par défaut.
+Le fichier de configuration par défaut est : '~/.weechat/weechat.conf'.
+
+Vous pouvez éditer ce fichier pour configurer WeeChat à votre convenance ou
+vous pouvez modifier les paramètres dans WeeChat avec la commande `/set`
+(voir <<weechat_commands>>).
+
+[[screen_layout]]
+Organisation de l'écran
+~~~~~~~~~~~~~~~~~~~~~~~
+
+Exemple de terminal avec WeeChat :
+
+........................................
+┌─────────────────────────────────────────────────────────────────────────────────────────┐
+│Bienvenue sur #test, canal de test │
+│12:52:27 --> | flashy (n=flashcod@hellix.flashtux.org) a rejoint #test │@ChanServ │
+│12:52:27 -- | Pseudos #test: [@ChanServ @flashy +_FlashB0t joe mike] │@flashy │
+│12:52:27 -- | Canal #test: 5 pseudos (2 ops, 0 halfop, 1 voice, 2 normal) │+_FlashB0t│
+│12:52:27 -- | Canal créé le Tue Jan 27 06:30:17 2009 │joe │
+│12:54:15 flashy | bonjour ! │mike │
+│12:55:01 joe | salut flashy ! │ │
+│ │ │
+│ │ │
+│ │ │
+│ │ │
+│ │ │
+│ │ │
+│ │ │
+│ │ │
+│ │ │
+│ │ │
+│ │ │
+│ │ │
+│ │ │
+│[12:55] [4] [irc] 3:freenode/#test(+n){5}* [Act: 4,2] │
+│[flashy] salut joe !█ │
+└─────────────────────────────────────────────────────────────────────────────────────────┘
+........................................
+
+L'écran est composé des zones suivantes :
+
+* zone de discussion (milieu de l'écran) avec les lignes de discussion, et
+ pour chaque ligne :
+** heure
+** préfixe (avant "|")
+** message (après "|")
+* barres autour de la zone de discussion, les barres par défaut sont :
+** barre 'title', au dessus de la zone de discussion
+** barre 'status', sous la zone de discussion
+** barre 'input', sous la barre de statut
+** barre 'nicklist', sur la droite
+
+La barre 'status' contient les objets (items) suivants par défaut :
+
+[width="100%",cols="^3,^3,10",options="header"]
+|========================================
+| Objet (item) | Exemple | Description
+
+| time | `[12:55]` |
+ heure
+
+| buffer_count | `[4]` |
+ nombre de tampons ouverts
+
+| buffer_plugin | `[irc]` |
+ extension du tampon courant
+
+| buffer_number | `3` |
+ numéro du tampon courant
+
+| buffer_name | `freenode/#test(+n)` |
+ nom du tampon courant
+
+| buffer_nicklist_count | `{5}` |
+ nombre de pseudos dans la liste des pseudos
+
+| buffer_filter | `*` |
+ 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]` |
+ indicateur de "lag" (ralentissements réseau), en secondes (caché si le lag
+ est faible)
+
+| hotlist | `[Act: 4,2]` |
+ liste des tampons où il y a de l'activité (messages non lus)
+
+| completion | `abc(2) def(5)` |
+ liste des mots pour la complétion, avec le nombre de complétions possibles
+ pour chaque mot
+
+| scroll | `-PLUS(50)-` |
+ indicateur de scroll, avec le nombre de lignes sous la dernière ligne
+ affichée
+|========================================
+
+La barre 'input' contient les objets (items) suivants par défaut :
+
+[width="100%",cols="^3,^6,8",options="header"]
+|========================================
+| Objet (item) | Exemple | Description
+
+| input_paste | `[Coller 7 lignes ? [ctrl-Y] Oui [ctrl-N] Non]` |
+ question à l'utilisateur pour coller des lignes
+
+| input_prompt | `[pseudo]` |
+ prompt (pseudo pour l'extension irc)
+
+| away | `(absent)` |
+ indicateur d'absence
+
+| input_search | `[Recherche texte]` |
+ indicateur de recherche de texte
+
+| input_text | `bla bla...` |
+ texte entré
+|========================================
+
+[[key_bindings]]
+Raccourcis clavier par défaut
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Touches pour la ligne de commande
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+[width="100%",cols="^.^4,.^15",options="header"]
+|========================================
+| Touches | Description
+
+| Flèche gauche +
+ Ctrl + B |
+ Aller au caractère précédent sur la ligne de commande
+
+| Flèche droite +
+ Ctrl + F |
+ Aller au caractère suivant sur la ligne de commande
+
+| Ctrl + flèche gauche +
+ Alt + B |
+ Aller au mot précédent sur la ligne de commande
+
+| Ctrl + flèche droite +
+ Alt + F |
+ Aller au mot suivant sur la ligne de commande
+
+| Home +
+ Ctrl + A |
+ Aller au début de la ligne de commande
+
+| End +
+ Ctrl + E |
+ Aller à la fin de la ligne de commande
+
+| Ctrl + C puis B |
+ Insérer le code pour mettre le texte en gras
+
+| Ctrl + C puis C |
+ Insérer le code pour écrire en couleur
+
+| Ctrl + C puis I |
+ Insérer le code pour mettre le texte en italique
+
+| Ctrl + C puis O |
+ Insérer le code pour réinitaliser la couleur
+
+| Ctrl + C puis R |
+ Insérer le code pour écrire en couleur inversée
+
+| Ctrl + C puis U |
+ Insérer le code pour écrire en souligné
+
+| Delete +
+ Ctrl + D |
+ Effacer le caractère suivant sur la ligne de commande
+
+| Backspace +
+ Ctrl + H |
+ Effacer le caractère précédent sur la ligne de commande
+
+| Ctrl + K |
+ Effacer du curseur jusqu'à la fin de la ligne de commande (la chaîne
+ supprimée est copiée dans le presse-papiers)
+
+| Ctrl + R |
+ Chercher du texte dans l'historique du tampon (deux appuis successifs pour
+ rechercher du texte exact)
+
+| Ctrl + T |
+ Inverser deux caractères
+
+| Ctrl + U |
+ Effacer du curseur jusqu'au début de la ligne de commande (la chaîne
+ supprimée est copiée dans le presse-papiers)
+
+| Ctrl + W |
+ Effacer le mot précédent sur la ligne de commande (la chaîne supprimée est
+ copiée dans le presse-papiers)
+
+| Ctrl + Y |
+ Coller le contenu du presse-papiers
+
+| Tab |
+ Compléter la commande ou le pseudo (Tab de nouveau: trouver la complétion
+ suivante)
+
+| 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.
+
+| Tout caractère |
+ Insérer le caractère à la position du curseur sur la ligne de commande
+
+| Enter +
+ Ctrl + J +
+ Ctrl + M |
+ Exécuter la commande ou envoyer le message (en mode recherche: arrêter la
+ recherche)
+
+| Flèche haut |
+ Rappeler la commande précédente (en mode recherche: chercher plus haut)
+
+| Flèche bas |
+ Rappeler la commande suivante (en mode recherche: chercher plus bas)
+
+| Ctrl + flèche haut |
+ Rappeler la commande précédente dans l'historique global (commun à tous les
+ tampons)
+
+| Ctrl + flèche bas |
+ Rappeler la commande suivante dans l'historique global (commun à tous les
+ tampons)
+
+| Alt + D |
+ Effacer le mot suivant (la chaîne supprimée est copiée dans le
+ presse-papiers)
+
+| Alt + K |
+ Capturer une touche et insérer son code sur la ligne de commande
+
+| Alt + R |
+ Effacer entièrement la ligne de commande
+|========================================
+
+Touches pour les tampons / fenêtres
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+[width="100%",cols="^.^4,.^15",options="header"]
+|========================================
+| Touches | Description
+
+| Ctrl + L |
+ Réafficher toute la fenêtre
+
+| Ctrl + S puis Ctrl + U |
+ Positionner le marqueur de données non lues sur tous les tampons
+
+| Page haut |
+ Monter d'une page dans l'historique du tampon
+
+| Page bas |
+ Descendre d'une page dans l'historique du tampon
+
+| Alt + Page haut |
+ Monter de quelques lignes dans l'historique du tampon
+
+| Alt + Page bas |
+ Descendre de quelques lignes dans l'historique du tampon
+
+| Alt + Home |
+ Aller au début du tampon
+
+| Alt + End |
+ Aller à la fin du tampon
+
+| Alt + flèche gauche +
+ Alt + flèche haut +
+ Ctrl + P +
+ F5 |
+ Aller au tampon précédent
+
+| Alt + flèche droite +
+ Alt + flèche bas +
+ Ctrl + N +
+ F6 |
+ Aller au tampon suivant
+
+| F7 |
+ Aller à la fenêtre précédente
+
+| F8 |
+ Aller à la fenêtre suivante
+
+| F9 |
+ Faire défiler le titre du tampon vers la gauche
+
+| F10 |
+ Faire défiler le titre du tampon vers la droite
+
+| F11 |
+ Monter d'une page dans la liste des pseudos
+
+| F12 |
+ Descendre d'une page dans la liste des pseudos
+
+| Alt + F11 |
+ Aller au début de la liste des pseudos
+
+| Alt + F12 |
+ Aller à la fin de la liste des pseudos
+
+| Alt + A |
+ Sauter au prochain tampon avec activité (avec priorité : highlight, message,
+ autre)
+
+| Alt + J puis Alt + L |
+ Sauter au dernier tampon
+
+| Alt + J puis Alt + R |
+ Effacer entièrement la ligne de commande
+
+| Alt + chiffre (0-9) |
+ Sauter au tampon qui porte ce numéro (0 = 10)
+
+| Alt + J puis nombre (01-99) |
+ Sauter au tampon qui porte ce numéro
+
+| Alt + N |
+ Se positionner sur le highlight suivant
+
+| Alt + P |
+ Se positionner sur le highlight précédent
+
+| Alt + U |
+ Se positionner sur la première ligne non lue du tampon
+
+| Alt + W puis Alt + flèche |
+ Sauter à une fenêtre avec une direction
+
+| Alt + Z |
+ Zoom sur la fenêtre courante (Alt + Z de nouveau: restaurer l'état initial
+ des fenêtres, avant le zoom)
+
+| Alt + < |
+ Sauter au tampon précédent dans la liste des tampons visités
+
+| Alt + > |
+ Sauter au tampon suivant dans la liste des tampons visités
+|========================================
+
+Autres touches
+^^^^^^^^^^^^^^
+
+[width="100%",cols="^.^4,.^15",options="header"]
+|========================================
+| Touches | Description
+
+| Alt + H |
+ Vider la hotlist (notification d'activité sur les autres tampons)
+
+| Alt + S |
+ Changer de serveur IRC sur le tampon des serveurs (si l'option
+ "irc.look.one_server_buffer" est activée)
+
+| Alt + = |
+ Active/désactive les filtres
+|========================================
+
+[[command_line]]
+Ligne de commande
+~~~~~~~~~~~~~~~~~
+
+La ligne de commande WeeChat (située en bas de la fenêtre) permet d'exécuter
+des commandes ou d'envoyer du texte vers le tampon.
+
+Syntaxe
+^^^^^^^
+
+Les commandes débutent par un caractère "/", suivi du nom de la
+commande. Par exemple pour afficher la liste de toutes les options :
+
+----------------------------------------
+/set
+----------------------------------------
+
+Le texte envoyé à un tampon est tout texte ne commençant pas par le
+caractère "/", par exemple pour envoyer 'bonjour' sur le tampon courant :
+
+----------------------------------------
+bonjour
+----------------------------------------
+
+Il est cependant possible de faire débuter un texte par "/" en le
+doublant. Par exemple pour envoyer le texte '/set' sur le tampon courant :
+
+----------------------------------------
+//set
+----------------------------------------
+
+Couleurs
+^^^^^^^^
+
+Pour certaines extensions comme IRC, il est possible d'utiliser des codes
+couleur et attributs comme suit (appuyer sur Ctrl-C puis sur la lettre qui
+suit et éventuellement une valeur) :
+
+^Cb::
+ texte gras
+
+^Ccxx::
+ couleur du texte `xx` (voir la liste des couleurs ci-dessous)
+
+^Ccxx,yy::
+ couleur du texte `xx` et du fond `yy` (voir la liste des couleurs
+ ci-dessous)
+
+^Co::
+ désactiver la couleur et tous les attributs
+
+^Cr::
+ vidéo inverse (inversion de la couleur d'écriture et du fond)
+
+^Cu::
+ texte souligné
+
+[NOTE]
+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:
+
+[width="20%",cols="^1m,2"]
+|========================================
+| 00 | blanc
+| 01 | noir
+| 02 | bleu foncé
+| 03 | vert foncé
+| 04 | rouge clair
+| 05 | rouge foncé
+| 06 | violet
+| 07 | orange
+| 08 | jaune
+| 09 | vert clair
+| 10 | cyan
+| 11 | cyan clair
+| 12 | bleu clair
+| 13 | violet clair
+| 14 | gris
+| 15 | gris clair (blanc)
+|========================================
+
+Exemple : affichage de "bonjour tout le monde !" avec "bonjour" en bleu clair
+gras, et "tout le monde" en rouge clair souligné :
+
+----------------------------------------
+^Cc12^Cbbonjour^Cb^Cc04^Cu tout le monde^Cu^Cc!
+----------------------------------------
+
+[[weechat_options]]
+Options WeeChat (weechat.conf)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+include::autogen/user/weechat_options.txt[]
+
+Les couleurs pour l'interface Curses sont :
+
+[width="50%",cols="^3m,8"]
+|========================================
+| default | couleur par défaut du terminal (transparent pour le fond)
+| black | noir
+| red | rouge foncé
+| lightred | rouge clair
+| green | vert foncé
+| lightgreen | vert clair
+| brown | marron
+| yellow | jaune
+| blue | bleu foncé
+| lightblue | bleu clair
+| magenta | violet foncé
+| lightmagenta | violet clair
+| cyan | cyan foncé
+| lightcyan | cyan clair
+| white | white
+|========================================
+
+[[weechat_commands]]
+Commandes WeeChat
+~~~~~~~~~~~~~~~~~
+
+include::autogen/user/weechat_commands.txt[]
+
+
+[[plugins]]
+Extensions
+----------
+
+Pour en apprendre plus sur le développement d'extension ou de script (via
+l'API), merci de consulter la 'Référence API Extension' ou 'Le Guide pour
+Scripts WeeChat'.
+
+[[plugins_in_weechat]]
+Extensions dans WeeChat
+~~~~~~~~~~~~~~~~~~~~~~~
+
+Une extension est une bibliothèque dynamique, écrite en C et compilée, qui est
+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
+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
+commande `/plugin`, tandis qu'un 'script' est un fichier texte chargé par une
+extension comme 'perl' par la commande `perl`.
+
+Vous pouvez utiliser la commande `/plugin` pour charger/décharger une
+extension, ou afficher les extensions chargées.
+Quand une extension est déchargée, tous les tampons créés par cette
+extension sont automatiquement fermés.
+
+Exemples pour charger, décharger et afficher les extensions :
+
+----------------------------------------
+/plugin load irc
+/plugin unload irc
+/plugin list
+----------------------------------------
+
+Les extensions par défaut sont :
+
+[width="50%",cols=">1s,5",options="header"]
+|========================================
+| 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
+| 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
+| logger | Enregistrement des tampons dans des fichiers
+| perl | Interface (API) pour scripts Perl
+| python | Interface (API) pour scripts Python
+| ruby | Interface (API) pour scripts Ruby
+| lua | Interface (API) pour scripts Lua
+| tcl | Interface (API) pour scripts Tcl
+| xfer | Transfert de fichier et discussion directe
+|========================================
+
+[[alias_plugin]]
+Extension Alias
+~~~~~~~~~~~~~~~
+
+L'extension Alias permet de définir des alias pour des commandes (WeeChat ou
+d'autres extensions).
+
+Commandes
+^^^^^^^^^
+
+include::autogen/user/alias_commands.txt[]
+
+[[aspell_plugin]]
+Extension Aspell
+~~~~~~~~~~~~~~~~
+
+L'extension Aspell permet de vérifier l'orghographe de la ligne de commande.
+Il est possible d'utiliser plusieurs langages par tampon.
+
+Options (aspell.conf)
+^^^^^^^^^^^^^^^^^^^^^
+
+include::autogen/user/aspell_options.txt[]
+
+Commandes
+^^^^^^^^^
+
+include::autogen/user/aspell_commands.txt[]
+
+[[charset_plugin]]
+Extension Charset
+~~~~~~~~~~~~~~~~~
+
+L'extension Charset vous permet de décoder et encoder les données en utilisant
+un jeu de caractères.
+
+Il y a un jeu de caractère par défaut pour le décodage/encodage, et un
+spécifique pour les tampons (ou groupes de tampons).
+
+Cette extension est facultative, mais recommandée : si elle n'est pas chargée,
+WeeChat pourra uniquement lire/écrire des données UTF-8.
+
+L'extension Charset devrait être automatiquement chargée par WeeChat au
+démarrage. Pour s'assurer que l'extension est bien chargée, essayez :
+
+----------------------------------------
+/charset
+----------------------------------------
+
+Si la commande n'est pas trouvée, alors chargez l'extension avec la commande :
+
+----------------------------------------
+/plugin load charset
+----------------------------------------
+
+Si l'extension n'est pas trouvée, alors vous devriez recompiler WeeChat avec
+les extensions et le support de Charset.
+
+Lorsque l'extension Charset démarre, elle affiche le jeu de caractères du
+terminal et l'interne.
+Le jeu de caractères du terminal dépend de votre locale, et l'interne est
+UTF-8.
+
+Par exemple :
+
+........................................
+charset: terminal: ISO-8859-15, interne: UTF-8
+........................................
+
+Options (charset.conf)
+^^^^^^^^^^^^^^^^^^^^^^
+
+include::autogen/user/charset_options.txt[]
+
+Commandes
+^^^^^^^^^
+
+include::autogen/user/charset_commands.txt[]
+
+Définir le jeu de caractère
+^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Pour modifier les jeux de caractères de décodage et d'encodage
+globaux, utilisez la commande `/set`.
+
+Par exemple :
+
+----------------------------------------
+/set charset.default.decode ISO-8859-15
+/set charset.default.encode ISO-8859-15
+----------------------------------------
+
+Si le jeu de caractères de décodage global n'est pas renseigné (par exemple
+pendant le premier chargement de Charset), il sera renseigné automatiquement
+avec le jeu de caractères du terminal (s'il est différent de UTF-8) ou par
+défaut à 'ISO-8859-1'.
+
+La valeur d'encodage par défaut est vide, donc WeeChat envoie par défaut avec
+le jeu de caractères interne (UTF-8).
+
+Pour modifier le jeu de caractères d'un serveur IRC, utilisez la commande
+`/charset` sur le tampon serveur.
+Si vous donnez seulement le jeu de caractères, alors vous
+modifiez en même temps les valeurs de décodage et d'encodage.
+
+Par exemple :
+
+----------------------------------------
+/charset ISO-8859-15
+----------------------------------------
+
+Ce qui est équivalent à :
+
+----------------------------------------
+/charset decode ISO-8859-15
+/charset encode ISO-8859-15
+----------------------------------------
+
+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 :
+
+----------------------------------------
+/set charset.*
+----------------------------------------
+
+Troubleshooting
+^^^^^^^^^^^^^^^
+
+Pour tout problème avec les jeux de caractères, merci de consulter la
+'FAQ WeeChat'.
+
+[[fifo_plugin]]
+Extension Fifo
+~~~~~~~~~~~~~~
+
+Vous pouvez contrôler WeeChat à distance, en envoyant des commandes ou du
+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
+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
+........................................
+
+Quelques exemples :
+
+* changement du pseudo sur freenode en "autrepseudo" :
+
+----------------------------------------
+$ echo 'irc.server.freenode */nick autrepseudo' >~/.weechat/weechat_fifo_12345
+----------------------------------------
+
+* affichage de texte sur le canal IRC #weechat :
+
+----------------------------------------
+$ echo 'irc.freenode.#weechat *bonjour !' >~/.weechat/weechat_fifo_12345
+----------------------------------------
+
+* affichage de texte sur le tampon courant :
+
+----------------------------------------
+$ echo '*bonjour !' >~/.weechat/weechat_fifo_12345
+----------------------------------------
+
+* envoyer deux commandes pour décharger/recharger les scripts Perl (vous devez
+ les séparer par "\n") :
+
+----------------------------------------
+$ echo -e '*/perl unload\n*/perl autoload' >~/.weechat/weechat_fifo_12345
+----------------------------------------
+
+Vous pouvez écrire un script qui envoie les commandes à tous les WeeChat qui
+tournent en même temps, par exemple :
+
+[source,shell]
+----------------------------------------
+#!/bin/sh
+if [ $# -eq 1 ]; then
+ for fifo in ~/.weechat/weechat_fifo_*
+ do
+ echo -e "$1" >$fifo
+ done
+fi
+----------------------------------------
+
+Si le script s'appelle "auto_weechat_command", vous pouvez le lancer ainsi :
+
+----------------------------------------
+$ ./auto_weechat_command 'irc.freenode.#weechat *bonjour'
+----------------------------------------
+
+[[irc_plugin]]
+Extension IRC
+~~~~~~~~~~~~~
+
+L'extension IRC permet de dialoguer avec d'autres personnes via le
+protocole IRC.
+
+Elle est multi-serveurs, et offre toutes les commandes IRC supportées, y
+compris la discussion directe (DCC chat) and le transfert de fichier DCC
+(via l'extension xfer, voir <<xfer_plugin>>).
+
+Options de ligne de commande
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Il est possible de passer une URL pour un ou plusieurs serveurs, comme suit :
+
+----------------------------------------
+irc[6][s]://[pseudo[:mot_passe]@]irc.example.org[:port][/channel][,channel[...]
+----------------------------------------
+
+Exemple pour rejoindre '#weechat' et '#toto' sur le serveur 'irc.freenode.net',
+port par défaut (6667), avec le pseudo 'nono' :
+
+----------------------------------------
+$ weechat-curses irc://nono@irc.freenode.net/#weechat,#toto
+----------------------------------------
+
+Options (irc.conf)
+^^^^^^^^^^^^^^^^^^
+
+include::autogen/user/irc_options.txt[]
+
+Commandes
+^^^^^^^^^
+
+include::autogen/user/irc_commands.txt[]
+
+[[logger_plugin]]
+Extension Logger
+~~~~~~~~~~~~~~~~
+
+L'extension Logger permet de sauvegarder le contenu des tampons dans des
+fichiers, avec des options sur comment et quoi sauvegarder.
+
+Options (logger.conf)
+^^^^^^^^^^^^^^^^^^^^^
+
+include::autogen/user/logger_options.txt[]
+
+Commandes
+^^^^^^^^^
+
+include::autogen/user/logger_commands.txt[]
+
+Niveaux d'enregistrement
+^^^^^^^^^^^^^^^^^^^^^^^^
+
+L'enregistrement est fait selon un niveau pour chaque tampon. Le niveau par
+défaut est 9 (enregistrer tous les messages affichés dans le tampon).
+Vous pouvez changer ce niveau pour un tampon, ou un groupe de tampons.
+
+Les niveaux possibles vont de 0 à 9. Zéro signifie "ne rien enregistrer" et 9
+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
+
+Donc si vous affectez le niveau 3 pour un canal IRC, WeeChat enregistrera
+tous les messages sauf les join/part/quit.
+
+Quelques exemples :
+
+* affecter le niveau 3 pour le canal IRC #weechat :
+
+----------------------------------------
+/set logger.level.irc.freenode.#weechat 3
+----------------------------------------
+
+* affecter le niveau 3 pour le tampon serveur freenode :
+
+----------------------------------------
+/set logger.level.irc.server.freenode 3
+----------------------------------------
+
+* affecter le niveau 3 pour tous les canaux sur le serveur freenode :
+
+----------------------------------------
+/set logger.level.irc.freenode 3
+----------------------------------------
+
+* affecter le niveau 2 pour tous les tampons IRC :
+
+----------------------------------------
+/set logger.level.irc 2
+----------------------------------------
+
+Masques de noms de fichiers
+^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Il est posible 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 :
+
+----------------------------------------
+/buffer localvar
+----------------------------------------
+
+Par exemple, si vous voulez un répertoire par serveur IRC et un fichier
+par canal dedans :
+
+----------------------------------------
+/set logger.mask.irc "irc/$server/$channel.weechatlog"
+----------------------------------------
+
+Vous obtiendrez les fichiers suivants :
+
+........................................
+~/.weechat/
+ |--- logs/
+ |--- irc/
+ |--- freenode/
+ | freenode.weechatlog
+ | #weechat.weechatlog
+ | #mychan.weechatlog
+ |--- oftc/
+ | oftc.weechatlog
+ | #chan1.weechatlog
+ | #chan2.weechatlog
+........................................
+
+[[scripts_plugins]]
+Extensions Scripts
+~~~~~~~~~~~~~~~~~~
+
+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.
+
+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
+
+Commandes Perl
+^^^^^^^^^^^^^^
+
+include::autogen/user/perl_commands.txt[]
+
+Commandes Python
+^^^^^^^^^^^^^^^^
+
+include::autogen/user/python_commands.txt[]
+
+Commandes Ruby
+^^^^^^^^^^^^^^
+
+include::autogen/user/ruby_commands.txt[]
+
+Commandes Lua
+^^^^^^^^^^^^^
+
+include::autogen/user/lua_commands.txt[]
+
+Commandes Tcl
+^^^^^^^^^^^^^
+
+include::autogen/user/tcl_commands.txt[]
+
+[[xfer_plugin]]
+Extension Xfer
+~~~~~~~~~~~~~~
+
+L'extension Xfer permet :
+
+* la discussion directe (entre deux machines, sans serveur), par exemple le
+ "DCC Chat" via l'extension IRC
+* le transfert de fichiers, par exemple le "DCC" via l'extension IRC
+
+Options (xfer.conf)
+^^^^^^^^^^^^^^^^^^^^^
+
+include::autogen/user/xfer_options.txt[]
+
+Commandes
+^^^^^^^^^
+
+include::autogen/user/xfer_commands.txt[]
+
+
+[[authors]]
+Auteurs
+-------
+
+[[developers]]
+Développeurs
+~~~~~~~~~~~~
+
+FlashCode (Sébastien Helleu)::
+ développeur principal
+
+Kolter (Emmanuel Bouthenot)::
+ développeur, empaqueteur debian
+
+[[contributors]]
+Contributeurs
+~~~~~~~~~~~~~
+
+Ptitlouis::
+ premier empaqueteur debian
+
+Jiri Golembiovsky::
+ traduction en tchèque, patchs
+
+Pavel Shevchuk::
+ traduction en russe
+
+Frank Zacharias::
+ traduction en allemand
+
+Voroskoi::
+ traduction en hongrois
+
+Rudolf Polzer::
+ patchs
+
+Jim Ramsay::
+ patchs
+
+Odin::
+ RPM pour SuSE
+
+Pistos::
+ patchs
+
+Gwenn::
+ patchs
+
+
+[[support]]
+Support
+-------
+
+Avant de faire appel au support, merci de lire la documentation et la FAQ de
+WeeChat (la documentation est le document que vous êtes en train de lire, si
+vous n'avez pas tout lu jusqu'ici, il est encore temps de recommencer !).
+
+Moyens d'obtenir du support :
+
+* IRC : serveur 'irc.freenode.net', canaux '#weechat' (anglais) et
+ '#weechat-fr' (français)
+* Forum WeeChat : http://forums.flashtux.org/
+* Liste de diffusion :
+** inscription : http://mail.nongnu.org/mailman/listinfo/weechat-support
+** envoi d'un mail à weechat-support@nongnu.org
+** archives : http://mail.nongnu.org/archive/html/weechat-support