mirror of
https://github.com/weechat/weechat.git
synced 2026-06-29 06:16:40 +02:00
cf6aca1619c32422a43fa3d82e0674f6b7b49fe9
This pointer is the first argument received by callbacks, and the existing argument "data" is now automatically freed by WeeChat when the object containing the callback is removed. With this new pointer, the linked list of callbacks in scripts has been removed. This will improve speed of scripts (using a lot of hooks), reduce memory used by scripts and reduce time to unload scripts. Following functions are affected in the C API: * exec_on_files * config_new * config_new_section * config_new_option * hook_command * hook_command_run * hook_timer * hook_fd * hook_process * hook_process_hashtable * hook_connect * hook_print * hook_signal * hook_hsignal * hook_config * hook_completion * hook_modifier * hook_info * hook_info_hashtable * hook_infolist * hook_hdata * hook_focus * unhook_all_plugin * buffer_new * bar_item_new * upgrade_new * upgrade_read
= WeeChat :author: Sébastien Helleu :email: flashcode@flashtux.org :lang: en image:https://travis-ci.org/weechat/weechat.svg?branch=master["Build Status", link="https://travis-ci.org/weechat/weechat"] image:https://img.shields.io/badge/diaspora*-follow-blue.svg["Diaspora*", link="https://diasp.eu/u/weechat"] image:https://img.shields.io/badge/google%2B-follow-blue.svg["Google+", link="https://plus.google.com/+WeeChat"] image:https://img.shields.io/badge/devel%20blog-follow-blue.svg["Devel blog", link="http://dev.weechat.org/"] image:https://img.shields.io/badge/slant-recommend-28acad.svg["Slant", link="http://www.slant.co/topics/1323/~irc-clients-for-linux"] image:https://img.shields.io/badge/paypal-donate%20%E2%9D%A4-yellow.svg["Paypal", link="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=4LSMSNLUAJWNS"] WeeChat (Wee Enhanced Environment for Chat) is a free chat client, fast and light, designed for many operating systems. It is highly customizable and extensible with scripts. Homepage: https://weechat.org/ == Features * Modular chat client with a lightweight core and optional plugins. * Multi-platform (GNU/Linux, *BSD, Mac OS X, QNX, Windows & other). * Multi-protocols architecture (mainly IRC). * Compliant with IRC RFCs 1459, 2810, 2811, 2812 and 2813. * Small, fast and very light. * Customizable and extensible with plugins (C, Perl, Python, Ruby, Lua, Tcl, Guile, Javascript). * Fully documented and translated into several languages. * Developed from scratch. * Free software, released under GPLv3. image::https://weechat.org/media/images/screenshots/weechat/medium/weechat_2013-04-27_phlux_shadow.png[align="center"] Other screenshots are on https://weechat.org/about/screenshots/[this page]. == Install === Dependencies Following packages are *required*: * CMake * libncurses * libcurl * zlib * libgcrypt Following packages are optional: * for i18n: gettext * for SSL: gnutls, ca-certificates * for spell checking: aspell * for scripting: python, perl, ruby, lua, tcl, guile, libv8 (javascript) * for building doc: asciidoc, source-highlight (for man page: xsltproc, docbook-xml, docbook-xsl) * for building tests: C++ compiler, CppUTest For a complete list of dependencies and versions recommended, please look at https://weechat.org/files/doc/devel/weechat_user.en.html#dependencies[user's guide]. === Compile WeeChat can be built with http://cmake.org/[CMake] (recommended) or autotools. [NOTE] Only CMake is officially supported to build WeeChat. You should only use autotools if you are not able to use CMake. + Building with autotools requires more dependencies and is slower than with CMake. ---- $ mkdir build $ cd build $ cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/directory $ make $ make install (as root for installation in system directories) ---- For more information or installation with autotools, please look at https://weechat.org/files/doc/devel/weechat_user.en.html#compile_with_autotools[user's guide]. == Copyright Copyright (C) 2003-2016 Sébastien Helleu <flashcode@flashtux.org> This file is part of WeeChat, the extensible chat client. WeeChat 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. WeeChat 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 WeeChat. If not, see <http://www.gnu.org/licenses/>.
Languages
C
79.4%
C++
17.8%
Python
1.7%
CMake
0.8%
Shell
0.2%
Other
0.1%