1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-04 16:53:14 +02:00

core: add hide of chars in string in evaluation of expressions

The syntax is: ${hide:char,string}.
All chars in string are replaced with char (which can be one or more chars).
This commit is contained in:
Sébastien Helleu
2014-10-16 20:46:06 +02:00
parent 9d849db85a
commit f62f759c3d
16 changed files with 392 additions and 306 deletions
+22 -20
View File
@@ -7192,12 +7192,13 @@ command_init ()
"Some variables are replaced in expression, using the format "
"${variable}, variable can be, by order of priority:\n"
" 1. a string with escaped chars (format: \"esc:xxx\" or \"\\xxx\")\n"
" 2. a color (format: \"color:xxx\")\n"
" 3. an info (format: \"info:name,arguments\", arguments are "
" 2. a string with chars to hide (format: \"hide:char,string\")\n"
" 3. a color (format: \"color:xxx\")\n"
" 4. an info (format: \"info:name,arguments\", arguments are "
"optional)\n"
" 4. an option (format: \"file.section.option\")\n"
" 5. a local variable in buffer\n"
" 6. a hdata name/variable (the value is automatically converted "
" 5. an option (format: \"file.section.option\")\n"
" 6. a local variable in buffer\n"
" 7. a hdata name/variable (the value is automatically converted "
"to string), by default \"window\" and \"buffer\" point to current "
"window/buffer.\n"
"Format for hdata can be one of following:\n"
@@ -7213,23 +7214,24 @@ command_init ()
"reference\", function \"weechat_hdata_get\".\n"
"\n"
"Examples (simple strings):\n"
" /eval -n ${info:version} ==> 0.4.3\n"
" /eval -n ${weechat.look.scroll_amount} ==> 3\n"
" /eval -n ${window} ==> 0x2549aa0\n"
" /eval -n ${window.buffer} ==> 0x2549320\n"
" /eval -n ${window.buffer.full_name} ==> core.weechat\n"
" /eval -n ${window.buffer.number} ==> 1\n"
" /eval -n ${\\t} ==> <tab>\n"
" /eval -n ${info:version} ==> 0.4.3\n"
" /eval -n ${weechat.look.scroll_amount} ==> 3\n"
" /eval -n ${window} ==> 0x2549aa0\n"
" /eval -n ${window.buffer} ==> 0x2549320\n"
" /eval -n ${window.buffer.full_name} ==> core.weechat\n"
" /eval -n ${window.buffer.number} ==> 1\n"
" /eval -n ${\\t} ==> <tab>\n"
" /eval -n ${hide:-,${relay.network.password}} ==> --------\n"
"\n"
"Examples (conditions):\n"
" /eval -n -c ${window.buffer.number} > 2 ==> 0\n"
" /eval -n -c ${window.win_width} > 100 ==> 1\n"
" /eval -n -c (8 > 12) || (5 > 2) ==> 1\n"
" /eval -n -c (8 > 12) && (5 > 2) ==> 0\n"
" /eval -n -c abcd =~ ^ABC ==> 1\n"
" /eval -n -c abcd =~ (?-i)^ABC ==> 0\n"
" /eval -n -c abcd =~ (?-i)^abc ==> 1\n"
" /eval -n -c abcd !~ abc ==> 0"),
" /eval -n -c ${window.buffer.number} > 2 ==> 0\n"
" /eval -n -c ${window.win_width} > 100 ==> 1\n"
" /eval -n -c (8 > 12) || (5 > 2) ==> 1\n"
" /eval -n -c (8 > 12) && (5 > 2) ==> 0\n"
" /eval -n -c abcd =~ ^ABC ==> 1\n"
" /eval -n -c abcd =~ (?-i)^ABC ==> 0\n"
" /eval -n -c abcd =~ (?-i)^abc ==> 1\n"
" /eval -n -c abcd !~ abc ==> 0"),
"-n|-c -n|-c",
&command_eval, NULL);
hook_command (