Commit Graph

112 Commits (master)

Author SHA1 Message Date
Sébastien Helleu 9fa3609c85 relay: add command "handshake" in weechat relay protocol and nonce to prevent replay attacks (closes #1474)
This introduces a new command called "handshake" in the weechat relay protocol.
It should be sent by the client before the "init" command, to negotiate the way
to authenticate with a password.

3 new options are added:

* relay.network.auth_password
* relay.network.hash_iterations
* relay.network.nonce_size
2020-04-14 21:38:12 +02:00
Sébastien Helleu 9a6a27ef58 core: move crypto functions to wee-crypto.c, rename API function string_hash to crypto_hash 2020-03-01 21:24:27 +01:00
Sébastien Helleu 3f33b327b1 logger: move logger backlog functions to logger-backlog.c 2019-09-26 21:26:23 +02:00
Sébastien Helleu 997894edc0 core: add calculation of expression in evaluation of expressions with "calc:..." (issue #997) 2019-09-20 21:37:01 +02:00
Sébastien Helleu 643376fc1d core: update translations (issue #1375) 2019-07-11 07:30:01 +02:00
Sébastien Helleu 57aa9e060e spell: rename "aspell" plugin to "spell" (issue #1299)
The following things have been renamed:

- file aspell.conf -> spell.conf
- options aspell.* -> spell.*
- bar item aspell_dict -> spell_dict
- bar item and local variable aspell_suggest -> spell_suggest
- info aspell_dict -> spell_dict
2019-02-19 21:15:56 +01:00
Sébastien Helleu a8b6fa08b7 core: split plugin-api.c into 2 files (API wrappers and infos/infolists) 2018-11-03 23:01:46 +01:00
Sébastien Helleu 70c2e27110 core: split wee-secure.c into 3 files (secured data functions, buffer and config) 2018-10-27 08:54:10 +02:00
Sébastien Helleu 7b3ec510ca logger: move logger command into a separate source file 2018-09-24 19:05:21 +02:00
Sébastien Helleu 49c3e62106 core: split wee-hook.c into multiple sources 2018-08-14 07:15:39 +02:00
Sébastien Helleu 837eb82edd core: add irc-modelist sources files to generate translations 2018-03-24 17:04:27 +01:00
Sébastien Helleu 805717e9ec core: add binary weechat-headless to run WeeChat without interface (closes #1120)
The optional command line option "--daemon" runs WeeChat like a daemon
(fork, new process group, file descriptors closed).
2018-03-11 09:59:39 +01:00
Sébastien Helleu 21e63e7958 scripts: add configuration file for each script plugin 2018-01-15 21:57:06 +01:00
Sébastien Helleu 4cc3f13066 core: update translations 2017-09-05 07:29:14 +02:00
Sébastien Helleu 263c2904a7 fset: add completion "fset_options" 2017-06-25 16:35:28 +02:00
Sébastien Helleu cee704b75c fset: add fset source files to generate translations 2017-06-25 16:35:28 +02:00
Sébastien Helleu 2ab3015114 script: move default mouse keys for script plugin from core to script-mouse.c 2017-03-31 21:07:32 +02:00
Sébastien Helleu f0c8da2f05 buflist: add mouse support
New options:
- buflist.look.mouse_jump_visited_buffer
- buflist.look.mouse_move_buffer
- buflist.look.mouse_wheel

New keys added by buflist plugin:
- @item(buflist):button1*      => hsignal:buflist_mouse
- @item(buflist):button2*      => hsignal:buflist_mouse
- @bar(buflist):ctrl-wheelup   => hsignal:buflist_mouse
- @bar(buflist):ctrl-wheeldown => hsignal:buflist_mouse
2017-03-30 20:39:37 +02:00
Sébastien Helleu 98487253ca buflist: add command /buflist 2017-03-25 15:13:13 +01:00
Sébastien Helleu edfeb60e32 buflist: new plugin "buflist" (bar with list of buffers) 2017-03-25 14:18:19 +01:00
Sébastien Helleu 0cec295a41 fifo: add file fifo.conf and option fifo.file.path to customize FIFO pipe path/filename (closes #850) 2016-11-22 19:24:40 +01:00
Sébastien Helleu fabd48cc6c core: move nick coloring from irc plugin to core (closes #262)
Options moved from irc.conf to weechat.conf:

* "irc.look.nick_color_force" moved to "weechat.look.nick_color_force"
* "irc.look.nick_color_hash" moved to "weechat.look.nick_color_hash"
* "irc.look.nick_color_stop_chars" moved to
  "weechat.look.nick_color_stop_chars"

New info (for API function "info_get"):

* "nick_color" (replaces "irc_nick_color")
* "nick_color_name" (replaced "irc_nick_color_name")

Info "irc_nick_color" and "irc_nick_color_name" are now deprecated.

And a bug has been fixed in nick coloring: stop chars are removed before
looking at a forced color.
2016-04-05 07:56:43 +02:00
Sébastien Helleu cf6aca1619 core: add pointer in some callbacks (closes #406)
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
2016-03-21 18:11:21 +01:00
Sébastien Helleu 6f0151e128 fifo: add /fifo command 2015-12-02 19:46:34 +01:00
Sébastien Helleu b1bd5c721e alias: add options "add", "addcompletion" and "del" in command /alias, remove command /unalias (closes #458) 2015-07-20 07:54:59 +02:00
Sébastien Helleu 145191dbc5 javascript: add new plugin to run javascript scripts in WeeChat
This plugin was originally written by Koka El Kiwi
(repository: https://github.com/KokaKiwi/weechat-js-plugin).

This plugin uses Google V8 engine to execute JS scripts.
2015-03-07 16:52:09 +01:00
Sébastien Helleu a4dfda9304 core: add functions to manage array lists 2014-09-01 11:51:03 +02:00
Sébastien Helleu cc179e81c7 core: add main.c in list of translated files for gettext 2014-07-20 16:50:35 +02:00
Sebastien Helleu e8de096625 exec: add options "-n"/"-ns" in command /exec (display output in a new buffer) 2014-03-12 11:54:00 +01:00
Sebastien Helleu 97254780d6 exec: add exec plugin 2014-03-11 17:49:49 +01:00
Sebastien Helleu 3c398bd61d rmodifier: remove plugin (replaced by trigger) 2014-03-04 12:08:33 +01:00
Sebastien Helleu 30942f7f62 trigger: add trigger plugin 2014-02-09 12:55:40 +01:00
Sebastien Helleu 663de42284 Merge branch 'secured-data' 2013-08-02 19:19:25 +02:00
Sebastien Helleu 35c3dbad63 plugins: remove the demo plugin 2013-07-31 18:56:32 +02:00
Sebastien Helleu a490195032 core: add secured data with optional encryption in file sec.conf 2013-07-27 12:57:08 +02:00
Sebastien Helleu d2ff46fa69 relay: add message "_nicklist_diff" (differences between old and current nicklist)
This is an experimental feature, that must be explicitely enabled by clients
(for weechat protocol) in the init command with option "nicklistdiff", for example:

  init password=mypasswd,nicklistdiff=1

This option will be removed when clients will handle nicklist diff.
2013-03-09 09:04:49 +01:00
Sebastien Helleu 9beb263e4a irc: hide passwords in commands or messages sent to nickserv with modifiers (bug #38346)
New modifiers: "irc_command_auth" and "irc_message_auth".
Option removed: irc.look.hide_nickserv_pwd
New option: irc.look.nicks_hide_password
2013-02-23 14:54:07 +01:00
Sebastien Helleu 4e4fd3f54d core: remove Gtk interface (obsolete sources not working) 2013-02-17 15:47:52 +01:00
Sebastien Helleu c2aeb69c46 relay: add experimental websocket server support (RFC 6455) for irc and weechat protocols, new option relay.network.websocket_allowed_origins
It is a partial implementation of RFC 6455: fragmentation and control frames are
not yet supported.
Text and binary frames are supported.
2013-02-10 20:22:13 +01:00
Sebastien Helleu 6983d34e88 aspell: optimization on spellers to improve speed (save state by buffer), add info "aspell_dict", add completion "aspell_dicts"
Two hashtables have been added to store the spellers currently used (in all
buffers) and info for each buffer: array with pointers to spellers and state of
aspell for this buffer.
Therefore the spellers are not destroyed and created again on each buffer switch,
or each time screen is refreshed when window is split.
2013-01-31 19:40:41 +01:00
Sebastien Helleu 2b78673aa9 core: add git version in build, display it in "weechat-curses --help" and /version 2012-12-16 23:07:33 +01:00
Sebastien Helleu 32c93b5c0a core: add command /eval, use expression in conditions for bars, add function "string_eval_expression" in plugin API 2012-11-02 09:37:15 +01:00
Nils Görs 668cda2684 aspell: add bar item "aspell_dict" (dictionary used on current buffer) 2012-10-06 17:16:49 +02:00
Sebastien Helleu a99d136018 core: add new plugin "script" (scripts manager, replacing scripts weeget.py and script.pl) 2012-08-14 18:29:32 +02:00
Sebastien Helleu 57eb513547 core: remove directory "src/plugins/scripts", move script plugins in "src/plugins" 2012-08-02 22:28:43 +02:00
Sebastien Helleu 782e01f177 relay: add support of SSL (for irc and weechat protocols), new option relay.network.ssl_cert_key (task #12044) 2012-07-27 17:54:08 +02:00
Sebastien Helleu b91c231096 core: add URL transfer (using libcurl), add function hook_process_hashtable in plugin API, add support of URL in hook_process/hook_process_hashtable (task #10247) 2012-01-16 19:52:08 +01:00
Sebastien Helleu 013f8cc757 relay: add WeeChat protocol (for remote GUI), doc about protocol, new options
The protocol is partial, under development, and NOT ready for usage.

New options added in relay.conf:
- relay.network.allowed_ips: allow only some IPs on relay plugin (by default
  all IPs are allowed)
- relay.network.compression_level: compression level used in WeeChat protocol
  (compression is made using zlib)
2011-12-06 23:06:23 +01:00
Sebastien Helleu 4b1bc5ff1b core: remove obsolete/empty sources for Qt and Wxwidgets 2011-11-03 16:06:15 +01:00
Sebastien Helleu 9b42328d55 guile: new script plugin for scheme (task #7289) 2011-10-26 19:25:51 +02:00