1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-05 01:03:14 +02:00
Commit Graph

83 Commits

Author SHA1 Message Date
Sébastien Helleu 92cdcee8f6 api: change type of argument object_id in upgrade_new callback from string to integer (in scripts) 2022-09-29 21:38:04 +02:00
Sébastien Helleu b2b110f1a3 api: change type of argument remaining_calls in hook_timer callback from string to integer (in scripts) 2022-09-29 21:21:01 +02:00
Sébastien Helleu 4d74a89cfc api: add function string_parse_size 2022-09-27 15:50:43 +02:00
Sébastien Helleu 8f6395e889 guile: fix function hdata_get_string 2022-08-02 20:50:24 +02:00
Sébastien Helleu bcb8647aa4 scripts: fix issue with long interval in function hook_timer
Affected plugins: python, ruby, lua, tcl, guile, javascript, php.
2022-08-01 22:18:38 +02:00
Sébastien Helleu b1404b0277 scripts: fix issue with year ≥ 2038 in functions print_date_tags and print_y_date_tags
Affected plugins: python, lua, tcl, guile, javascript.
2022-08-01 21:03:44 +02:00
Sébastien Helleu 1514570ff0 scripts: fix issue with year ≥ 2038 in function infolist_new_var_time
Affected plugins: python, lua, tcl, guile, javascript.
2022-08-01 20:32:09 +02:00
Sébastien Helleu b7441bd7a3 api: add arguments "index_start" and "index_end" in function string_rebuild_split_string 2022-07-20 13:16:35 +02:00
Sébastien Helleu 62e68f965f api: rename function string_build_with_split_string to string_rebuild_split_string 2022-07-20 12:14:40 +02:00
Sébastien Helleu e5e3a9d2da api: add function buffer_new_props (closes #1759) 2022-03-13 10:35:29 +01:00
Trygve Aaberge 197a7a01e4 scripts: allow null values in config_new_option
The plugin API function config_new_option accepts null as the
default_value and/or value however the scripting APIs (except for lua)
didn't allow sending null as a parameter value, so it was impossible to
use it this way. This allows sending a null value for these parameters.

Lua already supported sending in nil for these parameters and it works
as expected, so nothing is changed for this plugin.

For Guile you can now send in #nil, for JavaScript null or undefined,
for Perl undef, for PHP NULL, for Python None, for Ruby nil and for Tcl
$::weechat::WEECHAT_NULL.

In all of these languages except Tcl this is the special value
indicating a missing value. However Tcl only has one type, string, so it
doesn't have a null value. Therefore I created a constant with the value
`\uFFFF\uFFFF\uFFFFWEECHAT_NULL\uFFFF\uFFFF\uFFFF` which is used
instead. This is very unlikely to appear unintentionally. Using the
unicode code point \uFFFF was suggested on
https://wiki.tcl-lang.org/page/null.

I tested this with these scripts:
https://gist.github.com/trygveaa/f91977dde5d2876d502bf55fbf9b50cc
2022-03-12 16:00:38 +01:00
Sébastien Helleu 9259442dbf core: add support of date and tags in messages displayed in buffers with free content, add function printf_y_date_tags (closes #1746) 2022-01-30 11:41:06 +01:00
Sébastien Helleu c44b79dce7 core: update copyright dates 2022-01-17 18:41:06 +01:00
Sébastien Helleu 2da2172593 api: add parameters pointers, extra_vars and options in function hdata_search 2021-11-06 15:59:18 +01:00
Sébastien Helleu efc7a588d6 core: update copyright dates 2021-01-02 21:34:16 +01:00
Sébastien Helleu 268aa631c6 api: add function string_color_code_size (issue #1547) 2020-08-22 08:55:16 +02:00
Sébastien Helleu b0ecbdbf1d core: add bar option "color_bg_inactive" (issue #732) 2020-06-21 18:59:54 +02:00
Joram Schrijver cac45aab46 guile: fix printing of output to buffer (issue #1098)
The support for Guile 2.2 did not implement the custom port correctly,
and did not configure it to be the default output port. This caused
output from Guile to be printed straight to the TTY, breaking the
WeeChat interface.

Note that the port is unbuffered, so that code like

    (display "test")

immediately results in output, without an explicit call to force-output.
2020-06-07 11:07:03 +02:00
Sébastien Helleu 88bef0b1b1 core: rename functions hook_completion_{get_string|list_add} to completion_{get_string|list_add}
Old functions are kept for compatibility reasons.
2020-05-08 10:51:30 +02:00
Sébastien Helleu d1a427b67f api: return integer in function gui_completion_search (issue #1484) 2020-04-28 10:46:49 +02:00
Sébastien Helleu d3020976d5 api: add functions completion_new, completion_search and completion_free (issue #1484) 2020-04-27 22:15:42 +02:00
orbea 6d2d304136 Fix the build with guile-3.0.0.
v2: Update configure.ac too.

Signed-off-by: orbea <orbea@riseup.net>
2020-01-30 22:05:43 +01:00
Sébastien Helleu feb6258910 core: update copyright dates 2020-01-04 10:41:26 +01:00
Sébastien Helleu 387a44f5ec guile: add support of Guile 2.2 (issue #1098) 2019-09-21 14:48:05 +02:00
Sébastien Helleu 3d95217745 api: return allocated string in hook_info callback and function info_get 2019-04-13 08:42:45 +02:00
Sébastien Helleu 80b980b2af api: add function command_options (issue #928) 2019-02-28 20:19:18 +01:00
Sébastien Helleu c2859096cb api: add function string_match_list 2019-02-27 07:46:22 +01:00
Sébastien Helleu 2b0057239b core: update copyright dates 2019-01-01 15:40:51 +01:00
Sébastien Helleu 4712d0bb06 core: use https for links to GNU GPL license 2018-11-29 23:16:07 +01:00
Sébastien Helleu 42be1a74a0 api: add function hook_line 2018-08-12 21:45:00 +02:00
Sébastien Helleu 9265acf879 scripts: fix memory leak in hook_info callback 2018-04-13 19:55:20 +02:00
Sébastien Helleu 41d63511b4 scripts: fix return value of hook_infolist callback (pointer instead of string) 2018-04-12 00:12:20 +02:00
Sébastien Helleu 3467d6eb43 scripts: return long integer instead of string in function infolist_time 2018-04-10 21:26:15 +02:00
Sébastien Helleu ab61ddd4ab scripts: do not allocate memory when converting pointers to strings 2018-04-10 19:33:14 +02:00
Sébastien Helleu e7b2e3cb02 guile: fix memory leak in 7 functions returning allocated strings
Fixed functions:

- list_new
- list_add
- list_search
- list_casesearch
- list_get
- list_next
- list_prev
2018-04-10 19:31:14 +02:00
Sébastien Helleu 6de98179bc api: add function string_format_size in scripting API 2018-04-07 13:20:58 +02:00
Sébastien Helleu 21e63e7958 scripts: add configuration file for each script plugin 2018-01-15 21:57:06 +01:00
Sébastien Helleu ed4837b2f6 core: update copyright dates 2018-01-05 00:54:18 +01:00
Sébastien Helleu 255e46eaef guile: return integer (0/1) instead of boolean in API functions 2017-10-03 21:16:11 +02:00
Sébastien Helleu 682979bb90 guile: fix return value of static strings 2017-10-02 19:20:26 +02:00
Sébastien Helleu 5aab494dd6 core, plugins: check return code of strftime function 2017-09-23 15:06:28 +02:00
Sébastien Helleu bfef8da84c api: change type of arguments status/gnutls_rc/sock in hook_connect() callback from string to integer (in scripts) 2017-08-13 10:40:01 +02:00
Sébastien Helleu 5392e3078f api: send file descriptor as integer instead of string to the callback of hook_fd 2017-08-13 09:29:39 +02:00
Sébastien Helleu aeeec38d6f core: fix cast of time_t (to "long long" instead of "long") (closes #1051) 2017-08-12 18:36:45 +02:00
Sébastien Helleu 7621939a7a api: add function hdata_compare 2017-05-30 20:29:17 +02:00
Sébastien Helleu 705d86e684 core: update copyright dates 2017-01-01 11:32:04 +01:00
Sébastien Helleu 64f05204f9 api: move functions hook_completion* after hook_command 2016-11-27 17:34:15 +01:00
Sébastien Helleu 51c3e0b9ec api: add support of functions in hook_process 2016-04-23 13:59:20 +02:00
Sébastien Helleu 5244a707cb api: rename function unhook_all_plugin to unhook_all 2016-03-24 09:17:54 +01: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