The options `weechat.custom_bar_item.xxx.*` are now properly renamed to the new
item name.
This fixes a save issue (item saved with old name in config) and a crash if a
new item is created with the old name.
If you press an incomplete key sequence, previously WeeChat would send
the key_pressed signal again for the same keys on the next key.
E.g. if you press escape and then 1, previously you would get the
key_pressed signal with signal_data `\x01[` when you pressed escape, and
then key_pressed with `\x01[` again when you pressed 1 (plus key_pressed
with `1` for the 1 key). So two signals for the escape key, even though
it was only pressed once.
With this patch, you only get one signal for each key press. So one with
`\x01[` when you press escape and then one with `1` when you press 1.
Version 4.0.0 (specifically commit 1f5c791c3) changed the key handling
so key_combo_* signals were sent for each character in a sequence,
rather than just when the sequence is finished. This broke parts of the
vimode.py script.
E.g. for the up arrow, 3.8 sends key_combo_default signal once with the
signal_data `\x01[[A`, while 4.0.0 sends it three times with the
signal_data `\x01[`, `\x01[[` and `\x01[[A`.
With this patch, the previous behavior is brought back. There is one
small change though. In 3.8 if you press escape one or two times it
doesn't send key_combo_default, but if you press it three or more times
it sends it for each escape press. With this patch, it's never sent for
plain escape presses, only when the sequence is finished with some other
key.
This is intentional, as getting key_combo_default for escape presses
doesn't make sense since it's not a finished combo, and the behavior of
3.8 where you got it after three or more key presses was most likely
unintentional as it just happened because it didn't match any key
bindings anymore (there are key bindings starting with one or two escape
characters, but not more).
This fixes a bug where if you had multiple lines in the input and
pressed ctrl-w when the cursor was after the first word of any line but
the first, it would delete both the word before the cursor and the last
word on the preceding line.
Regression was indirectly caused by commit
d18f68e497 in core that allows to display all
control chars in buffers.
But the fix is in exec plugin: end of line in command output can now be "\r\n"
in addition to a single "\n".
This allows you to use escape characters if you start the fifo command
with \ instead of *, in the same way as the escape_commands option in
the relay protocol. This allows you to send commands consisting of
multiple lines by using \n if the buffer has input_multiline set.
The bug was fixed in version 2.0 (issue #1040) but a regression in version 3.7
happened while using the new IRC parser for message arguments (issue #1796,
commit 96ed471261).
This fixes an issue with IRC URL given on command line when it starts with
`ircs://` or `irc6://`: the server is not created at all (only `irc://` works
fine).
It seemed strange to me to have word_end_offset point to the last
character in the word, rather than the character after the word,
especially now with the word stopping before a newline character which
meant word_end_offset would be -1 if there was no characters before the
newline character.
The new rendering of multiline lines had some issues with colors at
certain positions not being applied. The color would not be applied if
the color code was at either of these positions:
- At the start of a line after a newline character
- At the end of a line after a space and before a newline character
- At a line by itself before a newline character
The way I had done it by considering newline characters as a word in
gui_chat_get_word_info with a variable specifying that it's newline
characters became messy and didn't really make sense, so rather than
doing this, I changed gui_chat_get_word_info to stop before the first
newline character. That way, we can just check if we are at a newline
character at the start of the loop, and don't need any more special
handling.
Fixes#1928
The status PRIVMSG and NOTICE are now displayed the same way for outgoing and
received messages:
Msg(alice) -> @#test: message for ops
Notice(alice) -> @#test: notice for ops
And any message like this is displayed with these tags if the nick is self
nick (case of a bouncer or if capability "echo-message" is enabled):
"self_msg", "notify_none", "no_highlight".
Regression was indirectly caused by commit
d18f68e497 in core that allows to display all
control chars in buffers.
But the fix is in script plugin: when the script is downloaded and read line by
line, trailing "\r" and "\n" are removed, and therefore not displayed.
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
The function now allows only a single message. Newline chars ("\n") are allowed
in messages but not used as message separator.
This is a preparation work for the support of capability "draft/multiline".
For example typing this on core buffer:
/t1
/t2
was not executing the two commands but sent the text to the buffer instead.
This is because WeeChat thinks it's a path, and the newline should indicate
it's not (like a space before the next slash: "/t1 /t2" is a command, not a
path, but "/t1/t2" is considered a path).
The API functions `command` and `command_options` (when `split_newline` = 0,
which is the default value) don't split on newline and then the first line is
executed and the subsequent lines (after "\n") are ignored.
There are no changes when the input has multiple lines filled by the user: the
split is done and multiple commands are executed (for example if the user is
pasting multiple commands to execute).
Default value of option weechat.color.status_name_tls is set to white instead
of lightgreen.
Now all servers/channels connected with TLS are white, and those without TLS
are lightmagenta.
If you have a chat line with multiple lines that were scrolled so that
part of it is rendered at the bottom of the chat area, and part of it
falls below the chat area, there was a bug where the prefix_suffix would
be displayed at the end of the last line.
Looks like this happens because the gui_chat_display_prefix_suffix is
called for the line below the last line displayed in the chat area. So
we have to add a check for this so we don't add the prefix_suffix. This
check is copied from gui_chat_display_word which checks for the same.
Fixes#1912
This contains the single line that you focused on, like _chat_word
contains the word that you focused on. This will be equal to
_chat_line_message if the chat line only contains a single line, but if
the chat line has multiple lines, _chat_line_message will contain all of
them, but _chat_focused_line will only contain the single line that was
focused.
Fixes part of #1913
If we have chat lines with multiple lines in buffers without
input_multiline set, there can be an issue if a trigger is run on that
line. If the trigger runs a command which includes the message, then the
command is split (since input_multiline isn't set), and if any of the
lines in the message starts with a command, that command is executed.
To prevent this, only avoid splitting on newlines in printf if
input_multiline is set, so only such buffers can have chat lines with
newline characters.
See https://github.com/weechat/weechat/pull/1909 for more details.
With support for rendering newline characters as new lines, we don't
need to split the message on newline characters anymore in
printf_date_tags. This allows you to print a line with multiple lines.
If a chat line message contains a newline character (\n) it was
previously rendered as J with reverse video. This commit makes it
render as an actual newline instead, so messages with multiple lines
become supported.
The rendering is fixed in normal mode as well as bare mode both when
scrolled to the bottom and when scrolled up (which is different code
paths). Focus events has also been updated to support this (except for
_chat_line_y which returns -1 for all lines, but the docs says this
variable is only for buffers with free content).
Currently, the only way to include a \n in a chat line message is with
hdata_update because printf splits on \n and creates multiple separate
lines, but hopefully either printf can be changed to not split on \n, or
a new command which doesn't split can be added.
It seems no terminal return such codes any more for pgup/pgdn, and `meta-[I` is
conflicting with the xterm terminal "focus in" key code.
The keys are also removed from config when converting old keys, but only if
they are bound to the default command (`/window page_up` for `meta2-I` and
`/window page_down` for `meta2-G`).
Changes:
- build of doc now requires weechat-headless, translations and all plugins
- convert docgen.py to C
- remove `autogen_*` files from repository
- add command line parameter `--doc-gen` in `weechat-headless` to build
autogen files
- build .mo files with directories like the installed ones
(eg: "<lang>/LC_MESSAGES/weechat.mo")
- remove javascript chapter from user's guide
This does the same as the lead_linebreak option in multiline.pl. That
is, when the input contains more than one line, the first line will be
displayed beneath the previous items in the bar. This is practical
because all the lines in the input will be aligned.
Related to #1498
This changes the commands delete_beginning_of_line, delete_end_of_line,
delete_line, move_beginning_of_line and move_end_of_line to operate on
the current line instead of the whole input. The commands
delete_beginning_of_input, delete_end_of_input, delete_input,
move_beginning_of_input and move_end_of_input are added with the
previous implementations that the line commands had.
Additionally, the commands move_previous_line and move_next_line are
added which moves the cursor to the previous/next line and keeps the
horizontal position in the line.
The meta-r key is changed from delete_line to delete_input to keep the
behavior, and because you probably want to delete the whole input more
often than the line. The meta-R key is added for delete_line.
The home, end, ctrl-u and ctrl-k keys are kept to the same commands,
which means that they change behaviour. This is because having them
operate on the line is consistent with other applications (vim, zsh),
and I also think it's more practical.
These new bindings are added:
shift-home: /input move_beginning_of_input
shift-end: /input move_end_of_input
shift-up: /input move_previous_line
shift-down: /input move_next_line
meta-R: /input delete_line
meta-ctrl-u: /input delete_beginning_of_input
meta-ctrl-k: /input delete_end_of_input
Relates to #1498
The previous commit e385eec1d6 fixed default
value for bar added by plugins and option "items" in all bars.
This commit fixes the default value of all bar options.
Now that pasting text doesn't cause it to be sent immediately, but
rather inserted in the input line, the paste confirmation isn't really
necessary anymore for small pastes. If you paste by mistake you can just
press ctrl-_ to undo it.
Large pastes may cause weechat to hang for a while, so keep the paste
confirmation for those.
If you don't use bracketed paste you would still want to keep it at 1,
because it's not detected as a paste otherwise, but as far as I know
basically all terminal emulators support bracketed paste, so I think
it's fine to disable the confirmation by default.
This option existed so that you could edit the last line of a multiline
paste before it was sent. Now that pasting multiple lines don't cause
the lines to be sent immediately anymore, this option isn't useful
anymore since you can always edit pasted text before it's sent.
Since pasting doesn't send the line now, it's more practical to always
remove the final newline so you don't end up with an empty line at the
end of the input buffer.
Fixes a part of #1498
Instead of replacing newline/tabs when paste is started, do it when the
paste is accepted instead. This makes a difference if you paste again
while the paste confirmation is active, where instead of running it
again for each paste, it will now be run for all the text at the end.
For now this doesn't make a practical difference, but the next commit
will remove the final newline when multiple lines are pasted too, which
we only want to do for the final paste.
This makes pasted text appear in the input bar, instead of each line
being sent. This allows you to edit the text before sending it, and it
makes multiline paste supported in buffers with input_multiline on.
It also replaces \r with \n in pasted text because most terminals (e.g.
xterm and urxvt) print lines separated by \r when pasting as if return
was pressed between each line, even though the copied text uses \n. The
text sent to the buffer should use \n, not \r, so we have to replace it.
Note that this only works when bracketed paste is enabled or the paste
confirmation as shown, because non-bracketed paste with no paste
confirmation is not detected as a paste.
Fixes a part of #1498
When in paste pending mode, the bracketed paste escape sequence should
still be interpreted, so that if you paste while in paste pending the
same things as when pasting in normal mode still happens, i.e. the
escape sequence is removed, ctrl-y/n is not interpreted and newline/tabs
are replaced.
When the bar name already exists, the function `bar_new` returns the pointer to
the bar (instead of NULL) and sets the default value for all options with the
values received.
When raw code and alias for a key are both matching, the raw code must always
have higher priority.
This commit fixes this behavior and gives priority to raw code.
Changes:
- add function gui_key_debug_print_key
- change message "no key" by "no key binding"
- remove messages ""insert into input" / "ignored"
- add color for delimiters
Now when fset plugin is loaded, the keys are displayed in fset buffer.
In core commands like /set or /key, the fset plugin is not mentioned as WeeChat
can run without it.
Keys added in mouse context were already hidden, so it makes sense to not
display keys in default context as well.
These keys added by the default plugins are documented anyway.
When the input buffer contains non word characters at the end, /input
move_next_word will stop moving at the end of the last word. This is
a bit confusing and not in line with what readline does (think bash).
When there are no words left in the input buffer, make /input
move_next_word go to the end of line.
Signed-off-by: Robin Jarry <robin@jarry.cc>
Two new fields are added in IRC server structure:
- "authentication_method", possible values:
0: not authenticated
1: authenticated with SASL
2: authenticated with other method
- "sasl_mechanism_used", possible values: see enum t_irc_sasl_mechanism
in src/plugins/irc/irc-sasl.h
Priority is now allowed in function config_file_new, parameter `name`, with the
same format as hooks: "priority|name" (for example: "2000|test").
If not specified, the default priority is 1000.
Now the autojoin is made only one time, until the server buffer is closed.
A new flag `autojoin_done` is added to know whether the autojoin has already
been done or not on the server. It is set to 1 on first autojoin, and reset to
0 only if the server buffer is closed.
The flag `reconnect_join` is removed, because it is now obsolete.
This script is now used in CI to check all shell scripts (*.sh) and Python
scripts (*.py) that are in git repository.
Tools used:
- shell scripts: shellcheck
- Python scripts: flake8 + pylint + bandit
This fixes the following shellcheck error:
SC2294 (warning): eval negates the benefit of arrays. Drop eval to preserve
whitespace/symbols (or eval as string).
All lowercase letters are now properly converted to uppercase letters (and vice
versa), via functions `towupper` and `towlower`.
Functions `string_tolower`, `string_toupper` and `utf8_charcasecmp` have been
optimized to be faster when there are ASCII chars (< 128); functions are about
25-40% faster with mixed chars (both ASCII and multi-bytes).
Function `utf8_wide_char` has been removed, `utf8_char_int` can be used
instead.
This updates the Python examples to include all the possible return
values for the callbacks in config_new_section, like it is done in the C
example. It also aligns the order of the values with the C example.
These return values were wrong in the description and C example. As can
be seen on lines 2835 and 2873-2903 of src/core/wee-config-file.c the
callback_read function should return the same as the function
config_file_option_set plus the value
WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND (which is also the same as
the possible return values of config_file_option_set_with_string).
The Python example was already correct and the C example was already
correct in the other languages apart from English.
These errors were introduced in commit 02e2b21d3 and commit 5210ff1ae.
The callback_read and callback_create_option functions in the scripting
APIs always get the value as a string, never as null. This means that if
the value is null, there is no way for the script to distinguish this
from an empty string for string options. This makes it impossible to
properly make options with fallback values, like the irc server and
server_default options, as far as I can see.
All the scripting languages except Tcl use that language's equivalent
for null. For JavaScript which has both null and undefined, null is
used. For Tcl, the magic null string defined in commit 197a7a01e is used
and the documentation is updated to describe that.
I tested this with these scripts:
https://gist.github.com/trygveaa/2d49c609addf9773d2ed16e15d1e3447
You can load all of those scripts and see the result with this command
(assuming you have the scripts in the current directory):
weechat -t -r "/filter add script * * script; /script load $(echo script_config.*)"
Now the function utf8_char_size_screen can return -1 when the char is not
printable.
It has a specific behavior for some chars:
- U+0009: value of option weechat.look.tab_width
- U+0001 to U+001F (except U+0009): 1
- U+00AD (soft hyphen): -1
- U+200B (zero width space): -1
When there non printable chars, the return of the function was 1.
For example utf8_strlen_screen("abc\x01") now returns 4 instead of 1.
In addition the function has been optimized to not use the `mbstowcs` function
which is slow; result is up to 15% faster.
For buffers with formatted content, the "id" starts to 0 on each buffer and is
incremented on each new line displayed (it is reset to 0 if reaching INT_MAX).
For buffers with free content, the "id" is set to the same value as "y" (ie the
line number, starting to 0).
If a color option value is null and is tried being set to an invalid
color, the value was set to uninitialized memory which can lead to a
segfault.
Can be reproduced with this script:
https://gist.github.com/trygveaa/6ddb3a52f525a7fd8e0908bafa83e07c
The option doesn't have to be set from a script, it also happens with
the /set command.
This affects the following hook types:
- command
- command_run
- line
- modifier
- print
This fixes a regression introduced in WeeChat 3.7 by commit
0f67f55098.
This makes it possible to see how functions are used without having to
go to the web page. It's especially useful to see the types of the
callback functions.
util_version_number returns an int, but BYTES_EQUAL only compares the
last byte of the int, so it wouldn't test the rest of the int.
I see other tests for functions returning an int use LONGS_EQUAL, so
that seems correct to use.
This is useful for two reasons:
1. When running unit tests for a script weechat needs to be mocked. By
having the constant values available in the stub file, they can be
loaded from that, instead of having to define the constants manually
for the mock.
2. If you log a constant value you have to look up what it means. This
makes it easier, in the same vein as PR #1824.
When logging this value I just see a number so I have to look up what it
means. Previously you would have to check the code or print the value of
each of these constants to see it. Seeing the value directly in the
documentation makes this much easier.
This fixes such error displayed on Termux when receiving a DCC file:
xfer: invalid address "96747949": error 8 hostname nor servname provided, or not known
This was preventing the PHP plugin from working if PHP was compiled
with `--enable-debug`. With this patch, `--enable-debug` builds of
PHP should work.
In Python raw strings, newlines can't be escaped with a backslash. If
you do that, both the backslash and the newline become part of the
string. This meant that the regex for constants both started and ended
with a newline which caused every other constant to be skipped.
When changing the options weechat.network.gnutls_ca_system or
weechat.network.gnutls_ca_user, the GnuTLS credentials are freed then allocated
again, but the verification function used to check the certificate on
connection is not set again.
As a consequence, any TLS connection is made without checking the certificate.
This regression was introduced in version 3.2, when the options were changed to
automatically load system certificates without having to give the path, and to
let user give an extra custom path with certificates.
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
This fixes the compilation warning:
weechat-guile.c: In function ‘weechat_plugin_init’:
weechat-guile.c:1270:5: warning: ‘scm_install_gmp_memory_functions’ is deprecated [-Wdeprecated-declarations]
There is no problem in practice because the possible URL prefixes are hardcoded
in the spell plugin and don't contain any UTF-8 char on more than one byte.
There is no problem in practice because this server nonce is generated by
WeeChat itself and encoded to base64, so it never contains any UTF-8 char on
more than one byte.
Option relay.network.compression_level is renamed to relay.network.compression
and is now a percentage between 0 (no compression) to 100 (best compression,
slowest).
Compression is now disabled by default in weechat protocol and must be enabled
via the `handshake` command (option `compression` has been removed from `init`
command).
New options in command /input:
- hotlist_remove_buffer
- hotlist_restore_buffer
- hotlist_restore_all
New keys:
- alt+h, alt+c: clear the whole hotlist (former key: alt+h)
- alt+h, alt+m: mark the current buffer as read by removing it from the hotlist
- alt+h, alt+r: restore latest hotlist removed in the current buffer
- alt+h, alt+shift+R: restore latest hotlist removed in all buffers
Add some references between the Screen layout and Buffers and windows
sections, linking also to the appropriate commands.
This should make it easier to discover the `/layout` command and its
relevance to the windows and buffer management.
(Small contribution to GitHub issue #1641)
(max) bar size was described to be in chars, though this only applies to the left/right bars. This change clarifies that top/bottom bars would have their size defined in lines.
wee-eval.c calls gettext directly, but gettext is not a function if
ENABLE_NLS is off. Fix by defining a gettext macro (that expands to its
first argument) if NLS support is disabled.
This constant was introduced in GnuTLS 3.6.3.
This fixes a build error on these old distributions:
- Debian Stretch
- Debian Jessie
- Ubuntu Bionic
- Ubuntu Xenial
The text "cleartext" is translated for display only: directly with gettext in
IRC plugin and with "${translate:${tls_version}}" in the buflist evaluated
format.
In cf93e953b the `weechat.bar.*.condition` examples have been changed to use
`${info:term_width}` instead of `${window.win_width}`. The user guide still
shows the old example. This commit syncs the user guide with the on-line help.
This reverts commit 1df1903d23.
This is not so easy to implement: it requires saving state of plugins, and
plugins like irc can not save the connected state (except in a real upgrade
case where the sockets are still valid after exec of the new binary).
To force evaluation of the expression before doing the comparison (less safe),
the "${eval_cond:xxx}" can be used.
With the old behavior we had:
>> ${if:a==b}
== [0]
>> ${if:${raw:a==b}}
== [0]
>> ${if:${eval_cond:${raw:a==b}}}
== [0]
And with the new behavior, we have:
>> ${if:a==b}
== [0]
>> ${if:${raw:a==b}}
== [1]
>> ${if:${eval_cond:${raw:a==b}}}
== [0]
This used pointer1 and pointer2 which are pointers to the buffers, but
it should use ptr_hotlist1 and ptr_hotlist1 which are pointers to the
hotlists it is trying to compare.
If you run /input jump_next_visited_buffer right after switching to a
buffer, weechat changes to the first buffer in the visited buffers list.
That is, it wraps around and goes to the buffer you visited the longest
ago. This patch fixes that.
The reason it happens is that when you switch to a buffer (normally,
i.e. in another way than using jump_previously_visited_buffer/
jump_next_visited_buffer) gui_buffers_visited_index is set to -1 (in
gui_buffer_visited_add). This makes gui_buffer_visited_get_index_next
return 0 because it returns gui_buffers_visited_index + 1, which makes
gui_input_jump_next_visited_buffer jump to the first buffer in the list
of visited buffers.
Fixes#1591
These two formats are now supported, if "pointer_name" is present in the
"pointers" hashtable:
* "${pointer_name}": value of pointer (example: "0x1234abcd")
* ${buffer[pointer_name].full_name}: use of a pointer name instead of pointer
value or list name
New options to customize behavior on signals received, with the default
behavior:
- weechat.signal.sighup: quit in normal mode, reload config in headless
- weechat.signal.sigquit: quit
- weechat.signal.sigterm: quit
- weechat.signal.sigusr1: no command executed by default
- weechat.signal.sigusr2: no command executed by default
The signals SIGUSR1 and SIGUSR2 are introduced by this commit, so it's now
possible to run commands when they are received.
The SIGHUP signal makes now WeeChat quit, it was the behavior before version
2.9 of WeeChat (see commit de1e61f7cd).
Use "!" instead of "@" to separate nick from host, like it is done in IRC
protocol.
The nick and host is now displayed as "nick!user@host" instead of
"nick@user@host".
Both default to "on" (no change to previous behavior).
If hotlist_update_on_buffer_switch is "off", then when switching away from a
buffer, the hotlist is not cleared.
If read_marker_update_on_buffer_switch is "off", then when switching away from
a buffer, the read marker is not set to the end of the buffer.
This allows users to choose to have fully manual control over when hotlist
counts and buffer read markers are reset.
Fixes#992.
The command is used to read the passphrase on startup, for example using your
favorite password manager.
Note: only the passphrase is read from the program, the secured data is still
stored encrypted in sec.conf and handled by WeeChat itself.
This fixes the following warning:
/usr/bin/xgettext: warning: msgid 'server' is used without plural and with plural.
./src/plugins/irc/irc-bar-item.c:136: Here is the occurrence without plural.
./src/plugins/irc/irc.c:154: Here is the occurrence with plural.
Workaround: If the msgid is a sentence, change the wording of the sentence; otherwise, use contexts for disambiguation.
Now a single -d in command /eval shows less debug messages than previous
versions.
To get the same debug messages than previous versions, two -d must be used.
The option "localvar" (introduced long time ago, in WeeChat 0.3.0) is still
recognized by WeeChat, to stay compatible with any extension/script calling
it (or referencing it in the documentation).
It is deprecated and will be removed in a future release.
When this local variable is set, it overrides the value of option
"weechat.completion.default_template".
It is evaluated, that means the global default template can be used to append
some custom completion. For example:
/buffer set localvar_set_completion_default_template ${weechat.completion.default_template}|%(my_completion)
This reverts commit 4ff4a64209.
These compiler flags are not supported on old compiler version, for example on
Debian Stretch/Jessie and Ubuntu Xenial (16.04).
When the input is empty, length of string is zero: when sending zero to
function weechat_string_dyn_alloc, the function returns NULL and therefore we
return immediately instead of handling the empty input, which is a valid value.
The regression was introduced by the use of dynamic strings, commit:
299f74bfef
MemoryLeakWarningPlugin::turnOnNewDeleteOverloads is replaced by
MemoryLeakWarningPlugin::turnOnThreadSafeNewDeleteOverloads, which is available
in both CppUTest 3.x and 4.0.
The extra variables are now replaced (in addition to `$server`, `$channel` and
`$nick`):
- `${irc_server.xxx}`: variable xxx in server
- `${irc_channel.xxx}`: variable xxx in channel
Related: #1461
Some scripts (eg weechat-matrix) ship directories that need to be
imported from the script.
Rather than globally installing the python packages to python's
`site-packages` the directories can be installed alongside the script in
`WEECHAT_SHAREDIR/python`.
This change adds that directory to the `$PYTHONPATH` to import
successfully.
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.
The bar item "buffer_nicklist_count" is now the number of displayed nicks
only (not groups).
New bar items:
- "buffer_nicklist_count_groups": number of groups displayed
- "buffer_nicklist_count_all": number of nicks and groups displayed
Default value is changed for the following options:
* relay.irc.backlog_max_minutes: from 1440 to 0 (unlimited)
* relay.irc.backlog_max_number: from 256 to 1024
Supporting multiple lines in the input bar is useful even for buffers
without input_multiline set, because it enables you to compose multiple
lines at once, even if it is sent as multiple messages. It is
particularly useful when you paste multiple lines and want to edit some
of it before you send the message.
This allows the input callback function for a buffer to receive multiple
lines at once, instead of the message being split on newline before
being sent to the callback. It adds a new flag, input_multiline, to
control this. This flag defaults to 0 which is the current behavior.
New comparison operators:
- "==*": is matching mask, case sensitive (wildcard "*" is allowed)
- "!!*": is NOT matching mask, case sensitive (wildcard "*" is allowed)
- "==-": is included, case sensitive
- "!!-": is NOT included, case sensitive
- "=-": is included, case insensitive
- "!-": is NOT included, case insensitive
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
Colors changed:
* relay.color.status_active: lightblue -> green
* relay.color.status_auth_failed: lightred -> lightmagenta
* relay.color.status_connecting: yellow -> white
* relay.color.status_waiting_auth: brown -> yellow
The color relay.color.status_disconnected remains lightred by default.
Now the status "waiting_auth" is used and displayed in the relay buffer.
When a client connects, there are now 2 messages (except for irc protocol if
there's no password required):
relay: new client on port 9000: 1/weechat/1.2.3.4 (waiting auth)
relay: client 1/weechat/1.2.3.4 authenticated
If the authentication fails, the messages are:
relay: new client on port 9000: 1/weechat/1.2.3.4 (waiting auth)
=!= relay: authentication failed with client 1/weechat/1.2.3.4
configure.ac defines this to /usr/share/weechat, which means scripts can
load from this directory as a fallback for $HOME/.weechat/, but cmake
defines this instead as /usr/share, which means system-installed
fallback scripts would need to be installed to /usr/share/python/foo.py
instead, and that's completely insane!
Fix this discrepancy by creating a cmake define specifically for
WEECHAT_SHAREDIR based on the datarootdir, just like autotools does it.
This is how other build systems (e.g. autotools) see the variable, and
cmake's own GNUInstallDirs defines the same. It more clearly describes
what this setting does vs. the ambiguous "sharedir".
The memory leak was caused by a bug in function setlocale on FreeBSD:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=243195
The fix is the following:
* Remove the calls to setlocale when formatting the result.
* The function snprintf is still called, and then is now locale dependent,
for example in French the decimal separator is a comma instead of a dot.
* A new function calc_sanitize_decimal_number is introduced to "sanitize" a
decimal number: keep only the decimal separator (replace it by a dot) and
remove any other separator found.
Unit tests are added on these functions:
* calc_sanitize_decimal_number
* calc_format_result
The evaluation allows to use different sort for the bar items, for example with
such value:
${if:${bar_item.name}==buflist?number:short_name}
This sorts by number on the first bar item and by short name on the two other
bar items.
STRING"WeeChat home directory for config, logs, scripts.. (default is \"~/.weechat\")"
STRING"Force a single WeeChat home directory for config, logs, scripts, etc."
FORCE)
mark_as_advanced(CLEARWEECHAT_HOME)
# option CA_FILE
if(NOTDEFINEDCA_FILEOR"${CA_FILE}"STREQUAL"")
set(CA_FILE"/etc/ssl/certs/ca-certificates.crt")
endif()
set(CA_FILE"${CA_FILE}"CACHE
STRING"File containing the certificate authorities (default is \"/etc/ssl/certs/ca-certificates.crt\"). This is the default value of option \"weechat.network.gnutls_ca_file\"."
in Developer's guide, which contains info about styles used, naming convention
and other useful info.
== Semantic versioning
Since version 4.0.0, WeeChat is following a "practical" semantic versioning.
It is based on https://semver.org/[Semantic Versioning] but in a less strict way: breaking changes in API with low user impact don't bump the major version.
The version number is on three digits `X.Y.Z`, where:
* `X` is the major version
* `Y` is the minor version
* `Z` is the patch version.
Rules to increment the version number:
* the *major version* number (`X`) is incremented only when intentional breaking changes target feature areas that are actively consumed by users, scripts or C plugin API
* the *minor version* number (`Y`) is incremented for any new release of WeeChat that includes new features and bug fixes, possibly breaking API with low impact on users
* the *patch version* number (`Z`) is reserved for releases that address severe bugs or security issues found after the release.
For more information, see the https://specs.weechat.org/specs/2023-003-practical-semantic-versioning.html[specification].
* *Modular chat client*: WeeChat has a lightweight core and optional https://weechat.org/files/doc/stable/weechat_user.en.html#plugins[plugins]. All plugins (including https://weechat.org/files/doc/stable/weechat_user.en.html#irc_plugin[IRC]) are independent and can be unloaded.
* *Modular chat client*: WeeChat has a lightweight core and optional https://weechat.org/doc/weechat/user/#plugins[plugins]. All plugins (including https://weechat.org/doc/weechat/user/#irc[IRC]) are independent and can be unloaded.
* *Multi-platform*: WeeChat runs on GNU/Linux, *BSD, GNU/Hurd, Haiku, macOS and Windows (Bash/Ubuntu and Cygwin).
* *Multi-protocols*: WeeChat is designed to support multiple protocols by plugins, like IRC.
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://tools.ietf.org/html/rfc1459[1459], https://tools.ietf.org/html/rfc2810[2810], https://tools.ietf.org/html/rfc2811[2811], https://tools.ietf.org/html/rfc2812[2812] and https://tools.ietf.org/html/rfc2813[2813].
* *Small, fast and very light*: the core is and should stay as light and fast as possible.
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/stable/language/perl/[Perl], https://weechat.org/scripts/stable/language/python/[Python], https://weechat.org/scripts/stable/language/ruby[Ruby], https://weechat.org/scripts/stable/language/lua/[Lua], https://weechat.org/scripts/stable/language/tcl/[Tcl], https://weechat.org/scripts/stable/language/guile/[Scheme], https://weechat.org/scripts/stable/language/javascript/[JavaScript] and https://weechat.org/scripts/stable/language/php/[PHP]).
* *Fully documented*: there is comprehensive https://weechat.org/doc/[documentation], which is https://weechat.org/files/doc/stable/weechat_dev.en.html#translations[translated] into several languages.
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://datatracker.ietf.org/doc/html/rfc1459[1459], https://datatracker.ietf.org/doc/html/rfc2810[2810], https://datatracker.ietf.org/doc/html/rfc2811[2811], https://datatracker.ietf.org/doc/html/rfc2812[2812], https://datatracker.ietf.org/doc/html/rfc2813[2813] and https://datatracker.ietf.org/doc/html/rfc7194[7194].
* *Small, fast, and very light*: the core is and should stay as light and fast as possible.
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/language/perl/[Perl], https://weechat.org/scripts/language/python/[Python], https://weechat.org/scripts/language/ruby[Ruby], https://weechat.org/scripts/language/lua/[Lua], https://weechat.org/scripts/language/tcl/[Tcl], https://weechat.org/scripts/language/guile/[Scheme], https://weechat.org/scripts/language/javascript/[JavaScript] and https://weechat.org/scripts/language/php/[PHP]).
* *Fully documented*: there is comprehensive https://weechat.org/doc/weechat/[documentation], which is https://weechat.org/doc/weechat/dev/#translations[translated] into several languages.
* *Developed from scratch*: WeeChat was built from scratch and is not based on any other client.
* *Free software*: WeeChat is released under https://www.gnu.org/licenses/gpl-3.0.html[GPLv3].
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_quickstart.cs.html $(abs_top_srcdir)/doc/cs/weechat_quickstart.cs.adoc
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_user.de.html $(abs_top_srcdir)/doc/de/weechat_user.de.adoc
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_scripting.de.html $(abs_top_srcdir)/doc/de/weechat_scripting.de.adoc
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_faq.de.html $(abs_top_srcdir)/doc/de/weechat_faq.de.adoc
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_quickstart.de.html $(abs_top_srcdir)/doc/de/weechat_quickstart.de.adoc
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_tester.de.html $(abs_top_srcdir)/doc/de/weechat_tester.de.adoc
| Erweiterung | Name | Beschreibung | Pointer | Argumente
| alias | alias | Liste der Alias | Alias Pointer (optional) | Name des Alias (Platzhalter "*" kann verwendet werden) (optional)
| alias | alias_default | Liste der standardmäßigen Aliase | - | -
| buflist | buflist | Liste der Buffer in buflist Bar-Item | - | buflist Bar-Item Name (optional)
| fset | fset_option | Auflistung der fset Optionen | fset Option-Pointer (optional) | Name einer Einstellung (Platzhalter "*" kann verwendet werden) (optional)
| guile | guile_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| irc | irc_channel | Liste der Channels eines IRC-Servers | Channel Pointer (optional) | Server,Channel (Channel ist optional)
| irc | irc_color_weechat | Zuordnung der IRC Farbkodierung und der WeeChat Farbnamen | - | -
| irc | irc_ignore | Liste von ignorierten IRCs | Ignore Pointer (optional) | -
| irc | irc_modelist | Liste der Channel-Mode-Liste für einen IRC-Channel | Modelist Pointer (optional) | Server,Channel,Type (Type ist optional)
| irc | irc_modelist_item | Liste der Items in der Channel-Modeliste | Modelist Item Pointer (optional) | Server,Channel,Type,Nummer (Nummer ist optional)
| irc | irc_nick | Liste der Nicks im IRC-Channel | Nick Pointer (optional) | server,channel,nick (nick ist optional)
| irc | irc_notify | Liste mit Benachrichtigungen | Benachrichtigungspointer (optional) | Servername (Platzhalter "*" kann verwendet werden) (optional)
| irc | irc_server | Liste der IRC-Server | Server Pointer (optional) | Servername (Platzhalter "*" kann verwendet werden) (optional)
| javascript | javascript_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| lua | lua_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| perl | perl_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| php | php_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| python | python_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| relay | relay | Liste der Relay-Clients | Relay Pointer (optional) | -
| ruby | ruby_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| script | script_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes, mit Dateierweiterung (Platzhalter "*" kann verwendet werden) (optional)
| tcl | tcl_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| weechat | bar | Auflistung der Bars | Bar Pointer (optional) | Name der Bar (Platzhalter "*" kann verwendet werden) (optional)
| weechat | bar_item | Auflistung der Bar-Items | Bar Item Pointer (optional) | Name des Bar-Item (Platzhalter "*" kann verwendet werden) (optional)
| weechat | filter | Auflistung der Filter | - | Name des Filters (Platzhalter "*" kann verwendet werden) (optional)
| weechat | history | Verlaufspeicher der Befehle | Buffer Pointer (falls nicht gesetzt, wird der globale Verlauf zurückgegeben) (optional) | -
| weechat | hook | Auflistung der Hooks | Hook-Pointer (optional) | type,arguments (type ist ein command/timer/.., arguments dient dazu nur einige hooks abzufragen (Platzhalter "*" kann verwendet werden), beide Einstellungen sind optional)
| weechat | hotlist | Liste der Buffer in Hotlist | - | -
| weechat | key | Auflistung der Tastenzuweisungen | - | Kontext ("default", "search", "cursor" oder "mouse") (optional)
| weechat | nicklist | Nicks in Benutzerliste für einen Buffer | Buffer Pointer | nick_xxx oder group_xxx um nur den Nick/Group xxx abzufragen (optional)
| weechat | option | Auflistung der Einstellungen | - | Name einer Einstellung (Platzhalter "*" kann verwendet werden) (optional)
| weechat | plugin | Auflistung der Erweiterungen | Pointer der Erweiterung (optional) | Name einer Erweiterung (Platzhalter "*" kann verwendet werden) (optional)
| weechat | proxy | Liste der Proxys | Proxy Pointer (optional) | Name des Proxy (Platzhalter "*" kann verwendet werden) (optional)
| python | python_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| python | python_interpreter | Name des verwendeten Interpreters | -
| python | python_version | Version des verwendeten Interpreters | -
| relay | relay_client_count | Anzahl an Clients für Relay | Protokoll,Status (beide sind Optional, bei beiden Argumenten bedeutet "*", alle; Protokolle: irc, weechat; Status: connecting, waiting_auth, connected, auth_failed, disconnected)
| ruby | ruby_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| ruby | ruby_interpreter | Name des verwendeten Interpreters | -
| ruby | ruby_version | Version des verwendeten Interpreters | -
| spell | spell_dict | durch Kommata getrennte Liste von Wörterbüchern, die in diesem Buffer genutzt werden sollen | Buffer-Pointer ("0x12345678") oder der vollständige Buffername ("irc.freenode.#weechat")
| tcl | tcl_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| tcl | tcl_interpreter | Name des verwendeten Interpreters | -
| tcl | tcl_version | Version des verwendeten Interpreters | -
| weechat | locale | Spracheinstellung die für die übersetzten Nachrichten verwendet werden soll | -
| weechat | nick_color | zeigt Farbecode des Nick | Nickname
| weechat | nick_color_name | zeigt Farbnamen des Nick | Nickname
| weechat | pid | WeeChat PID (Prozess-ID) | -
| weechat | term_color_pairs | Anzahl der Farbpaare die durch das Terminal unterstützt werden | -
| weechat | term_colors | Anzahl der Farben die durch das Terminal unterstützt werden | -
| weechat | term_height | Höhe des Terminals | -
| weechat | term_width | Breite des Terminals | -
| weechat | totp_generate | generiert ein Time-based One-Time Passwort (TOTP) | geheime Zeichenkette (in base32), Zeitstempel (optional, standardmäßig aktuelle Zeit), Anzahl an Zeichen (optional, zwischen 4 und 10, standardmäßig 6)
| weechat | totp_validate | validiert ein Time-based One-Time Passwort (TOTP): 1 falls TOTP korrekt ist, ansonsten 0 | geheim (in base32), einmaliges Passwort, Zeitstempel (optional, standardmäßig aktuelle Zeit), Anzahl der zu testenden Passwörtern vorher/nachher (optional, standardmäßig 0)
| weechat | uptime | Laufzeit von WeeChat (Format: "days:hh:mm:ss") | "days" (Anzahl der Tage) oder "seconds" (Anzahl der Sekunden) (optional)
| weechat | version | WeeChat-Version | -
| weechat | version_git | WeeChat Git Version (Ausgabe des Befehls "git describe", ausschließlich für eine Entwicklerversion. Eine stabile Version gibt keine Information zurück) | -
| irc | irc_message_parse | Parse eine IRC Nachricht | "message": IRC Nachricht, "server": Servername (optional) | "tags": Tags, "message_without_tags": Nachrichten ohne Tags, "nick": Nick, "user": Benutzername, "host": Host, "command": Befehl, "channel": Channel, "arguments": Argumente (schließt Channel ein), "text": Text (zum Beispiel eine Nachricht von einem User), "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird)
| irc | irc_message_split | trennt eine IRC Nachricht (standardmäßig in 512 Bytes große Nachrichten) | "message": IRC Nachricht, "server": Servername (optional) | "msg1" ... "msgN": Nachrichten die versendet werden sollen (ohne abschließendes "\r\n"), "args1" ... "argsN": Argumente für Nachrichten, "count": Anzahl der Nachrichten
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_buflist_buflist]]
* `+buflist+`: Bar-Item mit der Liste von Buffern
----
/buflist bar
refresh
bar: fügt eine "buflist" Bar hinzu
refresh: erzwingt eine Aktualisierung der Bar-Item (buflist, buflist2 und buflist3)
Jede Zeile die einen Buffer anzeigt wird mittels Zeichenketten-Evaluation dargestellt (siehe /help eval für das Format), dazu werden folgende Optionen genutzt:
- buflist.look.display_conditions: Bedingungen um einen Buffer in der Liste darzustellen
- buflist.format.buffer: Format für den Buffer, der nicht der aktuell dargestellte Buffer ist
- buflist.format.buffer_current: Format für den aktuell dargestellten Buffer
Die folgenden Variablen können in den obigen Optionen genutzt werden:
- bar item data (siehe hdata "bar_item" in API Dokumentation für eine vollständige Liste), zum Beispiel:
- ${bar_item.name}
- buffer data (siehe hdata "buffer" in API Dokumentation für eine vollständige Liste), zum Beispiel:
- ${buffer.number}
- ${buffer.name}
- ${buffer.full_name}
- ${buffer.short_name}
- ${buffer.nicklist_nicks_count}
- irc_server: IRC Serverdaten, ausschließlich genutzt bei einem IRC Buffer (siehe hdata "irc_server" in API Dokumentation)
- irc_channel: IRC Channeldaten, ausschließlich genutzt bei einem IRC Channel Buffer (siehe hdata "irc_channel" in API Dokumentation)
- zusätzliche Variablen die durch buflist bereitgestellt werden:
- ${format_buffer}: der evaluierte Wert der Option buflist.format.buffer; dies kann in der Option buflist.format.buffer_current genutzt werden um zum Beispiel die Hintergrundfarbe zu verändern
- ${current_buffer}: ein Boolean ("0" oder "1"), "1" falls es sich um den aktuellen Buffer handelt; dies kann in einer Bedingung verwendet werden: ${if:${current_buffer}?...:...}
- ${merged}: ein Boolean ("0" oder "1"), "1" wenn der Buffer mit einem anderen zusammengefügt ist; kann innerhalb einer Bedingung genutzt werden: ${if:${merged}?...:...}
- ${format_number}: eingerückte Nummer mit Trennzeichen (evaluiert aus Option buflist.format.number)
- ${number}: eingerückte Nummer, zum Beispiel " 1", falls die Anzahl der Buffer zwischen 10 und 99 liegt; bei zusammengefügten Buffern enthält die Variable für den ersten Buffer die entsprechende Nummer, die weiteren Buffer enthalten ein Leerzeichen anstelle der Nummer
- ${number2}: eingerückte Nummer, zum Beispiel " 1", falls die Anzahl der Buffer zwischen 10 und 99 liegt
- ${number_displayed}: "1" falls Nummer angezeigt wird, ansonsten "0"
- ${indent}: Einrückung für Name (Channel und private Buffer werden eingerückt) (evaluiert aus Option buflist.format.indent)
- ${format_nick_prefix}: Nick-Präfix mit entsprechender Farbe für einen Channel (evaluiert aus Option buflist.format.nick_prefix)
- ${color_nick_prefix}: Farbe für den Nick-Präfix von einem Channel (wird nur genutzt wenn die Option buflist.look.nick_prefix aktiviert ist)
- ${nick_prefix}: der Nick-Präfix für einen Channel (wird nur genutzt falls die Option buflist.look.nick_prefix aktiviert ist)
- ${format_name}: der formatierte Name (evaluiert aus Option buflist.format.name)
- ${name}: der Kurzname (falls einer gesetzt ist), ersatzweise wird auf den Originalnamen zurückgegriffen
- ${color_hotlist}: die Farbe mit der höchsten Priorität für den entsprechenden Buffer (evaluiert aus Option buflist.format.hotlist_xxx wobei xxx der entsprechende Level ist)
- ${format_hotlist}: die formatierte Hotlist (evaluiert aus Option buflist.format.hotlist)
- ${hotlist}: die Hotlist in der Rohform
- ${hotlist_priority}: "none", "low", "message", "private" oder "highlight"
- ${format_lag}: die Verzögerung für einen IRC Server-Buffer, ist leer falls es keine Verzögerung gibt (evaluiert aus Option buflist.format.lag)
** Beschreibung: pass:none[Format für eine Zeile mit einem Buffer (Hinweis: Inhalt wird evaluiert, siehe /help buflist); Beispiel: Standardformat für Bar-Item "buflist" anwenden und nur die Buffernummer in eckigen Klammern für die anderen Bar-Items ("buflist2 und "buflist3") anzeigen: "${if:${bar_item.name}==buflist?${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}:[${number}\]}"]
** Beschreibung: pass:none[Zeichenkette die beim Einrücken von Channel und privaten Buffern angezeigt wird (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Beschreibung: pass:none[Format für die Darstellung der Buffernummer, hierbei ist die Variable ${number} die eingerückte Nummer (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Beschreibung: pass:none[fügt einen Zeilenumbruch zwischen die einzelnen Buffer hinzu um pro Zeile einen Buffer anzuzeigen (empfohlen); falls deaktiviert muss ein Zeilenumbruch manuell hinzugefügt werden, "${\\n}", des Weiteren ist die Mausunterstützung nicht mehr gegeben]
** Beschreibung: pass:none[scrollt automatisch die buflist-Bar um den aktuellen Buffer darzustellen (dies funktioniert ausschließlich wenn die Bar links/rechts positioniert ist und als Darstellung "vertical" verwendet wird); dieser Wert ist eine prozentuale Angabe wo der aktuelle Buffer angezeigt werden soll (-1 = deaktiviert); zum Beispiel wird bei einem Wert von 50 der Buffer in der Mitte der Bar angezeigt, bei 0 wird der Buffer oben und bei 100 am unteren Rand der Bar angezeigt]
** Beschreibung: pass:none[Bedingungen wann ein Buffer dargestellt werden soll (Hinweis: Inhalt ist evaluiert, siehe /help buflist); Beispielsweise werden Server-Buffer versteckt, sofern sie mit dem Core-Buffer zusammengefügt worden sind: "${buffer.hidden}==0 && ((${type}!=server && ${buffer.full_name}!=core.weechat) || ${buffer.active}==1)"]
** Beschreibung: pass:none[ist diese Einstellung aktiviert, kann mit der linken/rechten Maustaste auf dem aktuellen Buffer zum vorherigen/nächsten Buffer gesprungen werden]
** Beschreibung: pass:none[ist diese Einstellung aktiviert, kann mit dem Mausrad hoch/runter zum nächsten/vorherigen Buffer in der Liste gesprungen werden]
** Beschreibung: pass:none[holt den Nick-Präfix und die dazugehörige Farbe aus der Nicklist um diese mit der Variable ${nick_prefix} zu nutzen; diese Option ist standardmäßig deaktiviert, da bei einer umfangreichen Nickliste es zu Verzögerungen kommen kann]
** Beschreibung: pass:none[durch Kommata getrennte Liste von zusätzlichen Signalen die dafür sorgen das die Buffer-Liste aktualisiert wird; dies kann nützlich sein falls benutzerdefinierte Variablen genutzt werden und dadurch eine Aktualisierung erforderlich wird]
** Beschreibung: pass:none[durch Kommata getrennte Liste von Feldern um die Buffer zu sortieren; jedes Feld ist entweder eine hdata Variable von Buffer ("var"), eine hdata Variable vom Typ IRC Server ("irc_server.var") oder eine hdata Variable vom Typ IRC Channel ("irc_channel.var"); wird das "-" Zeichen vor einem Feld angewendet, wird die Ausgabe umgekehrt, um bei einem Vergleich nicht zwischen Groß- und Kleinschreibung zu unterscheiden wird das Zeichen "~" verwendet; Beispiel: "-~short_name" sortiert die Buffer nach ihrem Kurznamen, wobei dies invertierte passiert und nicht zwischen Groß-oder Kleinschreibung unterschieden wird]
** Beschreibung: pass:none[globale Zeichendekodierung: Zeichendekodierung die für eingehende Nachrichten genutzt werden soll, falls diese nicht UTF-8 gültig ist]
** Beschreibung: pass:none[globale Zeichenkodierung: Zeichenkodierung die für ausgehende Nachrichten genutzt werden soll (sollte keine Zeichenkodierung angegeben werden, wird UTF-8 verwendet, da WeeChat UTF-8 zur internen Kodierung nutzt)]
-sh: es wird die shell verwendet um Befehle auszuführen, mehrere Befehle können dabei gepiped werden (WARNUNG: Dieses Argument sollte nur verwendet werden, falls alle Argumente unbedenklich sind, siehe Argument -nosh)
-nosh: die shell wird nicht verwendet um Befehle auszuführen (wird benötigt, falls der Befehl mit sensiblen Daten hantiert. Zum Beispiel der Inhalt einer Nachricht eines anderen Users)(Standardverhalten)
-bg: führt Prozess im Hintergrund aus: es wird weder eine Prozessausgabe noch ein Rückgabewert ausgegeben (nicht kompatibel mit Argumenten -o/-oc/-n/-nf/-pipe/-hsignal)
-nobg: gibt Prozessausgabe und Rückgabewert aus (Standardverhalten)
-stdin: erstellt eine PIPE um Daten zu dem Prozess zu senden (mittels /exec -in/-inclose)
-nostdin: es wird keine PIPE für stdin erstellt (Standardverhalten)
-buffer: zeigt/sendet Ausgabe des Befehls an diesen Buffer (wird der angegebene Buffer nicht gefunden wird ein neuer Buffer mit dem Namen "exec.exec.xxx" erstellt)
-l: gibt die Ausgabe des Befehls lokal im Buffer aus (Standardverhalten)
-o: gibt die Ausgabe des Befehls im Buffer aus (nicht kompatibel mit Argumenten -bg/-pipe/-hsignal)
-oc: gibt die Ausgabe des Befehls im Buffer aus und führt diesen dann aus (betrifft Zeilen die mit "/" beginnen bzw. das benutzerdefinierte Befehlszeichen verwenden) (nicht kompatibel mit Argumenten -bg/-pipe/-hsignal)
-n: gibt die Ausgabe des Befehls in einem neuen Buffer aus (nicht kompatibel mit Argumenten -bg/-pipe/-hsignal)
-nf: gibt die Ausgabe des Befehls in einem neuen Buffer, mit einem freien Inhalt, aus (kein Zeilenumbruch, keine Limitierung in der Anzahl der Zeilen), aus (nicht kompatibel mit Argument -bg/-pipe/-hsignal)
-cl: der neue Buffer wird vor einer Ausgabe gelöscht
-nocl: Ausgabe wird an neuen Buffer angehangen, ohne diesen vorher zu löschen (Standardverhalten)
-sw: es wird zum Ausgabebuffer gewechselt (Standardverhalten)
-nosw: es wird nicht zum Ausgabebuffer gewechselt
-ln: legt eine Zeilennummerierung an (Standardverhalten, nur für neue Buffer)
-noln: es wird keine Zeilennummerierung angezeigt
-flush: die Ausgabe des Befehls findet in Echtzeit statt (Standardwert)
-noflush: die Ausgabe des Befehls wird am Ende der Ausführung ausgegeben
-color: es wird eine der folgenden Aktionen bei ANSI Zeichenkodierungen in der Ausgabe durchgeführt:
ansi: ANSI-Kodierung wird beibehalten
auto: konvertiert ANSI-Farben nach WeeChat/IRC (Standardverhalten)
irc: konvertiert ANSI-Farben nach IRC Farben
weechat: konvertiert ANSI-Farben nach WeeChat-Farben
strip: ANSI-Farben werden entfernt
-rc: der Rückgabewert wird ausgegeben (Standardverhalten)
-norc: der Rückgabewert wird unterdrückt
-timeout: gibt eine Zeitbeschränkung für den auszuführenden Befehl an (in Sekunden)
-name: dem Befehl wird ein Name zugewiesen (um den Befehl später mittels /exec zu nutzen)
-pipe: sendet die Ausgabe an einen Befehl von WeeChat/Erweiterung (Zeile für Zeile); sollen Leerzeichen im Befehl/Argument verwendet werden, müssen diese mit Anführungszeichen eingeschlossen werden; Variable $line wird durch die entsprechende Zeile ersetzt (standardmäßig wird die Zeile, getrennt durch ein Leerzeichen, dem Befehl nachgestellt (nicht kompatibel mit den Argumenten -bg/-o/-oc/-n/-nf)
-hsignal: sendet die Ausgabe als hsignal (um es z.B. mittels /trigger zu verwenden) (nicht kompatibel mit den Argumenten -bg/-o/-oc/-n/-nf)
command: Befehl der ausgeführt werden soll; beginnt der Befehl mit "url:", wird die shell deaktiviert und der Inhalt der URL wird heruntergeladen und im Buffer ausgegeben
id: identifiziert eindeutig einen Befehl: entweder durch eine Nummer oder einen Namen (sofern ein Name mittels "-name xxx" zugewiesen wurde)
-in: sendet Text an die Standardeingabe des Prozesses
-inclose: wie -in aber stdin wird danach geschlossen (und der Text ist optional: ohne Text wird stdin umgehend geschlossen
-signal: schickt ein Signal an den Prozess; das Signal kann entweder ein Integerwert oder eines der folgenden Schlüsselworte sein: hup, int, quit, kill, term, usr1, usr2
-kill: Alias für "-signal <id> kill"
-killall: beendet alle laufenden Prozesse
-set: nutzt eine Hook-Fähigkeit (siehe Funktion hook_set in Anleitung für API Erweiterung)
property: Hook-Fähigkeit
value: neuer Wert für Hook-Fähigkeit
-del: entfernt einen beendeten Befehl
-all: entfernt alle beendeten Befehle
Standardoptionen können in der Einstellung exec.command.default_options bestimmt werden.
** Beschreibung: pass:none[Textfarbe des Statusindikator (in der Auflistung der Befehle) für beendete Befehle]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Textfarbe des Statusindikator (in der Auflistung der Befehle) für Befehle die zur Zeit ausgeführt werden]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Standardoptionen für den Befehl /exec (siehe /help exec); Beispiele: "-nosh -bg" führt alle Befehle im Hintergrund aus (keine Textausgabe) und ohne das die shell genutzt wird]
** Beschreibung: pass:none[Wartezeit bis nicht mehr ausgeführte Befehle gelöscht werden (in Sekunden, 0 = lösche Befehle unmittelbar, -1 = niemals löschen)]
** Beschreibung: pass:none[shell welche für den Befehl "/exec -sh" genutzt werden soll; hierbei kann es sich um den Namen der shell handeln der über PATH gefunden wird (zum Beispiel "bash") oder man nutzt eine absolute Pfadangabe zur Binärdatei (zum Beispiel "/bin/bash"); wenn kein Wert angegeben ist, wird "sh" genutzt (Hinweis: Inhalt ist evaluiert, siehe /help eval)]
** Beschreibung: pass:none[Pfad für eingehende Dateien: "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat"); WeeChat PID kann mit ${info:pid} genutzt werden (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_fset_fset]]
* `+fset+`: Optionen von WeeChat und Erweiterungen schnell anpassen
----
/fset -bar
-refresh
-up|-down [<number>]
-left|-right [<percent>]
-go <line>|end
-toggle
-add [<value>]
-reset
-unset
-set
-setnew
-append
-mark
-format
-export [-help|-nohelp] <filename>
<filter>
-bar: fügt eine Hilfe in einer Bar hinzu
-refresh: der Bildschirm wird neu gezeichnet (Befehl: /window refresh)
-up: bewegt die ausgewählte Zeile um die Anzahl an Zeilen nach oben
-down: bewegt die ausgewählte Zeile um die Anzahl an Zeilen nach unten
-left: der fset Buffer wird wird prozentual entsprechend der Fensterbreite nach links verschoben
-right: der fset Buffer wird wird prozentual entsprechend der Fensterbreite nach rechts verschoben
-go: wählt eine Zeile mit der entsprechenden Nummer aus, die erste Zeile beginnt mit 0 (mit "end" wird die letzte Zeile ausgewählt)
-toggle: der Wert einer Variable vom Typ boolean wird umgeschaltet
-add: addiert den "Wert" (kann auch eine negative Zahl sein) bei Integer und Farbe, für andere Typen wird die Variable in die Eingabezeile kopiert und der Cursor positioniert (bei negativem Wert wird der Cursor an Beginn der Variable positioniert, bei positivem Wert wird der Cursor an das Ende gesetzt)
-reset: löscht den Wert von der Option
-unset: Option wird zurückgesetzt
-set: der /set Befehl wird in die Eingabezeile kopiert um den Wert der Option zu editieren (der Cursor wird auf den Anfang des Wertes gesetzt)
-setnew: der /set Befehl wird in die Eingabezeile kopiert um den Wert add the /set command in input to edit a new value for the option
-append: der /set Befehl wird in die Eingabezeile kopiert um einen zusätzlichen Wert einzugeben (der Cursor wird an das Ende der Variable positioniert)
-mark: Markierung umschalten
-format: es wird zum nächsten verfügbaren Format gewechselt
-export: exportiert die Optionen und Werte, welche angezeigt werden, in eine Datei (jede Zeile hat das Format: "/set Name Wert" oder "/unset Name")
-help: der Hilfstext für eine Option wird in die exportierte Datei geschrieben (siehe /help fset.look.export_help_default)
-nohelp: der Hilfetext für eine Option wird nicht in die exportierte Datei geschrieben (siehe /help fset.look.export_help_default)
filter: setzt einen neuen Filter um nur ausgewählte Optionen anzuzeigen (die Filterfunktion kann direkt in der Eingabezeile eingegeben werden); mögliche Formate sind:
* alle Optionen werden angezeigt (keine Filterung)
xxx zeigt nur Optionen mit "xxx" im Namen
f:xxx zeigt nur Konfigurationsdatei "xxx" an
t:xxx zeigt nur Optionen des entsprechenden Typs, "xxx" (bool/int/str/col)
d zeigt nur Optionen die verändert wurden
d:xxx zeigt nur Optionen die verändert wurden und "xxx" im Namen haben
d=xxx zeigt nur veränderte Optionen, die "xxx" als Wert haben
d==xxx zeigt nur veränderte Optionen die exakt "xxx" als Wert haben
h=xxx zeigt alle Optionen, die den Text "xxx" in der Beschreibung enthalten (in der Übersetzung)
he=xxx zeigt alle Optionen, die den Text "xxx" in der Beschreibung enthalten (in der englischen Beschreibung)
=xxx zeigt nur Optionen mit "xxx" als Wert
==xxx zeigt nur Optionen die exakt "xxx" als Wert haben
c:xxx zeigt nur Optionen auf die die evaluierte Bedingung "xxx" zutrifft, folgende Variable können verwendet werden: file, section, option, name, parent_name, type, type_en, type_short (bool/int/str/col), type_tiny (b/i/s/c), default_value, default_value_undef, value, quoted_value, value_undef, value_changed, parent_value, min, max, description, description2, description_en, description_en2, string_values
Zeilen werden mittels evaluierten Ausdrücken dargestellt (siehe /help eval für das Format), dazu werden diese Optionen verwendet:
- fset.format.option1: erstes Format für eine Option
- fset.format.option2: zweites Format für eine Option
Die nachfolgenden Variablen können in den Optionen genutzt werden:
- Optionsdaten, mit Farbe und durch Leerzeichen auf der rechten Seite aufgefüllt:
- ${file}: Konfigurationsdatei (zum Beispiel "weechat" oder "irc")
- ${section}: Sektion
- ${option}: Name der Option
- ${name}: vollständiger Name der Option (file.section.option)
- selbe Namen, mit zwei vorangestellten Unterstrichen, zum Beispiel: ${__name}, ${__type}, ...
- Optionsdaten, nur Leerzeichen:
- selbe Namen, mit vorangestelltem "empty_", zum Beispiel: ${empty_name}, ${empty_type}
- andere Daten:
- ${selected_line}: "1" wenn Zeile ausgewählt ist, andernfalls "0"
- ${newline}: fügt einen Zeilenumbruch an diese Position, dadurch wird die Option über mehrere Zeilen angezeigt
Tasten und Eingaben um sich im fset Buffer zu bewegen:
hoch eine Zeile nach oben
runter eine Zeile nach unten
pgup eine Seite nach oben
pgdn eine Seite nach unten
alt-home << springe zur ersten Zeile
alt-end >> springe zur letzten Zeile
F11 < horizontal nach links scrollen
F12 > horizontal nach rechts scrollen
Tasten und Eingaben um Optionen im fset Buffer zu editieren:
alt+space t boolean Werte umschalten
alt+'-' - subtrahiert 1 vom Wert, bei Integer/Farboptionen, bei anderen Typen kann der Wert editiert werden
alt+'+' + addiert 1 zum Wert, bei Integer/Farboptionen, bei anderen Typen kann der Wert editiert werden
alt+f, alt+r r Wert resetten
alt+f, alt+u u Wert zurücksetzen
alt+enter s Wert setzen
alt+f, alt+n n ein neuer Wert wird gesetzt, der alte Wert wird gelöscht
alt+f, alt+a a dem Wert was hinzufügen
alt+',' , markieren/demarkieren einer Option
shift+hoch eine Zeile nach oben und markiert/demarkiert Option
shift+runter markiert/demarkiert Option und geht eine Zeile nach unten
m:xxx markiert Optionen welche angezeigt werden und auf die der Filter "xxx" zutrifft (jeder Filter für Option oder Wert ist erlaubt, siehe Filterung weiter oben)
u:xxx demarkiert Optionen welche angezeigt werden und auf die der Filter "xxx" zutrifft (jeder Filter für Option oder Wert ist erlaubt, siehe Filterung weiter oben)
weitere Tasten und Eingaben im fset Buffer:
ctrl+L der Bildschirm wird neu gezeichnet (Befehl: /fset -refresh)
$ Optionen neu einlesen (markierte Optionen werden beibehalten)
$$ Optionen neu einlesen (Markierungen von Optionen werden dabei gelöscht)
alt+p p umschalten zwischen Beschreibung von Erweiterungen (plugins.desc.*)
alt+v v Hilfe-Bar Ein-/Ausschalten
s:x,y sortiert Optionen nach Bereichen x,y (siehe /help fset.look.sort)
s: setzt Sortierung wieder auf Standardwerte (siehe /help fset.look.sort)
w:xxx exportiert Optionen in Datei "xxx"
w-:xxx exportiert Optionen in Datei "xxx", ohne Hilfstext
w+:xxx exportiert Optionen in Datei "xxx", mit Hilfstext
ctrl+X x umschalten zwischen der Darstellung von Optionen
q schließt fset Buffer
Mausaktionen im fset Buffer:
Mausrad hoch/runter Zeile hoch/runter
linke Maustaste Zeile auswählen
rechte Maustaste boolean umschalten (an/aus) oder editiere den Wert einer Option
rechte Maustaste + links/rechts Integer/Farbwerte werden erhöht/verringert, andere Variabletypen werden in die Eingabezeile kopiert
rechte Maustaste + hoch/runter markieren/demarkieren von mehreren Optionen
Hinweis: Leerzeichen am Anfang der Eingabezeile werden ignoriert und der folgende Text wird als Filter verwendet. Ein Beispiel: "q" schließt den fset Buffer wobei hingegen " q" alle Optionen anzeigt die ein "q" im Namen beinhalten.
Beispiele:
zeigt alle IRC Optionen an, die verändert wurden:
/fset d:irc.*
zeigt alle Optionen die "nicklist" im Namen tragen:
** Beschreibung: pass:none[Farbe für Standardwert]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für den Standardwert bei der ausgewählten Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Beschreibung]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Beschreibung für die ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+white+`
* [[option_fset.color.file]] *fset.color.file*
** Beschreibung: pass:none[Farbe für Datei]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbei für Datei, falls der Wert abweichend ist]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe von Datei wenn Wert verändert ist, bei der ausgewählten Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der Datei für die ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Standardwert in der Hilfe-Bar]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für die Beschreibung in der Hilfe-Bar]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Namen in Hilfe-Bar]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der Anführungszeichen für Stringwerte]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für erlaubte Werte]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+default+`
* [[option_fset.color.index]] *fset.color.index*
** Beschreibung: pass:none[Farbe für Index einer Option]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Index der Option bei der ausgewählten Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Hintergrundfarbe für markierte Zeile (wird für das erste Format verwendet, siehe Option fset.format.option1)]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Hintergrundfarbe für markierte Zeile (wird für das zweite Format verwendet, siehe Option fset.format.option2)]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Hintergrundfarbe für ausgewählte Zeile (wird für das erste Format verwendet, siehe Option fset.format.option1)]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Hintergrundfarbe für ausgewählte Zeile (wird für das zweite Format verwendet, siehe Option fset.format.option2)]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe des Markierungssymbols]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für das Markierungssymbol für die ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+yellow+`
* [[option_fset.color.max]] *fset.color.max*
** Beschreibung: pass:none[Farbe für Maximalwert]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Maximalwert bei der ausgewählten Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+white+`
* [[option_fset.color.min]] *fset.color.min*
** Beschreibung: pass:none[Farbe für Minimalwert]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Minimalwert, für ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+white+`
* [[option_fset.color.name]] *fset.color.name*
** Beschreibung: pass:none[Farbe für Name]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Namen wenn Wert verändert wurde]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe vom Namen, falls Wert verändert wurde bei der ausgewählten Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe des Namens für die ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der Option wenn Wert verändert wurde]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe von Option, falls Wert verändert wurde bei der ausgewählten Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der Option für die ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe des Namens für übergeordnete Option]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe des Namens für übergeordnete Option, für ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe des Wertes für übergeordnete Option]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe des Wertes für übergeordnete Option, für ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der Anführungszeichen für Stringwerte]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der Anführungszeichen um Zeichenketten wenn der Wert verändert wurde]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der Anführungszeichen um Zeichenketten wenn der Wert verändert wurde, bei der ausgewählten Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der Anführungszeichen um Zeichenketten, bei der ausgewählten Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der Sektion wenn Wert verändert wurde]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der aktuellen Zeile für Sektion, sofern Wert verändert wurde]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe der Sektion für ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für String-Werte]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Werte von Zeichenketten, bei der ausgewählten Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für die Zahl die im Buffer-Titel anzeigt wie viele Optionen gefunden wurden]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe in welcher die Ordnungszahl der ausgewählten Option im Title angegeben werden soll]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Filter im Buffer-Titel]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für die Zahl die im Buffer-Titel anzeigt wie viele Optionen markiert sind]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Sortierung im Buffer-Titel]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+white+`
* [[option_fset.color.type]] *fset.color.type*
** Beschreibung: pass:none[Farbe für den Variablentyp]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für den Variablentyp wenn Zeile angewählt wird]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für das Markierungssymbol wenn die Option nicht markiert ist]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für das Markierungssymbol wenn die Option in der ausgewählten Zeile nicht markiert ist]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+white+`
* [[option_fset.color.value]] *fset.color.value*
** Beschreibung: pass:none[Farbe für Wert]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für veränderten Wert (abweichend vom Standardwert)]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für veränderten Wert (abweichend vom Standardwert) für die ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für Wert für die ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für undefinierten Wert]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Farbe für undefinierte Werte für die ausgewählte Zeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Beschreibung: pass:none[Format für die Hilfezeile die vor jede Option geschrieben wird, wenn in eine Datei exportiert wird (Hinweis: Inhalt wird evaluiert, siehe /help fset)]
** Beschreibung: pass:none[Format für jede Option die "null" als Wert hat und in eine Datei exportiert wird (Hinweis: Inhalt wird evaluiert, siehe /help fset)]
** Beschreibung: pass:none[erstes Format um Optionen anzuzeigen die weder markiert noch ausgewählt sind (Hinweis: der Inhalt ist evaluiert, siehe /help fset); eine leere Zeichenkette nutzt die Standardeinstellung ("${marked} ${name} ${type} ${value2}"), dies findet ohne eine Evaluierung statt, was wesentlich schneller ist; zwischen den Formaten kann mittels ctrl-X umgeschaltet werden]
** Beschreibung: pass:none[zweites Format um Optionen anzuzeigen die weder markiert noch ausgewählt sind (Hinweis: der Inhalt ist evaluiert, siehe /help fset); eine leere Zeichenkette nutzt die Standardeinstellung ("${marked} ${name} ${type} ${value2}"), dies findet ohne eine Evaluierung statt, was wesentlich schneller ist; zwischen den Formaten kann mittels ctrl-X umgeschaltet werden]
** Beschreibung: pass:none[die Markierung wird automatisch für alle Optionen gelöscht, sobald eine Aktion bei einer markierten Option durchgeführt wird oder die Liste neu eingelesen wird]
** Beschreibung: pass:none[Bedingung um den /set Befehl abzufangen und die Ausgabe im fset Buffer darzustellen; folgende Variablen können verwendet werden: ${name} (Name der Option die dem /set Befehl übergeben wurde), ${count} (Anzahl der Optionen die mit /set gefunden wurden); eine leere Zeichenkette deaktiviert die Funktion; der Wert "1", nutzt immer den fset Buffer für die Ausgabe des /set Befehls]
** Beschreibung: pass:none[erstellt standardmäßig eine Hilfe für jede exportierte Option (dies kann mit dem Argumenten "-help" und "-nohelp" überschrieben werden wenn man den Befehl /fset -export nutzt)]
** Beschreibung: pass:none[Nummer welches Format genutzt werden soll um Optionen anzuzeigen; diese Option wird dynamisch geändert indem man ctrl-X im fset Buffer nutzt]
** Beschreibung: pass:none[zeigt die zusätzlichen Optionen von Erweiterung an, die für die Beschreibung zuständig sind (plugins.desc.*)]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_fset.look.sort]] *fset.look.sort*
** Beschreibung: pass:none[durch Kommata getrennte Liste von Feldern um die Optionen zu sortieren (siehe /help fset um eine Auflistung der Felder zu erhalten); wird das "-" Zeichen vor einem Feld angewendet, wird die Ausgabe umgekehrt, um bei einem Vergleich nicht zwischen Groß- und Kleinschreibung zu unterscheiden wird das Zeichen "~" verwendet; Beispiel: "-~name" sortiert die Optionsnamen in umgekehrter Reihenfolge und es wird dabei nicht zwischen Groß-und Kleinschreibung unterschieden]
** Beschreibung: pass:none[nutzt die alt+X Tasten im fset Buffer um Aktionen durchzuführen; wenn deaktiviert sind nur Eingaben in der Eingabezeile erlaubt]
** Beschreibung: pass:none[nutzt /mute Befehl wenn eine Option geändert wird]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.