mirror of
https://github.com/weechat/weechat.git
synced 2026-06-13 14:44:46 +02:00
Compare commits
397 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 90bd688643 | |||
| e04047be68 | |||
| 710247891c | |||
| 2e1d16b7e5 | |||
| 778594d68f | |||
| 37d4d2ac65 | |||
| 2376b6aa5e | |||
| 5a24ffd951 | |||
| a1cc70b752 | |||
| 1cedb78348 | |||
| 0123abb83e | |||
| 463517bd1e | |||
| 46f3bee2ff | |||
| d80b27af64 | |||
| e2d44181d7 | |||
| ba4f762964 | |||
| dad3e6099c | |||
| 5208552a98 | |||
| 07721d3dc1 | |||
| d236171035 | |||
| a4d560e0aa | |||
| 7bf0a5c734 | |||
| 10a8732d41 | |||
| fd017ce474 | |||
| 1c0d8f5fd3 | |||
| 160ffe8e11 | |||
| 4c7b898666 | |||
| 391d0a18a1 | |||
| a5db952842 | |||
| 7cb5147e74 | |||
| a5ffd8b800 | |||
| 66384544b5 | |||
| c88428fb41 | |||
| 71991fcc73 | |||
| b82a9c44fd | |||
| 637c7bb3d4 | |||
| 268cb53238 | |||
| 9e721d0ad5 | |||
| 287d5146b4 | |||
| 1cfb5e5d1e | |||
| 866fef2595 | |||
| 2dabce9ac8 | |||
| f33e9b6737 | |||
| 50cea48b51 | |||
| ae891ab322 | |||
| 0a14441d35 | |||
| f2310dae42 | |||
| 67a364550f | |||
| 64592951b5 | |||
| 3a38879590 | |||
| d447755b1f | |||
| 2564fa2882 | |||
| 928ed152ed | |||
| 7014322b2e | |||
| 9b6606394c | |||
| 198872c027 | |||
| c8776b14f6 | |||
| 35c26fb001 | |||
| eca9c89747 | |||
| aed64f5020 | |||
| 266233636d | |||
| be753046b7 | |||
| 15f5bc7944 | |||
| 27a480c7d7 | |||
| fe9768f484 | |||
| aace0a1a58 | |||
| 792739ee42 | |||
| 8b11fa86cd | |||
| 28d013b704 | |||
| 5fffaf89e4 | |||
| 006964c4dc | |||
| 05d31b476b | |||
| 50edb33f1c | |||
| c82358c17c | |||
| d64050bafb | |||
| 1556e4ac5a | |||
| a3924a27a0 | |||
| cbadaecc4f | |||
| 7cad1230e6 | |||
| 997559e55b | |||
| d98940fecb | |||
| f2ad57ceb9 | |||
| d4650183ba | |||
| a6c40d2190 | |||
| 563a6db02d | |||
| 5ddd72c0e9 | |||
| 80b86ea647 | |||
| bbcdb90fbb | |||
| 253b25db03 | |||
| 4c9e7ed09e | |||
| 12043622e6 | |||
| f4a1baaed3 | |||
| 9303f5abd9 | |||
| 1b8ad40b81 | |||
| 2f177dd188 | |||
| edfc415e9e | |||
| 8bb5e33348 | |||
| b3cf7658f7 | |||
| 2081fa54af | |||
| 2da2172593 | |||
| 018a4bda53 | |||
| 14c6ef3d83 | |||
| 9c5837d143 | |||
| 5e08f9876a | |||
| ee66fc3a85 | |||
| 13472adfff | |||
| 60b374901f | |||
| d8a3a0137c | |||
| f66e55564e | |||
| 6e83225e6f | |||
| f03622d141 | |||
| 4f20417cb2 | |||
| f15337ea9a | |||
| 49221b56b9 | |||
| 75f71cd311 | |||
| 505a9f937a | |||
| 08d3e3b2b7 | |||
| fb4d947a8c | |||
| 2ca6420e17 | |||
| cde0d5f7a5 | |||
| ba5b744397 | |||
| 1447c7ad83 | |||
| b57d19c893 | |||
| 9063546acc | |||
| f1cb767001 | |||
| 634eac455d | |||
| 2f90fc0299 | |||
| d2bd952210 | |||
| 9fbe18eb27 | |||
| 2ca37a9128 | |||
| a73e9eb8ca | |||
| a3ddeba9f9 | |||
| baa91a45a8 | |||
| 6124bf3c92 | |||
| 6a8ec55118 | |||
| 4b6038975c | |||
| 5e63161b5b | |||
| 32c99047f4 | |||
| 2ef9509dbe | |||
| c7cb025582 | |||
| 96288d69e2 | |||
| aad86a1955 | |||
| dcbf534d53 | |||
| c8329da6e0 | |||
| 3e1b621f52 | |||
| 56cb9e50af | |||
| 9b17f1fee4 | |||
| cee4bf7e3c | |||
| 027ecc6b0e | |||
| 22ecfda777 | |||
| 2ae974f5c3 | |||
| 99d565f6df | |||
| 5546b0af0e | |||
| 741343e9aa | |||
| 0e9710de81 | |||
| 32ae101096 | |||
| 3a5a2abeea | |||
| de567aa1d3 | |||
| a5e470a16a | |||
| b3ce8b5282 | |||
| 31b15c1423 | |||
| 60c9beab2b | |||
| 10a1c9bda4 | |||
| 6f8f547242 | |||
| 2509486c6a | |||
| df9c32b0c3 | |||
| c577da0375 | |||
| 4e1d40034e | |||
| a1a4f337ff | |||
| e412a34668 | |||
| 3c7d4b0516 | |||
| 572bcc2c59 | |||
| 3360cadd55 | |||
| f51f3dbe29 | |||
| efecdf5d45 | |||
| 76b75ad5cd | |||
| 74ceaa1a68 | |||
| 12a4519448 | |||
| 033fbf63b0 | |||
| 1029780ce2 | |||
| 0ea0b24563 | |||
| ec816b4be5 | |||
| 7c1ea1cb32 | |||
| 27f554659e | |||
| 5389ceb237 | |||
| 03e0122155 | |||
| 8d12187f3d | |||
| bf8c85f422 | |||
| 179822fb91 | |||
| 5e712d7145 | |||
| 8ea41d91c9 | |||
| 7a88e007a5 | |||
| 257fe7362a | |||
| 52cc1165c4 | |||
| 0be96b7c66 | |||
| 9d4119232f | |||
| adcc04cc5a | |||
| e5996f626b | |||
| d8c7cf41b5 | |||
| 5123483c33 | |||
| 33a3c485be | |||
| 7b4d48c46d | |||
| 4ee82d1c70 | |||
| a1a4d627e1 | |||
| 5a5c2cbd1a | |||
| 2bd3681eef | |||
| 604415e19e | |||
| e653ee04d2 | |||
| 3c737ca304 | |||
| 1f83df7a18 | |||
| eda8ad9de5 | |||
| df6f32a7bb | |||
| a2a733fc36 | |||
| 56edeba7fc | |||
| 15392e4a81 | |||
| cb856a7f3a | |||
| 69c457287d | |||
| 5458382bb8 | |||
| 849105ebd6 | |||
| cbc4073815 | |||
| c4b4d80936 | |||
| f0898eae64 | |||
| 9378a7572b | |||
| 3cd97b5131 | |||
| d8b8bf5a84 | |||
| 238c17bd0e | |||
| 1206e9e5c3 | |||
| f3b4336bc4 | |||
| 55df7805c2 | |||
| 9102e4f552 | |||
| 57ad90c3c0 | |||
| ed9104fbea | |||
| 68a3aca643 | |||
| 6fe354439c | |||
| 63b93a8147 | |||
| ad5fa7c99f | |||
| 9548a4cf74 | |||
| 301f0942c6 | |||
| fb57ad147e | |||
| 3ee2f40fb3 | |||
| edd1971ae8 | |||
| a6826af796 | |||
| bd21b25bad | |||
| 48a4a043b7 | |||
| 3b9217e460 | |||
| eaacd805ae | |||
| e9d303c4fa | |||
| fb1bf569a9 | |||
| e00937875d | |||
| 5dbf24d179 | |||
| 9d7cac2396 | |||
| 04977fa9da | |||
| 4aa2b86ee2 | |||
| f3fc1f5f85 | |||
| a7d3f9d4e8 | |||
| 91d32be93c | |||
| a76eedcd1f | |||
| 7742b48098 | |||
| 4d0245711d | |||
| 7d1b557627 | |||
| 5b3929b321 | |||
| 8852e9fd0c | |||
| d5b68e6b75 | |||
| 2446e5814f | |||
| 885b470d51 | |||
| 97b809d164 | |||
| 97bdd51112 | |||
| 75b9ba03a1 | |||
| 5fb7ebdfce | |||
| 6fc6166cfe | |||
| 12be3b8c33 | |||
| 5b5626a82b | |||
| 968d17b806 | |||
| 2de272ee6c | |||
| 009a2889e3 | |||
| 86e3c672bb | |||
| 254c1a3e8b | |||
| fa3cd3dd08 | |||
| 89b28e362c | |||
| cf27302dac | |||
| da8b7a85bb | |||
| 964d3e54d1 | |||
| 960b633517 | |||
| addd80e7b7 | |||
| 8e676edd1a | |||
| 415ea95eb4 | |||
| ede09a843c | |||
| 5442612bc9 | |||
| 2b12b4077a | |||
| 61c3169068 | |||
| 5b48eef4fe | |||
| 9b75118b83 | |||
| def564c5af | |||
| 57ea636fd6 | |||
| 84d8120060 | |||
| 20866a0457 | |||
| 79d50837c9 | |||
| 791b910a77 | |||
| d89c4f559c | |||
| 0be4020b68 | |||
| 72a9b87c1c | |||
| 88d59de940 | |||
| 6ff46776a4 | |||
| 77d96fec23 | |||
| 9404097756 | |||
| a16616637a | |||
| 2b1582c816 | |||
| efea27bb24 | |||
| 6052c1a5c0 | |||
| 3199877bc0 | |||
| b0d4b9aaba | |||
| 6a1425d5ba | |||
| 64b52da406 | |||
| 5ae4af1549 | |||
| f79929b382 | |||
| a4507539fb | |||
| 5b87e0c544 | |||
| 1746e832ec | |||
| ed24930547 | |||
| 7c83ee02f2 | |||
| 8dc75564c2 | |||
| 5b7f55090b | |||
| de61048cd2 | |||
| 252d1bbc9d | |||
| 0355f3fc1a | |||
| 09d871deb4 | |||
| 503a3cb755 | |||
| c127d1693a | |||
| 134f4374f8 | |||
| ab916d3d90 | |||
| 3d54365d67 | |||
| 3c920f9a80 | |||
| 954f943e8e | |||
| bba300e191 | |||
| 7954dbc1f4 | |||
| b108e97085 | |||
| dccf605e66 | |||
| b585ec09f8 | |||
| 5253478279 | |||
| 8a11a18dc5 | |||
| 9432b44a2b | |||
| 1ac800906b | |||
| 5d4adf8010 | |||
| 689a2c1705 | |||
| 9bd737ae1a | |||
| f1761b66c6 | |||
| 2205bb6b45 | |||
| e84a3676f6 | |||
| 253598d83c | |||
| ff6bc95429 | |||
| 61a6b0c705 | |||
| ff8beb1918 | |||
| 59853d9b30 | |||
| a48a615613 | |||
| 5a59482cc8 | |||
| 2478a4187a | |||
| 0fb88527ce | |||
| 7a0020f067 | |||
| f662ca9398 | |||
| 8f19798834 | |||
| 22a7e18842 | |||
| 51123b755d | |||
| b1cf12700d | |||
| 8ea1ee06e5 | |||
| 23c46c3f2b | |||
| b3b4ef648b | |||
| 60b9e36ae2 | |||
| 3d3cdf3884 | |||
| e04cc87f60 | |||
| f2d1acb899 | |||
| 1fb2fcbbd4 | |||
| 296f795ff3 | |||
| ef318cb70c | |||
| 947f73bd50 | |||
| 5a89825669 | |||
| eb2a42c99e | |||
| 60d4489b5e | |||
| 2225ac4e56 | |||
| fa785e8668 | |||
| 0ceccb9798 | |||
| 0b7e4977be | |||
| bfa0b4376c | |||
| 70c1a002e3 | |||
| e4b6db5de2 | |||
| e8cdda318f | |||
| 51740eb21e | |||
| 936e2fddaf | |||
| 70b66c4f6b | |||
| 0525922ee4 | |||
| b8baee1c06 | |||
| 88edc19149 | |||
| f6a4841dab | |||
| 19e41eb28a | |||
| 31b22fec09 | |||
| 1624b0ba97 | |||
| 9fe937a7fd | |||
| f6d1991833 |
@@ -6,15 +6,16 @@ on:
|
||||
|
||||
jobs:
|
||||
|
||||
build:
|
||||
build_linux:
|
||||
|
||||
name: ${{ matrix.config.name }}
|
||||
runs-on: ubuntu-20.04
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os:
|
||||
- ubuntu-20.04
|
||||
config:
|
||||
- { name: "cmake_gcc", cc: "gcc", cxx: "g++", tool: "cmake", args: "" }
|
||||
- { name: "cmake_gcc_ninja", cc: "gcc", cxx: "g++", tool: "cmake", args: "-G Ninja" }
|
||||
- { name: "cmake_gcc_no_nls", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_NLS=OFF" }
|
||||
- { name: "cmake_gcc_py2", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_PYTHON2=ON" }
|
||||
- { name: "cmake_gcc_coverage", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_CODE_COVERAGE=ON" }
|
||||
@@ -22,6 +23,9 @@ jobs:
|
||||
- { name: "autotools_gcc", cc: "gcc", cxx: "g++", tool: "autotools", args: "" }
|
||||
- { name: "autotools_clang", cc: "clang", cxx: "clang++", tool: "autotools", args: "" }
|
||||
|
||||
name: ${{ matrix.config.name }} on ${{ matrix.os }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
@@ -30,7 +34,8 @@ jobs:
|
||||
run: |
|
||||
sudo apt-add-repository --yes ppa:ondrej/php
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get --yes --no-install-recommends install devscripts equivs python3-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python2-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev zlib1g-dev curl libcpputest-dev php7.4-dev libphp7.4-embed libargon2-0-dev libsodium-dev pylint asciidoctor
|
||||
sudo apt-get --yes purge php8.1-dev
|
||||
sudo apt-get --yes --no-install-recommends install devscripts equivs python3-pip libenchant-dev autopoint cmake ninja-build lcov pkg-config libncursesw5-dev gem2deb libperl-dev python2-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev zlib1g-dev curl libcpputest-dev php8.0-dev libphp8.0-embed libargon2-0-dev libsodium-dev pylint python3-bandit asciidoctor
|
||||
sudo -H pip3 install --ignore-installed msgcheck
|
||||
|
||||
- name: Test patches
|
||||
@@ -43,9 +48,12 @@ jobs:
|
||||
run: |
|
||||
pylint --additional-builtins=_ doc/docgen.py
|
||||
pylint doc/python_stub.py
|
||||
pylint tests/scripts/python/testapigen.py
|
||||
pylint tests/scripts/python/testapi.py
|
||||
pylint tests/scripts/python/unparse.py
|
||||
pylint tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
|
||||
bandit doc/docgen.py doc/python_stub.py
|
||||
bandit tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
|
||||
|
||||
- name: Check Python stub file
|
||||
run: ./doc/python_stub.py | diff src/plugins/python/weechat.pyi -
|
||||
|
||||
- name: Build and run tests
|
||||
env:
|
||||
@@ -76,3 +84,48 @@ jobs:
|
||||
lcov --remove coverage.info '/usr/*' --output-file coverage.info
|
||||
lcov --list coverage.info
|
||||
bash <(curl -s https://codecov.io/bash) -f coverage.info || echo 'Codecov error'
|
||||
|
||||
build_macos:
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os:
|
||||
- macos-11
|
||||
- macos-10.15
|
||||
config:
|
||||
- { name: "cmake_gcc", cc: "gcc", cxx: "g++" }
|
||||
- { name: "cmake_clang", cc: "clang", cxx: "clang++" }
|
||||
|
||||
name: ${{ matrix.config.name }} on ${{ matrix.os }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
brew update
|
||||
brew install asciidoctor lua ruby
|
||||
|
||||
- name: Build
|
||||
env:
|
||||
CC: ${{ matrix.config.cc }}
|
||||
CXX: ${{ matrix.config.cxx }}
|
||||
run: |
|
||||
mkdir build-tmp && cd build-tmp
|
||||
cmake .. -DENABLE_MAN=ON -DENABLE_DOC=ON -DENABLE_PHP=OFF
|
||||
make VERBOSE=1 -j2
|
||||
sudo make install
|
||||
|
||||
- name: Run WeeChat
|
||||
env:
|
||||
TERM: xterm-256color
|
||||
run: |
|
||||
weechat --help
|
||||
weechat-curses --help
|
||||
weechat --colors
|
||||
weechat --license
|
||||
weechat --version
|
||||
weechat --temp-dir --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
|
||||
@@ -56,6 +56,7 @@ Alphabetically:
|
||||
* Guido Berhoerster
|
||||
* Gwenn
|
||||
* Hasan Kiran (turgay)
|
||||
* Ivan Pešić
|
||||
* Ivan Sichmann Freitas
|
||||
* Jakub Jirutka
|
||||
* Jan Palus
|
||||
@@ -130,6 +131,7 @@ Alphabetically:
|
||||
* Simmo Saan (sim642)
|
||||
* Simon Arlott
|
||||
* Simon Kuhnle
|
||||
* Simon Ser
|
||||
* Stefano Pigozzi
|
||||
* Stfn
|
||||
* Sven Knurr (Cthulhux)
|
||||
@@ -143,6 +145,7 @@ Alphabetically:
|
||||
* Trevor Bergeron
|
||||
* Valentin Lorentz (progval)
|
||||
* Vasco Almeida
|
||||
* Victorhck
|
||||
* Voroskoi
|
||||
* Wojciech Kwolek
|
||||
* W. Trevor King
|
||||
|
||||
+3
-2
@@ -27,8 +27,8 @@ project(weechat C)
|
||||
set(CMAKE_VERBOSE_MAKEFILE OFF)
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
|
||||
set(CMAKE_SKIP_RPATH ON)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -Wall -Wextra -Werror-implicit-function-declaration")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -Wall -Wextra")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra -Werror-implicit-function-declaration")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra")
|
||||
|
||||
# version
|
||||
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-major OUTPUT_VARIABLE VERSION_MAJOR)
|
||||
@@ -115,6 +115,7 @@ option(ENABLE_PHP "Enable PHP scripting language" ON)
|
||||
option(ENABLE_SPELL "Enable Spell checker plugin" ON)
|
||||
option(ENABLE_ENCHANT "Enable Enchant lib for Spell checker plugin" OFF)
|
||||
option(ENABLE_TRIGGER "Enable Trigger plugin" ON)
|
||||
option(ENABLE_TYPING "Enable Typing plugin" ON)
|
||||
option(ENABLE_XFER "Enable Xfer plugin" ON)
|
||||
option(ENABLE_MAN "Enable build of man page" OFF)
|
||||
option(ENABLE_DOC "Enable build of documentation" OFF)
|
||||
|
||||
@@ -671,4 +671,4 @@ into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications with
|
||||
the library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License. But first, please read
|
||||
<https://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
<https://www.gnu.org/licenses/why-not-lgpl.html>.
|
||||
|
||||
+115
-3
@@ -15,6 +15,118 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
|
||||
(file _ReleaseNotes.adoc_ in sources).
|
||||
|
||||
|
||||
[[v3.4.1]]
|
||||
== Version 3.4.1 (2022-03-13)
|
||||
|
||||
Bug fixes::
|
||||
|
||||
* core: set again TLS verification functions after options weechat.network.gnutls_ca_system and weechat.network.gnutls_ca_user are changed (issue #1763, CVE-2022-28352)
|
||||
|
||||
[[v3.4]]
|
||||
== Version 3.4 (2021-12-18)
|
||||
|
||||
New features::
|
||||
|
||||
* core: add support of static arrays in hdata
|
||||
* core: add command /toggle
|
||||
* api: add parameters pointers, extra_vars and options in function hdata_search
|
||||
* api: add user variables in evaluation of expressions with "define:name,value"
|
||||
* api: add IRC message parameters "param1" to "paramN" and "num_params" in output of irc_message_parse
|
||||
* irc: allow quotes around IRC message in command /server fakerecv
|
||||
* trigger: hide key and password in command "/msg nickserv setpass nick key password"
|
||||
* trigger: add support of option "-server" when hiding passwords in command /msg nickserv register
|
||||
|
||||
Bug fixes::
|
||||
|
||||
* core: fix memory leak in evaluated expression "split:number,seps,flags,xxx" when multiple "strip_items" are given
|
||||
* core: fix random integer number with large range in evaluation of expressions on GNU/Hurd
|
||||
* core: fix access to integer/long/time arrays in hdata
|
||||
* api: fix search of option when the section is not given in functions config_search_option and config_search_section_option
|
||||
* irc: fix join of channels with long name (issue #1717)
|
||||
* irc: fix parsing of parameters in all IRC messages (issue #1666)
|
||||
* irc: fix parsing of CAP message when there is no prefix (issue #1707)
|
||||
* irc: fix parsing of TAGMSG message when there is a colon before the channel
|
||||
|
||||
Documentation::
|
||||
|
||||
* doc: remove tester's guide
|
||||
* doc: add dark theme (automatic, following browser/desktop settings)
|
||||
* doc: make build reproducible
|
||||
* doc: disable web fonts
|
||||
* doc: switch from prettify to pygments for syntax highlighting
|
||||
|
||||
Tests::
|
||||
|
||||
* core: add build with CMake and Ninja in CI
|
||||
* core: add build on macOS 11 in CI
|
||||
|
||||
Build::
|
||||
|
||||
* ruby: add detection of Ruby 3.0 (issue #1721, issue #1605)
|
||||
* core: add targets "changelog" and "rn" to build HTML version of ChangeLog and release notes (CMake build only)
|
||||
|
||||
[[v3.3]]
|
||||
== Version 3.3 (2021-09-19)
|
||||
|
||||
New features::
|
||||
|
||||
* core: change key kbd:[Alt+h] to kbd:[Alt+h], kbd:[Alt+c] (clear hotlist)
|
||||
* core: add options "hotlist_remove_buffer", "hotlist_restore_buffer" and "hotlist_restore_all" in command /input, add default keys kbd:[Alt+h], kbd:[Alt+m] (remove buffer), kbd:[Alt+h], kbd:[Alt+r] (restore hotlist in current buffer) and kbd:[Alt+h], kbd:[Alt+Shift+R] (restore hotlist in all buffers)
|
||||
* core: add option "certs" in command /debug
|
||||
* core: add options "-o", "-ol", "-i" and "-il" in command "/plugin list"
|
||||
* api: add split of string and shell arguments in evaluation of expressions with "split:number,seps,flags,xxx" and "split_shell:number,xxx"
|
||||
* api: add `${re:repl_index}` to get the index of replacement in function string_eval_expression (issue #1689)
|
||||
* api: add random integer number in evaluation of expressions with "random:min,max"
|
||||
* api: add function string_cut
|
||||
* api: add function file_copy (issue #1667)
|
||||
* api: remember insertion order in hashtables
|
||||
* api: add keys/values with tags in output of irc_message_parse_to_hashtable (issue #1654)
|
||||
* irc: add option "-parted" in command /allchan (issue #1685)
|
||||
* irc: allow signals "irc_raw_in" and "irc_in" to eat messages (issue #1657)
|
||||
* irc: implement IRCv3.2 SASL authentication, add command /auth, reconnect by default to the server in case of SASL authentication failure (issue #413)
|
||||
* irc: add support of capability "message-tags" and TAGMSG messages (issue #1654)
|
||||
* irc: enable all capabilities by default (if supported by server and WeeChat), change default value of option irc.server_default.capabilities to "*" (issue #320)
|
||||
* irc: add options irc.look.display_account_message and irc.look.display_extended_join (issue #320)
|
||||
* irc: add command /setname, add support of message and capability "setname" (issue #1653)
|
||||
* irc: always set realname in nicks even when extended-join capability is not enabled (issue #1653)
|
||||
* irc: add support of FAIL/WARN/NOTE messages (issue #1653)
|
||||
* irc: drop support of DH-BLOWFISH and DH-AES SASL mechanisms (issue #175)
|
||||
* typing: new plugin "typing": display users currently writing messages on IRC channel/private buffers
|
||||
|
||||
Bug fixes::
|
||||
|
||||
* core: fix decoding of attributes in basic ANSI colors (issue #1678)
|
||||
* api: fix function string_match with joker in the string if multiple words matched in input string
|
||||
* irc: fix send of empty JOIN when connecting to a server with only parted channels (issue #1638)
|
||||
* irc: fix SASL authentication when AUTHENTICATE message is received with a server name (issue #1679)
|
||||
* irc: remove unneeded message about Diffie-Hellman shared secret exchange during SSL connection to server (issue #857)
|
||||
* irc: escape/unescape IRC message tags values (issue #1654)
|
||||
* irc: set notify level to "private" for received WALLOPS
|
||||
* script: fix move of installed script on another filesystem (issue #1667)
|
||||
|
||||
Documentation::
|
||||
|
||||
* add Spanish FAQ (issue #1656)
|
||||
* add Serbian translations (issue #1655)
|
||||
|
||||
Tests::
|
||||
|
||||
* core: switch to PHP 8.0 in CI
|
||||
* core: add build on macOS in CI
|
||||
|
||||
Build::
|
||||
|
||||
* core: fix build on macOS (issue #1662)
|
||||
* lua: add detection of Lua 5.4
|
||||
* php: add support of PHP 8.0 and 8.1 (issue #1599, issue #1668)
|
||||
|
||||
[[v3.2.1]]
|
||||
== Version 3.2.1 (2021-09-04)
|
||||
|
||||
Bug fixes::
|
||||
|
||||
* relay: fix crash when decoding a malformed websocket frame (CVE-2021-40516)
|
||||
|
||||
[[v3.2]]
|
||||
== Version 3.2 (2021-06-13)
|
||||
|
||||
@@ -753,7 +865,7 @@ Bug fixes::
|
||||
* core: fix command /cursor stop (do not toggle cursor mode) (issue #964)
|
||||
* core: fix delayed refresh when the signal SIGWINCH is received (terminal resized), send signal "signal_sigwinch" after refreshes (issue #902)
|
||||
* irc: fix update of server addresses on reconnection when the evaluated content has changed (issue #925)
|
||||
* irc: fix crash in case of invalid server reply during SASL authentication with dh-blowfish or dh-aes mechanism
|
||||
* irc: fix crash in case of invalid server reply during SASL authentication with DH-BLOWFISH or DH-AES mechanism
|
||||
* irc: fix double decoding of IRC colors in messages sent/displayed by commands /msg and /query (issue #943)
|
||||
* irc: fix parsing of message 324 (modes) when there is a colon before the modes (issue #913)
|
||||
* relay: check buffer pointer received in "sync" and "desync" commands (weechat protocol) (issue #936)
|
||||
@@ -1540,7 +1652,7 @@ New features::
|
||||
* aspell: add completion "aspell_dicts" (list of aspell installed dictionaries)
|
||||
* aspell: add info "aspell_dict" (dictionaries used on a buffer)
|
||||
* aspell: optimization on spellers to improve speed (save state by buffer)
|
||||
* irc: add support of "dh-aes" SASL mechanism (patch #8020)
|
||||
* irc: add support of DH-AES SASL mechanism (patch #8020)
|
||||
* irc: add support of UHNAMES (capability "userhost-in-names") (task #9353)
|
||||
* irc: add tag "irc_nick_back" for messages displayed in private buffer when a nick is back on server (task #12576)
|
||||
* irc: add option irc.look.display_join_message (task #10895)
|
||||
@@ -1920,7 +2032,7 @@ Bug fixes::
|
||||
* core: fix help on plugin option when config_set_desc_plugin is called to set help on newly created option
|
||||
* core: enable background process under Cygwin to connect to servers, fix reconnection problem (bug #34626)
|
||||
* aspell: fix URL detection (do not check spelling of URLs) (bug #34040)
|
||||
* irc: fix memory leak in SASL/blowfish authentication
|
||||
* irc: fix memory leak in SASL DH-BLOWFISH authentication
|
||||
* irc: fix memory leak when a server is deleted
|
||||
* irc: fix self-highlight when using /me with an IRC bouncer like znc (bug #35123)
|
||||
* irc: use low priority for MODE sent automatically by WeeChat (when joining channel)
|
||||
|
||||
+8
-75
@@ -26,9 +26,9 @@ Homepage: https://weechat.org/
|
||||
* *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.
|
||||
* *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]).
|
||||
* *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/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/[documentation], which is https://weechat.org/files/doc/stable/weechat_dev.en.html#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].
|
||||
@@ -37,80 +37,13 @@ pass:[<p align="center">] image:https://weechat.org/media/images/screenshots/wee
|
||||
|
||||
On WeeChat's website you can find https://weechat.org/about/screenshots/[more screenshots].
|
||||
|
||||
== Install
|
||||
== Installation
|
||||
|
||||
=== Dependencies
|
||||
WeeChat can be installed using your favorite package manager (recommended)
|
||||
or by compiling it yourself.
|
||||
|
||||
Following packages are *required*:
|
||||
|
||||
* CMake
|
||||
* libncurses
|
||||
* libcurl
|
||||
* zlib
|
||||
* libgcrypt
|
||||
|
||||
Following packages are optional:
|
||||
|
||||
* for i18n: gettext
|
||||
* for SSL: gnutls, ca-certificates
|
||||
* for spell checking: aspell or enchant
|
||||
* for scripting: python, perl, ruby, lua, tcl, guile, libv8 (javascript), php
|
||||
* for building doc and man page: asciidoctor
|
||||
* for building tests: C++ compiler, CppUTest
|
||||
|
||||
For a complete list of dependencies and versions recommended, please look at
|
||||
https://weechat.org/files/doc/devel/weechat_user.en.html#dependencies[user's guide].
|
||||
|
||||
=== Compile
|
||||
|
||||
WeeChat can be built with https://cmake.org/[CMake] (recommended) or autotools.
|
||||
|
||||
[NOTE]
|
||||
Only CMake is officially supported to build WeeChat. You should only use
|
||||
autotools if you are not able to use CMake. +
|
||||
Building with autotools requires more dependencies and is slower than with CMake.
|
||||
|
||||
* Installation in system directories (requires _root_ privileges):
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake ..
|
||||
$ make
|
||||
$ sudo make install
|
||||
----
|
||||
|
||||
* Installation in custom directory (for example your home):
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/directory
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
For more information or installation with autotools, please look at
|
||||
https://weechat.org/files/doc/devel/weechat_user.en.html#compile_with_autotools[user's guide].
|
||||
|
||||
=== Run tests
|
||||
|
||||
Following packages are *required* to compile tests:
|
||||
|
||||
* libcpputest-dev
|
||||
* C++ compiler
|
||||
|
||||
Tests must be enabled when compiling WeeChat:
|
||||
|
||||
----
|
||||
$ cmake .. -DENABLE_TESTS=ON
|
||||
----
|
||||
|
||||
They can be launched after compilation from the build directory:
|
||||
|
||||
----
|
||||
$ ctest -V
|
||||
----
|
||||
For detailed instructions, please check the
|
||||
https://weechat.org/files/doc/stable/weechat_user.en.html#install[WeeChat user's guide].
|
||||
|
||||
== Copyright
|
||||
|
||||
|
||||
+170
-7
@@ -17,6 +17,169 @@ https://weechat.org/files/changelog/ChangeLog-devel.html[ChangeLog]
|
||||
(file _ChangeLog.adoc_ in sources).
|
||||
|
||||
|
||||
[[v3.4.1]]
|
||||
== Version 3.4.1 (2022-03-13)
|
||||
|
||||
Bug fix and maintenance release.
|
||||
|
||||
[[v3.4]]
|
||||
== Version 3.4 (2021-12-18)
|
||||
|
||||
[[v3.4_default_triggers]]
|
||||
=== Default triggers
|
||||
|
||||
The existing triggers "cmd_pass" and "cmd_pass_register" have been updated to
|
||||
hide key and password in command `/msg nickserv setpass <nick> <key> <password>`
|
||||
and support the option `-server <name>`.
|
||||
|
||||
You can restore the default triggers with the following command:
|
||||
|
||||
----
|
||||
/trigger restore cmd_pass cmd_pass_register
|
||||
----
|
||||
|
||||
[[v3.4_hdata_search]]
|
||||
=== New parameters in function hdata_search
|
||||
|
||||
New parameters have been added in function
|
||||
link:https://weechat.org/doc/plugin#_hdata_search[hdata_search], used for the
|
||||
evaluation of expression.
|
||||
|
||||
New parameters are the same as function
|
||||
link:https://weechat.org/doc/plugin#_string_eval_expression[string_eval_expression]:
|
||||
|
||||
* pointers: hashtable with pointers (pointers)
|
||||
* extra_vars: hashtable with extra variables (strings)
|
||||
* options: hashtable with options (strings).
|
||||
|
||||
The following scripts are updated consequently to be compatible with all
|
||||
WeeChat versions:
|
||||
|
||||
* https://weechat.org/scripts/source/autoauth.py/[autoauth.py] 1.3
|
||||
* https://weechat.org/scripts/source/buffer_open.py/[buffer_open.py] 0.3
|
||||
* https://weechat.org/scripts/source/collapse_channel.py/[collapse_channel.py] 0.9
|
||||
* https://weechat.org/scripts/source/grep_filter.py/[grep_filter.py] 0.11
|
||||
* https://weechat.org/scripts/source/samechannel.rb/[samechannel.rb] 0.2
|
||||
* https://weechat.org/scripts/source/soju.py/[soju.py] 0.1.4
|
||||
* https://weechat.org/scripts/source/stalker.pl/[stalker.pl] 1.6.3
|
||||
|
||||
[[v3.4_hdata_arrays]]
|
||||
=== Static array support in hdata
|
||||
|
||||
Support of static array in hdata has been added.
|
||||
For pointers to arrays, a prefix `*,` must be added in parameter `array_size`
|
||||
of API function link:https://weechat.org/doc/plugin#_hdata_new_var[hdata_new_var].
|
||||
|
||||
[[v3.3]]
|
||||
== Version 3.3 (2021-09-19)
|
||||
|
||||
[[v3.3_hotlist_keys_clear_restore]]
|
||||
=== New keys for hotlist
|
||||
|
||||
New keys have been added to manipulate the hotlist:
|
||||
|
||||
* kbd:[Alt+h], kbd:[Alt+c]: clear the whole hotlist (former key: kbd:[Alt+h])
|
||||
* kbd:[Alt+h], kbd:[Alt+m]: mark the current buffer as read by removing it from the hotlist
|
||||
* kbd:[Alt+h], kbd:[Alt+r]: restore latest hotlist removed in the current buffer
|
||||
* kbd:[Alt+h], kbd:[Alt+Shift+R]: restore latest hotlist removed in all buffers
|
||||
|
||||
You can add them with the following command:
|
||||
|
||||
----
|
||||
/key missing
|
||||
----
|
||||
|
||||
Since the key kbd:[Alt+h] has been moved to kbd:[Alt+h], kbd:[Alt+c], you must
|
||||
manually remove the old key:
|
||||
|
||||
----
|
||||
/key unbind meta-h
|
||||
----
|
||||
|
||||
[[v3.3_typing_bar_item]]
|
||||
=== Bar item "typing"
|
||||
|
||||
A bar item called "typing" has been added to status bar by default. It is used
|
||||
to display users that are currently typing a message on the current IRC channel
|
||||
or private buffer.
|
||||
|
||||
If you want to display typing notifications in the status bar, add ",[typing]"
|
||||
in your option _weechat.bar.status.items_.
|
||||
|
||||
[[v3.3_ordered_hashtables]]
|
||||
=== Ordered hashtables
|
||||
|
||||
Hashtables entries are now ordered by creation date, the following functions
|
||||
are now returning entries sorted by insertion order:
|
||||
|
||||
* hashtable_map
|
||||
* hashtable_map_string
|
||||
* hashtable_get_string (all properties except "keys_sorted" and "keys_values_sorted")
|
||||
* hashtable_add_to_infolist
|
||||
|
||||
[[v3.3_irc_default_capabilities]]
|
||||
=== IRC default capabilities
|
||||
|
||||
All supported capabilities are now enabled by default if the server support
|
||||
them:
|
||||
|
||||
* account-notify
|
||||
* away-notify
|
||||
* cap-notify
|
||||
* chghost
|
||||
* extended-join
|
||||
* invite-notify
|
||||
* message-tags
|
||||
* multi-prefix
|
||||
* server-time
|
||||
* setname
|
||||
* userhost-in-names
|
||||
|
||||
Two new options have been added and enabled by default to customize the behavior
|
||||
of capabilities "account-notify" and "extended-join":
|
||||
|
||||
* _irc.look.display_account_message_: display ACCOUNT messages received
|
||||
* _irc.look.display_extended_join_: display extended join info in the JOIN
|
||||
messages: account name and real name
|
||||
|
||||
The default value of option _irc.server_default.capabilities_ is now `*` which
|
||||
means that all capabilities supported by both WeeChat and the server are enabled
|
||||
by default.
|
||||
|
||||
After upgrade, to enable all capabilities and remove custom capabilities you
|
||||
have set, you can do:
|
||||
|
||||
----
|
||||
/set irc.server_default.capabilities "*"
|
||||
/unset irc.server.example.capabilities
|
||||
----
|
||||
|
||||
You can also explicitly disable some capabilities with this syntax
|
||||
(see `/help irc.server_default.capabilities`):
|
||||
|
||||
----
|
||||
/set irc.server_default.capabilities "*,!away-notify,!extended-join"
|
||||
----
|
||||
|
||||
[[v3.3_irc_sasl_blowfish_aes]]
|
||||
=== IRC SASL DH-BLOWFISH and DH-AES mechanisms removed
|
||||
|
||||
The SASL mechanisms DH-BLOWFISH and DH-AES have been removed, because they
|
||||
are insecure and already removed from most IRC servers. +
|
||||
If you were using one of these mechanisms, it is highly recommended to switch
|
||||
to any other supported SASL mechanism.
|
||||
|
||||
For example:
|
||||
|
||||
----
|
||||
/set irc.server.example.sasl_mechanism scram-sha-256
|
||||
----
|
||||
|
||||
[[v3.2.1]]
|
||||
== Version 3.2.1 (2021-09-04)
|
||||
|
||||
Bug fix and maintenance release.
|
||||
|
||||
[[v3.2]]
|
||||
== Version 3.2 (2021-06-13)
|
||||
|
||||
@@ -295,12 +458,12 @@ If you want to use a command, you must add explicitly the leading `/`:
|
||||
----
|
||||
|
||||
[[v3.0_trigger_beep]]
|
||||
=== Default "beep" trigger
|
||||
=== Default trigger "beep"
|
||||
|
||||
The command of "beep" trigger is now executed only if the message does NOT
|
||||
contain the tag "notify_none" (in addition to existing conditions).
|
||||
|
||||
You can restore the default "beep" trigger with the following command:
|
||||
You can restore the default trigger "beep" with the following command:
|
||||
|
||||
----
|
||||
/trigger restore beep
|
||||
@@ -494,7 +657,7 @@ A _handshake_ command has been added in weechat relay protocol. +
|
||||
The client should send this command before the _init_ to negotiate the way to
|
||||
authenticate with the relay server.
|
||||
|
||||
See the link:weechat_relay_protocol.en.html#command_handshake[handshake command]
|
||||
See the link:https://weechat.org/doc/relay#command_handshake[handshake command]
|
||||
in Relay protocol doc for more information.
|
||||
|
||||
==== Server "nonce"
|
||||
@@ -512,7 +675,7 @@ So the hash is computed on: (`server nonce` + `client nonce` + `password`).
|
||||
This salt is now mandatory even for algorithms `SHA256` and `SHA512`; this is
|
||||
a breaking change in protocol, needed for security reasons.
|
||||
|
||||
See the link:weechat_relay_protocol.en.html#command_init[init command]
|
||||
See the link:https://weechat.org/doc/relay#command_init[init command]
|
||||
in Relay protocol doc for more information.
|
||||
|
||||
[[v2.8]]
|
||||
@@ -838,7 +1001,7 @@ Or set explicitly the value:
|
||||
|
||||
The existing triggers "cmd_pass" and "msg_auth" have been updated to hide
|
||||
password in command `/msg nickserv set password` and support the option
|
||||
`-server xxx`.
|
||||
`-server <name>`.
|
||||
|
||||
You can restore the default triggers with the following command:
|
||||
|
||||
@@ -1499,7 +1662,7 @@ The command `/input jump_last_buffer` still works for compatibility reasons,
|
||||
but it should not be used any more.
|
||||
|
||||
Similarly, a new key has been added to jump to first buffer: kbd:[Alt+j], kbd:[Alt+f].
|
||||
You can add it with following command:
|
||||
You can add it with the following command:
|
||||
|
||||
----
|
||||
/key missing
|
||||
@@ -2239,7 +2402,7 @@ All users of version 0.3.1 should upgrade to this version.
|
||||
=== Aliases
|
||||
|
||||
IRC commands /ame and /amsg are now aliases, if you are upgrading from version
|
||||
0.3.0, you must create aliases with following commands:
|
||||
0.3.0, you must create aliases with the following commands:
|
||||
|
||||
----
|
||||
/alias aaway allserv /away
|
||||
|
||||
+3
-3
@@ -34,7 +34,7 @@ err ()
|
||||
echo "-------"
|
||||
echo "Error :"
|
||||
echo "---8<-----------------------------------"
|
||||
cat $AUTOGEN_LOG
|
||||
cat "$AUTOGEN_LOG"
|
||||
echo "----------------------------------->8---"
|
||||
exit 1
|
||||
}
|
||||
@@ -42,7 +42,7 @@ err ()
|
||||
run ()
|
||||
{
|
||||
printf "Running \"%s\"..." "$@"
|
||||
if eval "$@" >$AUTOGEN_LOG 2>&1 ; then
|
||||
if eval "$@" >"$AUTOGEN_LOG" 2>&1 ; then
|
||||
echo " OK"
|
||||
else
|
||||
echo " FAILED"
|
||||
@@ -66,4 +66,4 @@ run "rm -rf intl"
|
||||
run "autoreconf -vi"
|
||||
|
||||
# ending
|
||||
rm -f $AUTOGEN_LOG
|
||||
rm -f "$AUTOGEN_LOG"
|
||||
|
||||
@@ -34,12 +34,12 @@ set(GCRYPT_CFLAGS)
|
||||
|
||||
if(LIBGCRYPT_CONFIG_EXECUTABLE)
|
||||
|
||||
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS)
|
||||
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS)
|
||||
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --libs RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
|
||||
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --cflags RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
|
||||
|
||||
if(${GCRYPT_CFLAGS} MATCHES "\n")
|
||||
set(GCRYPT_CFLAGS " ")
|
||||
endif()
|
||||
if(NOT DEFINED ${GCRYPT_CFLAGS})
|
||||
set(GCRYPT_CFLAGS " ")
|
||||
endif()
|
||||
|
||||
endif()
|
||||
|
||||
|
||||
+1
-1
@@ -35,5 +35,5 @@ endif()
|
||||
|
||||
find_package(PkgConfig)
|
||||
if(PKG_CONFIG_FOUND)
|
||||
pkg_search_module(LUA lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
|
||||
pkg_search_module(LUA lua5.4 lua-5.4 lua54 lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
|
||||
endif()
|
||||
|
||||
+10
-6
@@ -24,26 +24,30 @@ endif()
|
||||
|
||||
find_package(PkgConfig)
|
||||
if(PKG_CONFIG_FOUND)
|
||||
pkg_search_module(PHP php7)
|
||||
pkg_search_module(PHP php8 php7)
|
||||
endif()
|
||||
|
||||
if(NOT PHP_FOUND)
|
||||
find_program(PHP_CONFIG_EXECUTABLE NAMES
|
||||
php-config8.1 php-config81
|
||||
php-config8.0 php-config80
|
||||
php-config8
|
||||
php-config7.4 php-config74
|
||||
php-config7.3 php-config73
|
||||
php-config7.2 php-config72
|
||||
php-config7.1 php-config71
|
||||
php-config7.0 php-config70
|
||||
php-config php-config7
|
||||
php-config7
|
||||
php-config
|
||||
)
|
||||
if (PHP_CONFIG_EXECUTABLE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --prefix OUTPUT_VARIABLE PHP_LIB_PREFIX OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --includes OUTPUT_VARIABLE PHP_INCLUDE_DIRS OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE PHP_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --version OUTPUT_VARIABLE PHP_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if(${PHP_VERSION} MATCHES "^7")
|
||||
if(${PHP_VERSION} MATCHES "^[78]")
|
||||
find_library(PHP_LIB
|
||||
NAMES php7.4 php7.3 php7.2 php7.1 php7.0 php7
|
||||
NAMES php8.1 php8.0 php8 php7.4 php7.3 php7.2 php7.1 php7.0 php7 php
|
||||
HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64
|
||||
)
|
||||
if(PHP_LIB)
|
||||
@@ -58,9 +62,9 @@ if(NOT PHP_FOUND)
|
||||
endif()
|
||||
|
||||
if(NOT PHP_FOUND)
|
||||
message(WARNING "Could not find libphp7. "
|
||||
message(WARNING "Could not find libphp. "
|
||||
"Ensure PHP >=7.0.0 development libraries are installed and compiled with `--enable-embed`. "
|
||||
"Ensure `php-config` is in `PATH`. "
|
||||
"You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp7."
|
||||
"You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp."
|
||||
)
|
||||
endif()
|
||||
|
||||
+8
-46
@@ -33,51 +33,13 @@ endif()
|
||||
|
||||
find_package(PkgConfig)
|
||||
if(PKG_CONFIG_FOUND)
|
||||
pkg_search_module(RUBY ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9)
|
||||
endif()
|
||||
|
||||
if(RUBY_FOUND)
|
||||
set(RUBY_LIB "")
|
||||
mark_as_advanced(RUBY_LIB)
|
||||
else()
|
||||
find_program(RUBY_EXECUTABLE
|
||||
NAMES ruby2.7.0 ruby270 ruby2.7 ruby2.6.0 ruby260 ruby2.6 ruby2.5.0 ruby250 ruby2.5 ruby2.4.0 ruby240 ruby2.4 ruby2.3.0 ruby230 ruby2.3 ruby23 ruby2.2.3 ruby223 ruby2.2.2 ruby222 ruby2.2.1 ruby221 ruby2.2.0 ruby220 ruby2.2 ruby22 ruby2.1.7 ruby217 ruby2.1.6 ruby216 ruby2.1.5 ruby215 ruby2.1.4 ruby214 ruby2.1.3 ruby213 ruby2.1.2 ruby212 ruby2.1.1 ruby211 ruby2.1.0 ruby210 ruby2.1 ruby21 ruby2.0 ruby20 ruby1.9.3 ruby193 ruby1.9.2 ruby192 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby
|
||||
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
|
||||
)
|
||||
if(RUBY_EXECUTABLE)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubyhdrdir'] || RbConfig::CONFIG['archdir']"
|
||||
OUTPUT_VARIABLE RUBY_ARCH_DIR
|
||||
)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['arch']"
|
||||
OUTPUT_VARIABLE RUBY_ARCH
|
||||
)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['libdir']"
|
||||
OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH
|
||||
)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubylibdir']"
|
||||
OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH
|
||||
)
|
||||
find_path(RUBY_INCLUDE_DIRS
|
||||
NAMES ruby.h
|
||||
PATHS ${RUBY_ARCH_DIR}
|
||||
)
|
||||
set(RUBY_INCLUDE_ARCH "${RUBY_INCLUDE_DIRS}/${RUBY_ARCH}")
|
||||
find_library(RUBY_LIB
|
||||
NAMES ruby-1.9.3 ruby1.9.3 ruby193 ruby-1.9.2 ruby1.9.2 ruby192 ruby-1.9.1 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby
|
||||
PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH}
|
||||
)
|
||||
if(RUBY_LIB AND RUBY_INCLUDE_DIRS)
|
||||
set(RUBY_FOUND TRUE)
|
||||
endif()
|
||||
set(RUBY_INCLUDE_DIRS "${RUBY_INCLUDE_DIRS};${RUBY_INCLUDE_ARCH}")
|
||||
mark_as_advanced(
|
||||
RUBY_INCLUDE_DIRS
|
||||
RUBY_LIBRARY_DIRS
|
||||
RUBY_LIB
|
||||
)
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# set specific search path for macOS
|
||||
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:/usr/local/opt/ruby/lib/pkgconfig")
|
||||
endif()
|
||||
pkg_search_module(RUBY ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
|
||||
if(RUBY_FOUND AND ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# FIXME: weird hack: hardcoding the Ruby lib location on macOS
|
||||
set(RUBY_LDFLAGS "${RUBY_LDFLAGS} -L/usr/local/opt/ruby/lib")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -28,9 +28,7 @@ list(REVERSE files)
|
||||
foreach(file ${files})
|
||||
message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
|
||||
if(EXISTS "$ENV{DESTDIR}${file}")
|
||||
exec_program("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
|
||||
OUTPUT_VARIABLE rm_out
|
||||
RETURN_VARIABLE rm_retval)
|
||||
execute_process(COMMAND "@CMAKE_COMMAND@" -E remove "$ENV{DESTDIR}${file}" OUTPUT_VARIABLE rm_out RESULT_VARIABLE rm_retval)
|
||||
if("${rm_retval}" GREATER 0)
|
||||
message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
|
||||
endif()
|
||||
|
||||
+51
-27
@@ -64,7 +64,7 @@ darwin*)
|
||||
esac
|
||||
|
||||
# Gettext
|
||||
ALL_LINGUAS="cs de es fr hu it ja pl pt pt_BR ru tr"
|
||||
ALL_LINGUAS="cs de es fr hu it ja pl pt pt_BR ru sr tr"
|
||||
AM_GNU_GETTEXT
|
||||
AM_GNU_GETTEXT_VERSION([0.18])
|
||||
|
||||
@@ -130,6 +130,7 @@ AH_VERBATIM([PLUGIN_GUILE], [#undef PLUGIN_GUILE])
|
||||
AH_VERBATIM([PLUGIN_JAVASCRIPT], [#undef PLUGIN_JAVASCRIPT])
|
||||
AH_VERBATIM([PLUGIN_SPELL], [#undef PLUGIN_SPELL])
|
||||
AH_VERBATIM([PLUGIN_TRIGGER], [#undef PLUGIN_TRIGGER])
|
||||
AH_VERBATIM([PLUGIN_TYPING], [#undef PLUGIN_TYPING])
|
||||
AH_VERBATIM([PLUGIN_XFER], [#undef PLUGIN_XFER])
|
||||
AH_VERBATIM([TESTS], [#undef TESTS])
|
||||
AH_VERBATIM([MAN], [#undef MAN])
|
||||
@@ -164,6 +165,7 @@ AC_ARG_ENABLE(php, [ --disable-php turn off PHP script plugi
|
||||
AC_ARG_ENABLE(spell, [ --disable-spell turn off Spell checker plugin (default=compiled)],enable_spell=$enableval,enable_spell=yes)
|
||||
AC_ARG_ENABLE(enchant, [ --enable-enchant turn on Enchant lib for Spell checker plugin (default=off)],enable_enchant=$enableval,enable_enchant=no)
|
||||
AC_ARG_ENABLE(trigger, [ --disable-trigger turn off Trigger plugin (default=compiled)],enable_trigger=$enableval,enable_trigger=yes)
|
||||
AC_ARG_ENABLE(typing, [ --disable-typing turn off Typing plugin (default=compiled)],enable_trigger=$enableval,enable_typing=yes)
|
||||
AC_ARG_ENABLE(xfer, [ --disable-xfer turn off Xfer (file transfer) plugin (default=compiled)],enable_xfer=$enableval,enable_xfer=yes)
|
||||
AC_ARG_WITH(tclconfig, [ --with-tclconfig=DIR directory containing tcl configuration (tclConfig.sh)],tclconfig=$withval,tclconfig='')
|
||||
AC_ARG_WITH(debug, [ --with-debug debugging: 0=no debug, 1=debug compilation (default=0)],debug=$withval,debug=0)
|
||||
@@ -499,7 +501,7 @@ RUBY_VERSION=
|
||||
if test "x$enable_ruby" = "xyes" ; then
|
||||
RUBY_CFLAGS=""
|
||||
RUBY_LFLAGS=""
|
||||
for v in "2.7" "2.6" "2.5" "2.4" "2.3" "2.2" "2.1" "2.0" "1.9" "1.8" ; do
|
||||
for v in "3.0" "2.7" "2.6" "2.5" "2.4" "2.3" "2.2" "2.1" "2.0" "1.9" "1.8" ; do
|
||||
pkgconfig_ruby_found=`$PKGCONFIG --exists ruby-$v 2>/dev/null`
|
||||
if test "x$?" = "x0" ; then
|
||||
RUBY_VERSION=`$PKGCONFIG --modversion ruby-$v`
|
||||
@@ -571,7 +573,7 @@ if test "x$enable_lua" = "xyes" ; then
|
||||
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
|
||||
AC_MSG_CHECKING(for Lua headers and libraries with pkg-config)
|
||||
echo
|
||||
for l in "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do
|
||||
for l in "54" "5.4" "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do
|
||||
pkgconfig_lua_found=`$PKGCONFIG --exists lua$l 2>/dev/null`
|
||||
if test "x$?" = "x0" ; then
|
||||
LUA_VERSION=`$PKGCONFIG --modversion lua$l`
|
||||
@@ -590,7 +592,7 @@ if test "x$enable_lua" = "xyes" ; then
|
||||
|
||||
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
|
||||
LUACONFIG=""
|
||||
AC_CHECK_PROGS(LUACONFIG, lua-config53 lua-config5.3 lua-config52 lua-config5.2 lua-config51 lua-config5.1 lua-config50 lua-config5.0 lua-config)
|
||||
AC_CHECK_PROGS(LUACONFIG, lua-config54 lua-config5.4 lua-config53 lua-config5.3 lua-config52 lua-config5.2 lua-config51 lua-config5.1 lua-config50 lua-config5.0 lua-config)
|
||||
if test "x$LUACONFIG" != "x" ; then
|
||||
AC_MSG_CHECKING(for Lua headers and libraries with lua-config)
|
||||
echo
|
||||
@@ -608,7 +610,7 @@ if test "x$enable_lua" = "xyes" ; then
|
||||
if test "x$ac_found_lua_header" = "xyes" -a "x$ac_found_liblua_header" = "xyes"; then
|
||||
LUA_CFLAGS="$CFLAGS"
|
||||
fi
|
||||
for l in "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do
|
||||
for l in "54" "5.4" "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do
|
||||
AC_CHECK_LIB(lua$l,lua_call,ac_found_lua_lib="yes",ac_found_lua_lib="no")
|
||||
if test "x$ac_found_lua_lib" = "xyes" ; then
|
||||
LUA_VERSION=">=5.1.0"
|
||||
@@ -831,6 +833,7 @@ if test "x$enable_php" = "xyes" ; then
|
||||
|
||||
PHP_CFLAGS=""
|
||||
PHP_LFLAGS=""
|
||||
PHP_VERSIONS="8.1 81 8.0 80 8 7.4 74 7.3 73 7.2 72 7.1 71 7.0 70 7 $php_suffix"
|
||||
|
||||
if test -n "$php_inc"; then
|
||||
CFLAGS="$CFLAGS -I$php_inc"
|
||||
@@ -843,7 +846,7 @@ if test "x$enable_php" = "xyes" ; then
|
||||
if test "x$PHP_CFLAGS" = "x" -o "x$PHP_LFLAGS" = "x" ; then
|
||||
AC_MSG_CHECKING(for PHP headers and libraries with pkg-config)
|
||||
echo
|
||||
for l in "7.4" "74" "7.3" "73" "7.2" "72" "7.1" "71" "7.0" "70" "7" "$php_suffix" "" ; do
|
||||
for l in $PHP_VERSIONS "" ; do
|
||||
pkgconfig_php_found=`$PKGCONFIG --exists php$l 2>/dev/null`
|
||||
if test "x$?" = "x0" ; then
|
||||
pkgconfig_php_found=`$PKGCONFIG --atleast-version=7 php$l 2>/dev/null`
|
||||
@@ -860,11 +863,12 @@ if test "x$enable_php" = "xyes" ; then
|
||||
if test "x$PHP_CFLAGS" = "x" -o "x$PHP_LFLAGS" = "x" ; then
|
||||
PHPCONFIG=""
|
||||
AC_MSG_CHECKING(for PHP headers and libraries with php-config)
|
||||
for l in "7.4" "74" "7.3" "73" "7.2" "72" "7.1" "71" "7.0" "70" "7" "$php_suffix" "" ; do
|
||||
echo
|
||||
for l in $PHP_VERSIONS "" ; do
|
||||
AC_CHECK_PROG(PHPCONFIG, "php-config$l", "php-config$l")
|
||||
if test "x$PHPCONFIG" != "x" ; then
|
||||
php_config_version=`$PHPCONFIG --version`
|
||||
if test "x${php_config_version#7}" != "x${php_config_version}" ; then
|
||||
if echo "x$php_config_version" | grep -e "^x7" -e "^x8" 1>/dev/null 2>&1 ; then
|
||||
PHP_VERSION=$php_config_version
|
||||
PHP_CFLAGS=`$PHPCONFIG --includes`
|
||||
PHP_LFLAGS="-L$($PHPCONFIG --prefix)/lib/ $($PHPCONFIG --libs) -lphp$l"
|
||||
@@ -881,23 +885,25 @@ if test "x$enable_php" = "xyes" ; then
|
||||
if test "x$ac_found_php_header" = "xyes" ; then
|
||||
PHP_CFLAGS="$CFLAGS"
|
||||
fi
|
||||
for l in "7.4" "74" "7.3" "73" "7.2" "72" "7.1" "71" "7.0" "70" "7" "$php_suffix" "" ; do
|
||||
AC_CHECK_LIB(php$l,php_execute_script,ac_found_php_lib="yes",ac_found_php_lib="no")
|
||||
if test "x$ac_found_php_lib" = "xyes" ; then
|
||||
PHP_VERSION=">=7.0.0"
|
||||
for l in $PHP_VERSIONS "" ; do
|
||||
for PHP_LIB_SUFFIX in "$l" "$(echo $l | cut -c1)" "" ; do
|
||||
AC_CHECK_LIB(php$PHP_LIB_SUFFIX,php_execute_script,ac_found_php_lib="yes",ac_found_php_lib="no")
|
||||
if test "x$ac_found_php_lib" = "xyes" ; then
|
||||
PHP_VERSION=">=7.0.0"
|
||||
|
||||
PHP_LFLAGS="$LDFLAGS -lphp7 -lm"
|
||||
PHP_LFLAGS="$LDFLAGS -lphp$PHP_LIB_SUFFIX -lm"
|
||||
|
||||
ac2_save_LDFLAGS="$LDFLAGS"
|
||||
LDFLAGS="$LDFLAGS -lphp7 -lm"
|
||||
ac2_save_LDFLAGS="$LDFLAGS"
|
||||
LDFLAGS="$LDFLAGS -lphp$PHP_LIB_SUFFIX -lm"
|
||||
|
||||
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
|
||||
LDFLAGS="$LDFLAGS -ldl"
|
||||
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
|
||||
LDFLAGS="$LDFLAGS -ldl"
|
||||
fi
|
||||
|
||||
LDFLAGS="$ac2_save_LDFLAGS"
|
||||
break 2
|
||||
fi
|
||||
|
||||
LDFLAGS="$ac2_save_LDFLAGS"
|
||||
break
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
@@ -1013,6 +1019,18 @@ else
|
||||
not_asked="$not_asked trigger"
|
||||
fi
|
||||
|
||||
# ---------------------------------- typing ------------------------------------
|
||||
|
||||
if test "x$enable_typing" = "xyes" ; then
|
||||
TYPING_CFLAGS=""
|
||||
TYPING_LFLAGS=""
|
||||
AC_SUBST(TYPING_CFLAGS)
|
||||
AC_SUBST(TYPING_LFLAGS)
|
||||
AC_DEFINE(PLUGIN_TYPING)
|
||||
else
|
||||
not_asked="$not_asked typing"
|
||||
fi
|
||||
|
||||
# ---------------------------------- xfer --------------------------------------
|
||||
|
||||
if test "x$enable_xfer" = "xyes" ; then
|
||||
@@ -1245,7 +1263,7 @@ if test "x$enable_man" = "xyes" -o "x$enable_doc" = "xyes"; then
|
||||
enable_man="no"
|
||||
enable_doc="no"
|
||||
fi
|
||||
ASCIIDOCTOR_ARGS="-a experimental -a 'prewrap!' -a icons=font -a sectanchors -a source-highlighter=prettify"
|
||||
ASCIIDOCTOR_ARGS="-a experimental -a reproducible -a 'prewrap!' -a 'webfonts!' -a icons=font -a sectanchors -a source-highlighter=pygments -a pygments-style=native"
|
||||
AC_SUBST(ASCIIDOCTOR)
|
||||
AC_SUBST(ASCIIDOCTOR_ARGS)
|
||||
fi
|
||||
@@ -1365,6 +1383,7 @@ AM_CONDITIONAL(PLUGIN_JAVASCRIPT, test "$enable_javascript" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_PHP, test "$enable_php" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_SPELL, test "$enable_spell" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_TRIGGER, test "$enable_trigger" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_TYPING, test "$enable_typing" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_XFER, test "$enable_xfer" = "yes")
|
||||
AM_CONDITIONAL(TESTS, test "$enable_tests" = "yes")
|
||||
AM_CONDITIONAL(MAN, test "$enable_man" = "yes")
|
||||
@@ -1373,15 +1392,16 @@ AM_CONDITIONAL(DOC, test "$enable_doc" = "yes")
|
||||
AC_OUTPUT([Makefile
|
||||
icons/Makefile
|
||||
doc/Makefile
|
||||
doc/cs/Makefile
|
||||
doc/de/Makefile
|
||||
doc/en/Makefile
|
||||
doc/es/Makefile
|
||||
doc/fr/Makefile
|
||||
doc/it/Makefile
|
||||
doc/de/Makefile
|
||||
doc/pl/Makefile
|
||||
doc/es/Makefile
|
||||
doc/ru/Makefile
|
||||
doc/ja/Makefile
|
||||
doc/cs/Makefile
|
||||
doc/pl/Makefile
|
||||
doc/ru/Makefile
|
||||
doc/sr/Makefile
|
||||
src/Makefile
|
||||
src/core/Makefile
|
||||
src/plugins/Makefile
|
||||
@@ -1405,6 +1425,7 @@ AC_OUTPUT([Makefile
|
||||
src/plugins/php/Makefile
|
||||
src/plugins/spell/Makefile
|
||||
src/plugins/trigger/Makefile
|
||||
src/plugins/typing/Makefile
|
||||
src/plugins/xfer/Makefile
|
||||
src/gui/Makefile
|
||||
src/gui/curses/Makefile
|
||||
@@ -1493,6 +1514,9 @@ fi
|
||||
if test "x$enable_trigger" = "xyes"; then
|
||||
listplugins="$listplugins trigger"
|
||||
fi
|
||||
if test "x$enable_typing" = "xyes"; then
|
||||
listplugins="$listplugins typing"
|
||||
fi
|
||||
if test "x$enable_xfer" = "xyes"; then
|
||||
listplugins="$listplugins xfer"
|
||||
fi
|
||||
|
||||
@@ -20,7 +20,7 @@ Build-Depends:
|
||||
libgcrypt20-dev,
|
||||
libgnutls28-dev,
|
||||
zlib1g-dev
|
||||
Standards-Version: 4.5.1
|
||||
Standards-Version: 4.6.0.1
|
||||
Homepage: https://weechat.org/
|
||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||
@@ -153,6 +153,7 @@ Description: Fast, light and extensible chat client - plugins
|
||||
- FIFO pipe for remote control
|
||||
- Relay (IRC proxy and WeeChat protocol)
|
||||
- Trigger
|
||||
- Typing
|
||||
|
||||
Package: weechat-devel-python
|
||||
Architecture: any
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-faq-es
|
||||
Title: WeeChat FAQ (Spanish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document answers frequently asked questions
|
||||
about the WeeChat IRC client (Spanish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_faq.es.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_faq.es.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-de
|
||||
Title: WeeChat tester's guide (German)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (German version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.de.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.de.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-en
|
||||
Title: WeeChat tester's guide (English)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (English version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.en.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.en.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-fr
|
||||
Title: WeeChat tester's guide (French)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (French version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.fr.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.fr.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-it
|
||||
Title: WeeChat tester's guide (Italian)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Italian version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.it.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.it.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-ja
|
||||
Title: WeeChat tester's guide (Japanese)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Japanese version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.ja.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.ja.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-pl
|
||||
Title: WeeChat tester's guide (Polish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Polish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.pl.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.pl.html
|
||||
@@ -1,3 +1,24 @@
|
||||
weechat (3.3-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
* Remove patch merged upstream (which command detection in libgcrypt)
|
||||
* Minor updates in debian/copyright
|
||||
* Enable Typing plugin
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 20 Sep 2021 10:05:56 +0000
|
||||
|
||||
weechat (3.2.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
- fix CVE-2021-40516: possible denial of service (crash) via a crafted
|
||||
WebSocket in relay plugin (Closes: #993803)
|
||||
* Add a patch to fix a FTBFS (related to recent changes on which command
|
||||
output) (Closes: #993333)
|
||||
* Bump Standards-Version to 4.6.0.1
|
||||
* Remove useless HomePage field in upstream/metadata
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 07 Sep 2021 20:25:39 +0000
|
||||
|
||||
weechat (3.0.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
|
||||
@@ -20,7 +20,7 @@ Build-Depends:
|
||||
libgcrypt20-dev,
|
||||
libgnutls28-dev,
|
||||
zlib1g-dev
|
||||
Standards-Version: 4.5.1
|
||||
Standards-Version: 4.6.0.1
|
||||
Homepage: https://weechat.org/
|
||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||
@@ -148,6 +148,7 @@ Description: Fast, light and extensible chat client - plugins
|
||||
- FIFO pipe for remote control
|
||||
- Relay (IRC proxy and WeeChat protocol)
|
||||
- Trigger
|
||||
- Typing
|
||||
|
||||
Package: weechat-python
|
||||
Architecture: any
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-faq-es
|
||||
Title: WeeChat FAQ (Spanish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document answers frequently asked questions
|
||||
about the WeeChat IRC client (Spanish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-de
|
||||
Title: WeeChat tester's guide (German)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (German version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.de.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.de.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-en
|
||||
Title: WeeChat tester's guide (English)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (English version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.en.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.en.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-fr
|
||||
Title: WeeChat tester's guide (French)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (French version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.fr.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.fr.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-it
|
||||
Title: WeeChat tester's guide (Italian)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Italian version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.it.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.it.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-ja
|
||||
Title: WeeChat tester's guide (Japanese)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Japanese version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.ja.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.ja.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-pl
|
||||
Title: WeeChat tester's guide (Polish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Polish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.pl.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.pl.html
|
||||
@@ -4,3 +4,4 @@ usr/lib/*/weechat/plugins/relay.so
|
||||
usr/lib/*/weechat/plugins/script.so
|
||||
usr/lib/*/weechat/plugins/spell.so
|
||||
usr/lib/*/weechat/plugins/trigger.so
|
||||
usr/lib/*/weechat/plugins/typing.so
|
||||
|
||||
+53
-1
@@ -21,7 +21,58 @@
|
||||
if(ENABLE_MAN OR ENABLE_DOC)
|
||||
find_package(Asciidoctor)
|
||||
if(ASCIIDOCTOR_FOUND)
|
||||
set(ASCIIDOCTOR_ARGS -a experimental -a "prewrap!" -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=prettify)
|
||||
# common asciidoctor arguments
|
||||
set(ASCIIDOCTOR_ARGS -a experimental -a reproducible -a "prewrap!" -a "webfonts!" -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=pygments -a pygments-style=native)
|
||||
|
||||
# sed arguments used to replace links in ChangeLog and release notes
|
||||
set(SED_LINKS_ARGS
|
||||
-e "'s/issue #\\([0-9][0-9]*\\)/https:\\/\\/github.com\\/weechat\\/weechat\\/issues\\/\\1[issue #\\1^]/g'"
|
||||
-e "'s/bug #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/bugs\\/?\\1[bug #\\1^]/g'"
|
||||
-e "'s/task #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/task\\/?\\1[task #\\1^]/g'"
|
||||
-e "'s/patch #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/patch\\/?\\1[patch #\\1^]/g'"
|
||||
-e "'s/debian #\\([0-9][0-9]*\\)/http:\\/\\/bugs.debian.org\\/cgi-bin\\/bugreport.cgi?bug=\\1[debian bug #\\1^]/g'"
|
||||
-e "'s/\\(CVE-[0-9][0-9]*-[0-9][0-9]*\\)/https:\\/\\/cve.mitre.org\\/cgi-bin\\/cvename.cgi?name=\\1[\\1^]/g'"
|
||||
)
|
||||
|
||||
# ChangeLog
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
|
||||
COMMAND sed ARGS ${SED_LINKS_ARGS} ${CMAKE_CURRENT_SOURCE_DIR}/../ChangeLog.adoc > ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../ChangeLog.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -a docinfodir="${CMAKE_CURRENT_SOURCE_DIR}" -o ChangeLog.html ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building ChangeLog.html"
|
||||
)
|
||||
add_custom_target(changelog DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html)
|
||||
|
||||
# Release notes
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
|
||||
COMMAND sed ARGS ${SED_LINKS_ARGS} ${CMAKE_CURRENT_SOURCE_DIR}/../ReleaseNotes.adoc > ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../ReleaseNotes.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -a docinfodir="${CMAKE_CURRENT_SOURCE_DIR}" -o ReleaseNotes.html ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building ReleaseNotes.html"
|
||||
)
|
||||
add_custom_target(rn DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html)
|
||||
|
||||
# man/doc in all languages
|
||||
add_subdirectory(cs)
|
||||
add_subdirectory(de)
|
||||
add_subdirectory(en)
|
||||
@@ -31,6 +82,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
add_subdirectory(ja)
|
||||
add_subdirectory(pl)
|
||||
add_subdirectory(ru)
|
||||
add_subdirectory(sr)
|
||||
else()
|
||||
message(SEND_ERROR "Asciidoctor not found")
|
||||
endif()
|
||||
|
||||
+1
-1
@@ -18,7 +18,7 @@
|
||||
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
SUBDIRS = . cs de en es fr it ja pl ru
|
||||
SUBDIRS = . cs de en es fr it ja pl ru sr
|
||||
|
||||
EXTRA_DIST = docgen.py \
|
||||
docinfo.html \
|
||||
|
||||
@@ -85,6 +85,9 @@ $HOME/.config/weechat/tcl.conf::
|
||||
$HOME/.config/weechat/trigger.conf::
|
||||
konfigurační soubor pro _trigger_ plugin
|
||||
|
||||
$HOME/.config/weechat/typing.conf::
|
||||
konfigurační soubor pro _typing_ plugin
|
||||
|
||||
$HOME/.config/weechat/xfer.conf::
|
||||
konfigurační soubor pro _xfer_ plugin
|
||||
|
||||
|
||||
@@ -107,17 +107,4 @@ if(ENABLE_DOC)
|
||||
add_custom_target(doc-quickstart-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# tester's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_tester.de.html"
|
||||
)
|
||||
add_custom_target(doc-tester-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
endif()
|
||||
|
||||
+1
-7
@@ -28,7 +28,6 @@ EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_scripting.de.adoc \
|
||||
weechat_faq.de.adoc \
|
||||
weechat_quickstart.de.adoc \
|
||||
weechat_tester.de.adoc \
|
||||
includes/autogen_api_completions.de.adoc \
|
||||
includes/autogen_api_hdata.de.adoc \
|
||||
includes/autogen_api_infolists.de.adoc \
|
||||
@@ -53,8 +52,7 @@ if DOC
|
||||
doc_targets = weechat_user.de.html \
|
||||
weechat_scripting.de.html \
|
||||
weechat_faq.de.html \
|
||||
weechat_quickstart.de.html \
|
||||
weechat_tester.de.html
|
||||
weechat_quickstart.de.html
|
||||
doc_install = install-doc
|
||||
doc_uninstall = uninstall-doc
|
||||
endif
|
||||
@@ -82,10 +80,6 @@ weechat_faq.de.html: weechat_faq.de.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
weechat_quickstart.de.html: weechat_quickstart.de.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.de.html $(abs_top_srcdir)/doc/de/weechat_quickstart.de.adoc
|
||||
|
||||
# tester's guide
|
||||
weechat_tester.de.html: weechat_tester.de.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.de.html $(abs_top_srcdir)/doc/de/weechat_tester.de.adoc
|
||||
|
||||
# install man/docs
|
||||
|
||||
install-data-hook: $(man_install) $(doc_install)
|
||||
|
||||
@@ -79,6 +79,8 @@ _last_nick_speaking_time_ (pointer, hdata: "irc_channel_speaking") +
|
||||
_modelists_ (pointer, hdata: "irc_modelist") +
|
||||
_last_modelist_ (pointer, hdata: "irc_modelist") +
|
||||
_join_smart_filtered_ (hashtable) +
|
||||
_typing_state_ (integer) +
|
||||
_typing_status_sent_ (time) +
|
||||
_buffer_ (pointer, hdata: "buffer") +
|
||||
_buffer_as_string_ (string) +
|
||||
_prev_channel_ (pointer, hdata: "irc_channel") +
|
||||
@@ -237,6 +239,8 @@ _sasl_scram_client_first_ (string) +
|
||||
_sasl_scram_salted_pwd_ (other) +
|
||||
_sasl_scram_salted_pwd_size_ (integer) +
|
||||
_sasl_scram_auth_message_ (string) +
|
||||
_sasl_temp_username_ (string) +
|
||||
_sasl_temp_password_ (string) +
|
||||
_is_connected_ (integer) +
|
||||
_ssl_connected_ (integer) +
|
||||
_disconnected_ (integer) +
|
||||
@@ -267,6 +271,10 @@ _chantypes_ (string) +
|
||||
_chanmodes_ (string) +
|
||||
_monitor_ (integer) +
|
||||
_monitor_time_ (time) +
|
||||
_clienttagdeny_ (string) +
|
||||
_clienttagdeny_count_ (integer) +
|
||||
_clienttagdeny_array_ (string, array_size: "clienttagdeny_count") +
|
||||
_typing_allowed_ (integer) +
|
||||
_reconnect_delay_ (integer) +
|
||||
_reconnect_start_ (time) +
|
||||
_command_time_ (time) +
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|===
|
||||
| Erweiterung | Name | Beschreibung | Hashtable (Eingabe) | Hashtable (Ausgabe)
|
||||
|
||||
| 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": Kanal, "arguments": Argumente (schließt Kanal 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_parse | Parse eine IRC Nachricht | "message": IRC Nachricht, "server": Servername (optional) | "tags": Tags, "tag_xxx": Wert des Tags "xxx" ohne Escapezeichen (ein Schlüssel pro Tag), "message_without_tags": Nachrichten ohne Tags, "nick": Nick, "user": Benutzer, "host": Host, "command": Befehl, "channel": Kanal, "arguments": Argumente (schließt Kanal ein), "text": Text (zum Beispiel eine Nachricht von einem User), "param1" ... "paramN": geparste Befehlsparameter, "num_params": Anzahl geparste Befehlsparameter, "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
|
||||
|
||||
|
||||
@@ -4,18 +4,26 @@
|
||||
//
|
||||
|
||||
// tag::plugins_priority[]
|
||||
. charset (15000)
|
||||
. logger (14000)
|
||||
. exec (13000)
|
||||
. trigger (12000)
|
||||
. spell (11000)
|
||||
. alias (10000)
|
||||
. buflist (9000)
|
||||
. fifo (8000)
|
||||
. charset (16000)
|
||||
. logger (15000)
|
||||
. exec (14000)
|
||||
. trigger (13000)
|
||||
. spell (12000)
|
||||
. alias (11000)
|
||||
. buflist (10000)
|
||||
. fifo (9000)
|
||||
. typing (8000)
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile, javascript, lua, perl, php, python, ruby, tcl (4000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
// end::plugins_priority[]
|
||||
|
||||
@@ -17,10 +17,11 @@ target: Servername
|
||||
* `+allchan+`: führt einen Befehl aus der an alle Kanäle gesendet wird, die mit einem Server verbunden sind
|
||||
|
||||
----
|
||||
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command>
|
||||
[-current] -include=<channel>[,<channel>...] <command>
|
||||
/allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
|
||||
[-current] [-parted] -include=<channel>[,<channel>...] <command>
|
||||
|
||||
-current: führt einen Befehl aus der an alle Kanäle des aktuellen Servers gesendet wird
|
||||
-parted: wird nur bei vom Server getrennten Kanälen ausgeführt
|
||||
-exclude: dient zum Ausschluss ausgewählter Kanäle (Platzhalter "*" kann verwendet werden)
|
||||
-include: findet Anwendung für ausgewählte Kanäle (Platzhalter "*" kann verwendet werden)\n
|
||||
command: Befehl der ausgeführt werden soll
|
||||
@@ -41,6 +42,8 @@ Beispiele:
|
||||
/allchan -exclude=#weechat,#linux* Hallo Welt
|
||||
schickt den Text 'Hallo' an alle Kanäle die mit #linux beginnen:
|
||||
/allchan -include=#linux* Hallo
|
||||
schließt alle, vom Server getrennte, Kanäle.:
|
||||
/allchan -parted /close
|
||||
----
|
||||
|
||||
[[command_irc_allpv]]
|
||||
@@ -100,6 +103,26 @@ Beispiele:
|
||||
/allserv /whois $nick
|
||||
----
|
||||
|
||||
[[command_irc_auth]]
|
||||
* `+auth+`: authentifizieren mit SASL
|
||||
|
||||
----
|
||||
/auth [<username> <password>]
|
||||
|
||||
username: SASL Username (Inhalt ist evaluiert, siehe /help eval; Serveroptionen werden mit ${irc_server.xxx} evaluiert und ${server} wird durch den Servernamen ersetzt)
|
||||
password: SASL-Passwort oder Pfad zur Datei mit privatem Schlüssel (Inhalt ist evaluiert, siehe /help eval; Serveroptionen werden mit ${irc_server.xxx} evaluiert und ${server} wird durch den Servernamen ersetzt)
|
||||
|
||||
Wenn Benutzername und Kennwort nicht angegeben wurden, werden die Werte aus den Serveroptionen "sasl_username" und "sasl_password" (oder "sasl_key") verwendet.
|
||||
|
||||
Beispiele:
|
||||
authentifizieren Sie sich mit dem im Server definierten Benutzernamen/Passwort:
|
||||
/auth
|
||||
authentifizieren Sie sich mit einem anderen Benutzer:
|
||||
/auth user2 password2
|
||||
authentifizieren als anderer Benutzer mit Mechanismus ecdsa-nist256p-challenge:
|
||||
/auth user2 ${weechat_config_dir}/ecdsa2.pem
|
||||
----
|
||||
|
||||
[[command_irc_ban]]
|
||||
* `+ban+`: Nicknamen oder Hosts sperren/verbannen
|
||||
|
||||
@@ -129,9 +152,9 @@ Ohne Angabe von Argumenten wird die Ban-Liste für den aktuellen Kanal angezeigt
|
||||
|
||||
Ohne Angaben von Argumenten werden "ls" und "list" gesendet.
|
||||
|
||||
Fähigkeiten die von WeeChat unterstützt werden: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, multi-prefix, server-time, userhost-in-names.
|
||||
Fähigkeiten die von WeeChat unterstützt werden: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names..
|
||||
|
||||
Fähigkeiten die standardmäßig genutzt werden sollen, können mit der Option irc.server_default.capabilities gesetzt werden (oder individuell für jeden Server mit der Option irc.server.xxx.capabilities).
|
||||
Fähigkeiten die standardmäßig genutzt werden sollen, können mit der Option irc.server_default.capabilities gesetzt werden (oder individuell für jeden Server mit der Option irc.server.xxx.capabilities).
|
||||
|
||||
Beispiele:
|
||||
/cap
|
||||
@@ -808,6 +831,15 @@ mask: nur zutreffende Services auflisten
|
||||
type: nur Services von diesem Typ auflisten
|
||||
----
|
||||
|
||||
[[command_irc_setname]]
|
||||
* `+setname+`: setze Realnamen
|
||||
|
||||
----
|
||||
/setname <Realname>
|
||||
|
||||
realname: neuer Realname
|
||||
----
|
||||
|
||||
[[command_irc_squery]]
|
||||
* `+squery+`: Nachricht an einen Service senden
|
||||
|
||||
@@ -1271,7 +1303,7 @@ Beispiele:
|
||||
/debug list
|
||||
set <plugin> <level>
|
||||
dump [<plugin>]
|
||||
buffer|color|infolists|memory|tags|term|windows
|
||||
buffer|color|infolists|libs|certs|memory|tags|term|windows
|
||||
mouse|cursor [verbose]
|
||||
hdata [free]
|
||||
time <command>
|
||||
@@ -1289,10 +1321,11 @@ Beispiele:
|
||||
hooks: zeigt die aktiven Hooks an
|
||||
infolists: zeigt Information über die Infolists an
|
||||
libs: zeigt an welche externen Bibliotheken verwendet werden
|
||||
certs: gibt die Anzahl geladener vertrauenswürdiger Zertifizierungsstellen aus
|
||||
memory: gibt Informationen über den genutzten Speicher aus
|
||||
mouse: schaltet den debug-Modus für den Maus-Modus ein/aus
|
||||
tags: zeigt für jede einzelne Zeile die dazugehörigen Schlagwörter an
|
||||
term: gibt Informationen über das Terminal und verfügbare Farben aus
|
||||
term: zeigt Informationen über das Terminal an
|
||||
windows: zeigt die Fensterstruktur an
|
||||
time: misst die Zeit um einen Befehl auszuführen oder um einen Text in den aktuellen Buffer zu senden
|
||||
----
|
||||
@@ -1341,28 +1374,33 @@ Um einen Vergleich zwischen zwei Zeichenketten zu erzwingen, müssen die Ausdrü
|
||||
"50" > "100" ==> 1
|
||||
|
||||
Einige Variablen werden im Ausdruck mittels der Formatierung ${variable} ersetzt. Mögliche Variablen sind, nach Reihenfolge ihrer Priorität:
|
||||
1. die Zeichenfolge selbst ohne Auswertung (Format: "raw:xxx")\n
|
||||
2. eine evaluierte Teilzeichenkette (Format: "eval:xxx")
|
||||
3. eine evaluierte Bedingung (Format: "eval_cond:xxx")
|
||||
4. eine Zeichenkette mit Escapesequenzen (Format: "esc:xxx" oder "\xxx")
|
||||
5. Zeichen, die in einer Zeichenkette nicht dargestellt werden sollen (Format: "hide:Zeichen,Zeichenkette")
|
||||
6. eine Zeichenkette mit einer maximalen Anzahl an Zeichen (Format: "cut:max,suffix,string" oder "cut:+max,suffix,string")
|
||||
1. die Zeichenfolge selbst ohne Auswertung (Format: "raw:xxx")
|
||||
2. eine benutzerdefinierte Variable (Format: "name")
|
||||
3. eine evaluierte Teilzeichenkette (Format: "eval:xxx")
|
||||
4. eine evaluierte Bedingung (Format: "eval_cond:xxx")
|
||||
5. eine Zeichenkette mit Escapesequenzen (Format: "esc:xxx" oder "\xxx")
|
||||
6. Zeichen, die in einer Zeichenkette nicht dargestellt werden sollen (Format: "hide:Zeichen,Zeichenkette")
|
||||
7. eine Zeichenkette mit einer maximalen Anzahl an Zeichen (Format: "cut:max,suffix,string" oder "cut:+max,suffix,string")
|
||||
oder maximale Anzahl an Zeichen die auf dem Bildschirm angezeigt werden sollen (Format: "cutscr:Max,Suffix,Zeichenkette oder "cutscr:+Max,Suffix,Zeichenkette")
|
||||
7. eine Zeichenkette umkehren (Format: "rev:xxx" oder "revscr:xxx")
|
||||
8. eine Zeichenkette wiederholen (Format: "repeat:Anzahl,Zeichenkette")
|
||||
9. Länge einer Zeichenkette (Format: "length:xxx" oder "lengthscr:xxx")
|
||||
10. eine Farbe (Format: "color:xxx", siehe "Anleitung für API Erweiterung", Funktion "color")
|
||||
11. zum modifizieren (Format: "modifier:name,data,string")
|
||||
12. eine Info (Format: "Info:Name,Argumente", Argumente sind optional)
|
||||
13. eine Basis 16/32/64 kodierte / dekodierte Zeichenfolge (Format: "base_encode:base,xxx" oder "base_decode:base,xxx")
|
||||
14. aktuelles Datum/Uhrzeit (Format: "date" oder "date:format")
|
||||
15. eine Umgebungsvariable (Format: "env:XXX")
|
||||
16. ein Dreifachoperand (Format: "if:Bedingung?Wert_falls_wahr:Wert_falls_unwahr")
|
||||
17. Ergebnis eines Ausdrucks mit Klammern und Operatoren + - * / // % ** (Format: "calc:xxx")
|
||||
18. eine übersetzte Zeichenkette (Format: "translate:xxx")
|
||||
19. eine Option (Format: "file.section.option")
|
||||
20. eine lokale Variable eines Buffers
|
||||
21. ein(e) hdata - Name/Variable (der Wert wird automatisch in eine Zeichenkette konvertiert), standardmäßig wird für "window" und "buffer" das aktuelle Fenster/Buffer verwendet.
|
||||
8. eine Zeichenkette umkehren (Format: "rev:xxx" oder "revscr:xxx")
|
||||
9. eine Zeichenkette wiederholen (Format: "repeat:Anzahl,Zeichenkette")
|
||||
10. Länge einer Zeichenkette (Format: "length:xxx" oder "lengthscr:xxx")
|
||||
11. Aufteilen einer Zeichenkette (Format: "split:Anzahl,Trennzeichen,Flags,xxx")
|
||||
12. Aufteilen von Shell-Argumenten (Format: "split_shell:Anzahl,xxx")
|
||||
13. eine Farbe (Format: "color:xxx", siehe "Anleitung für API Erweiterung", Funktion "color")
|
||||
14. zum modifizieren (Format: "modifier:name,data,string")
|
||||
15. eine Info (Format: "Info:Name,Argumente", Argumente sind optional)
|
||||
16. eine Basis 16/32/64 kodierte / dekodierte Zeichenfolge (Format: "base_encode:base,xxx" oder "base_decode:base,xxx")
|
||||
17. aktuelles Datum/Uhrzeit (Format: "date" oder "date:format")
|
||||
18. eine Umgebungsvariable (Format: "env:XXX")
|
||||
19. ein Dreifachoperand (Format: "if:Bedingung?Wert_falls_wahr:Wert_falls_unwahr")
|
||||
20. Ergebnis eines Ausdrucks mit Klammern und Operatoren + - * / // % ** (Format: "calc:xxx")
|
||||
21. eine zufällige ganze Zahl (Format: "random:min,max")
|
||||
22. eine übersetzte Zeichenkette (Format: "translate:xxx")
|
||||
23. eine Benutzervariable definieren (Format: "define:Name,Wert")
|
||||
24. eine Option (Format: "file.section.option")
|
||||
25. eine lokale Variable eines Buffers
|
||||
26. ein(e) hdata - Name/Variable (der Wert wird automatisch in eine Zeichenkette konvertiert), standardmäßig wird für "window" und "buffer" das aktuelle Fenster/Buffer verwendet.
|
||||
Das Format für hdata kann wie folgt aufgebaut sein:
|
||||
hdata.var1.var2...: startet mit hdata (der Pointer muss bekannt sein) und fragt eine Variable nach der anderen ab (weitere hdata können folgen)
|
||||
hdata[list].var1.var2...: startet hdata mittels einer Liste, zum Beispiel:
|
||||
@@ -1393,10 +1431,20 @@ Beispiele (einfache Zeichenketten):
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${split:1,,,abc,def,ghi} ==> abc
|
||||
/eval -n ${split:-1,,,abc,def,ghi} ==> ghi
|
||||
/eval -n ${split:count,,,abc,def,ghi} ==> 3
|
||||
/eval -n ${split:random,,,abc,def,ghi} ==> def
|
||||
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
|
||||
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
|
||||
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${random:0,10} ==> 3
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${translate:Plugin} ==> Erweiterung
|
||||
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
|
||||
|
||||
Beispiele (Bedingungen):
|
||||
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
||||
@@ -1549,6 +1597,9 @@ Auflistung der möglichen Aktionen:
|
||||
jump_previously_visited_buffer: springt zum letzten besuchten Buffer
|
||||
jump_next_visited_buffer: springt zum nächsten besuchten Buffer
|
||||
hotlist_clear: löscht Hotlist (Aktivitätsanzeige für die Buffer), (optionales Argument: "lowest" löscht den niedrigsten Eintrag der Hotlist, "highest" löscht den höchsten Eintrag der Hotlist, oder eine integer Maske: eine Kombination aus 1=join/part, 2=Nachricht,4=privat,8=highlight)
|
||||
hotlist_remove_buffer: entferne aktuellen Buffer von der Hotlist
|
||||
hotlist_restore_buffer: Wiederherstellen der neuesten Hotlist, die im aktuellen Buffer entfernt wurde
|
||||
hotlist_restore_all: Wiederherstellen der neuesten Hotlist, die in allen Buffern entfernt wurde
|
||||
grab_key: fängt eine Taste (optionales Argument: Verzögerung um eine Taste einzufangen. Standard sind 500 Millisekunden)
|
||||
grab_key_command: zeigt den Tastencode (inklusive des eingebundenen Befehls) einer Tastenkombination an und fügt ihn in die Befehlszeile ein (optionales Argument: Verzögerung um eine Taste einzufangen. Standard sind 500 Millisekunden)
|
||||
grab_mouse: fängt den Code einer Maus Aktivität
|
||||
@@ -1644,6 +1695,8 @@ windows: erstellt bzw. verwendet nur Fenster (Buffer welche im jeweiligen Fenste
|
||||
Wird der Befehl ohne Argumente aufgerufen, werden die erstellten Layout dargestellt.
|
||||
|
||||
Das aktuelle Layout kann beim Ausführen des /quit Befehls mit der Option "weechat.look.save_layout_on_exit" gesichert werden.
|
||||
|
||||
Hinweis: Das Layout merkt sich nur Fenstereinteilungen und die Positionsnummern von Buffern. Layout öffnet keine Buffer. Das bedeutet zum Beispiel, dass Sie IRC-Kanäle immer noch automatisch betreten müssen, um die Buffer zu öffnen. Das gespeicherte Layout wird erst verwendet, wenn die Buffer geöffnet sind.
|
||||
----
|
||||
|
||||
[[command_weechat_mouse]]
|
||||
@@ -1693,21 +1746,26 @@ Beispiele:
|
||||
* `+plugin+`: Erweiterungen verwalten (auflisten/installieren/beenden)
|
||||
|
||||
----
|
||||
/plugin list|listfull [<name>]
|
||||
/plugin list [-o|-ol|-i|-il|<name>]
|
||||
listfull [<name>]
|
||||
load <filename> [<arguments>]
|
||||
autoload [<arguments>]
|
||||
reload [<name>|* [<arguments>]]
|
||||
unload [<name>]
|
||||
|
||||
list: installierte Erweiterungen werden aufgelistet
|
||||
listfull: detaillierte Auflistung aller installierten Erweiterungen
|
||||
load: installiert eine Erweiterung
|
||||
-o: sende Liste der geladenen Erweiterungen an den Buffer (Ausgabe in Englisch)
|
||||
-ol: sende Liste der geladenen Erweiterungen an den Buffer (Übersetzte Ausgabe)
|
||||
-i: Liste der geladenen Erweiterungen in die Befehlszeile kopieren (zum Senden an den Buffer) (Ausgabe in Englisch)
|
||||
-il: Liste der geladenen Erweiterungen in die Befehlszeile kopieren (zum Senden an den Buffer) (Übersetzte Ausgabe)
|
||||
name: Name einer Erweiterung
|
||||
listfull: geladene Erweiterungen auflisten (ausführlich)
|
||||
load: Laden einer Erweiterung
|
||||
filename: Erweiterung (Dateiname) welche installiert werden soll
|
||||
arguments: Argumente die der Erweiterung beim Installieren übergeben werden sollen
|
||||
autoload: installiert automatisch alle Erweiterungen aus dem System- oder Benutzerverzeichnis
|
||||
reload: startet eine Erweiterung erneut (falls kein Name angegeben wird, werden alle Erweiterungen beendet und neu gestartet)
|
||||
unload: beendet eine oder alle Erweiterungen (wird kein Name angegeben dann werden alle Erweiterung beendet)
|
||||
filename: Erweiterung (Datei) welche installiert werden soll
|
||||
name: Name einer Erweiterung
|
||||
arguments: Argumente die der Erweiterung beim installieren übergeben werden sollen
|
||||
|
||||
Ohne Angabe eines Arguments werden alle installierten Erweiterungen angezeigt.
|
||||
----
|
||||
@@ -1935,6 +1993,32 @@ Beispiele:
|
||||
/set env ABC ""
|
||||
----
|
||||
|
||||
[[command_weechat_toggle]]
|
||||
* `+toggle+`: den Wert einer Konfigurationsoption umschalten
|
||||
|
||||
----
|
||||
/toggle <option> [<value> [<value>...]]
|
||||
|
||||
option: Name einer Option
|
||||
value: mögliche Werte für die Option (Werte werden wie bei Shell-Befehlsargumente aufgeteilt: Anführungszeichen können verwendet werden, um Leerzeichen am Anfang/Ende von Werten zu nutzen)
|
||||
|
||||
Verhalten:
|
||||
- nur eine Option vom Typ Boolean oder String kann ohne Wert umgeschaltet werden:
|
||||
- boolean: zwischen Ein/Aus Status umschalten, entsprechend dem aktuellen Wert
|
||||
- string: Umschalten zwischen leerem String und Standardwert (funktioniert nur, wenn für die Option ein leerer String erlaubt ist)
|
||||
- mit einem vorgegeben einzelnen Wert, zwischen diesem Wert und dem Standardwert der Option umschalten
|
||||
- sind mehrere Werte angegeben, schalten Sie zwischen diesen Werten um: Der verwendete Wert ist der, der dem aktuellen Wert der Option folgt; wenn der aktuelle Wert der Option nicht in der Liste enthalten ist, wird der erste Wert aus der Liste verwendet
|
||||
- der Sonderwert "null" kann genutzt werden, jedoch nur als erster Wert in der Liste und ohne Anführungszeichen.
|
||||
|
||||
Beispiele:
|
||||
die Uhrzeit im Chat-Bereich umschalten (die Ausgabe des neuen Wertes wird unterdrückt):
|
||||
/mute /toggle weechat.look.buffer_time_format
|
||||
Zeitformat im Chat-Bereich ändern (mit Sekunden, ohne Sekunden, deaktiviert):
|
||||
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
|
||||
den automatischen Beitritt des #weechat-Kanals auf dem libera-Server umschalten:
|
||||
/toggle irc.server.libera.autojoin null #weechat
|
||||
----
|
||||
|
||||
[[command_weechat_unset]]
|
||||
* `+unset+`: Konfigurationsparameter freigeben/zurücksetzen
|
||||
|
||||
@@ -2531,7 +2615,7 @@ disable: die Protokollierung wird für den aktuellen Buffer deaktiviert (der Lev
|
||||
Die Einstellungen "logger.level.*" und "logger.mask.*" können genutzt werden um den Level der Protokollierung festzulegen und um eine Maske für einen oder mehrere Buffer zu definieren.
|
||||
|
||||
Level der Protokollierung, die die IRC Erweiterung unterstützt:
|
||||
1: Nachrichten von Usern (private und öffentliche Nachrichten) , notice (Server und Kanal)
|
||||
1: Nachrichten von Usern (private und öffentliche Nachrichten), notice (Server und Kanal)
|
||||
2: Wechsel von Nicks (/nick)
|
||||
3: Nachrichten vom Server
|
||||
4: join/part/quit Nachrichten
|
||||
|
||||
@@ -1845,6 +1845,50 @@
|
||||
** Standardwert: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
|
||||
// end::fifo_options[]
|
||||
|
||||
// tag::typing_options[]
|
||||
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
|
||||
** Beschreibung: pass:none[Anzahl der Sekunden, nachdem der Pausenstatus gesetzt wurde: wenn erreicht, wird der Tippstatus entfernt]
|
||||
** Typ: integer
|
||||
** Werte: 1 .. 2147483647
|
||||
** Standardwert: `+30+`
|
||||
|
||||
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
|
||||
** Beschreibung: pass:none[Anzahl der Sekunden nach Setzen des Tippstatuses: wenn erreicht, wird der Tipptatus entfernt]
|
||||
** Typ: integer
|
||||
** Werte: 1 .. 2147483647
|
||||
** Standardwert: `+6+`
|
||||
|
||||
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
|
||||
** Beschreibung: pass:none[Anzahl der Sekunden nach Eingabe des letzten Zeichens: wenn erreicht, wird der Schreibstatus "pausiert" und es werden keine Schreibsignale mehr gesendet]
|
||||
** Typ: integer
|
||||
** Werte: 1 .. 2147483647
|
||||
** Standardwert: `+10+`
|
||||
|
||||
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
|
||||
** Beschreibung: pass:none[Tippfunktion für andere Nicks aktiviert (Anzeige von Tippinfos für Nicks, die im aktuellen Buffer schreiben)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
|
||||
** Beschreibung: pass:none[Tippfunktion für eigene Nachrichten aktiviert (Schreibinformationen an andere Benutzer senden)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
|
||||
** Beschreibung: pass:none[Mindestanzahl von Zeichen in der Nachricht, um das Senden von Tippsignalen auszulösen]
|
||||
** Typ: integer
|
||||
** Werte: 1 .. 2147483647
|
||||
** Standardwert: `+4+`
|
||||
|
||||
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
|
||||
** Beschreibung: pass:none[maximale Anzahl von Zeichen, die im Bar-Item "typing" angezeigt werden (0 = Inhalt nicht abschneiden)]
|
||||
** Typ: integer
|
||||
** Werte: 0 .. 2147483647
|
||||
** Standardwert: `+0+`
|
||||
// end::typing_options[]
|
||||
|
||||
// tag::xfer_options[]
|
||||
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
|
||||
** Beschreibung: pass:none[Textfarbe für Status: "abgebrochen"]
|
||||
@@ -2214,6 +2258,12 @@
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"%a, %d %b %Y %T %z"+`
|
||||
|
||||
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
|
||||
** Beschreibung: pass:none[ACCOUNT Nachrichten anzeigen, die empfangen wurden, wenn die Funktion account-notify aktiviert ist]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.display_away]] *irc.look.display_away*
|
||||
** Beschreibung: pass:none[zeigt eine Nachricht an, sobald der Abwesenheitsstatus ein- bzw. ausgeschaltet wird (off: zeigt/sendet keine Nachricht, local: eine Nachricht wird lokal angezeigt, channel: sendet eine Nachricht an die Kanäle)]
|
||||
** Typ: integer
|
||||
@@ -2238,6 +2288,12 @@
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
|
||||
** Beschreibung: pass:none[zusätzliche Informationen in den JOIN-Nachrichten anzeigen: Kontoname und richtiger Name (Funktion extended-join muss aktiviert sein)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.display_host_join]] *irc.look.display_host_join*
|
||||
** Beschreibung: pass:none[zeigt den Host innerhalb einer join Nachricht an]
|
||||
** Typ: boolesch
|
||||
@@ -2508,6 +2564,18 @@
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
|
||||
** Beschreibung: pass:none[Nicks in der Bar-Item "typing" anzeigen, die in dem Kanal tippen (Option typing.look.enabled_nicks muss aktiviert sein und die Fähigkeit "message-tags" muss auf dem Server aktiviert sein)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
|
||||
** Beschreibung: pass:none[sendet den eigenen Tippstatus an Kanäle, damit andere Benutzer sehen, wenn Sie eine Nachricht schreiben (Option typing.look.enabled_self muss aktiviert sein und die Fähigkeit "message-tags" muss auf dem Server aktiviert sein)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
|
||||
** Beschreibung: pass:none[Multiplikator für die Verzögerung bei der automatischen Wiederverbindung zum Server (1 = immer die selbe Verzögerung nutzen, 2 = Verzögerung*2 für jeden weiteren Versuch, usw.)]
|
||||
** Typ: integer
|
||||
@@ -2665,10 +2733,10 @@
|
||||
** Standardwert: `+25+`
|
||||
|
||||
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von erweiterten Client-Fähigkeiten ("client capabilities"), welche vom Server angeboten und genutzt werden sollen (siehe /help cap um eine Liste von Fähigkeiten zu erhalten die von WeeChat unterstützt werden) (Beispiel: "away-notify,multi-prefix")]
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von erweiterten Client-Fähigkeiten ("client capabilities"), welche vom Server angeboten und genutzt werden sollen (siehe /help cap um eine Liste von Fähigkeiten zu erhalten die von WeeChat unterstützt werden); "*" aktiviert standardmäßig alle Funktionen (die sowohl vom Server als auch von WeeChat unterstützt werden); Platzhalter "*" ist erlaubt; eine Fähigkeit, die mit "!" beginnt, wird ignoriert (Beispiel: "*,!account-*,!extended-join")]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
** Standardwert: `+"*"+`
|
||||
|
||||
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
|
||||
** Beschreibung: pass:none[Teil der IRC Nachricht (empfangen oder gesendet) die zum Zielzeichensatz dekodiert/kodiert werden soll; message = die komplette IRC Nachricht (Standard), channel = beginnend mit dem Kanalnamen (sofern dieser gefunden wird, ansonsten Fallback auf text), text = beginnend mit dem Nachrichtentext (dieser Wert sollte ausprobiert werden, falls es Probleme bei der Kodierung des Kanalnamens geben sollte)]
|
||||
@@ -2770,7 +2838,7 @@
|
||||
** Beschreibung: pass:none[auszuführende Aktion falls die SASL Authentifizierung fehlschlägt: "continue" ignoriert das Problem welches bei der Authentifizierung aufgetreten ist, "reconnect" versucht erneut eine Verbindung herzustellen, "disconnect" trennt die Verbindung zum Server (siehe Option irc.network.sasl_fail_unavailable)]
|
||||
** Typ: integer
|
||||
** Werte: continue, reconnect, disconnect
|
||||
** Standardwert: `+continue+`
|
||||
** Standardwert: `+reconnect+`
|
||||
|
||||
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
|
||||
** Beschreibung: pass:none[Datei mit privatem ECC-Schlüssel für den Mechanismus "ecdsa-nist256p-challenge" (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
@@ -2779,9 +2847,9 @@
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
|
||||
** Beschreibung: pass:none[Verfahren welches bei einer SASL Authentifizierung angewandt werden soll: "plain" Passwort wird im Klartext gesendet, "scram-sha-1" für SCRAM-Authentifizierung mit SHA-1-Digest-Algorithmus, "scram-sha-256" für SCRAM-Authenrifizierung mit SHA-256 Digest-Algorithmus, "scram-sha-512" für SCRAM-Authentifizierung mit SHA-512 Digest-Algorithmus, "ecdsa-nist256p-challenge" für öffentlich/private Schlüsselmethode, "external" SSL Zertifikat welches auf Client Seite vorliegt wird verwendet, "dh-blowfish" Passwort wird mittels blowfish verschlüsselt (unsicher, wird nicht empfohlen), "dh-aes" Passwort wird mittels AES verschlüsselt (unsicher, wird nicht empfohlen)]
|
||||
** Beschreibung: pass:none[Verfahren welches bei einer SASL Authentifizierung angewandt werden soll: "plain" Passwort wird im Klartext gesendet, "scram-sha-1" für SCRAM-Authentifizierung mit SHA-1-Digest-Algorithmus, "scram-sha-256" für SCRAM-Authenrifizierung mit SHA-256 Digest-Algorithmus, "scram-sha-512" für SCRAM-Authentifizierung mit SHA-512 Digest-Algorithmus, "ecdsa-nist256p-challenge" für öffentlich/private Schlüsselmethode, "external" ein SSL Zertifikat welches auf Client Seite vorliegt wird verwendet]
|
||||
** Typ: integer
|
||||
** Werte: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes
|
||||
** Werte: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
|
||||
** Standardwert: `+plain+`
|
||||
|
||||
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
|
||||
@@ -3075,34 +3143,6 @@
|
||||
** Standardwert: `+""+`
|
||||
// end::relay_options[]
|
||||
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::guile_options[]
|
||||
* [[option_guile.look.check_license]] *guile.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
@@ -3117,19 +3157,33 @@
|
||||
** Standardwert: `+on+`
|
||||
// end::guile_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::tcl_options[]
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::perl_options[]
|
||||
* [[option_perl.look.check_license]] *perl.look.check_license*
|
||||
@@ -3159,20 +3213,6 @@
|
||||
** Standardwert: `+on+`
|
||||
// end::php_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::python_options[]
|
||||
* [[option_python.look.check_license]] *python.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
@@ -3187,6 +3227,34 @@
|
||||
** Standardwert: `+on+`
|
||||
// end::python_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::tcl_options[]
|
||||
|
||||
// tag::script_options[]
|
||||
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
|
||||
** Beschreibung: pass:none[Farbe in der der Status "autoloaded" ("a") dargestellt werden soll]
|
||||
|
||||
@@ -86,6 +86,9 @@ $HOME/.config/weechat/tcl.conf::
|
||||
$HOME/.config/weechat/trigger.conf::
|
||||
Konfigurationsdatei für _trigger_ Erweiterung
|
||||
|
||||
$HOME/.config/weechat/typing.conf::
|
||||
Konfigurationsdatei für _typing_ Erweiterung
|
||||
|
||||
$HOME/.config/weechat/xfer.conf::
|
||||
Konfigurationsdatei für _xfer_ Erweiterung
|
||||
|
||||
|
||||
@@ -441,7 +441,7 @@ Natürlich ist das möglich:
|
||||
[[timezone]]
|
||||
=== Wie kann ich die Zeitzone ändern?
|
||||
|
||||
Es gibt in WeeChat keine Option um die Zeitzone einzustellen. Die
|
||||
Es gibt in WeeChat keine Option um die Zeitzone einzustellen. Die
|
||||
Umgebungsvariable `TZ` muss auf einen entsprechenden Wert eingestellt werden.
|
||||
Am Besten machen Sie dies in Ihrer Shell-Initialisierungsdatei oder in der
|
||||
Befehlszeile, bevor Sie WeeChat starten:
|
||||
@@ -559,9 +559,10 @@ Der bracketed paste Modus kann wie folgt deaktiviert werden:
|
||||
[[small_terminal]]
|
||||
=== Wie kann ich die Anzeige bei sehr kleinen Terminalgrößen (wie 80 x 25) optimieren, um keinen Platz zu verschwenden?
|
||||
|
||||
Sie können die seitlichen Bars (Buflist und Nicklist) entfernen und das Zeitformat im Buffer anpassen,
|
||||
sodass nur Stunden und Sekunden angezeigt werden. Die Ausrichtung von Nachrichten sollte deaktiviert
|
||||
und der Präfix/Suffix für Nicks gesetzt werden:
|
||||
Die seitlichen Bars (buflist und nicklist) können deaktiviert werden, die Datums-
|
||||
anzeige sollte nur Stunden und Minuten darstellen, die Ausrichtung von Nach-
|
||||
richten sollte ebenfalls deaktiviert werden und es sollte der Nick mit einen
|
||||
Präfix und Suffix vesehen werden:
|
||||
|
||||
----
|
||||
/set buflist.look.enabled off
|
||||
@@ -1173,6 +1174,14 @@ $ cd ~/.cache/weechat/script
|
||||
$ curl -O https://weechat.org/files/plugins.xml.gz
|
||||
----
|
||||
|
||||
Wenn Sie macOS ausführen und die heruntergeladene Datei eine Größe von 0 Byte hat,
|
||||
versuchen Sie, diese Variable in Ihrer Shell-Initialisierungsdatei oder auf der
|
||||
Befehlszeile zu setzen. Bevor Sie WeeChat starten:
|
||||
|
||||
----
|
||||
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
|
||||
----
|
||||
|
||||
[[spell_dictionaries]]
|
||||
=== Ich habe aspell Wörterbücher auf mein System installiert. Wie kann ich diese nutzen, ohne WeeChat neu starten zu müssen?
|
||||
|
||||
|
||||
@@ -1304,6 +1304,10 @@ Das Ergebnis ist eine Hashtabelle mit folgenden Schlüsseln
|
||||
Tags in der Nachricht (kann leer sein). |
|
||||
`+time=2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| tag_xxx | 3.3 |
|
||||
Wert des Tags "xxx" ohne Escapezeichen (ein Schlüssel pro Tag). |
|
||||
`+2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| message_without_tags | 0.4.0 |
|
||||
Die IRC Nachricht ohne Tags (wie eine Nachricht ohne Tags). |
|
||||
`+:nick!user@host PRIVMSG #weechat :hello!+`
|
||||
@@ -1360,10 +1364,12 @@ Das Ergebnis ist eine Hashtabelle mit folgenden Schlüsseln
|
||||
----
|
||||
dict = weechat.info_get_hashtable(
|
||||
"irc_message_parse",
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
|
||||
# dict == {
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z",
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
|
||||
# "tag_time": "2015-06-27T16:40:35.000Z",
|
||||
# "tag_tag2": "value space",
|
||||
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
||||
# "nick": "nick",
|
||||
# "user": "user",
|
||||
@@ -1372,10 +1378,10 @@ dict = weechat.info_get_hashtable(
|
||||
# "channel": "#weechat",
|
||||
# "arguments": "#weechat :hello!",
|
||||
# "text": "hello!",
|
||||
# "pos_command": "47",
|
||||
# "pos_arguments": "55",
|
||||
# "pos_channel": "55",
|
||||
# "pos_text": "65",
|
||||
# "pos_command": "65",
|
||||
# "pos_arguments": "73",
|
||||
# "pos_channel": "73",
|
||||
# "pos_text": "83",
|
||||
# }
|
||||
----
|
||||
|
||||
|
||||
@@ -1,148 +0,0 @@
|
||||
= WeeChat Anleitung für Testpersonen
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: de
|
||||
:toc: left
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
:sectnums:
|
||||
:docinfo1:
|
||||
|
||||
|
||||
Übersetzer:
|
||||
|
||||
* Juergen Descher <jhdl@gmx.net>, 2009
|
||||
* Nils Görs <weechatter@arcor.de>, 2009-2016
|
||||
|
||||
|
||||
[[purpose]]
|
||||
== Intention
|
||||
|
||||
Viele dankbare Anwender fragen uns wie sie bei der Entwicklung von WeeChat
|
||||
helfen können. Der einfachste (aber auch der kniffligste) Weg uns zu helfen ist:
|
||||
testen!
|
||||
|
||||
Testen ist ein sehr wichtiger Teil der Programmentwicklung und sollte daher
|
||||
nicht unterbewertet werden. Wenn neue Funktionen implementiert wurden dann
|
||||
müssen diese getestet werden. Für manche Funktionen gibt es sehr viele
|
||||
verschiedene Problemstellungen, oder diese sind äußerst Umfangreich. Dadurch
|
||||
können die Entwickler nicht jede einzelne Variante ausprobieren.
|
||||
|
||||
Ein Beispiel: Eine berüchtigte Zeichensatz-Erweiterung wurde in WeeChat 0.2.2
|
||||
eingeführt. Keiner von uns, Entwickler, Mithelfende und Tester, nutzten Channels
|
||||
in denen länderspezifische Zeichen im eigenen Namen Verwendung fanden. Somit wurde
|
||||
die Version 0.2.2 freigegeben und wir bekamen daraufhin eine Flut von Beschwerden
|
||||
durch russischen User, bei denen der Fehler sichtbar war. Hätten wir mehr Tester,
|
||||
dann sollte so etwas nicht mehr passieren.
|
||||
|
||||
Eine stabile Version von WeeChat zu testen bringt uns leider nicht weiter da die
|
||||
Entwickler in der Zwischenzeit neue Funktionen implementiert haben und vermutlich
|
||||
alte Fehler schon behoben wurden.
|
||||
|
||||
|
||||
[[prepare_system]]
|
||||
== Bereite Dein System vor
|
||||
|
||||
Es wäre uns schon sehr damit geholfen wenn Du Linux _core_ Dateien aktivieren würdest.
|
||||
Falls WeeChat abstürzen sollte wird eine Datei Namens _core_ erzeugt. Diese Datei
|
||||
beinhaltet viele nützliche Debug-Informationen um das genaue Problem in WeeChat
|
||||
zu lokalisieren.
|
||||
|
||||
Falls Du die _bash_ als shell benutzt, dann ergänze Deine _~/.bashrc_ durch folgende
|
||||
Zeile:
|
||||
|
||||
----
|
||||
ulimit -c unlimited
|
||||
----
|
||||
|
||||
|
||||
[[download]]
|
||||
== Besorge Dir die Entwickler-Version
|
||||
|
||||
aktueller Programmcode (mit den aktuellen Fehlern und Funktionen) ist im GIT Repository
|
||||
gespeichert.
|
||||
|
||||
Du könntest Dich dazu entscheiden es manuell zu bauen (empfohlen):
|
||||
|
||||
* die GIT Version kann parallel zur stabilen Version kompiliert und installiert
|
||||
werden.
|
||||
* Du benötigst keine Root-Rechte, und opfern brauchst Du Deine stabile Version
|
||||
von WeeChat auch nicht.
|
||||
|
||||
[[get_sources]]
|
||||
=== Beschaffe und baue die Quellen
|
||||
|
||||
Erstelle zuerst einen neuen Ordner, z.B. _weechat-git_:
|
||||
|
||||
----
|
||||
$ mkdir ~/weechat-git
|
||||
$ cd ~/weechat-git
|
||||
----
|
||||
|
||||
Falls Du git installiert hast, clone das git Repository (empfohlen):
|
||||
|
||||
----
|
||||
$ git clone https://github.com/weechat/weechat.git
|
||||
$ cd weechat
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Um auf den aktuellen Stand zu kommen verwendest Du z.B. `git pull` in
|
||||
diesem Ordner.
|
||||
|
||||
Ansonsten kannst Du das _Entwickler-Paket_ herunterladen und entpacken:
|
||||
|
||||
----
|
||||
$ wget https://weechat.org/files/src/weechat-devel.tar.bz2
|
||||
$ tar xvjf weechat-devel.tar.bz2
|
||||
$ cd weechat-devel
|
||||
----
|
||||
|
||||
Um die Quellen zu übersetzen, wird CMake empfohlen:
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/weechat-git -DWEECHAT_HOME=~/.weechat-dev -DCMAKE_BUILD_TYPE=Debug
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
Falls Du CMake nicht hast, ist es auch möglich die autotools zu nutzen:
|
||||
|
||||
----
|
||||
$ ./autogen.sh
|
||||
$ ./configure --prefix=$HOME/weechat-git WEECHAT_HOME=~/.weechat-dev
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
[[install_binary_package]]
|
||||
=== Installieren des Programm-Paketes
|
||||
|
||||
Abhängig Deiner Linux Distribution:
|
||||
|
||||
* Debian: https://weechat.org/download/debian
|
||||
* Gentoo: https://weechat.org/download
|
||||
* ArchLinux: PKGBUILD von https://aur.archlinux.org/
|
||||
* andere: Wissen wir nicht! Eheh.
|
||||
|
||||
|
||||
[[run]]
|
||||
== WeeChat starten
|
||||
|
||||
Die Befehlszeile lautet:
|
||||
|
||||
----
|
||||
$ ~/weechat-git/bin/weechat
|
||||
----
|
||||
|
||||
Immer noch munter? Dann solltest Du jetzt das bekannte Interface sehen und nun
|
||||
prahle vor Anderen, dass Du die neueste WeeChat-Version verwendest :)
|
||||
|
||||
Solltest Du nun ein merkwürdiges Verhalten bemerken (es können diverse Probleme
|
||||
oder Abstürze auftreten oder einfach Dein Bier überkochen) zögere nicht, komme
|
||||
in den Channel _#weechat_ auf _irc.libera.chat_ (A.d.Ü.: englischsprachig) und
|
||||
berichte uns darüber.
|
||||
|
||||
Auch falls alles korrekt funktionieren sollte gib uns trotzdem Bescheid, wir
|
||||
brauchen Deine Rückmeldung!
|
||||
+2229
-1766
File diff suppressed because it is too large
Load Diff
@@ -81,6 +81,7 @@ LOCALE_LIST = (
|
||||
'it_IT',
|
||||
'ja_JP',
|
||||
'pl_PL',
|
||||
'sr_RS',
|
||||
)
|
||||
|
||||
# all commands/options/.. of following plugins will produce a file
|
||||
@@ -114,6 +115,7 @@ PLUGIN_LIST = {
|
||||
'spell': 'o',
|
||||
'trigger': 'o',
|
||||
'xfer': 'co',
|
||||
'typing': 'o',
|
||||
}
|
||||
|
||||
# options to ignore
|
||||
|
||||
+211
-3
@@ -3,36 +3,244 @@
|
||||
Copyright (C) 2016-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
-->
|
||||
<style>
|
||||
#header,#content,#footnotes,#footer {
|
||||
|
||||
/* themes/colors */
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
/* dark theme */
|
||||
:root {
|
||||
--body-bg-color: #1a1a1a;
|
||||
--body-color: #ddd;
|
||||
--body-font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
|
||||
--link-color: #8aceff;
|
||||
--table-thead-tfoot: #252525;
|
||||
--th-color: #fff;
|
||||
--toc-bg-color: #252525;
|
||||
--color-header1: #ddd;
|
||||
--color-header2: #da8975;
|
||||
--header-details-color: #aaa;
|
||||
--border: 1px solid #444;
|
||||
--code-bg-color: #252525;
|
||||
--pre-bg-color: #202020;
|
||||
--pre-code-bg-color: #202020;
|
||||
--keyseq-color: #777;
|
||||
--kbd-bg-color: #252525;
|
||||
--kbd-border: 1px solid #333;
|
||||
--kbd-box-shadow: 0 1px 0 rgba(0, 0, 0, .2), inset 0 0 0 .1em #2c2c2c;
|
||||
--icon-note-color: #4d7cc6;
|
||||
--icon-tip-color: #fff;
|
||||
--icon-warning-color: #f39c12;
|
||||
--icon-caution-color: #bf3400;
|
||||
--icon-important-color: #f44336;
|
||||
--mark-bg-color: #007;
|
||||
}
|
||||
}
|
||||
|
||||
@media (not (prefers-color-scheme: dark)), (prefers-color-scheme: light) {
|
||||
/* light theme */
|
||||
:root {
|
||||
--body-bg-color: ##fff;
|
||||
--body-color: #353535;
|
||||
--body-font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
|
||||
--link-color: #1d4b8f;
|
||||
--table-thead-tfoot: #f7f8f7;
|
||||
--th-color: #000;
|
||||
--toc-bg-color: #f8f8f7;
|
||||
--color-header1: #000;
|
||||
--color-header2: #ba3925;
|
||||
--header-details-color: #797979;
|
||||
--border: 1px solid #dddddf;
|
||||
--code-bg-color: #f7f7f8;
|
||||
--keyseq-color: #333c;
|
||||
--pre-bg-color: #f7f7f8;
|
||||
--pre-code-bg-color: #202020;
|
||||
--kbd-bg-color: #f7f7f7;
|
||||
--kbd-border: 1px solid #ccc;
|
||||
--kbd-box-shadow: 0 1px 0 rgba(0, 0, 0, .2), inset 0 0 0 .1em #fff;
|
||||
--icon-note-color: #19407c;
|
||||
--icon-tip-color: #111;
|
||||
--icon-warning-color: #bf6900;
|
||||
--icon-caution-color: #ff0000;
|
||||
--icon-important-color: #bf0000;
|
||||
--mark-bg-color: #9df;
|
||||
}
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: var(--body-bg-color);
|
||||
color: var(--body-color);
|
||||
font-family: var(--body-font);
|
||||
}
|
||||
|
||||
h1 {
|
||||
color: var(--color-header1) !important;
|
||||
}
|
||||
|
||||
h2, h3, h4, h5, h6 {
|
||||
color: var(--color-header2) !important;
|
||||
}
|
||||
|
||||
h1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 {
|
||||
font-family: var(--body-font);
|
||||
}
|
||||
|
||||
a:link, a:visited, #header .details span.email a {
|
||||
color: var(--link-color);
|
||||
}
|
||||
|
||||
table thead, table tfoot {
|
||||
background: var(--table-thead-tfoot) !important;
|
||||
}
|
||||
|
||||
table.tableblock, th.tableblock, td.tableblock {
|
||||
border: var(--border);
|
||||
}
|
||||
|
||||
th {
|
||||
color: var(--th-color) !important;
|
||||
}
|
||||
|
||||
td {
|
||||
background-color: var(--body-bg-color);
|
||||
color: var(--body-color) !important;
|
||||
}
|
||||
|
||||
#toc.toc2 {
|
||||
background-color: var(--toc-bg-color);
|
||||
border-right: none;
|
||||
}
|
||||
|
||||
#toc.toc2 > ul {
|
||||
font-size: .9em;
|
||||
}
|
||||
|
||||
@media screen and (max-width:767px) {
|
||||
#toc.toc2 {
|
||||
background-color: var(--body-bg-color);
|
||||
}
|
||||
}
|
||||
|
||||
p, .paragraph.lead > p, #preamble > .sectionbody > [class="paragraph"]:first-of-type p, #toctitle, .title {
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
#header .details {
|
||||
border-bottom: var(--border);
|
||||
color: var(--header-details-color);
|
||||
}
|
||||
|
||||
code, .prettyprint {
|
||||
background-color: var(--code-bg-color) !important;
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
pre > code {
|
||||
background-color: var(--pre-code-bg-color) !important;
|
||||
}
|
||||
|
||||
.keyseq {
|
||||
color: var(--keyseq-color);
|
||||
}
|
||||
|
||||
kbd {
|
||||
background-color: var(--kbd-bg-color) !important;
|
||||
border: var(--kbd-border) !important;
|
||||
box-shadow: var(--kbd-box-shadow);
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
.literalblock pre, .listingblock > .content > pre:not(.highlight), .listingblock > .content > pre[class="highlight"], .listingblock > .content > pre[class^="highlight "] {
|
||||
background-color: var(--pre-bg-color);
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
.sect1 + .sect1 {
|
||||
border-top: var(--border);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-note::before {
|
||||
color: var(--icon-note-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-tip::before {
|
||||
color: var(--icon-tip-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-warning::before {
|
||||
color: var(--icon-warning-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-caution::before {
|
||||
color: var(--icon-caution-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-important::before {
|
||||
color: var(--icon-important-color);
|
||||
}
|
||||
|
||||
.admonitionblock > table td.content {
|
||||
border-left: var(--border);
|
||||
}
|
||||
|
||||
mark {
|
||||
background-color: var(--mark-bg-color);
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
/* syntax highlighting tuning */
|
||||
|
||||
pre.pygments .tok-cp {
|
||||
color: #ed4848;
|
||||
}
|
||||
|
||||
pre.pygments .tok-nc, pre.pygments .tok-nf {
|
||||
color: #649fef;
|
||||
}
|
||||
|
||||
pre.pygments .tok-gu, pre.pygments .tok-nc, pre.pygments .tok-nn {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* asciidoctor styles tuning */
|
||||
|
||||
#header, #content, #footnotes, #footer {
|
||||
max-width: none;
|
||||
padding-left: 3em;
|
||||
padding-right: 3em;
|
||||
}
|
||||
|
||||
#header #revnumber {
|
||||
text-transform: none;
|
||||
}
|
||||
h1,h2,h3,h4,h5 {
|
||||
|
||||
h1, h2, h3, h4, h5 {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.literalblock pre {
|
||||
font-family: monospace, 'Courier New', Courier;
|
||||
line-height: normal;
|
||||
}
|
||||
|
||||
kbd {
|
||||
font-size: .9em;
|
||||
}
|
||||
|
||||
.keyseq {
|
||||
margin-left: .2em;
|
||||
margin-right: .2em;
|
||||
}
|
||||
|
||||
.tableblock kbd {
|
||||
margin-top: .2em;
|
||||
margin-bottom: .2em;
|
||||
}
|
||||
|
||||
.hex {
|
||||
padding: 0 .2em;
|
||||
border: 1px solid #88b;
|
||||
border: var(--border);
|
||||
margin: 0 .2em;
|
||||
font-family: monospace;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -122,19 +122,6 @@ if(ENABLE_DOC)
|
||||
add_custom_target(doc-quickstart-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# tester's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.en.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_tester.en.html"
|
||||
)
|
||||
add_custom_target(doc-tester-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# relay protocol
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.en.html
|
||||
|
||||
@@ -29,7 +29,6 @@ EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_scripting.en.adoc \
|
||||
weechat_faq.en.adoc \
|
||||
weechat_quickstart.en.adoc \
|
||||
weechat_tester.en.adoc \
|
||||
weechat_relay_protocol.en.adoc \
|
||||
weechat_dev.en.adoc \
|
||||
includes/autogen_api_completions.en.adoc \
|
||||
@@ -58,7 +57,6 @@ if DOC
|
||||
weechat_scripting.en.html \
|
||||
weechat_faq.en.html \
|
||||
weechat_quickstart.en.html \
|
||||
weechat_tester.en.html \
|
||||
weechat_relay_protocol.en.html \
|
||||
weechat_dev.en.html
|
||||
doc_install = install-doc
|
||||
@@ -92,10 +90,6 @@ weechat_faq.en.html: weechat_faq.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
weechat_quickstart.en.html: weechat_quickstart.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.en.html $(abs_top_srcdir)/doc/en/weechat_quickstart.en.adoc
|
||||
|
||||
# tester's guide
|
||||
weechat_tester.en.html: weechat_tester.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.en.html $(abs_top_srcdir)/doc/en/weechat_tester.en.adoc
|
||||
|
||||
# relay protocol
|
||||
weechat_relay_protocol.en.html: weechat_relay_protocol.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_relay_protocol.en.html $(abs_top_srcdir)/doc/en/weechat_relay_protocol.en.adoc
|
||||
|
||||
@@ -79,6 +79,8 @@ _last_nick_speaking_time_ (pointer, hdata: "irc_channel_speaking") +
|
||||
_modelists_ (pointer, hdata: "irc_modelist") +
|
||||
_last_modelist_ (pointer, hdata: "irc_modelist") +
|
||||
_join_smart_filtered_ (hashtable) +
|
||||
_typing_state_ (integer) +
|
||||
_typing_status_sent_ (time) +
|
||||
_buffer_ (pointer, hdata: "buffer") +
|
||||
_buffer_as_string_ (string) +
|
||||
_prev_channel_ (pointer, hdata: "irc_channel") +
|
||||
@@ -237,6 +239,8 @@ _sasl_scram_client_first_ (string) +
|
||||
_sasl_scram_salted_pwd_ (other) +
|
||||
_sasl_scram_salted_pwd_size_ (integer) +
|
||||
_sasl_scram_auth_message_ (string) +
|
||||
_sasl_temp_username_ (string) +
|
||||
_sasl_temp_password_ (string) +
|
||||
_is_connected_ (integer) +
|
||||
_ssl_connected_ (integer) +
|
||||
_disconnected_ (integer) +
|
||||
@@ -267,6 +271,10 @@ _chantypes_ (string) +
|
||||
_chanmodes_ (string) +
|
||||
_monitor_ (integer) +
|
||||
_monitor_time_ (time) +
|
||||
_clienttagdeny_ (string) +
|
||||
_clienttagdeny_count_ (integer) +
|
||||
_clienttagdeny_array_ (string, array_size: "clienttagdeny_count") +
|
||||
_typing_allowed_ (integer) +
|
||||
_reconnect_delay_ (integer) +
|
||||
_reconnect_start_ (time) +
|
||||
_command_time_ (time) +
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|===
|
||||
| Plugin | Name | Description | Hashtable (input) | Hashtable (output)
|
||||
|
||||
| irc | irc_message_parse | parse an IRC message | "message": IRC message, "server": server name (optional) | "tags": tags, "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
|
||||
| irc | irc_message_parse | parse an IRC message | "message": IRC message, "server": server name (optional) | "tags": tags, "tag_xxx": unescaped value of tag "xxx" (one key per tag), "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "param1" ... "paramN": parsed command parameters, "num_params": number of parsed command parameters, "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
|
||||
|
||||
| irc | irc_message_split | split an IRC message (to fit in 512 bytes by default) | "message": IRC message, "server": server name (optional) | "msg1" ... "msgN": messages to send (without final "\r\n"), "args1" ... "argsN": arguments of messages, "count": number of messages
|
||||
|
||||
|
||||
@@ -4,18 +4,26 @@
|
||||
//
|
||||
|
||||
// tag::plugins_priority[]
|
||||
. charset (15000)
|
||||
. logger (14000)
|
||||
. exec (13000)
|
||||
. trigger (12000)
|
||||
. spell (11000)
|
||||
. alias (10000)
|
||||
. buflist (9000)
|
||||
. fifo (8000)
|
||||
. charset (16000)
|
||||
. logger (15000)
|
||||
. exec (14000)
|
||||
. trigger (13000)
|
||||
. spell (12000)
|
||||
. alias (11000)
|
||||
. buflist (10000)
|
||||
. fifo (9000)
|
||||
. typing (8000)
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile, javascript, lua, perl, php, python, ruby, tcl (4000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
// end::plugins_priority[]
|
||||
|
||||
@@ -17,10 +17,11 @@ target: server name
|
||||
* `+allchan+`: execute a command on all channels of all connected servers
|
||||
|
||||
----
|
||||
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command>
|
||||
[-current] -include=<channel>[,<channel>...] <command>
|
||||
/allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
|
||||
[-current] [-parted] -include=<channel>[,<channel>...] <command>
|
||||
|
||||
-current: execute command for channels of current server only
|
||||
-parted: execute on parted channels only
|
||||
-exclude: exclude some channels (wildcard "*" is allowed)
|
||||
-include: include only some channels (wildcard "*" is allowed)
|
||||
command: command to execute (or text to send to buffer if command does not start with '/')
|
||||
@@ -41,6 +42,8 @@ Examples:
|
||||
/allchan -exclude=#weechat,#linux* hello
|
||||
say 'hello' on all channels beginning with #linux:
|
||||
/allchan -include=#linux* hello
|
||||
close all buffers with parted channels:
|
||||
/allchan -parted /close
|
||||
----
|
||||
|
||||
[[command_irc_allpv]]
|
||||
@@ -100,6 +103,26 @@ Examples:
|
||||
/allserv /whois $nick
|
||||
----
|
||||
|
||||
[[command_irc_auth]]
|
||||
* `+auth+`: authenticate with SASL
|
||||
|
||||
----
|
||||
/auth [<username> <password>]
|
||||
|
||||
username: SASL username (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
|
||||
password: SASL password or path to file with private key (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
|
||||
|
||||
If username and password are not provided, the values from server options "sasl_username" and "sasl_password" (or "sasl_key") are used.
|
||||
|
||||
Examples:
|
||||
authenticate with username/password defined in the server:
|
||||
/auth
|
||||
authenticate as a different user:
|
||||
/auth user2 password2
|
||||
authenticate as a different user with mechanism ecdsa-nist256p-challenge:
|
||||
/auth user2 ${weechat_config_dir}/ecdsa2.pem
|
||||
----
|
||||
|
||||
[[command_irc_ban]]
|
||||
* `+ban+`: ban nicks or hosts
|
||||
|
||||
@@ -129,7 +152,7 @@ Without argument, this command displays the ban list for current channel.
|
||||
|
||||
Without argument, "ls" and "list" are sent.
|
||||
|
||||
Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, multi-prefix, server-time, userhost-in-names.
|
||||
Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.
|
||||
|
||||
The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities).
|
||||
|
||||
@@ -808,6 +831,15 @@ mask: list only services matching this mask
|
||||
type: list only services of this type
|
||||
----
|
||||
|
||||
[[command_irc_setname]]
|
||||
* `+setname+`: set real name
|
||||
|
||||
----
|
||||
/setname <realname>
|
||||
|
||||
realname: new real name
|
||||
----
|
||||
|
||||
[[command_irc_squery]]
|
||||
* `+squery+`: deliver a message to a service
|
||||
|
||||
@@ -1271,7 +1303,7 @@ Examples:
|
||||
/debug list
|
||||
set <plugin> <level>
|
||||
dump [<plugin>]
|
||||
buffer|color|infolists|memory|tags|term|windows
|
||||
buffer|color|infolists|libs|certs|memory|tags|term|windows
|
||||
mouse|cursor [verbose]
|
||||
hdata [free]
|
||||
time <command>
|
||||
@@ -1289,6 +1321,7 @@ Examples:
|
||||
hooks: display infos about hooks
|
||||
infolists: display infos about infolists
|
||||
libs: display infos about external libraries used
|
||||
certs: display number of loaded trusted certificate authorities
|
||||
memory: display infos about memory usage
|
||||
mouse: toggle debug for mouse
|
||||
tags: display tags for lines
|
||||
@@ -1342,27 +1375,32 @@ To force a string comparison, you can add double quotes around each expression,
|
||||
|
||||
Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
|
||||
1. the string itself without evaluation (format: "raw:xxx")
|
||||
2. an evaluated sub-string (format: "eval:xxx")
|
||||
3. an evaluated condition (format: "eval_cond:xxx")
|
||||
4. a string with escaped chars (format: "esc:xxx" or "\xxx")
|
||||
5. a string with chars to hide (format: "hide:char,string")
|
||||
6. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
|
||||
2. a user-defined variable (format: "name")
|
||||
3. an evaluated sub-string (format: "eval:xxx")
|
||||
4. an evaluated condition (format: "eval_cond:xxx")
|
||||
5. a string with escaped chars (format: "esc:xxx" or "\xxx")
|
||||
6. a string with chars to hide (format: "hide:char,string")
|
||||
7. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
|
||||
or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
|
||||
7. a reversed string (format: "rev:xxx" or "revscr:xxx")
|
||||
8. a repeated string (format: "repeat:count,string")
|
||||
9. length of a string (format: "length:xxx" or "lengthscr:xxx")
|
||||
10. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
||||
11. a modifier (format: "modifier:name,data,string")
|
||||
12. an info (format: "info:name,arguments", arguments are optional)
|
||||
13. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
|
||||
14. current date/time (format: "date" or "date:format")
|
||||
15. an environment variable (format: "env:XXX")
|
||||
16. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
||||
17. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
|
||||
18. a translated string (format: "translate:xxx")
|
||||
19. an option (format: "file.section.option")
|
||||
20. a local variable in buffer
|
||||
21. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
|
||||
8. a reversed string (format: "rev:xxx" or "revscr:xxx")
|
||||
9. a repeated string (format: "repeat:count,string")
|
||||
10. length of a string (format: "length:xxx" or "lengthscr:xxx")
|
||||
11. split of a string (format: "split:number,separators,flags,xxx")
|
||||
12. split of shell argmuents (format: "split_shell:number,xxx")
|
||||
13. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
||||
14. a modifier (format: "modifier:name,data,string")
|
||||
15. an info (format: "info:name,arguments", arguments are optional)
|
||||
16. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
|
||||
17. current date/time (format: "date" or "date:format")
|
||||
18. an environment variable (format: "env:XXX")
|
||||
19. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
||||
20. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
|
||||
21. a random integer number (format: "random:min,max")
|
||||
22. a translated string (format: "translate:xxx")
|
||||
23. define a user variable (format: "define:name,value")
|
||||
24. an option (format: "file.section.option")
|
||||
25. a local variable in buffer
|
||||
26. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
|
||||
Format for hdata can be one of following:
|
||||
hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed)
|
||||
hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example:
|
||||
@@ -1374,29 +1412,39 @@ Format for hdata can be one of following:
|
||||
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".
|
||||
|
||||
Examples (simple strings):
|
||||
/eval -n ${raw:${info:version}} ==> ${info:version}
|
||||
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
|
||||
/eval -n ${info:version} ==> 0.4.3
|
||||
/eval -n ${env:HOME} ==> /home/user
|
||||
/eval -n ${weechat.look.scroll_amount} ==> 3
|
||||
/eval -n ${sec.data.password} ==> secret
|
||||
/eval -n ${window} ==> 0x2549aa0
|
||||
/eval -n ${window.buffer} ==> 0x2549320
|
||||
/eval -n ${window.buffer.full_name} ==> core.weechat
|
||||
/eval -n ${window.buffer.number} ==> 1
|
||||
/eval -n ${\t} ==> <tab>
|
||||
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
||||
/eval -n ${cut:3,+,test} ==> tes+
|
||||
/eval -n ${cut:+3,+,test} ==> te+
|
||||
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${translate:Plugin} ==> Extension
|
||||
/eval -n ${raw:${info:version}} ==> ${info:version}
|
||||
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
|
||||
/eval -n ${info:version} ==> 0.4.3
|
||||
/eval -n ${env:HOME} ==> /home/user
|
||||
/eval -n ${weechat.look.scroll_amount} ==> 3
|
||||
/eval -n ${sec.data.password} ==> secret
|
||||
/eval -n ${window} ==> 0x2549aa0
|
||||
/eval -n ${window.buffer} ==> 0x2549320
|
||||
/eval -n ${window.buffer.full_name} ==> core.weechat
|
||||
/eval -n ${window.buffer.number} ==> 1
|
||||
/eval -n ${\t} ==> <tab>
|
||||
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
||||
/eval -n ${cut:3,+,test} ==> tes+
|
||||
/eval -n ${cut:+3,+,test} ==> te+
|
||||
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${split:1,,,abc,def,ghi} ==> abc
|
||||
/eval -n ${split:-1,,,abc,def,ghi} ==> ghi
|
||||
/eval -n ${split:count,,,abc,def,ghi} ==> 3
|
||||
/eval -n ${split:random,,,abc,def,ghi} ==> def
|
||||
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
|
||||
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
|
||||
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${random:0,10} ==> 3
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${translate:Plugin} ==> Extension
|
||||
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
|
||||
|
||||
Examples (conditions):
|
||||
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
||||
@@ -1549,6 +1597,9 @@ list of actions:
|
||||
jump_previously_visited_buffer: jump to previously visited buffer
|
||||
jump_next_visited_buffer: jump to next visited buffer
|
||||
hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight)
|
||||
hotlist_remove_buffer: remove current buffer from hotlist
|
||||
hotlist_restore_buffer: restore latest hotlist removed in the current buffer
|
||||
hotlist_restore_all: restore latest hotlist removed in all buffers
|
||||
grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds)
|
||||
grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds)
|
||||
grab_mouse: grab mouse event code
|
||||
@@ -1644,6 +1695,8 @@ windows: store/apply only windows (buffer displayed by each window)
|
||||
Without argument, this command displays stored layouts.
|
||||
|
||||
The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit".
|
||||
|
||||
Note: the layout only remembers windows split and buffers numbers. It does not open buffers. That means for example you must still auto-join IRC channels to open the buffers, the saved layout only applies once the buffers are opened.
|
||||
----
|
||||
|
||||
[[command_weechat_mouse]]
|
||||
@@ -1693,21 +1746,26 @@ Examples:
|
||||
* `+plugin+`: list/load/unload plugins
|
||||
|
||||
----
|
||||
/plugin list|listfull [<name>]
|
||||
/plugin list [-o|-ol|-i|-il|<name>]
|
||||
listfull [<name>]
|
||||
load <filename> [<arguments>]
|
||||
autoload [<arguments>]
|
||||
reload [<name>|* [<arguments>]]
|
||||
unload [<name>]
|
||||
|
||||
list: list loaded plugins
|
||||
-o: send list of loaded plugins to buffer (string in English)
|
||||
-ol: send list of loaded plugins to buffer (translated string)
|
||||
-i: copy list of loaded plugins in command line (for sending to buffer) (string in English)
|
||||
-il: copy list of loaded plugins in command line (for sending to buffer) (translated string)
|
||||
name: a plugin name
|
||||
listfull: list loaded plugins (verbose)
|
||||
load: load a plugin
|
||||
filename: plugin (file) to load
|
||||
arguments: arguments given to plugin on load
|
||||
autoload: autoload plugins in system or user directory
|
||||
reload: reload a plugin (if no name given, unload all plugins, then autoload plugins)
|
||||
unload: unload a plugin (if no name given, unload all plugins)
|
||||
filename: plugin (file) to load
|
||||
name: a plugin name
|
||||
arguments: arguments given to plugin on load
|
||||
|
||||
Without argument, this command lists loaded plugins.
|
||||
----
|
||||
@@ -1935,6 +1993,32 @@ Examples:
|
||||
/set env ABC ""
|
||||
----
|
||||
|
||||
[[command_weechat_toggle]]
|
||||
* `+toggle+`: toggle value of a config option
|
||||
|
||||
----
|
||||
/toggle <option> [<value> [<value>...]]
|
||||
|
||||
option: name of an option
|
||||
value: possible values for the option (values are split like the shell command arguments: quotes can be used to preserve spaces at the beginning/end of values)
|
||||
|
||||
Behavior:
|
||||
- only an option of type boolean or string can be toggled without a value:
|
||||
- boolean: toggle between on/off according to current value
|
||||
- string: toggle between empty string and default value (works only if empty string is allowed for the option)
|
||||
- with a single value given, toggle between this value and the default value of option
|
||||
- with multiple values given, toggle between these values: the value used is the one following the current value of option; if the current value of option is not in list, the first value in the list is used
|
||||
- the special value "null" can be given, but only as first value in the list and without quotes around.
|
||||
|
||||
Examples:
|
||||
toggle display of time in chat area (without displaying the new value used):
|
||||
/mute /toggle weechat.look.buffer_time_format
|
||||
switch format of time in chat area (with seconds, without seconds, disabled):
|
||||
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
|
||||
toggle autojoin of #weechat channel on libera server:
|
||||
/toggle irc.server.libera.autojoin null #weechat
|
||||
----
|
||||
|
||||
[[command_weechat_unset]]
|
||||
* `+unset+`: unset/reset config options
|
||||
|
||||
|
||||
@@ -1845,6 +1845,50 @@
|
||||
** default value: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
|
||||
// end::fifo_options[]
|
||||
|
||||
// tag::typing_options[]
|
||||
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
|
||||
** description: pass:none[number of seconds after paused status has been set: if reached, the typing status is removed]
|
||||
** type: integer
|
||||
** values: 1 .. 2147483647
|
||||
** default value: `+30+`
|
||||
|
||||
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
|
||||
** description: pass:none[number of seconds after typing status has been set: if reached, the typing status is removed]
|
||||
** type: integer
|
||||
** values: 1 .. 2147483647
|
||||
** default value: `+6+`
|
||||
|
||||
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
|
||||
** description: pass:none[number of seconds after typing last char: if reached, the typing status becomes "paused" and no more typing signals are sent]
|
||||
** type: integer
|
||||
** values: 1 .. 2147483647
|
||||
** default value: `+10+`
|
||||
|
||||
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
|
||||
** description: pass:none[typing enabled for other nicks (display typing info for nicks typing in the current buffer)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
|
||||
** description: pass:none[typing enabled for self messages (send typing info to other users)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
|
||||
** description: pass:none[min number of chars in message to trigger send of typing signals]
|
||||
** type: integer
|
||||
** values: 1 .. 2147483647
|
||||
** default value: `+4+`
|
||||
|
||||
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
|
||||
** description: pass:none[max number of chars displayed in the bar item "typing" (0 = do not truncate content)]
|
||||
** type: integer
|
||||
** values: 0 .. 2147483647
|
||||
** default value: `+0+`
|
||||
// end::typing_options[]
|
||||
|
||||
// tag::xfer_options[]
|
||||
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
|
||||
** description: pass:none[text color for "aborted" status]
|
||||
@@ -2214,6 +2258,12 @@
|
||||
** values: any string
|
||||
** default value: `+"%a, %d %b %Y %T %z"+`
|
||||
|
||||
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
|
||||
** description: pass:none[display ACCOUNT messages received when capability account-notify is enabled]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_irc.look.display_away]] *irc.look.display_away*
|
||||
** description: pass:none[display message when (un)marking as away (off: do not display/send anything, local: display locally, channel: send action to channels)]
|
||||
** type: integer
|
||||
@@ -2238,6 +2288,12 @@
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
|
||||
** description: pass:none[display extra information in the JOIN messages: account name and real name (capability extended-join must be enabled)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_irc.look.display_host_join]] *irc.look.display_host_join*
|
||||
** description: pass:none[display host in join messages]
|
||||
** type: boolean
|
||||
@@ -2508,6 +2564,18 @@
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
|
||||
** description: pass:none[display nicks typing on the channel in bar item "typing" (option typing.look.enabled_nicks must be enabled and capability "message-tags" must be enabled on the server)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
|
||||
** description: pass:none[send self typing status to channels so that other users see when you are typing a message (option typing.look.enabled_self must be enabled and capability "message-tags" must be enabled on the server)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
|
||||
** description: pass:none[growing factor for autoreconnect delay to server (1 = always same delay, 2 = delay*2 for each retry, etc.)]
|
||||
** type: integer
|
||||
@@ -2665,10 +2733,10 @@
|
||||
** default value: `+25+`
|
||||
|
||||
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
|
||||
** description: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat) (example: "away-notify,multi-prefix")]
|
||||
** description: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat); "*" enables all capabilities by default (supported by both server and WeeChat); wildcard "*" is allowed; a capability beginning with "!" is excluded (example: "*,!account-*,!extended-join")]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
** default value: `+"*"+`
|
||||
|
||||
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
|
||||
** description: pass:none[part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)]
|
||||
@@ -2770,7 +2838,7 @@
|
||||
** description: pass:none[action to perform if SASL authentication fails: "continue" to ignore the authentication problem, "reconnect" to schedule a reconnection to the server, "disconnect" to disconnect from server (see also option irc.network.sasl_fail_unavailable)]
|
||||
** type: integer
|
||||
** values: continue, reconnect, disconnect
|
||||
** default value: `+continue+`
|
||||
** default value: `+reconnect+`
|
||||
|
||||
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
|
||||
** description: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
@@ -2779,9 +2847,9 @@
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
|
||||
** description: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL cert, "dh-blowfish" for blowfish crypted password (insecure, not recommended), "dh-aes" for AES crypted password (insecure, not recommended)]
|
||||
** description: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL certificate]
|
||||
** type: integer
|
||||
** values: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes
|
||||
** values: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
|
||||
** default value: `+plain+`
|
||||
|
||||
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
|
||||
@@ -3075,34 +3143,6 @@
|
||||
** default value: `+""+`
|
||||
// end::relay_options[]
|
||||
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::guile_options[]
|
||||
* [[option_guile.look.check_license]] *guile.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
@@ -3117,19 +3157,33 @@
|
||||
** default value: `+on+`
|
||||
// end::guile_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::tcl_options[]
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::perl_options[]
|
||||
* [[option_perl.look.check_license]] *perl.look.check_license*
|
||||
@@ -3159,20 +3213,6 @@
|
||||
** default value: `+on+`
|
||||
// end::php_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::python_options[]
|
||||
* [[option_python.look.check_license]] *python.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
@@ -3187,6 +3227,34 @@
|
||||
** default value: `+on+`
|
||||
// end::python_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::tcl_options[]
|
||||
|
||||
// tag::script_options[]
|
||||
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
|
||||
** description: pass:none[color for status "autoloaded" ("a")]
|
||||
|
||||
@@ -86,6 +86,9 @@ $HOME/.config/weechat/tcl.conf::
|
||||
$HOME/.config/weechat/trigger.conf::
|
||||
configuration file for _trigger_ plugin
|
||||
|
||||
$HOME/.config/weechat/typing.conf::
|
||||
configuration file for _typing_ plugin
|
||||
|
||||
$HOME/.config/weechat/xfer.conf::
|
||||
configuration file for _xfer_ plugin
|
||||
|
||||
|
||||
+126
-112
@@ -89,6 +89,7 @@ The main WeeChat directories are:
|
||||
| spell/ | Spell plugin.
|
||||
| tcl/ | Tcl scripting API.
|
||||
| trigger/ | Trigger plugin.
|
||||
| typing/ | Typing plugin.
|
||||
| xfer/ | Xfer plugin (IRC DCC file/chat).
|
||||
| tests/ | Tests.
|
||||
| scripts/ | Scripting API tests.
|
||||
@@ -294,6 +295,7 @@ WeeChat "core" is located in following directories:
|
||||
| irc-redirect.c | Redirection of IRC command output.
|
||||
| irc-sasl.c | SASL authentication with IRC server.
|
||||
| irc-server.c | I/O communication with IRC server.
|
||||
| irc-tag.c | Functions to manipulate IRC message tags.
|
||||
| irc-upgrade.c | Save/restore of IRC data when upgrading WeeChat.
|
||||
| javascript/ | JavaScript plugin.
|
||||
| weechat-js.cpp | Main JavaScript functions (load/unload scripts, execute JavaScript code).
|
||||
@@ -363,6 +365,11 @@ WeeChat "core" is located in following directories:
|
||||
| trigger-command.c | Trigger commands.
|
||||
| trigger-completion.c | Trigger completions.
|
||||
| trigger-config.c | Trigger config options (file trigger.conf).
|
||||
| typing/ | Typing plugin.
|
||||
| typing.c | Main typing functions.
|
||||
| typing-bar-item.c | Typing bar items.
|
||||
| typing-config.c | Typing config options (file typing.conf).
|
||||
| typing-status.c | Messages typing status on buffers.
|
||||
| xfer/ | Xfer plugin (IRC DCC file/chat).
|
||||
| xfer.c | Main xfer functions.
|
||||
| xfer-buffer.c | Xfer buffer.
|
||||
@@ -382,55 +389,61 @@ WeeChat "core" is located in following directories:
|
||||
|
||||
[width="100%",cols="2m,3",options="header"]
|
||||
|===
|
||||
| Path/file | Description
|
||||
| tests/ | Root of tests.
|
||||
| tests.cpp | Program used to run all tests.
|
||||
| scripts/ | Root of scripting API tests.
|
||||
| test-scripts.cpp | Program used to run the scripting API tests.
|
||||
| python/ | Python scripts to generate and run the scripting API tests.
|
||||
| testapigen.py | Python script generating scripts in all languages to test the scripting API.
|
||||
| testapi.py | Python script with scripting API tests, used by script testapigen.py.
|
||||
| unparse.py | Convert Python code to other languages, used by script testapigen.py.
|
||||
| unit/ | Root of unit tests.
|
||||
| test-plugins.cpp | Tests: plugins.
|
||||
| core/ | Root of unit tests for core.
|
||||
| test-core-arraylist.cpp | Tests: arraylists.
|
||||
| test-core-calc.cpp | Tests: calculation of expressions.
|
||||
| test-core-crypto.cpp | Tests: cryptographic functions.
|
||||
| test-core-dir.cpp | Tests: directory/file functions.
|
||||
| test-core-eval.cpp | Tests: evaluation of expressions.
|
||||
| test-core-hashtble.cpp | Tests: hashtables.
|
||||
| test-core-hdata.cpp | Tests: hdata.
|
||||
| test-core-hook.cpp | Tests: hooks.
|
||||
| test-core-infolist.cpp | Tests: infolists.
|
||||
| test-core-list.cpp | Tests: lists.
|
||||
| test-core-network.cpp | Tests: network functions.
|
||||
| test-core-secure.cpp | Tests: secured data.
|
||||
| test-core-signal.cpp | Tests: signals.
|
||||
| test-core-string.cpp | Tests: strings.
|
||||
| test-core-url.cpp | Tests: URLs.
|
||||
| test-core-utf8.cpp | Tests: UTF-8.
|
||||
| test-core-util.cpp | Tests: utility functions.
|
||||
| gui/ | Root of unit tests for interfaces.
|
||||
| test-gui-color.cpp | Tests: colors.
|
||||
| test-gui-line.cpp | Tests: lines.
|
||||
| test-gui-nick.cpp | Tests: nicks.
|
||||
| plugins/ | Root of unit tests for plugins.
|
||||
| irc/ | Root of unit tests for IRC plugin.
|
||||
| test-irc-channel.cpp | Tests: IRC channels.
|
||||
| test-irc-color.cpp | Tests: IRC colors.
|
||||
| test-irc-config.cpp | Tests: IRC configuration.
|
||||
| test-irc-ignore.cpp | Tests: IRC ignores.
|
||||
| test-irc-message.cpp | Tests: IRC messages.
|
||||
| test-irc-mode.cpp | Tests: IRC modes.
|
||||
| test-irc-nick.cpp | Tests: IRC nicks.
|
||||
| test-irc-protocol.cpp | Tests: IRC protocol.
|
||||
| test-irc-server.cpp | Tests: IRC server.
|
||||
| trigger/ | Root of unit tests for trigger plugin.
|
||||
| test-trigger.cpp | Tests: triggers.
|
||||
| relay/ | Root of unit tests for Relay plugin.
|
||||
| test-relay-auth.cpp | Tests: clients authentication.
|
||||
|
||||
| Path/file | Description
|
||||
| tests/ | Root of tests.
|
||||
| tests.cpp | Program used to run all tests.
|
||||
| scripts/ | Root of scripting API tests.
|
||||
| test-scripts.cpp | Program used to run the scripting API tests.
|
||||
| python/ | Python scripts to generate and run the scripting API tests.
|
||||
| testapigen.py | Python script generating scripts in all languages to test the scripting API.
|
||||
| testapi.py | Python script with scripting API tests, used by script testapigen.py.
|
||||
| unparse.py | Convert Python code to other languages, used by script testapigen.py.
|
||||
| unit/ | Root of unit tests.
|
||||
| test-plugins.cpp | Tests: plugins.
|
||||
| core/ | Root of unit tests for core.
|
||||
| test-core-arraylist.cpp | Tests: arraylists.
|
||||
| test-core-calc.cpp | Tests: calculation of expressions.
|
||||
| test-core-config-file.cpp | Tests: configuration files.
|
||||
| test-core-crypto.cpp | Tests: cryptographic functions.
|
||||
| test-core-dir.cpp | Tests: directory/file functions.
|
||||
| test-core-eval.cpp | Tests: evaluation of expressions.
|
||||
| test-core-hashtble.cpp | Tests: hashtables.
|
||||
| test-core-hdata.cpp | Tests: hdata.
|
||||
| test-core-hook.cpp | Tests: hooks.
|
||||
| test-core-infolist.cpp | Tests: infolists.
|
||||
| test-core-list.cpp | Tests: lists.
|
||||
| test-core-network.cpp | Tests: network functions.
|
||||
| test-core-secure.cpp | Tests: secured data.
|
||||
| test-core-signal.cpp | Tests: signals.
|
||||
| test-core-string.cpp | Tests: strings.
|
||||
| test-core-url.cpp | Tests: URLs.
|
||||
| test-core-utf8.cpp | Tests: UTF-8.
|
||||
| test-core-util.cpp | Tests: utility functions.
|
||||
| gui/ | Root of unit tests for interfaces.
|
||||
| test-gui-color.cpp | Tests: colors.
|
||||
| test-gui-line.cpp | Tests: lines.
|
||||
| test-gui-nick.cpp | Tests: nicks.
|
||||
| plugins/ | Root of unit tests for plugins.
|
||||
| irc/ | Root of unit tests for IRC plugin.
|
||||
| test-irc-buffer.cpp | Tests: IRC buffers.
|
||||
| test-irc-channel.cpp | Tests: IRC channels.
|
||||
| test-irc-color.cpp | Tests: IRC colors.
|
||||
| test-irc-config.cpp | Tests: IRC configuration.
|
||||
| test-irc-ignore.cpp | Tests: IRC ignores.
|
||||
| test-irc-message.cpp | Tests: IRC messages.
|
||||
| test-irc-mode.cpp | Tests: IRC modes.
|
||||
| test-irc-nick.cpp | Tests: IRC nicks.
|
||||
| test-irc-protocol.cpp | Tests: IRC protocol.
|
||||
| test-irc-sasl.cpp | Tests: SASL authentication with IRC protocol.
|
||||
| test-irc-server.cpp | Tests: IRC server.
|
||||
| trigger/ | Root of unit tests for trigger plugin.
|
||||
| test-trigger.cpp | Tests: triggers.
|
||||
| test-trigger-config.cpp | Tests: trigger configuration.
|
||||
| typing/ | Root of unit tests for typing plugin.
|
||||
| test-typing.cpp | Tests: typing.
|
||||
| test-typing-status.cpp | Tests: typing status.
|
||||
| relay/ | Root of unit tests for Relay plugin.
|
||||
| test-relay-auth.cpp | Tests: clients authentication.
|
||||
|===
|
||||
|
||||
[[documentation_translations]]
|
||||
@@ -452,7 +465,6 @@ Documentation files:
|
||||
| weechat_quickstart.XX.adoc | link:weechat_quickstart.en.html[Quickstart guide].
|
||||
| weechat_relay_protocol.XX.adoc | link:weechat_relay_protocol.en.html[Relay protocol] (for remote interfaces).
|
||||
| weechat_scripting.XX.adoc | link:weechat_scripting.en.html[Scripting guide].
|
||||
| weechat_tester.XX.adoc | link:weechat_tester.en.html[Tester's guide].
|
||||
| weechat_user.XX.adoc | link:weechat_user.en.html[User's guide].
|
||||
| includes/ | Files included in documentation.
|
||||
| autogen_api_completions.XX.adoc | Auto-generated file for Plugin API reference: completions (do *NEVER* update manually!).
|
||||
@@ -498,7 +510,7 @@ directory:
|
||||
|
||||
Example in C:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* weechat.c - core functions for WeeChat
|
||||
@@ -536,7 +548,7 @@ Some basic rules you *must* follow when you write C code:
|
||||
|
||||
Example:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* Checks if a string with boolean value is valid.
|
||||
@@ -567,7 +579,7 @@ foo ()
|
||||
Exception: in `for` loops, where variables like "i" or "n" are OK.
|
||||
* Initialize local variables after declaration, in body of function, example:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
void
|
||||
foo ()
|
||||
@@ -585,7 +597,7 @@ foo ()
|
||||
* Place curly brackets `+{ }+` alone on lines, and indent them with number of
|
||||
spaces used for line above opening curly bracket (the `if` in example):
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
if (nicks_count == 1)
|
||||
{
|
||||
@@ -596,7 +608,7 @@ if (nicks_count == 1)
|
||||
* Use empty lines to separate many different blocks inside functions, and if
|
||||
possible add a comment for each one, like this:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* Sends a message from out queue.
|
||||
@@ -639,7 +651,7 @@ irc_server_outqueue_send (struct t_irc_server *server)
|
||||
* Indent the `if` conditions, and use parentheses around conditions with an
|
||||
operator (not needed for single boolean), like this:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
if (something)
|
||||
{
|
||||
@@ -663,7 +675,7 @@ else
|
||||
|
||||
* Indent the `switch` statements like this:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
switch (string[0])
|
||||
{
|
||||
@@ -681,7 +693,7 @@ switch (string[0])
|
||||
|
||||
* Use `typedef` for function prototypes but not for structures:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
typedef int (t_hook_callback_fd)(void *data, int fd);
|
||||
|
||||
@@ -763,7 +775,7 @@ Structures have name _t_X_Y_ or _t_X_Y_Z_:
|
||||
|
||||
Example: an IRC nick (from _src/plugins/irc/irc-nick.h_):
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_irc_nick
|
||||
{
|
||||
@@ -793,7 +805,7 @@ _X_ is name of variable, using singular form).
|
||||
|
||||
Example: windows (from _src/gui/gui-window.c_):
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_gui_window *gui_windows = NULL; /* first window */
|
||||
struct t_gui_window *last_gui_window = NULL; /* last window */
|
||||
@@ -813,7 +825,7 @@ Naming convention for functions is the same as
|
||||
|
||||
Example: creation of a new window (from _src/gui/gui-window.c_):
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* Creates a new window.
|
||||
@@ -849,7 +861,7 @@ and next node.
|
||||
|
||||
Example: list of buffers (from _src/gui/gui-buffer.h_):
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_gui_buffer
|
||||
{
|
||||
@@ -864,7 +876,7 @@ struct t_gui_buffer
|
||||
|
||||
Then the two list pointers, to the head and tail of list:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_gui_buffer *gui_buffers = NULL; /* first buffer */
|
||||
struct t_gui_buffer *last_gui_buffer = NULL; /* last buffer */
|
||||
@@ -879,18 +891,10 @@ underline, ...) and colors on screen.
|
||||
All attributes/colors are prefixed with a char in string, which can be:
|
||||
|
||||
* _0x19_: color code (followed by color code(s))
|
||||
* _0x1A_: set attribute (followed by attribute on one char)
|
||||
* _0x1B_: remove attribute (followed by attribute on one char)
|
||||
* _0x1A_: set attribute (followed by raw attribute on one char)
|
||||
* _0x1B_: remove attribute (followed by raw attribute on one char)
|
||||
* _0x1C_: reset (nothing after)
|
||||
|
||||
Allowed attributes are (one or more chars):
|
||||
|
||||
* `+*+`: bold
|
||||
* `+!+`: reverse
|
||||
* `+/+`: italic
|
||||
* `+_+`: underline
|
||||
* `+|+`: keep attributes
|
||||
|
||||
Possible colors are:
|
||||
|
||||
* standard color: optional attributes + number on 2 digits
|
||||
@@ -899,45 +903,55 @@ Possible colors are:
|
||||
In following table, these conventions are used:
|
||||
|
||||
* `STD`: standard color (2 digits)
|
||||
* `(A)STD`: standard color with optional attributes (attributes + 2 digits)
|
||||
* `(ATTR)STD`: standard color with optional attributes (attributes + 2 digits)
|
||||
* `EXT`: extended color (`+@+` + 5 digits)
|
||||
* `(A)EXT`: extended color with optional attributes (`+@+` + attributes + 5 digits)
|
||||
* `ATTR`: one attribute char (`+*+`, `+!+`, `+/+`, `+_+` or `+|+`)
|
||||
* `(ATTR)EXT`: extended color with optional attributes (`+@+` + attributes + 5 digits)
|
||||
* `(ATTR)`: one or more attribute chars:
|
||||
** `+*+`: bold
|
||||
** `+!+`: reverse
|
||||
** `+/+`: italic
|
||||
** `+_+`: underline
|
||||
** `+|+`: keep attributes
|
||||
* `(a)`: one raw attribute char:
|
||||
** _0x01_: bold
|
||||
** _0x02_: reverse
|
||||
** _0x03_: italic
|
||||
** _0x04_: underline
|
||||
|
||||
All combinations are summarized in this table:
|
||||
|
||||
[width="100%",cols="4,2,2,8",options="header"]
|
||||
[width="100%",cols="4,3,2,8",options="header"]
|
||||
|===
|
||||
| Code | Example | Areas | Description
|
||||
| [hex]#19# + STD | [hex]#19# `+01+` | chat + bars | Set attributes and color using option, see table below.
|
||||
| [hex]#19# + EXT | [hex]#19# `+@00001+` | chat | Set color with a ncurses pair (used only on `/color` buffer).
|
||||
| [hex]#19# + "F" + (A)STD | [hex]#19# `+F*05+` | chat + bars | Set foreground (WeeChat color).
|
||||
| [hex]#19# + "F" + (A)EXT | [hex]#19# `+F@00214+` | chat + bars | Set foreground (extended color).
|
||||
| [hex]#19# + "B" + STD | [hex]#19# `+B05+` | chat + bars | Set background (WeeChat color).
|
||||
| [hex]#19# + "B" + EXT | [hex]#19# `+B@00124+` | chat + bars | Set background (extended color).
|
||||
| [hex]#19# + "*" + (A)STD | [hex]#19# `+*05+` | chat + bars | Set foreground (WeeChat color).
|
||||
| [hex]#19# + "*" + (A)EXT | [hex]#19# `+*@00214+` | chat + bars | Set foreground (extended color).
|
||||
| [hex]#19# + "*" + (A)STD + "," + STD ^(1)^ | [hex]#19# `+*08,05+` | chat + bars | Set foreground/background (WeeChat colors).
|
||||
| [hex]#19# + "*" + (A)STD + "," + EXT ^(1)^ | [hex]#19# `+*01,@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
|
||||
| [hex]#19# + "*" + (A)EXT + "," + STD ^(1)^ | [hex]#19# `+*@00214,05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
|
||||
| [hex]#19# + "*" + (A)EXT + "," + EXT ^(1)^ | [hex]#19# `+*@00214,@00017+` | chat + bars | Set foreground/background (extended colors).
|
||||
| [hex]#19# + "*" + (A)STD + "~" + STD | [hex]#19# `+*08~05+` | chat + bars | Set foreground/background (WeeChat colors).
|
||||
| [hex]#19# + "*" + (A)STD + "~" + EXT | [hex]#19# `+*01~@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
|
||||
| [hex]#19# + "*" + (A)EXT + "~" + STD | [hex]#19# `+*@00214~05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
|
||||
| [hex]#19# + "*" + (A)EXT + "~" + EXT | [hex]#19# `+*@00214~@00017+` | chat + bars | Set foreground/background (extended colors).
|
||||
| [hex]#19# + "b" + "F" | [hex]#19# `+bF+` | bars | Set bar foreground color.
|
||||
| [hex]#19# + "b" + "D" | [hex]#19# `+bD+` | bars | Set bar delimiter color.
|
||||
| [hex]#19# + "b" + "B" | [hex]#19# `+bB+` | bars | Set bar background color.
|
||||
| [hex]#19# + "b" + "_" | [hex]#19# `+b_+` | input bar | Start input char (used only in item "input_text").
|
||||
| [hex]#19# + "b" + "-" | [hex]#19# `+b-+` | input bar | Start input hidden char (used only in item "input_text").
|
||||
| [hex]#19# + "b" + "#" | [hex]#19# `+b#+` | input bar | Move cursor char (used only in item "input_text").
|
||||
| [hex]#19# + "b" + "i" | [hex]#19# `+bi+` | bars | Start item.
|
||||
| [hex]#19# + "b" + "l" (lower L) | [hex]#19# `+bl+` | bars | Start line item.
|
||||
| [hex]#19# + "E" | [hex]#19# `+E+` | chat + bars | Emphasize text _(WeeChat ≥ 0.4.2)_.
|
||||
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + bars | Reset color (keep attributes).
|
||||
| [hex]#1A# + ATTR | [hex]#1A# `+*+` | chat + bars | Set attribute.
|
||||
| [hex]#1B# + ATTR | [hex]#1B# `+*+` | chat + bars | Remove attribute.
|
||||
| [hex]#1C# | [hex]#1C# | chat + bars | Reset attributes and color.
|
||||
| Code | Example | Areas | Description
|
||||
| [hex]#19# + `STD` | [hex]#19# `+01+` | chat + bars | Set attributes and color using option, see table below.
|
||||
| [hex]#19# + `EXT` | [hex]#19# `+@00001+` | chat | Set color with a ncurses pair (used only on `/color` buffer).
|
||||
| [hex]#19# + `F` + `(ATTR)STD` | [hex]#19# `+F*05+` | chat + bars | Set foreground (WeeChat color).
|
||||
| [hex]#19# + `F` + `(ATTR)EXT` | [hex]#19# `+F@00214+` | chat + bars | Set foreground (extended color).
|
||||
| [hex]#19# + `B` + `STD` | [hex]#19# `+B05+` | chat + bars | Set background (WeeChat color).
|
||||
| [hex]#19# + `B` + `EXT` | [hex]#19# `+B@00124+` | chat + bars | Set background (extended color).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` | [hex]#19# `+*05+` | chat + bars | Set foreground (WeeChat color).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` | [hex]#19# `+*@00214+` | chat + bars | Set foreground (extended color).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `,` + `STD` ^(1)^ | [hex]#19# `+*08,05+` | chat + bars | Set foreground/background (WeeChat colors).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `,` + `EXT` ^(1)^ | [hex]#19# `+*01,@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `,` + `STD` ^(1)^ | [hex]#19# `+*@00214,05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `,` + `EXT` ^(1)^ | [hex]#19# `+*@00214,@00017+` | chat + bars | Set foreground/background (extended colors).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `~` + `STD` | [hex]#19# `+*08~05+` | chat + bars | Set foreground/background (WeeChat colors).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `~` + `EXT` | [hex]#19# `+*01~@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `~` + `STD` | [hex]#19# `+*@00214~05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `~` + `EXT` | [hex]#19# `+*@00214~@00017+` | chat + bars | Set foreground/background (extended colors).
|
||||
| [hex]#19# + `b` + `F` | [hex]#19# `+bF+` | bars | Set bar foreground color.
|
||||
| [hex]#19# + `b` + `D` | [hex]#19# `+bD+` | bars | Set bar delimiter color.
|
||||
| [hex]#19# + `b` + `B` | [hex]#19# `+bB+` | bars | Set bar background color.
|
||||
| [hex]#19# + `b` + `_` | [hex]#19# `+b_+` | input bar | Start input char (used only in item "input_text").
|
||||
| [hex]#19# + `b` + `-` | [hex]#19# `+b-+` | input bar | Start input hidden char (used only in item "input_text").
|
||||
| [hex]#19# + `b` + `#` | [hex]#19# `+b#+` | input bar | Move cursor char (used only in item "input_text").
|
||||
| [hex]#19# + `b` + `i` | [hex]#19# `+bi+` | bars | Start item.
|
||||
| [hex]#19# + `b` + `l` (lower L) | [hex]#19# `+bl+` | bars | Start line item.
|
||||
| [hex]#19# + `E` | [hex]#19# `+E+` | chat + bars | Emphasize text _(WeeChat ≥ 0.4.2)_.
|
||||
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + bars | Reset color (keep attributes).
|
||||
| [hex]#1A# + `(a)` | [hex]#1A# [hex]#01# | chat + bars | Set attribute.
|
||||
| [hex]#1B# + `(a)` | [hex]#1B# [hex]#01# | chat + bars | Remove attribute.
|
||||
| [hex]#1C# | [hex]#1C# | chat + bars | Reset attributes and color.
|
||||
|===
|
||||
|
||||
[NOTE]
|
||||
@@ -1054,7 +1068,7 @@ Then some macros are defined to call these functions.
|
||||
For example, function _hook_timer_ is defined in structure _t_weechat_plugin_
|
||||
like this:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_hook *(*hook_timer) (struct t_weechat_plugin *plugin,
|
||||
long interval,
|
||||
@@ -1067,7 +1081,7 @@ struct t_hook *(*hook_timer) (struct t_weechat_plugin *plugin,
|
||||
|
||||
And the macro used to call this function is:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
#define weechat_hook_timer(__interval, __align_second, __max_calls, \
|
||||
__callback, __data) \
|
||||
@@ -1078,7 +1092,7 @@ And the macro used to call this function is:
|
||||
|
||||
So in a plugin, the call to function will be for example:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
server->hook_timer_sasl = weechat_hook_timer (timeout * 1000,
|
||||
0, 1,
|
||||
@@ -1191,7 +1205,7 @@ work on it.
|
||||
The translations missing in files are indicated by this string:
|
||||
|
||||
----
|
||||
// TRANSLATION MISSING
|
||||
// TRANSLATION MISSING
|
||||
----
|
||||
|
||||
You must translate whole file except links and special keywords for notes,
|
||||
@@ -1208,7 +1222,7 @@ warnings, ... These words must be kept unchanged:
|
||||
[CAUTION]
|
||||
----
|
||||
|
||||
When there is a name after `<<link_name>>`, then you must translate it:
|
||||
When there is a name after `+<<link_name>>+`, then you must translate it:
|
||||
|
||||
----
|
||||
<<link_name,this text must be translated>>
|
||||
|
||||
@@ -524,7 +524,7 @@ You can just disable bracketed paste mode:
|
||||
=== How can I customize display for very small terminal size (like 80x25), to not waste space?
|
||||
|
||||
You can remove side bars (buflist and nicklist), change time format to display
|
||||
only hours and seconds, disable alignment of messages and set a char for nick
|
||||
only hours and minutes, disable alignment of messages and set a char for nick
|
||||
prefix/suffix:
|
||||
|
||||
----
|
||||
@@ -1083,6 +1083,14 @@ $ cd ~/.cache/weechat/script
|
||||
$ curl -O https://weechat.org/files/plugins.xml.gz
|
||||
----
|
||||
|
||||
If you're running macOS and the downloaded file has a size of 0 bytes,
|
||||
try to set this variable in your shell initialization file or on command line,
|
||||
before starting WeeChat:
|
||||
|
||||
----
|
||||
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
|
||||
----
|
||||
|
||||
[[spell_dictionaries]]
|
||||
=== I installed aspell dictionaries on my system, how can I use them without restarting WeeChat?
|
||||
|
||||
|
||||
+1143
-1164
File diff suppressed because it is too large
Load Diff
@@ -1277,6 +1277,10 @@ The result is a hashtable with following keys
|
||||
The tags in message (can be empty). |
|
||||
`+time=2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| tag_xxx | 3.3 |
|
||||
Unescaped value of tag "xxx" (one key per tag). |
|
||||
`+2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| message_without_tags | 0.4.0 |
|
||||
The message without the tags (the same as message if there are no tags). |
|
||||
`+:nick!user@host PRIVMSG #weechat :hello!+`
|
||||
@@ -1333,10 +1337,12 @@ The result is a hashtable with following keys
|
||||
----
|
||||
dict = weechat.info_get_hashtable(
|
||||
"irc_message_parse",
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
|
||||
# dict == {
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z",
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
|
||||
# "tag_time": "2015-06-27T16:40:35.000Z",
|
||||
# "tag_tag2": "value space",
|
||||
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
||||
# "nick": "nick",
|
||||
# "user": "user",
|
||||
@@ -1345,10 +1351,10 @@ dict = weechat.info_get_hashtable(
|
||||
# "channel": "#weechat",
|
||||
# "arguments": "#weechat :hello!",
|
||||
# "text": "hello!",
|
||||
# "pos_command": "47",
|
||||
# "pos_arguments": "55",
|
||||
# "pos_channel": "55",
|
||||
# "pos_text": "65",
|
||||
# "pos_command": "65",
|
||||
# "pos_arguments": "73",
|
||||
# "pos_channel": "73",
|
||||
# "pos_text": "83",
|
||||
# }
|
||||
----
|
||||
|
||||
|
||||
@@ -1,131 +0,0 @@
|
||||
= WeeChat tester's guide
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
:toc: left
|
||||
:sectnums:
|
||||
:docinfo1:
|
||||
|
||||
|
||||
[[purpose]]
|
||||
== Purpose
|
||||
|
||||
Many thankful users ask us how can they help developing WeeChat. The
|
||||
easiest (and also most tricky) way to help developing WeeChat is testing!
|
||||
|
||||
Testing is a very important part of software development and should not be
|
||||
underestimated. When some features are implemented it should be tested, but for
|
||||
some features there are too many use cases or these cases are tricky and
|
||||
developers can't try out every case.
|
||||
|
||||
For example: A notorious charset plugin was introduced in WeeChat 0.2.2: none
|
||||
of us (developers, contributors and testers) used channels with national
|
||||
characters in their names and when 0.2.2 was released we got flooded by Russian
|
||||
users blaming us. If we have more testers it should not happen again in the
|
||||
future.
|
||||
|
||||
Testing the stable version of WeeChat is pointless because developers are busy
|
||||
implementing new stuff (and fixing old bugs) all the time.
|
||||
|
||||
|
||||
[[prepare_system]]
|
||||
== Prepare your system
|
||||
|
||||
It would help us a lot if you enable Linux _core_ files: if WeeChat crashes,
|
||||
Linux will write a file called _core_. This file contains very useful debug
|
||||
info, to know exactly where is problem in WeeChat.
|
||||
|
||||
If you're using the _bash_ shell, add following line to your _~/.bashrc_:
|
||||
|
||||
----
|
||||
ulimit -c unlimited
|
||||
----
|
||||
|
||||
|
||||
[[download]]
|
||||
== Download devel version
|
||||
|
||||
Fresh code (with latest bugs and features) is stored in a GIT repository.
|
||||
|
||||
You may decide to build it manually (recommended way):
|
||||
|
||||
* The GIT version can be built and installed in parallel to the stable version.
|
||||
* You don't need root access, and you don't need to sacrifice the stable
|
||||
version of WeeChat.
|
||||
|
||||
[[get_sources]]
|
||||
=== Get and build sources
|
||||
|
||||
First create a directory, for example _weechat-git_:
|
||||
|
||||
----
|
||||
$ mkdir ~/weechat-git
|
||||
$ cd ~/weechat-git
|
||||
----
|
||||
|
||||
If you have git installed, you can just clone the git repository (recommended
|
||||
way):
|
||||
|
||||
----
|
||||
$ git clone https://github.com/weechat/weechat.git
|
||||
$ cd weechat
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Later, you can run `git pull` in this directory, to get deltas with
|
||||
the latest updates.
|
||||
|
||||
Otherwise you can download and unpack _devel_ package:
|
||||
|
||||
----
|
||||
$ wget https://weechat.org/files/src/weechat-devel.tar.bz2
|
||||
$ tar xvjf weechat-devel.tar.bz2
|
||||
$ cd weechat-devel
|
||||
----
|
||||
|
||||
To build sources, CMake is recommended:
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/weechat-git -DWEECHAT_HOME=~/.weechat-dev -DCMAKE_BUILD_TYPE=Debug
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
If you don't have CMake, it's still possible to use autotools:
|
||||
|
||||
----
|
||||
$ ./autogen.sh
|
||||
$ ./configure --prefix=$HOME/weechat-git WEECHAT_HOME=~/.weechat-dev
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
[[install_binary_package]]
|
||||
=== Install binary package
|
||||
|
||||
According to your Linux distribution:
|
||||
|
||||
* Debian: https://weechat.org/download/debian
|
||||
* Gentoo: https://weechat.org/download
|
||||
* ArchLinux: PKGBUILD from https://aur.archlinux.org/
|
||||
* other: we don't know! Eheh.
|
||||
|
||||
|
||||
[[run]]
|
||||
== Run WeeChat
|
||||
|
||||
Command is:
|
||||
|
||||
----
|
||||
$ ~/weechat-git/bin/weechat
|
||||
----
|
||||
|
||||
If you're still awake you should see the familiar interface and brag about
|
||||
having the newest possible version of WeeChat. ;)
|
||||
|
||||
Now if you experience strange behavior (it may have issues or crash or boil
|
||||
your beer) don't hesitate to join _#weechat_ at _irc.libera.chat_ and tell us.
|
||||
|
||||
If it doesn't crash - tell us too, we need your feedback!
|
||||
+2170
-1725
File diff suppressed because it is too large
Load Diff
@@ -19,6 +19,19 @@
|
||||
|
||||
if(ENABLE_DOC)
|
||||
|
||||
# FAQ
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.es.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_faq.es.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.es.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.es.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_faq.es.html"
|
||||
)
|
||||
add_custom_target(doc-faq-es ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.es.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.es.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# quickstart
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.es.html
|
||||
|
||||
+7
-1
@@ -21,6 +21,7 @@ docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
docinfo.html \
|
||||
weechat_faq.es.adoc \
|
||||
weechat_quickstart.es.adoc
|
||||
|
||||
if MAN
|
||||
@@ -29,12 +30,17 @@ if MAN
|
||||
man_uninstall =
|
||||
endif
|
||||
if DOC
|
||||
doc_targets = weechat_quickstart.es.html
|
||||
doc_targets = weechat_faq.es.html \
|
||||
weechat_quickstart.es.html
|
||||
doc_install = install-doc
|
||||
doc_uninstall = uninstall-doc
|
||||
endif
|
||||
all-local: $(man_targets) $(doc_targets)
|
||||
|
||||
# FAQ
|
||||
weechat_faq.es.html: weechat_faq.es.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_faq.es.html $(abs_top_srcdir)/doc/es/weechat_faq.es.adoc
|
||||
|
||||
# quickstart
|
||||
weechat_quickstart.es.html: weechat_quickstart.es.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.es.html $(abs_top_srcdir)/doc/es/weechat_quickstart.es.adoc
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -122,19 +122,6 @@ if(ENABLE_DOC)
|
||||
add_custom_target(doc-quickstart-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# tester's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.fr.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.fr.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_tester.fr.html"
|
||||
)
|
||||
add_custom_target(doc-tester-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# relay protocol
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.fr.html
|
||||
|
||||
@@ -29,7 +29,6 @@ EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_scripting.fr.adoc \
|
||||
weechat_faq.fr.adoc \
|
||||
weechat_quickstart.fr.adoc \
|
||||
weechat_tester.fr.adoc \
|
||||
weechat_relay_protocol.fr.adoc \
|
||||
weechat_dev.fr.adoc \
|
||||
includes/autogen_api_completions.fr.adoc \
|
||||
@@ -58,7 +57,6 @@ if DOC
|
||||
weechat_scripting.fr.html \
|
||||
weechat_faq.fr.html \
|
||||
weechat_quickstart.fr.html \
|
||||
weechat_tester.fr.html \
|
||||
weechat_relay_protocol.fr.html \
|
||||
weechat_dev.fr.html
|
||||
doc_install = install-doc
|
||||
@@ -92,10 +90,6 @@ weechat_faq.fr.html: weechat_faq.fr.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
weechat_quickstart.fr.html: weechat_quickstart.fr.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.fr.html $(abs_top_srcdir)/doc/fr/weechat_quickstart.fr.adoc
|
||||
|
||||
# tester's guide
|
||||
weechat_tester.fr.html: weechat_tester.fr.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.fr.html $(abs_top_srcdir)/doc/fr/weechat_tester.fr.adoc
|
||||
|
||||
# relay protocol
|
||||
weechat_relay_protocol.fr.html: weechat_relay_protocol.fr.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_relay_protocol.fr.html $(abs_top_srcdir)/doc/fr/weechat_relay_protocol.fr.adoc
|
||||
|
||||
@@ -79,6 +79,8 @@ _last_nick_speaking_time_ (pointer, hdata: "irc_channel_speaking") +
|
||||
_modelists_ (pointer, hdata: "irc_modelist") +
|
||||
_last_modelist_ (pointer, hdata: "irc_modelist") +
|
||||
_join_smart_filtered_ (hashtable) +
|
||||
_typing_state_ (integer) +
|
||||
_typing_status_sent_ (time) +
|
||||
_buffer_ (pointer, hdata: "buffer") +
|
||||
_buffer_as_string_ (string) +
|
||||
_prev_channel_ (pointer, hdata: "irc_channel") +
|
||||
@@ -237,6 +239,8 @@ _sasl_scram_client_first_ (string) +
|
||||
_sasl_scram_salted_pwd_ (other) +
|
||||
_sasl_scram_salted_pwd_size_ (integer) +
|
||||
_sasl_scram_auth_message_ (string) +
|
||||
_sasl_temp_username_ (string) +
|
||||
_sasl_temp_password_ (string) +
|
||||
_is_connected_ (integer) +
|
||||
_ssl_connected_ (integer) +
|
||||
_disconnected_ (integer) +
|
||||
@@ -267,6 +271,10 @@ _chantypes_ (string) +
|
||||
_chanmodes_ (string) +
|
||||
_monitor_ (integer) +
|
||||
_monitor_time_ (time) +
|
||||
_clienttagdeny_ (string) +
|
||||
_clienttagdeny_count_ (integer) +
|
||||
_clienttagdeny_array_ (string, array_size: "clienttagdeny_count") +
|
||||
_typing_allowed_ (integer) +
|
||||
_reconnect_delay_ (integer) +
|
||||
_reconnect_start_ (time) +
|
||||
_command_time_ (time) +
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|===
|
||||
| Extension | Nom | Description | Table de hachage (entrée) | Table de hachage (sortie)
|
||||
|
||||
| irc | irc_message_parse | analyse un message IRC | "message" : message IRC, "server" : nom du serveur (optionnel) | "tags" : étiquettes, "message_without_tags" : message sans les étiquettes, "nick" : pseudo, "user" : nom d'utilisateur, "host" : nom d'hôte, "command" : commande, "channel" : canal, "arguments" : paramètres (inclut le canal), "text" : texte (par exemple message utilisateur), "pos_command" : index de "command" dans le message ("-1" si "command" n'a pas été trouvé), "pos_arguments" : index de "arguments" dans le message ("-1" si "arguments" n'a pas été trouvé), "pos_channel" : index de "channel" dans le message ("-1" si "channel" n'a pas été trouvé), "pos_text" : index de "text" dans le message ("-1" si "text" n'a pas été trouvé)
|
||||
| irc | irc_message_parse | analyse un message IRC | "message" : message IRC, "server" : nom du serveur (optionnel) | "tags" : étiquettes, "tag_xxx" : valeur de l'étiquette "xxx" sans échappements (une clé par étiquette), "message_without_tags" : message sans les étiquettes, "nick" : pseudo, "user" : nom d'utilisateur, "host" : nom d'hôte, "command" : commande, "channel" : canal, "arguments" : paramètres (inclut le canal), "text" : texte (par exemple message utilisateur), "param1" ... "paramN" : paramètres de la commande, "num_params" : nombre de paramètres dans la commande, "pos_command" : index de "command" dans le message ("-1" si "command" n'a pas été trouvé), "pos_arguments" : index de "arguments" dans le message ("-1" si "arguments" n'a pas été trouvé), "pos_channel" : index de "channel" dans le message ("-1" si "channel" n'a pas été trouvé), "pos_text" : index de "text" dans le message ("-1" si "text" n'a pas été trouvé)
|
||||
|
||||
| irc | irc_message_split | découper un message IRC (pour tenir dans les 512 octets par défaut) | "message" : message IRC, "server" : nom du serveur (optionnel) | "msg1" ... "msgN" : messages à envoyer (sans le "\r\n" final), "args1" ... "argsN" : paramètres des messages, "count" : nombre de messages
|
||||
|
||||
|
||||
@@ -4,18 +4,26 @@
|
||||
//
|
||||
|
||||
// tag::plugins_priority[]
|
||||
. charset (15000)
|
||||
. logger (14000)
|
||||
. exec (13000)
|
||||
. trigger (12000)
|
||||
. spell (11000)
|
||||
. alias (10000)
|
||||
. buflist (9000)
|
||||
. fifo (8000)
|
||||
. charset (16000)
|
||||
. logger (15000)
|
||||
. exec (14000)
|
||||
. trigger (13000)
|
||||
. spell (12000)
|
||||
. alias (11000)
|
||||
. buflist (10000)
|
||||
. fifo (9000)
|
||||
. typing (8000)
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile, javascript, lua, perl, php, python, ruby, tcl (4000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
// end::plugins_priority[]
|
||||
|
||||
@@ -17,10 +17,11 @@ cible : nom du serveur
|
||||
* `+allchan+`: exécuter une commande sur tous les canaux de tous les serveurs connectés
|
||||
|
||||
----
|
||||
/allchan [-current] [-exclude=<canal>[,<canal>...]] <commande>
|
||||
[-current] [-include=<canal>[,<canal>...]] <commande>
|
||||
/allchan [-current] [-parted] [-exclude=<canal>[,<canal>...]] <commande>
|
||||
[-current] [-parted] -include=<canal>[,<canal>...] <commande>
|
||||
|
||||
-current : exécuter la commande pour les canaux du serveur courant seulement
|
||||
-parted : exécuter la commande sur les canaux quittés seulement
|
||||
-exclude : exclure certains canaux (le caractère joker "*" est autorisé)
|
||||
-include : inclure seulement certains canaux (le caractère joker "*" est autorisé)
|
||||
commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')
|
||||
@@ -41,6 +42,8 @@ Exemples :
|
||||
/allchan -exclude=#weechat,#linux* bonjour
|
||||
dire 'bonjour' sur tous les canaux commençant par #linux :
|
||||
/allchan -include=#linux* bonjour
|
||||
fermer tous les tampons avec des canaux quittés :
|
||||
/allchan -parted /close
|
||||
----
|
||||
|
||||
[[command_irc_allpv]]
|
||||
@@ -100,6 +103,26 @@ Exemples :
|
||||
/allserv /whois $nick
|
||||
----
|
||||
|
||||
[[command_irc_auth]]
|
||||
* `+auth+`: s'authentifier avec SASL
|
||||
|
||||
----
|
||||
/auth [<utilisateur> <mot_de_passe>]
|
||||
|
||||
utilisateur : nom d'utilisateur SASL (le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)
|
||||
mot_de_passe : mot de passe SASL ou chemin vers le fichier de clé privée (le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)
|
||||
|
||||
Si le nom d'utilisateur et mot de passe ne sont pas donnés, les valeurs des options serveur "sasl_username" et "sasl_password" (ou "sasl_key") sont utilisées.
|
||||
|
||||
Exemples :
|
||||
s'authentifier avec le nom d'utilisateur et mot de passe défini dans le serveur :
|
||||
/auth
|
||||
s'authentifier avec un utilisateur différent :
|
||||
/auth utilisateur2 mot_de_passe2
|
||||
s'authentifier avec un utilisateur différent et le mécanisme ecdsa-nist256p-challenge :
|
||||
/auth utilisateur2 ${weechat_config_dir}/ecdsa2.pem
|
||||
----
|
||||
|
||||
[[command_irc_ban]]
|
||||
* `+ban+`: bannir des pseudos ou hôtes
|
||||
|
||||
@@ -129,7 +152,7 @@ Sans paramètre, cette commande affiche la liste des bannissements pour le canal
|
||||
|
||||
Sans paramètre, "ls" et "list" sont envoyés.
|
||||
|
||||
Les capacités supportées par WeeChat sont : account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, multi-prefix, server-time, userhost-in-names.
|
||||
Les capacités supportées par WeeChat sont : account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.
|
||||
|
||||
Les capacités à activer automatiquement sur les serveurs peuvent être définies dans l'option irc.server_default.capabilities (ou par serveur dans l'option irc.server.xxx.capabilities).
|
||||
|
||||
@@ -808,6 +831,15 @@ masque : lister seulement les services qui correspondent à ce masque
|
||||
type : lister seulement les services de ce type
|
||||
----
|
||||
|
||||
[[command_irc_setname]]
|
||||
* `+setname+`: définir le nom réel
|
||||
|
||||
----
|
||||
/setname <nom_réel>
|
||||
|
||||
nom_réel : nouveau nom réel
|
||||
----
|
||||
|
||||
[[command_irc_squery]]
|
||||
* `+squery+`: envoyer un message à un service
|
||||
|
||||
@@ -1271,7 +1303,7 @@ Exemples :
|
||||
/debug list
|
||||
set <extension> <niveau>
|
||||
dump [<extension>]
|
||||
buffer|color|infolists|memory|tags|term|windows
|
||||
buffer|color|infolists|libs|certs|memory|tags|term|windows
|
||||
cursor|mouse [verbose]
|
||||
hdata [free]
|
||||
time <commande>
|
||||
@@ -1289,6 +1321,7 @@ extension : nom de l'extension ("core" pour le cœur de WeeChat)
|
||||
hooks : afficher des infos sur les hooks
|
||||
infolists : afficher des infos sur les infolists
|
||||
libs : afficher des infos sur les bibliothèques externes utilisées
|
||||
certs : afficher le nombre de certificats des autorités de certification chargés
|
||||
memory : afficher des infos sur l'utilisation de la mémoire
|
||||
mouse : activer/désactiver le debug pour la souris
|
||||
tags : afficher les étiquettes pour les lignes
|
||||
@@ -1342,27 +1375,32 @@ Pour forcer une comparaison de chaînes, vous pouvez ajouter des guillemets auto
|
||||
|
||||
Des variables sont remplacées dans l'expression, en utilisant le format ${variable}, la variable pouvant être, par ordre de priorité :
|
||||
1. la chaîne elle-même sans évaluation (format : "raw:xxx")
|
||||
2. une sous-chaîne évaluée (format : "eval:xxx")
|
||||
3. une condition évaluée (format : "eval_cond:xxx")
|
||||
4. une chaîne avec les caractères échappés (format : "esc:xxx" ou "\xxx")
|
||||
5. une chaîne avec des caractères à cacher (format : "hide:caractère,chaîne")
|
||||
6. une chaîne avec un maximum de caractères (format : "cut:max,suffixe,chaîne" ou "cut:+max,suffixe,chaîne")
|
||||
2. une variable définie par l'utilisateur (format : "nom")
|
||||
3. une sous-chaîne évaluée (format : "eval:xxx")
|
||||
4. une condition évaluée (format : "eval_cond:xxx")
|
||||
5. une chaîne avec les caractères échappés (format : "esc:xxx" ou "\xxx")
|
||||
6. une chaîne avec des caractères à cacher (format : "hide:caractère,chaîne")
|
||||
7. une chaîne avec un maximum de caractères (format : "cut:max,suffixe,chaîne" ou "cut:+max,suffixe,chaîne")
|
||||
ou un maximum de caractères affichés à l'écran (format : "cutscr:max,suffixe,chaîne" ou "cutscr:+max,suffixe,chaîne")
|
||||
7. une chaîne inversée (format : "rev:xxx" ou "revscr:xxx")
|
||||
8. une chaîne répétée (format : "repeat:nombre,chaîne")
|
||||
9. longueur d'une chaîne (format : "length:xxx" ou "lengthscr:xxx")
|
||||
10. une couleur (format : "color:xxx", voir la "Référence API extension", fonction "color")
|
||||
11. un modificateur (format : "modifier:nom,données,chaîne")
|
||||
12. une info (format : "info:nom,paramètres", les paramètres sont optionnels)
|
||||
13. une chaîne encodée/decodée en base 16, 32 ou 64 (format : "base_encode:base,xxx" ou "base_decode:base,xxx")
|
||||
14. la date/heure courante (format : "date" ou "date:format")
|
||||
15. une variable d'environnement (format : "env:XXX")
|
||||
16. un opérateur ternaire (format : "if:condition?valeur_si_vrai:valeur_si_faux")
|
||||
17. le résultat d'une expression avec parenthèses et les opérateurs + - * / // % ** (format: "calc:xxx")
|
||||
18. une chaîne traduite (format : "translate:xxx")
|
||||
19. une option (format : "fichier.section.option")
|
||||
20. une variable locale du tampon
|
||||
21. un hdata/variable (la valeur est automatiquement convertie en chaîne), par défaut "window" et "buffer" pointent vers la fenêtre et le tampon courants.
|
||||
8. une chaîne inversée (format : "rev:xxx" ou "revscr:xxx")
|
||||
9. une chaîne répétée (format : "repeat:nombre,chaîne")
|
||||
10. longueur d'une chaîne (format : "length:xxx" ou "lengthscr:xxx")
|
||||
11. découpage d'une chaîne (format : "split:nombre,séparateurs,flags,xxx")
|
||||
12. découpage de paramètres shell (format : "split_shell:nombre,xxx")
|
||||
13. une couleur (format : "color:xxx", voir la "Référence API extension", fonction "color")
|
||||
14. un modificateur (format : "modifier:nom,données,chaîne")
|
||||
15. une info (format : "info:nom,paramètres", les paramètres sont optionnels)
|
||||
16. une chaîne encodée/decodée en base 16, 32 ou 64 (format : "base_encode:base,xxx" ou "base_decode:base,xxx")
|
||||
17. la date/heure courante (format : "date" ou "date:format")
|
||||
18. une variable d'environnement (format : "env:XXX")
|
||||
19. un opérateur ternaire (format : "if:condition?valeur_si_vrai:valeur_si_faux")
|
||||
20. le résultat d'une expression avec parenthèses et les opérateurs + - * / // % ** (format : "calc:xxx")
|
||||
21. un nombre entier aléatoire (format : "random:min,max")
|
||||
22. une chaîne traduite (format : "translate:xxx")
|
||||
23. déclaration d'une variable utilisateur (format : "define:nom,valeur")
|
||||
24. une option (format : "fichier.section.option")
|
||||
25. une variable locale du tampon
|
||||
26. un hdata/variable (la valeur est automatiquement convertie en chaîne), par défaut "window" et "buffer" pointent vers la fenêtre et le tampon courants.
|
||||
Le format du hdata peut être le suivant :
|
||||
hdata.var1.var2... : démarrer avec un hdata (le pointeur doit être connu), et demander les variables l'une après l'autre (d'autres hdata peuvent être suivis)
|
||||
hdata[liste].var1.var2... : démarrer avec un hdata en utilisant une liste/pointeur/nom de pointeur, par exemple :
|
||||
@@ -1374,29 +1412,39 @@ Le format du hdata peut être le suivant :
|
||||
Pour le nom du hdata et des variables, voir la "Référence API extension", fonction "weechat_hdata_get".
|
||||
|
||||
Exemples (chaînes simples) :
|
||||
/eval -n ${raw:${info:version}} ==> ${info:version}
|
||||
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
|
||||
/eval -n ${info:version} ==> 0.4.3
|
||||
/eval -n ${env:HOME} ==> /home/user
|
||||
/eval -n ${weechat.look.scroll_amount} ==> 3
|
||||
/eval -n ${sec.data.password} ==> secret
|
||||
/eval -n ${window} ==> 0x2549aa0
|
||||
/eval -n ${window.buffer} ==> 0x2549320
|
||||
/eval -n ${window.buffer.full_name} ==> core.weechat
|
||||
/eval -n ${window.buffer.number} ==> 1
|
||||
/eval -n ${\t} ==> <tab>
|
||||
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
||||
/eval -n ${cut:3,+,test} ==> tes+
|
||||
/eval -n ${cut:+3,+,test} ==> te+
|
||||
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${translate:Plugin} ==> Extension
|
||||
/eval -n ${raw:${info:version}} ==> ${info:version}
|
||||
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
|
||||
/eval -n ${info:version} ==> 0.4.3
|
||||
/eval -n ${env:HOME} ==> /home/user
|
||||
/eval -n ${weechat.look.scroll_amount} ==> 3
|
||||
/eval -n ${sec.data.password} ==> secret
|
||||
/eval -n ${window} ==> 0x2549aa0
|
||||
/eval -n ${window.buffer} ==> 0x2549320
|
||||
/eval -n ${window.buffer.full_name} ==> core.weechat
|
||||
/eval -n ${window.buffer.number} ==> 1
|
||||
/eval -n ${\t} ==> <tab>
|
||||
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
||||
/eval -n ${cut:3,+,test} ==> tes+
|
||||
/eval -n ${cut:+3,+,test} ==> te+
|
||||
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${split:1,,,abc,def,ghi} ==> abc
|
||||
/eval -n ${split:-1,,,abc,def,ghi} ==> ghi
|
||||
/eval -n ${split:count,,,abc,def,ghi} ==> 3
|
||||
/eval -n ${split:random,,,abc,def,ghi} ==> def
|
||||
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
|
||||
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
|
||||
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${random:0,10} ==> 3
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${translate:Plugin} ==> Extension
|
||||
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
|
||||
|
||||
Exemples (conditions) :
|
||||
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
||||
@@ -1549,6 +1597,9 @@ liste des actions :
|
||||
jump_previously_visited_buffer : sauter au tampon visité précédemment
|
||||
jump_next_visited_buffer : sauter au tampon visité après
|
||||
hotlist_clear : effacer la hotlist (paramètre facultatif : "lowest" pour effacer seulement le plus petit niveau dans la hotlist, "highest" pour effacer seulement le niveau le plus haut dans la hotlist, ou un masque de niveaux : entier qui est une combinaison de 1=join/part, 2=message, 4=privé, 8=highlight)
|
||||
hotlist_remove_buffer : supprimer le tampon courant de la hotlist
|
||||
hotlist_restore_buffer : restaurer la dernière hotlist supprimée dans le tampon courant
|
||||
hotlist_restore_all : restaurer la dernière hotlist supprimée dans tous les tampons
|
||||
grab_key : capturer une touche (paramètre facultatif : délai pour la fin de la capture, par défaut 500 millisecondes)
|
||||
grab_key_command : capturer une touche avec sa commande associée (paramètre facultatif : délai pour la fin de la capture, par défaut 500 millisecondes)
|
||||
grab_mouse : capturer un évènement de la souris
|
||||
@@ -1586,7 +1637,7 @@ listdefault : afficher les touches par défaut
|
||||
contexte : nom du contexte ("default" ou "search")
|
||||
bind : associer une commande à une touche ou affiche la commande associée à la touche
|
||||
bindctxt : associer une commande à une touche ou affiche la commande associée à la touche pour le contexte donné
|
||||
commande : commande (plusieurs commandes peuvent êtres séparées par des points-virgules)
|
||||
commande : commande (plusieurs commandes peuvent être séparées par des points-virgules)
|
||||
unbind : supprimer l'association à une touche
|
||||
unbindctxt : supprimer l'association à une touche pour le contexte donné
|
||||
reset : réinitialiser une touche à son association par défaut
|
||||
@@ -1644,6 +1695,8 @@ windows : stocker/appliquer seulement pour les fenêtres (le tampon affiché pa
|
||||
Sans paramètre, cette commande affiche les dispositions stockées.
|
||||
|
||||
La disposition courante peut être sauvegardée sur la commande /quit avec l'option "weechat.look.save_layout_on_exit".
|
||||
|
||||
Note : la disposition se souvient seulement de la division des fenêtres et des numéros de tampons. Elle n'ouvre pas les tampons. Cela signifie par exemple que vous devez toujours automatiquement rejoindre les canaux IRC pour ouvrir les tampons, la disposition sauvée ne s'applique qu'une fois les tampons ouverts.
|
||||
----
|
||||
|
||||
[[command_weechat_mouse]]
|
||||
@@ -1693,21 +1746,26 @@ Exemples :
|
||||
* `+plugin+`: lister/charger/décharger des extensions
|
||||
|
||||
----
|
||||
/plugin list|listfull [<nom>]
|
||||
/plugin list [-o|-ol|-i|-il|<nom>]
|
||||
listfull [<nom>]
|
||||
load <fichier> [<paramètres>]
|
||||
autoload [<paramètres>]
|
||||
reload [<nom>|* [<paramètres]]
|
||||
unload [<nom>]
|
||||
|
||||
list : lister les extensions chargées
|
||||
-o : envoyer la liste des extensions chargées au tampon (chaîne en anglais)
|
||||
-ol : envoyer la liste des extensions chargées au tampon (chaîne traduite)
|
||||
-i : copier la liste des extensions chargées dans la ligne de commande (pour envoi au tampon) (chaîne en anglais)
|
||||
-il : copier la liste des extensions chargées dans la ligne de commande (pour envoi au tampon) (chaîne traduite)
|
||||
nom : nom d'extension
|
||||
listfull : lister les extensions chargées (verbeux)
|
||||
load : charger une extension
|
||||
fichier : extension (fichier) à charger
|
||||
paramètres : paramètres donnés à l'extension lors de son chargement
|
||||
autoload : charger automatiquement les extensions dans un répertoire système ou utilisateur
|
||||
reload : recharger une extension (si pas de nom donné, décharger toutes les extensions, puis recharger automatiquement les extensions)
|
||||
unload : décharger une extension (si pas de nom donné, décharger toutes les extensions)
|
||||
fichier : extension (fichier) à charger
|
||||
nom : nom d'extension
|
||||
paramètres : paramètres donnés à l'extension lors de son chargement
|
||||
|
||||
Sans paramètre, cette commande liste les extensions chargées.
|
||||
----
|
||||
@@ -1935,6 +1993,32 @@ Exemples :
|
||||
/set env ABC ""
|
||||
----
|
||||
|
||||
[[command_weechat_toggle]]
|
||||
* `+toggle+`: basculer la valeur d'une option de configuration
|
||||
|
||||
----
|
||||
/toggle <option> [<valeur> [<valeur>...]]
|
||||
|
||||
option : nom d'une option
|
||||
valeur : valeurs possibles pour l'option (les valeurs sont découpées comme le les paramètres d'une commande par le shell : des guillemets peuvent être utilisés pour préserver les espaces au début et à la fin des valeurs)
|
||||
|
||||
Comportement :
|
||||
- seule une option de type booléen ou chaîne peut être basculée sans valeur :
|
||||
- booléen : basculer on/off selon la valeur courante
|
||||
- chaîne : basculer entre chaîne vide et la valeur par défaut (fonctionne seulement si une chaîne vide est autorisée pour l'option)
|
||||
- avec une seule valeur donnée, basculer entre cette valeur et la valeur par défaut de l'option
|
||||
- avec plusieurs valeurs données, basculer entre les valeurs : la valeur utilisée est celle qui suit la valeur courante de l'option ; si la valeur courante n'est pas dans la liste, la première valeur de la liste est utilisée
|
||||
- la valeur spéciale "null" peut être donnée, mais seulement comme première valeur dans la liste et sans guillemets autour.
|
||||
|
||||
Exemples :
|
||||
basculer l'affichage de l'heure dans la zone de discussion (sans afficher la nouvelle valeur utilisée) :
|
||||
/mute /toggle weechat.look.buffer_time_format
|
||||
basculer le format de l'heure dans la zone de discussion (avec secondes, sans secondes, désactivé) :
|
||||
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
|
||||
basculer le "join" automatique du canal #weechat sur le serveur libera :
|
||||
/toggle irc.server.libera.autojoin null #weechat
|
||||
----
|
||||
|
||||
[[command_weechat_unset]]
|
||||
* `+unset+`: supprimer/réinitialiser des options de configuration
|
||||
|
||||
|
||||
@@ -1845,6 +1845,50 @@
|
||||
** valeur par défaut: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
|
||||
// end::fifo_options[]
|
||||
|
||||
// tag::typing_options[]
|
||||
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
|
||||
** description: pass:none[nombre de secondes après que le statut "paused" ait été défini : si atteint, le statut d'écriture est supprimé]
|
||||
** type: entier
|
||||
** valeurs: 1 .. 2147483647
|
||||
** valeur par défaut: `+30+`
|
||||
|
||||
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
|
||||
** description: pass:none[nombre de secondes après que le statut "typing" ait été défini : si atteint, le statut d'écriture est supprimé]
|
||||
** type: entier
|
||||
** valeurs: 1 .. 2147483647
|
||||
** valeur par défaut: `+6+`
|
||||
|
||||
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
|
||||
** description: pass:none[nombre de secondes après avoir tapé le dernier caractère : si atteint, le statut d'écriture devient "paused" et il n'y a plus de signaux typing envoyés]
|
||||
** type: entier
|
||||
** valeurs: 1 .. 2147483647
|
||||
** valeur par défaut: `+10+`
|
||||
|
||||
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
|
||||
** description: pass:none[activer le statut d'écriture pour les autres pseudos (afficher le statut d'écriture pour les autres pseudos écrivant un message dans le tampon courant)]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
|
||||
** description: pass:none[activer le statut d'écriture pour ses propres messages (envoyer l'information aux autres utilisateurs)]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
|
||||
** description: pass:none[nombre minimum de caractères dans le message pour déclencher l'envoi des signaux typing]
|
||||
** type: entier
|
||||
** valeurs: 1 .. 2147483647
|
||||
** valeur par défaut: `+4+`
|
||||
|
||||
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
|
||||
** description: pass:none[nombre maximum de caractères affichés dans l'objet de barre "typing" (0 = ne pas tronquer le contenu)]
|
||||
** type: entier
|
||||
** valeurs: 0 .. 2147483647
|
||||
** valeur par défaut: `+0+`
|
||||
// end::typing_options[]
|
||||
|
||||
// tag::xfer_options[]
|
||||
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
|
||||
** description: pass:none[couleur du texte pour le statut "interrompu"]
|
||||
@@ -2214,6 +2258,12 @@
|
||||
** valeurs: toute chaîne
|
||||
** valeur par défaut: `+"%a, %d %b %Y %T %z"+`
|
||||
|
||||
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
|
||||
** description: pass:none[afficher les messages ACCOUNT reçus quand la capacité account-notify est activée]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+on+`
|
||||
|
||||
* [[option_irc.look.display_away]] *irc.look.display_away*
|
||||
** description: pass:none[afficher un message pour l'absence/retour (off : ne rien afficher/envoyer, local : afficher en local, channel : envoyer l'action aux canaux)]
|
||||
** type: entier
|
||||
@@ -2238,6 +2288,12 @@
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+on+`
|
||||
|
||||
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
|
||||
** description: pass:none[afficher les informations supplémentaires sur les messages JOIN : nom de compte et nom réel (la capacité extended-join doit être activée)]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+on+`
|
||||
|
||||
* [[option_irc.look.display_host_join]] *irc.look.display_host_join*
|
||||
** description: pass:none[afficher le nom d'hôte dans les messages join]
|
||||
** type: booléen
|
||||
@@ -2508,6 +2564,18 @@
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
|
||||
** description: pass:none[afficher les pseudos qui écrivent sur le canal dans l'objet de barre "typing" (l'option typing.look.enabled_nicks doit être activée et la capacité "message-tags" doit être activée sur le serveur)]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
|
||||
** description: pass:none[envoyer le statut d'écriture de message aux canaux de sorte que les autres utilisateurs voient quand vous écrivez un message (l'option typing.look.enabled_self doit être activée et la capacité "message-tags" doit être activée sur le serveur)]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
|
||||
** description: pass:none[facteur de croissance du délai d'auto-reconnexion au serveur (1 = toujours le même délai, 2 = délai*2 pour chaque tentative, etc.)]
|
||||
** type: entier
|
||||
@@ -2665,10 +2733,10 @@
|
||||
** valeur par défaut: `+25+`
|
||||
|
||||
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
|
||||
** description: pass:none[liste séparée par des virgules de capacités client ("client capabilities") à activer sur le serveur si elles sont disponibles (voir /help cap pour la liste des capacités supportées par WeeChat) (exemple : "away-notify,multi-prefix")]
|
||||
** description: pass:none[liste séparée par des virgules de capacités client ("client capabilities") à activer sur le serveur si elles sont disponibles (voir /help cap pour la liste des capacités supportées par WeeChat) ; "*" active toutes les capacités par défaut (supportées par le serveur et WeeChat) ; le caractère joker "*" est autorisé ; une capacité commençant par "!" est exclue (exemple : "*,!account-*,!extended-join")]
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne
|
||||
** valeur par défaut: `+""+`
|
||||
** valeur par défaut: `+"*"+`
|
||||
|
||||
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
|
||||
** description: pass:none[partie du message IRC (reçu ou envoyé) qui est décodé/encode vers le jeu de caractères cible ; message = le message IRC entier (par défaut), channel = à partir du nom du canal seulement (si trouvé, sinon à partir du texte), text = à partir du texte seulement (vous devriez essayer cette valeur si vous avec des problèmes d'encodage avec le nom du canal)]
|
||||
@@ -2770,7 +2838,7 @@
|
||||
** description: pass:none[action à effectuer si l'authentification SASL échoue : "continue" pour ignorer le problème d'authentification, "reconnect" pour planifier une reconnexion au serveur, "disconnect" pour se déconnecter du serveur (voir aussi l'option irc.network.sasl_fail_unavailable)]
|
||||
** type: entier
|
||||
** valeurs: continue, reconnect, disconnect
|
||||
** valeur par défaut: `+continue+`
|
||||
** valeur par défaut: `+reconnect+`
|
||||
|
||||
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
|
||||
** description: pass:none[fichier avec la clé privée ECC pour le mécanisme "ecdsa-nist256p-challenge" (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
|
||||
@@ -2779,9 +2847,9 @@
|
||||
** valeur par défaut: `+""+`
|
||||
|
||||
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
|
||||
** description: pass:none[mécanisme pour l'authentification SASL : "plain" pour un mot de passe en clair, "scram-sha-1" pour une authentification SCRAM avec algorithme de hachage SHA-1, "scram-sha-256" pour une authentification SCRAM avec algorithme de hachage SHA-256, "scram-sha-512" pour une authentification SCRAM avec algorithme de hachage SHA-512, "ecdsa-nist256p-challenge" pour une authentification par challenge avec clé, "external" pour une authentification en utilisant un certificat SSL côté client, "dh-blowfish" pour un mot de passe chiffré avec blowfish (non sûr, non recommandé), "dh-aes" pour un mot de passe chiffré avec AES (non sûr, non recommandé)]
|
||||
** description: pass:none[mécanisme pour l'authentification SASL : "plain" pour un mot de passe en clair, "scram-sha-1" pour une authentification SCRAM avec algorithme de hachage SHA-1, "scram-sha-256" pour une authentification SCRAM avec algorithme de hachage SHA-256, "scram-sha-512" pour une authentification SCRAM avec algorithme de hachage SHA-512, "ecdsa-nist256p-challenge" pour une authentification par challenge avec clé, "external" pour une authentification en utilisant un certificat SSL côté client]
|
||||
** type: entier
|
||||
** valeurs: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes
|
||||
** valeurs: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
|
||||
** valeur par défaut: `+plain+`
|
||||
|
||||
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
|
||||
@@ -3075,34 +3143,6 @@
|
||||
** valeur par défaut: `+""+`
|
||||
// end::relay_options[]
|
||||
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+on+`
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::guile_options[]
|
||||
* [[option_guile.look.check_license]] *guile.look.check_license*
|
||||
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
|
||||
@@ -3117,19 +3157,33 @@
|
||||
** valeur par défaut: `+on+`
|
||||
// end::guile_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+on+`
|
||||
// end::tcl_options[]
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::perl_options[]
|
||||
* [[option_perl.look.check_license]] *perl.look.check_license*
|
||||
@@ -3159,20 +3213,6 @@
|
||||
** valeur par défaut: `+on+`
|
||||
// end::php_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::python_options[]
|
||||
* [[option_python.look.check_license]] *python.look.check_license*
|
||||
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
|
||||
@@ -3187,6 +3227,34 @@
|
||||
** valeur par défaut: `+on+`
|
||||
// end::python_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
|
||||
** type: booléen
|
||||
** valeurs: on, off
|
||||
** valeur par défaut: `+on+`
|
||||
// end::tcl_options[]
|
||||
|
||||
// tag::script_options[]
|
||||
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
|
||||
** description: pass:none[couleur du statut "chargé auto" ("a")]
|
||||
|
||||
@@ -88,6 +88,9 @@ $HOME/.config/weechat/tcl.conf::
|
||||
$HOME/.config/weechat/trigger.conf::
|
||||
fichier de configuration pour l'extension _trigger_
|
||||
|
||||
$HOME/.config/weechat/typing.conf::
|
||||
fichier de configuration pour l'extension _typing_
|
||||
|
||||
$HOME/.config/weechat/xfer.conf::
|
||||
fichier de configuration pour l'extension _xfer_
|
||||
|
||||
|
||||
+126
-111
@@ -91,6 +91,7 @@ Les répertoires principaux de WeeChat sont :
|
||||
| spell/ | Extension Spell.
|
||||
| tcl/ | API script Tcl.
|
||||
| trigger/ | Extension Trigger.
|
||||
| typing/ | Extension Typing.
|
||||
| xfer/ | Extension Xfer (IRC DCC fichier/discussion).
|
||||
| tests/ | Tests.
|
||||
| scripts/ | Tests de l'API script.
|
||||
@@ -296,6 +297,7 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|
||||
| irc-redirect.c | Redirection de la sortie des commandes IRC.
|
||||
| irc-sasl.c | Authentification SASL avec le serveur IRC.
|
||||
| irc-server.c | Communication avec le serveur IRC.
|
||||
| irc-tag.c | Fonctions pour manipuler les étiquettes de message IRC.
|
||||
| irc-upgrade.c | Sauvegarde/restauration des données IRC lors de la mise à jour de WeeChat.
|
||||
| javascript/ | Extension JavaScript.
|
||||
| weechat-js.cpp | Fonctions principales pour JavaScript (chargement/déchargement des scripts, exécution de code JavaScript).
|
||||
@@ -365,6 +367,11 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|
||||
| trigger-command.c | Commandes pour Trigger.
|
||||
| trigger-completion.c | Complétions pour Trigger.
|
||||
| trigger-config.c | Options de configuration pour Trigger (fichier trigger.conf).
|
||||
| typing/ | Extension Typing.
|
||||
| typing.c | Fonctions principales de Typing.
|
||||
| typing-bar-item.c | Objets de barre Typing.
|
||||
| typing-config.c | Options de configuration pour Typing (fichier typing.conf).
|
||||
| typing-status.c | Statut d'écriture de messages sur les tampons.
|
||||
| xfer/ | Extension Xfer (IRC DCC fichier/discussion).
|
||||
| xfer.c | Fonctions principales de Xfer.
|
||||
| xfer-buffer.c | Tampon Xfer.
|
||||
@@ -384,54 +391,61 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|
||||
|
||||
[width="100%",cols="2m,3",options="header"]
|
||||
|===
|
||||
| Chemin/fichier | Description
|
||||
| tests/ | Racine des tests.
|
||||
| tests.cpp | Programme utilisé pour lancer tous les tests.
|
||||
| scripts/ | Racine des tests de l'API script.
|
||||
| test-scripts.cpp | Programme utilisé pour lancer les tests de l'API script.
|
||||
| python/ | Scripts Python pour générer et lancer les tests de l'API script.
|
||||
| testapigen.py | Script Python générant des scripts dans tous les languages pour tester l'API script.
|
||||
| testapi.py | Script Python avec les tests API, utilisé par le script testapigen.py.
|
||||
| unparse.py | Conversion de code Python vers d'autres langages, utilisé par le script testapigen.py.
|
||||
| unit/ | Racine des tests unitaires.
|
||||
| test-plugins.cpp | Tests : extensions.
|
||||
| core/ | Racine des tests unitaires pour le cœur.
|
||||
| test-core-arraylist.cpp | Tests : listes avec tableau (« arraylists »).
|
||||
| test-core-calc.cpp | Tests : calcul d'expressions.
|
||||
| test-core-crypto.cpp | Tests : fonctions cryptographiques.
|
||||
| test-core-dir.cpp | Tests : répertoires/fichiers.
|
||||
| test-core-eval.cpp | Tests : évaluation d'expressions.
|
||||
| test-core-hashtble.cpp | Tests : tables de hachage.
|
||||
| test-core-hdata.cpp | Tests : hdata.
|
||||
| test-core-hook.cpp | Tests : hooks.
|
||||
| test-core-infolist.cpp | Tests : infolists.
|
||||
| test-core-list.cpp | Tests : listes.
|
||||
| test-core-network.cpp | Tests : fonctions réseau.
|
||||
| test-core-secure.cpp | Tests : données sécurisées.
|
||||
| test-core-signal.cpp | Tests : signaux.
|
||||
| test-core-string.cpp | Tests : chaînes.
|
||||
| test-core-url.cpp | Tests : URLs.
|
||||
| test-core-utf8.cpp | Tests : UTF-8.
|
||||
| test-core-util.cpp | Tests : fonctions utiles.
|
||||
| gui/ | Racine des tests unitaires pour les interfaces.
|
||||
| test-gui-color.cpp | Tests : couleurs.
|
||||
| test-gui-line.cpp | Tests : lignes.
|
||||
| test-gui-nick.cpp | Tests : pseudos.
|
||||
| plugins/ | Racine des tests unitaires pour les extensions.
|
||||
| irc/ | Racine des tests unitaires pour l'extension IRC.
|
||||
| test-irc-channel.cpp | Tests : canaux IRC.
|
||||
| test-irc-color.cpp | Tests : couleurs IRC.
|
||||
| test-irc-config.cpp | Tests : configuration IRC.
|
||||
| test-irc-ignore.cpp | Tests : ignores IRC.
|
||||
| test-irc-message.cpp | Tests : messages IRC.
|
||||
| test-irc-mode.cpp | Tests : modes IRC.
|
||||
| test-irc-nick.cpp | Tests : pseudos IRC.
|
||||
| test-irc-protocol.cpp | Tests : protocole IRC.
|
||||
| test-irc-server.cpp | Tests : serveur IRC.
|
||||
| trigger/ | Racine des tests unitaires pour l'extension trigger.
|
||||
| test-trigger.cpp | Tests : triggers.
|
||||
| relay/ | Racine des tests unitaires pour l'extension Relay.
|
||||
| test-relay-auth.cpp | Tests : authentification des clients.
|
||||
| Chemin/fichier | Description
|
||||
| tests/ | Racine des tests.
|
||||
| tests.cpp | Programme utilisé pour lancer tous les tests.
|
||||
| scripts/ | Racine des tests de l'API script.
|
||||
| test-scripts.cpp | Programme utilisé pour lancer les tests de l'API script.
|
||||
| python/ | Scripts Python pour générer et lancer les tests de l'API script.
|
||||
| testapigen.py | Script Python générant des scripts dans tous les languages pour tester l'API script.
|
||||
| testapi.py | Script Python avec les tests API, utilisé par le script testapigen.py.
|
||||
| unparse.py | Conversion de code Python vers d'autres langages, utilisé par le script testapigen.py.
|
||||
| unit/ | Racine des tests unitaires.
|
||||
| test-plugins.cpp | Tests : extensions.
|
||||
| core/ | Racine des tests unitaires pour le cœur.
|
||||
| test-core-arraylist.cpp | Tests : listes avec tableau (« arraylists »).
|
||||
| test-core-calc.cpp | Tests : calcul d'expressions.
|
||||
| test-core-config-file.cpp | Tests : fichiers de configuration.
|
||||
| test-core-crypto.cpp | Tests : fonctions cryptographiques.
|
||||
| test-core-dir.cpp | Tests : répertoires/fichiers.
|
||||
| test-core-eval.cpp | Tests : évaluation d'expressions.
|
||||
| test-core-hashtble.cpp | Tests : tables de hachage.
|
||||
| test-core-hdata.cpp | Tests : hdata.
|
||||
| test-core-hook.cpp | Tests : hooks.
|
||||
| test-core-infolist.cpp | Tests : infolists.
|
||||
| test-core-list.cpp | Tests : listes.
|
||||
| test-core-network.cpp | Tests : fonctions réseau.
|
||||
| test-core-secure.cpp | Tests : données sécurisées.
|
||||
| test-core-signal.cpp | Tests : signaux.
|
||||
| test-core-string.cpp | Tests : chaînes.
|
||||
| test-core-url.cpp | Tests : URLs.
|
||||
| test-core-utf8.cpp | Tests : UTF-8.
|
||||
| test-core-util.cpp | Tests : fonctions utiles.
|
||||
| gui/ | Racine des tests unitaires pour les interfaces.
|
||||
| test-gui-color.cpp | Tests : couleurs.
|
||||
| test-gui-line.cpp | Tests : lignes.
|
||||
| test-gui-nick.cpp | Tests : pseudos.
|
||||
| plugins/ | Racine des tests unitaires pour les extensions.
|
||||
| irc/ | Racine des tests unitaires pour l'extension IRC.
|
||||
| test-irc-buffer.cpp | Tests : tampons IRC.
|
||||
| test-irc-channel.cpp | Tests : canaux IRC.
|
||||
| test-irc-color.cpp | Tests : couleurs IRC.
|
||||
| test-irc-config.cpp | Tests : configuration IRC.
|
||||
| test-irc-ignore.cpp | Tests : ignores IRC.
|
||||
| test-irc-message.cpp | Tests : messages IRC.
|
||||
| test-irc-mode.cpp | Tests : modes IRC.
|
||||
| test-irc-nick.cpp | Tests : pseudos IRC.
|
||||
| test-irc-protocol.cpp | Tests : protocole IRC.
|
||||
| test-irc-sasl.cpp | Tests : authentification SASL avec le protocole IRC.
|
||||
| test-irc-server.cpp | Tests : serveur IRC.
|
||||
| trigger/ | Racine des tests unitaires pour l'extension trigger.
|
||||
| test-trigger.cpp | Tests : triggers.
|
||||
| test-trigger-config.cpp | Tests : configuration trigger.
|
||||
| typing/ | Racine des tests unitaires pour l'extension typing.
|
||||
| test-typing.cpp | Tests : typing.
|
||||
| test-typing-status.cpp | Tests : statut d'écriture.
|
||||
| relay/ | Racine des tests unitaires pour l'extension Relay.
|
||||
| test-relay-auth.cpp | Tests : authentification des clients.
|
||||
|===
|
||||
|
||||
[[documentation_translations]]
|
||||
@@ -453,7 +467,6 @@ Fichiers de documentation :
|
||||
| weechat_quickstart.XX.adoc | link:weechat_quickstart.fr.html[Guide de démarrage].
|
||||
| weechat_relay_protocol.XX.adoc | link:weechat_relay_protocol.fr.html[Protocole Relay (pour les interfaces distantes)].
|
||||
| weechat_scripting.XX.adoc | link:weechat_scripting.fr.html[Guide pour scripts].
|
||||
| weechat_tester.XX.adoc | link:weechat_tester.fr.html[Guide du testeur].
|
||||
| weechat_user.XX.adoc | link:weechat_user.fr.html[Guide utilisateur].
|
||||
| includes/ | Fichiers inclus dans la documentation.
|
||||
| autogen_api_completions.XX.adoc | Fichier auto-généré pour la Référence API extension : complétions (ne *JAMAIS* mettre à jour manuellement !).
|
||||
@@ -499,7 +512,7 @@ fichiers sont dans le répertoire _po/_ :
|
||||
|
||||
Exemple en C :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* weechat.c - core functions for WeeChat
|
||||
@@ -540,7 +553,7 @@ Quelques règles basiques que vous *devez* suivre quand vous écrivez du code C
|
||||
|
||||
Exemple :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* Checks if a string with boolean value is valid.
|
||||
@@ -573,7 +586,7 @@ foo ()
|
||||
* Initialisez les variables locales après la déclaration, dans le corps de la
|
||||
fonction, exemple :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
void
|
||||
foo ()
|
||||
@@ -593,7 +606,7 @@ foo ()
|
||||
nombre d'espaces utilisés sur la ligne au dessus de l'accolade ouvrante (le
|
||||
`if` dans l'exemple) :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
if (nicks_count == 1)
|
||||
{
|
||||
@@ -604,7 +617,7 @@ if (nicks_count == 1)
|
||||
* Utilisez des lignes vides pour séparer différents blocs dans les fonctions, et
|
||||
si possible ajoutez un commentaire pour chacun, comme ceci :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* Sends a message from out queue.
|
||||
@@ -648,7 +661,7 @@ irc_server_outqueue_send (struct t_irc_server *server)
|
||||
conditions avec un opérateur (pas nécessaire pour un booléen simple), comme
|
||||
ceci :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
if (something)
|
||||
{
|
||||
@@ -672,7 +685,7 @@ else
|
||||
|
||||
* Indentez les `switch` comme ceci :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
switch (string[0])
|
||||
{
|
||||
@@ -691,7 +704,7 @@ switch (string[0])
|
||||
* Utilisez `typedef` pur les prototypes de fonctions mais pas pour les
|
||||
structures :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
typedef int (t_hook_callback_fd)(void *data, int fd);
|
||||
|
||||
@@ -773,7 +786,7 @@ Les structures ont le nom _t_X_Y_ ou _t_X_Y_Z_ :
|
||||
|
||||
Exemple : un pseudo IRC (de _src/plugins/irc/irc-nick.h_) :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_irc_nick
|
||||
{
|
||||
@@ -803,7 +816,7 @@ _last_X_ (où _X_ est le nom de la variable, en utilisant le singulier).
|
||||
|
||||
Exemple : fenêtres (de _src/gui/gui-window.c_) :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_gui_window *gui_windows = NULL; /* first window */
|
||||
struct t_gui_window *last_gui_window = NULL; /* last window */
|
||||
@@ -823,7 +836,7 @@ La convention pour les noms des fonctions est le même que celui des
|
||||
|
||||
Exemple : création d'une nouvelle fenêtre (de _src/gui/gui-window.c_) :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* Creates a new window.
|
||||
@@ -861,7 +874,7 @@ pointeur vers le nœud précédent/suivant.
|
||||
|
||||
Exemple : liste des tampons (de _src/gui/gui-buffer.h_) :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_gui_buffer
|
||||
{
|
||||
@@ -876,7 +889,7 @@ struct t_gui_buffer
|
||||
|
||||
Et les deux pointeurs vers la tête et la fin de liste :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_gui_buffer *gui_buffers = NULL; /* first buffer */
|
||||
struct t_gui_buffer *last_gui_buffer = NULL; /* last buffer */
|
||||
@@ -892,18 +905,10 @@ Tous les attributs/couleurs sont préfixés par un caractère dans la chaîne, q
|
||||
peuvent être :
|
||||
|
||||
* _0x19_ : code couleur (suivi par un/des code(s) couleur)
|
||||
* _0x1A_ : activer un attribut (suivi par un attribut sur un caractère)
|
||||
* _0x1B_ : supprimer un attribut (suivi par un attribut sur un caractère)
|
||||
* _0x1A_ : activer un attribut (suivi par un attribut brut sur un caractère)
|
||||
* _0x1B_ : supprimer un attribut (suivi par un attribut brut sur un caractère)
|
||||
* _0x1C_ : réinitialiser (rien après)
|
||||
|
||||
Les attributs autorisés sont (un ou plusieurs caractères) :
|
||||
|
||||
* `+*+` : gras
|
||||
* `+!+` : vidéo inverse
|
||||
* `+/+` : italique
|
||||
* `+_+` : souligné
|
||||
* `+|+` : garder les attributs
|
||||
|
||||
Les couleurs possibles sont :
|
||||
|
||||
* couleur standard : attributs facultatifs + nombre sur 2 digits
|
||||
@@ -912,47 +917,57 @@ Les couleurs possibles sont :
|
||||
Dans le tableau qui suit, les conventions suivantes sont utilisées :
|
||||
|
||||
* `STD` : couleur standard (2 digits)
|
||||
* `(A)STD` : couleur standard avec des attributs facultatifs
|
||||
* `(ATTR)STD` : couleur standard avec des attributs facultatifs
|
||||
(attributs + 2 digits)
|
||||
* `EXT` : couleur étendue (`+@+` + 5 digits)
|
||||
* `(A)EXT` : couleur étendue avec des attributs facultatifs
|
||||
* `(ATTR)EXT` : couleur étendue avec des attributs facultatifs
|
||||
(`+@+` + attributs + 5 digits)
|
||||
* `ATTR` : un caractère d'attribut (`+*+`, `+!+`, `+/+`, `+_+` ou `+|+`)
|
||||
* `(ATTR)` : un ou plusieurs caractères d'attribut :
|
||||
** `+*+` : gras
|
||||
** `+!+` : vidéo inverse
|
||||
** `+/+` : italique
|
||||
** `+_+` : souligné
|
||||
** `+|+` : garder les attributs
|
||||
* `(a)` : un caractère d'attribut brut :
|
||||
** _0x01_ : gras
|
||||
** _0x02_ : vidéo inverse
|
||||
** _0x03_ : italique
|
||||
** _0x04_ : souligné
|
||||
|
||||
Toutes les combinaisons sont résumées dans ce tableau :
|
||||
|
||||
[width="100%",cols="4,2,2,8",options="header"]
|
||||
[width="100%",cols="4,3,2,8",options="header"]
|
||||
|===
|
||||
| Code | Exemple | Aires | Description
|
||||
| [hex]#19# + STD | [hex]#19# `+01+` | chat + barres | Définir les attributs et la couleur en utilisant une option, voir le tableau ci-dessous.
|
||||
| [hex]#19# + EXT | [hex]#19# `+@00001+` | chat | Définir une couleur avec la paire ncurses (utilisé seulement sur le tampon `/color`).
|
||||
| [hex]#19# + "F" + (A)STD | [hex]#19# `+F*05+` | chat + barres | Définir la couleur de texte (couleur WeeChat).
|
||||
| [hex]#19# + "F" + (A)EXT | [hex]#19# `+F@00214+` | chat + barres | Définir la couleur de texte (couleur étendue).
|
||||
| [hex]#19# + "B" + STD | [hex]#19# `+B05+` | chat + barres | Définir la couleur de fond (couleur WeeChat).
|
||||
| [hex]#19# + "B" + EXT | [hex]#19# `+B@00124+` | chat + barres | Définir le couleur de fond (couleur étendue).
|
||||
| [hex]#19# + "*" + (A)STD | [hex]#19# `+*05+` | chat + barres | Définir la couleur de texte (couleur WeeChat).
|
||||
| [hex]#19# + "*" + (A)EXT | [hex]#19# `+*@00214+` | chat + barres | Définir la couleur de texte (couleur étendue).
|
||||
| [hex]#19# + "*" + (A)STD + "," + STD ^(1)^ | [hex]#19# `+*08,05+` | chat + barres | Définir la couleur de texte/fond (couleurs WeeChat).
|
||||
| [hex]#19# + "*" + (A)STD + "," + EXT ^(1)^ | [hex]#19# `+*01,@00214+` | chat + barres | Définir la couleur de texte (couleur WeeChat) et de fond (couleur étendue).
|
||||
| [hex]#19# + "*" + (A)EXT + "," + STD ^(1)^ | [hex]#19# `+*@00214,05+` | chat + barres | Définir la couleur de texte (couleur étendue) et de fond (couleur WeeChat).
|
||||
| [hex]#19# + "*" + (A)EXT + "," + EXT ^(1)^ | [hex]#19# `+*@00214,@00017+` | chat + barres | Définir la couleur de texte/fond (couleurs étendues).
|
||||
| [hex]#19# + "*" + (A)STD + "~" + STD | [hex]#19# `+*08~05+` | chat + barres | Définir la couleur de texte/fond (couleurs WeeChat).
|
||||
| [hex]#19# + "*" + (A)STD + "~" + EXT | [hex]#19# `+*01~@00214+` | chat + barres | Définir la couleur de texte (couleur WeeChat) et de fond (couleur étendue).
|
||||
| [hex]#19# + "*" + (A)EXT + "~" + STD | [hex]#19# `+*@00214~05+` | chat + barres | Définir la couleur de texte (couleur étendue) et de fond (couleur WeeChat).
|
||||
| [hex]#19# + "*" + (A)EXT + "~" + EXT | [hex]#19# `+*@00214~@00017+` | chat + barres | Définir la couleur de texte/fond (couleurs étendues).
|
||||
| [hex]#19# + "b" + "F" | [hex]#19# `+bF+` | barres | Définir la couleur de texte de la barre.
|
||||
| [hex]#19# + "b" + "D" | [hex]#19# `+bD+` | barres | Définir la couleur du délimiteur de la barre.
|
||||
| [hex]#19# + "b" + "B" | [hex]#19# `+bB+` | barres | Définir la couleur de fond de la barre.
|
||||
| [hex]#19# + "b" + "_" | [hex]#19# `+b_+` | barre input | Caractère de démarrage dans l'entrée (utilisé seulement dans l'objet "input_text").
|
||||
| [hex]#19# + "b" + "-" | [hex]#19# `+b-+` | barre input | Caractère de démarrage caché dans l'entrée (utilisé seulement dans l'objet "input_text").
|
||||
| [hex]#19# + "b" + "#" | [hex]#19# `+b#+` | barre input | Caractère de déplacement du curseur (utilisé seulement dans l'objet "input_text").
|
||||
| [hex]#19# + "b" + "i" | [hex]#19# `+bi+` | barres | Début d'objet.
|
||||
| [hex]#19# + "b" + "l" (lower L) | [hex]#19# `+bl+` | barres | Ligne de démarrage d'objet.
|
||||
| [hex]#19# + "E" | [hex]#19# `+E+` | chat + barres | Texte mis en valeur _(WeeChat ≥ 0.4.2)_.
|
||||
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + barres | Réinitialiser la couleur (garder les attributs).
|
||||
| [hex]#1A# + ATTR | [hex]#1A# `+*+` | chat + barres | Activer un attribut.
|
||||
| [hex]#1B# + ATTR | [hex]#1B# `+*+` | chat + barres | Supprimer un attribut.
|
||||
| [hex]#1C# | [hex]#1C# | chat + barres | Réinitialiser les attributs et la couleur.
|
||||
| Code | Exemple | Aires | Description
|
||||
| [hex]#19# + `STD` | [hex]#19# `+01+` | chat + barres | Définir les attributs et la couleur en utilisant une option, voir le tableau ci-dessous.
|
||||
| [hex]#19# + `EXT` | [hex]#19# `+@00001+` | chat | Définir une couleur avec la paire ncurses (utilisé seulement sur le tampon `/color`).
|
||||
| [hex]#19# + `F` + `(ATTR)STD` | [hex]#19# `+F*05+` | chat + barres | Définir la couleur de texte (couleur WeeChat).
|
||||
| [hex]#19# + `F` + `(ATTR)EXT` | [hex]#19# `+F@00214+` | chat + barres | Définir la couleur de texte (couleur étendue).
|
||||
| [hex]#19# + `B` + `STD` | [hex]#19# `+B05+` | chat + barres | Définir la couleur de fond (couleur WeeChat).
|
||||
| [hex]#19# + `B` + `EXT` | [hex]#19# `+B@00124+` | chat + barres | Définir le couleur de fond (couleur étendue).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` | [hex]#19# `+*05+` | chat + barres | Définir la couleur de texte (couleur WeeChat).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` | [hex]#19# `+*@00214+` | chat + barres | Définir la couleur de texte (couleur étendue).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `,` + `STD` ^(1)^ | [hex]#19# `+*08,05+` | chat + barres | Définir la couleur de texte/fond (couleurs WeeChat).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `,` + `EXT` ^(1)^ | [hex]#19# `+*01,@00214+` | chat + barres | Définir la couleur de texte (couleur WeeChat) et de fond (couleur étendue).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `,` + `STD` ^(1)^ | [hex]#19# `+*@00214,05+` | chat + barres | Définir la couleur de texte (couleur étendue) et de fond (couleur WeeChat).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `,` + `EXT` ^(1)^ | [hex]#19# `+*@00214,@00017+` | chat + barres | Définir la couleur de texte/fond (couleurs étendues).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `~` + `STD` | [hex]#19# `+*08~05+` | chat + barres | Définir la couleur de texte/fond (couleurs WeeChat).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `~` + `EXT` | [hex]#19# `+*01~@00214+` | chat + barres | Définir la couleur de texte (couleur WeeChat) et de fond (couleur étendue).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `~` + `STD` | [hex]#19# `+*@00214~05+` | chat + barres | Définir la couleur de texte (couleur étendue) et de fond (couleur WeeChat).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `~` + `EXT` | [hex]#19# `+*@00214~@00017+` | chat + barres | Définir la couleur de texte/fond (couleurs étendues).
|
||||
| [hex]#19# + `b` + `F` | [hex]#19# `+bF+` | barres | Définir la couleur de texte de la barre.
|
||||
| [hex]#19# + `b` + `D` | [hex]#19# `+bD+` | barres | Définir la couleur du délimiteur de la barre.
|
||||
| [hex]#19# + `b` + `B` | [hex]#19# `+bB+` | barres | Définir la couleur de fond de la barre.
|
||||
| [hex]#19# + `b` + `_` | [hex]#19# `+b_+` | barre input | Caractère de démarrage dans l'entrée (utilisé seulement dans l'objet "input_text").
|
||||
| [hex]#19# + `b` + `-` | [hex]#19# `+b-+` | barre input | Caractère de démarrage caché dans l'entrée (utilisé seulement dans l'objet "input_text").
|
||||
| [hex]#19# + `b` + `#` | [hex]#19# `+b#+` | barre input | Caractère de déplacement du curseur (utilisé seulement dans l'objet "input_text").
|
||||
| [hex]#19# + `b` + `i` | [hex]#19# `+bi+` | barres | Début d'objet.
|
||||
| [hex]#19# + `b` + `l` (lower L) | [hex]#19# `+bl+` | barres | Ligne de démarrage d'objet.
|
||||
| [hex]#19# + `E` | [hex]#19# `+E+` | chat + barres | Texte mis en valeur _(WeeChat ≥ 0.4.2)_.
|
||||
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + barres | Réinitialiser la couleur (garder les attributs).
|
||||
| [hex]#1A# + `(a)` | [hex]#1A# [hex]#01# | chat + barres | Activer un attribut.
|
||||
| [hex]#1B# + `(a)` | [hex]#1B# [hex]#01# | chat + barres | Supprimer un attribut.
|
||||
| [hex]#1C# | [hex]#1C# | chat + barres | Réinitialiser les attributs et la couleur.
|
||||
|===
|
||||
|
||||
[NOTE]
|
||||
@@ -1072,7 +1087,7 @@ Et puis des macros sont utilisées pour appeler ces fonctions.
|
||||
Par exemple, la fonction _hook_timer_ est définie dans la structure
|
||||
_t_weechat_plugin_ comme ceci :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_hook *(*hook_timer) (struct t_weechat_plugin *plugin,
|
||||
long interval,
|
||||
@@ -1085,7 +1100,7 @@ struct t_hook *(*hook_timer) (struct t_weechat_plugin *plugin,
|
||||
|
||||
Et la macro utilisée pour appeler cette fonction est :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
#define weechat_hook_timer(__interval, __align_second, __max_calls, \
|
||||
__callback, __data) \
|
||||
@@ -1096,7 +1111,7 @@ Et la macro utilisée pour appeler cette fonction est :
|
||||
|
||||
Donc dans une extension, l'appel à cette fonction sera par exemple :
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
server->hook_timer_sasl = weechat_hook_timer (timeout * 1000,
|
||||
0, 1,
|
||||
@@ -1213,7 +1228,7 @@ _doc/en/_), puis travaillez dessus.
|
||||
Les traductions manquantes dans les fichiers sont indiquées par cette chaîne :
|
||||
|
||||
----
|
||||
// TRANSLATION MISSING
|
||||
// TRANSLATION MISSING
|
||||
----
|
||||
|
||||
Vous devez traduire tout le fichier sauf les liens et les mots-clés spéciaux
|
||||
@@ -1230,7 +1245,7 @@ pour les notes, avertissements, ... Ces mots doivent être gardés tels quels :
|
||||
[CAUTION]
|
||||
----
|
||||
|
||||
Lorsqu'il y a un nom après `<<link_name>>`, alors vous devez le traduire :
|
||||
Lorsqu'il y a un nom après `+<<link_name>>+`, alors vous devez le traduire :
|
||||
|
||||
----
|
||||
<<link_name,ce texte doit être traduit>>
|
||||
|
||||
@@ -544,7 +544,7 @@ Vous pouvez simplement désactiver le mode "bracketed paste" :
|
||||
=== Comment puis-je personnaliser l'affichage pour un tout petit terminal (comme 80x25), pour ne pas perdre de place ?
|
||||
|
||||
Vous pouvez retirer les barres latérales (buflist et nicklist), changer le format
|
||||
de l'heure pour n'afficher que les heures et les secondes, désactiver l'alignement
|
||||
de l'heure pour n'afficher que les heures et les minutes, désactiver l'alignement
|
||||
des messages et définir un caractère de préfixe/suffixe pour les pseudos :
|
||||
|
||||
----
|
||||
@@ -1123,6 +1123,14 @@ $ cd ~/.cache/weechat/script
|
||||
$ curl -O https://weechat.org/files/plugins.xml.gz
|
||||
----
|
||||
|
||||
Si vous êtes sous macOS et que le fichier téléchargé a une taille de 0 octet,
|
||||
essayez de définir cette variable dans votre fichier d'initialisation du shell
|
||||
ou sur la ligne de commande, avant de démarrer WeeChat :
|
||||
|
||||
----
|
||||
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
|
||||
----
|
||||
|
||||
[[spell_dictionaries]]
|
||||
=== J'ai installé des dictionnaires aspell sur mon système, comment les utiliser sans redémarrer WeeChat ?
|
||||
|
||||
|
||||
+1149
-1165
File diff suppressed because it is too large
Load Diff
@@ -1314,6 +1314,10 @@ Le résultat est une table de hachage avec les clés suivantes
|
||||
Les étiquettes dans le message (peut être vide). |
|
||||
`+time=2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| tag_xxx | 3.3 |
|
||||
Valeur de l'étiquette "xxx" sans les échappements (une clé par étiquette). |
|
||||
`+2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| message_without_tags | 0.4.0 |
|
||||
Le message sans les étiquettes (la même chose que le message s'il n'y a pas
|
||||
d'étiquettes). |
|
||||
@@ -1371,10 +1375,12 @@ Le résultat est une table de hachage avec les clés suivantes
|
||||
----
|
||||
dict = weechat.info_get_hashtable(
|
||||
"irc_message_parse",
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
|
||||
# dict == {
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z",
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
|
||||
# "tag_time": "2015-06-27T16:40:35.000Z",
|
||||
# "tag_tag2": "value space",
|
||||
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
||||
# "nick": "nick",
|
||||
# "user": "user",
|
||||
@@ -1383,10 +1389,10 @@ dict = weechat.info_get_hashtable(
|
||||
# "channel": "#weechat",
|
||||
# "arguments": "#weechat :hello!",
|
||||
# "text": "hello!",
|
||||
# "pos_command": "47",
|
||||
# "pos_arguments": "55",
|
||||
# "pos_channel": "55",
|
||||
# "pos_text": "65",
|
||||
# "pos_command": "65",
|
||||
# "pos_arguments": "73",
|
||||
# "pos_channel": "73",
|
||||
# "pos_text": "83",
|
||||
# }
|
||||
----
|
||||
|
||||
|
||||
@@ -1,138 +0,0 @@
|
||||
= Guide du testeur WeeChat
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: fr
|
||||
:toc: left
|
||||
:toc-title: Table des matières
|
||||
:sectnums:
|
||||
:docinfo1:
|
||||
|
||||
|
||||
[[purpose]]
|
||||
== Objet
|
||||
|
||||
Beaucoup d'utilisateurs nous demandent comment aider WeeChat. La façon
|
||||
la plus facile (et aussi la plus rusée) consiste à le tester !
|
||||
|
||||
Le test est une partie très importante du développement de logiciel et
|
||||
ne devrait pas être sous-estimé. Lorsque de nouvelles fonctionnalités
|
||||
sont implémentées, elles doivent être testées, mais pour certaines
|
||||
fonctionnalités il y a trop de cas à tester et les développeurs ne
|
||||
peuvent pas tout tester.
|
||||
|
||||
Par exemple : l'extension charset introduite dans WeeChat WeeChat 0.2.2 : aucun
|
||||
de nous (développeurs, contributeurs et testeurs) n'utilisait de canaux avec
|
||||
des caractères spéciaux dans leurs noms et quand la version 0.2.2 a été rendue
|
||||
disponible, nous avons reçu de nombreuses remontées d'utilisateurs russes.
|
||||
Si nous avons plus de testeurs, cela ne devrait pas arriver à nouveau dans le
|
||||
futur.
|
||||
|
||||
Tester les versions stables de WeeChat est inutile car les
|
||||
développeurs sont constamment occupés à implémenter de nouvelles
|
||||
fonctionnalités (et à corriger des anciens bugs).
|
||||
|
||||
|
||||
[[prepare_system]]
|
||||
== Préparez votre système
|
||||
|
||||
Cela nous aiderait beaucoup si vous activiez les fichiers _core_ Linux : si
|
||||
WeeChat se plante, Linux écrit un fichier _core_. Ce fichier contient des
|
||||
informations importantes pour le debug, pour savoir exactement où le problème
|
||||
se situe dans WeeChat).
|
||||
|
||||
Si vous utilisez le shell _bash_, ajoutez cette ligne dans votre _~/.bashrc_ :
|
||||
|
||||
----
|
||||
ulimit -c unlimited
|
||||
----
|
||||
|
||||
|
||||
[[download]]
|
||||
== Téléchargement de la version devel
|
||||
|
||||
Le code tout frais (avec les derniers bugs et fonctionnalités) est stocké dans
|
||||
GIT.
|
||||
|
||||
Vous pouvez décider de le construire manuellement (méthode recommandée) :
|
||||
|
||||
* La version GIT peut être construite et installée en parallèle de la version
|
||||
stable,
|
||||
* Vous n'avez pas besoin d'accès root ni de sacrifier votre version stable de
|
||||
WeeChat.
|
||||
|
||||
[[get_sources]]
|
||||
=== Obtenir et compiler les sources
|
||||
|
||||
Créez tout d'abord un répertoire, par exemple _weechat-git_ :
|
||||
|
||||
----
|
||||
$ mkdir ~/weechat-git
|
||||
$ cd ~/weechat-git
|
||||
----
|
||||
|
||||
Si vous avez git installé, vous pouvez cloner la base GIT (recommandé) :
|
||||
|
||||
----
|
||||
$ git clone https://github.com/weechat/weechat.git
|
||||
$ cd weechat
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Plus tard, vous pourrez utiliser la commande `git pull` dans ce répertoire
|
||||
pour obtenir juste les deltas avec la version d'aujourd'hui.
|
||||
|
||||
Sinon vous pouvez installer le paquet _devel_ :
|
||||
|
||||
----
|
||||
$ wget https://weechat.org/files/src/weechat-devel.tar.bz2
|
||||
$ tar xvjf weechat-devel.tar.bz2
|
||||
$ cd weechat-devel
|
||||
----
|
||||
|
||||
Pour compiler les sources, CMake est recommandé :
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/weechat-git -DWEECHAT_HOME=~/.weechat-dev -DCMAKE_BUILD_TYPE=Debug
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
Si vous n'avez pas CMake, il est toujours possible d'utiliser les autotools :
|
||||
|
||||
----
|
||||
$ ./autogen.sh
|
||||
$ ./configure --prefix=$HOME/weechat-git WEECHAT_HOME=~/.weechat-dev
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
[[install_binary_package]]
|
||||
=== Obtenir un paquet binaire
|
||||
|
||||
Selon votre distribution Linux :
|
||||
|
||||
* Debian : https://weechat.org/download/debian
|
||||
* Gentoo : https://weechat.org/download
|
||||
* ArchLinux : PKGBUILD depuis https://aur.archlinux.org/
|
||||
* autre : nous ne savons pas ! Eheh.
|
||||
|
||||
|
||||
[[run]]
|
||||
== Lancer WeeChat
|
||||
|
||||
La commande est :
|
||||
|
||||
----
|
||||
$ ~/weechat-git/bin/weechat
|
||||
----
|
||||
|
||||
Si vous êtes encore éveillé, vous devriez voir une interface familière et
|
||||
pouvoir vous vanter d'utiliser la version la plus récente possible de WeeChat ;)
|
||||
|
||||
Maintenant si vous obtenez un comportement étrange ou un plantage, n'hésitez
|
||||
pas à nous en avertir sur _#weechat_, serveur _irc.libera.chat_.
|
||||
|
||||
S'il n'y a pas de plantage, dites-le nous aussi, nous avons besoin de votre
|
||||
retour et de vos impressions !
|
||||
+2247
-1785
File diff suppressed because it is too large
Load Diff
@@ -122,17 +122,4 @@ if(ENABLE_DOC)
|
||||
add_custom_target(doc-quickstart-it ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.it.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.it.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# tester's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.it.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.it.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.it.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.it.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_tester.it.html"
|
||||
)
|
||||
add_custom_target(doc-tester-it ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.it.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.it.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
endif()
|
||||
|
||||
+1
-7
@@ -28,7 +28,6 @@ EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_scripting.it.adoc \
|
||||
weechat_faq.it.adoc \
|
||||
weechat_quickstart.it.adoc \
|
||||
weechat_tester.it.adoc \
|
||||
includes/autogen_api_completions.it.adoc \
|
||||
includes/autogen_api_hdata.it.adoc \
|
||||
includes/autogen_api_infolists.it.adoc \
|
||||
@@ -54,8 +53,7 @@ if DOC
|
||||
weechat_plugin_api.it.html \
|
||||
weechat_scripting.it.html \
|
||||
weechat_faq.it.html \
|
||||
weechat_quickstart.it.html \
|
||||
weechat_tester.it.html
|
||||
weechat_quickstart.it.html
|
||||
doc_install = install-doc
|
||||
doc_uninstall = uninstall-doc
|
||||
endif
|
||||
@@ -87,10 +85,6 @@ weechat_faq.it.html: weechat_faq.it.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
weechat_quickstart.it.html: weechat_quickstart.it.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.it.html $(abs_top_srcdir)/doc/it/weechat_quickstart.it.adoc
|
||||
|
||||
# tester's guide
|
||||
weechat_tester.it.html: weechat_tester.it.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.it.html $(abs_top_srcdir)/doc/it/weechat_tester.it.adoc
|
||||
|
||||
# install man/docs
|
||||
|
||||
install-data-hook: $(man_install) $(doc_install)
|
||||
|
||||
@@ -79,6 +79,8 @@ _last_nick_speaking_time_ (pointer, hdata: "irc_channel_speaking") +
|
||||
_modelists_ (pointer, hdata: "irc_modelist") +
|
||||
_last_modelist_ (pointer, hdata: "irc_modelist") +
|
||||
_join_smart_filtered_ (hashtable) +
|
||||
_typing_state_ (integer) +
|
||||
_typing_status_sent_ (time) +
|
||||
_buffer_ (pointer, hdata: "buffer") +
|
||||
_buffer_as_string_ (string) +
|
||||
_prev_channel_ (pointer, hdata: "irc_channel") +
|
||||
@@ -237,6 +239,8 @@ _sasl_scram_client_first_ (string) +
|
||||
_sasl_scram_salted_pwd_ (other) +
|
||||
_sasl_scram_salted_pwd_size_ (integer) +
|
||||
_sasl_scram_auth_message_ (string) +
|
||||
_sasl_temp_username_ (string) +
|
||||
_sasl_temp_password_ (string) +
|
||||
_is_connected_ (integer) +
|
||||
_ssl_connected_ (integer) +
|
||||
_disconnected_ (integer) +
|
||||
@@ -267,6 +271,10 @@ _chantypes_ (string) +
|
||||
_chanmodes_ (string) +
|
||||
_monitor_ (integer) +
|
||||
_monitor_time_ (time) +
|
||||
_clienttagdeny_ (string) +
|
||||
_clienttagdeny_count_ (integer) +
|
||||
_clienttagdeny_array_ (string, array_size: "clienttagdeny_count") +
|
||||
_typing_allowed_ (integer) +
|
||||
_reconnect_delay_ (integer) +
|
||||
_reconnect_start_ (time) +
|
||||
_command_time_ (time) +
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|===
|
||||
| Plugin | Nome | Descrizione | Tabella hash (input) | Tabella hash (output)
|
||||
|
||||
| irc | irc_message_parse | controlla un messaggio IRC | "message": messaggio IRC, "server": nome server (opzionale) | "tags": tags, "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
|
||||
| irc | irc_message_parse | controlla un messaggio IRC | "message": messaggio IRC, "server": nome server (opzionale) | "tags": tags, "tag_xxx": unescaped value of tag "xxx" (one key per tag), "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "param1" ... "paramN": parsed command parameters, "num_params": number of parsed command parameters, "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
|
||||
|
||||
| irc | irc_message_split | split an IRC message (to fit in 512 bytes by default) | "message": messaggio IRC, "server": nome server (opzionale) | "msg1" ... "msgN": messaggio da inviare (senza "\r\n" finale), "args1" ... "argsN": argomenti dei messaggi, "count": numero di messaggi
|
||||
|
||||
|
||||
@@ -4,18 +4,26 @@
|
||||
//
|
||||
|
||||
// tag::plugins_priority[]
|
||||
. charset (15000)
|
||||
. logger (14000)
|
||||
. exec (13000)
|
||||
. trigger (12000)
|
||||
. spell (11000)
|
||||
. alias (10000)
|
||||
. buflist (9000)
|
||||
. fifo (8000)
|
||||
. charset (16000)
|
||||
. logger (15000)
|
||||
. exec (14000)
|
||||
. trigger (13000)
|
||||
. spell (12000)
|
||||
. alias (11000)
|
||||
. buflist (10000)
|
||||
. fifo (9000)
|
||||
. typing (8000)
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile, javascript, lua, perl, php, python, ruby, tcl (4000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
// end::plugins_priority[]
|
||||
|
||||
@@ -17,10 +17,11 @@ destinazione: nome server
|
||||
* `+allchan+`: esegue un comando su tutti i canali di tutti i server connessi
|
||||
|
||||
----
|
||||
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command>
|
||||
[-current] -include=<channel>[,<channel>...] <command>
|
||||
/allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
|
||||
[-current] [-parted] -include=<channel>[,<channel>...] <command>
|
||||
|
||||
-current: execute command for channels of current server only
|
||||
-parted: execute on parted channels only
|
||||
-exclude: exclude some channels (wildcard "*" is allowed)
|
||||
-include: include only some channels (wildcard "*" is allowed)
|
||||
command: command to execute (or text to send to buffer if command does not start with '/')
|
||||
@@ -41,6 +42,8 @@ Examples:
|
||||
/allchan -exclude=#weechat,#linux* hello
|
||||
say 'hello' on all channels beginning with #linux:
|
||||
/allchan -include=#linux* hello
|
||||
close all buffers with parted channels:
|
||||
/allchan -parted /close
|
||||
----
|
||||
|
||||
[[command_irc_allpv]]
|
||||
@@ -100,6 +103,26 @@ Examples:
|
||||
/allserv /whois $nick
|
||||
----
|
||||
|
||||
[[command_irc_auth]]
|
||||
* `+auth+`: authenticate with SASL
|
||||
|
||||
----
|
||||
/auth [<username> <password>]
|
||||
|
||||
username: SASL username (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
|
||||
password: SASL password or path to file with private key (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
|
||||
|
||||
If username and password are not provided, the values from server options "sasl_username" and "sasl_password" (or "sasl_key") are used.
|
||||
|
||||
Examples:
|
||||
authenticate with username/password defined in the server:
|
||||
/auth
|
||||
authenticate as a different user:
|
||||
/auth user2 password2
|
||||
authenticate as a different user with mechanism ecdsa-nist256p-challenge:
|
||||
/auth user2 ${weechat_config_dir}/ecdsa2.pem
|
||||
----
|
||||
|
||||
[[command_irc_ban]]
|
||||
* `+ban+`: banna nick oppure host
|
||||
|
||||
@@ -129,7 +152,7 @@ Without argument, this command displays the ban list for current channel.
|
||||
|
||||
Without argument, "ls" and "list" are sent.
|
||||
|
||||
Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, multi-prefix, server-time, userhost-in-names.
|
||||
Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.
|
||||
|
||||
The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities).
|
||||
|
||||
@@ -808,6 +831,15 @@ mask: elenca solo i servizi che corrispondono a questa mask
|
||||
tipo: elenca solo i servizi di questo tipo
|
||||
----
|
||||
|
||||
[[command_irc_setname]]
|
||||
* `+setname+`: set real name
|
||||
|
||||
----
|
||||
/setname <realname>
|
||||
|
||||
realname: new real name
|
||||
----
|
||||
|
||||
[[command_irc_squery]]
|
||||
* `+squery+`: invia un messaggio ad un servizio
|
||||
|
||||
@@ -1271,7 +1303,7 @@ Examples:
|
||||
/debug list
|
||||
set <plugin> <level>
|
||||
dump [<plugin>]
|
||||
buffer|color|infolists|memory|tags|term|windows
|
||||
buffer|color|infolists|libs|certs|memory|tags|term|windows
|
||||
mouse|cursor [verbose]
|
||||
hdata [free]
|
||||
time <command>
|
||||
@@ -1289,6 +1321,7 @@ Examples:
|
||||
hooks: display infos about hooks
|
||||
infolists: display infos about infolists
|
||||
libs: display infos about external libraries used
|
||||
certs: display number of loaded trusted certificate authorities
|
||||
memory: display infos about memory usage
|
||||
mouse: toggle debug for mouse
|
||||
tags: display tags for lines
|
||||
@@ -1342,27 +1375,32 @@ To force a string comparison, you can add double quotes around each expression,
|
||||
|
||||
Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
|
||||
1. the string itself without evaluation (format: "raw:xxx")
|
||||
2. an evaluated sub-string (format: "eval:xxx")
|
||||
3. an evaluated condition (format: "eval_cond:xxx")
|
||||
4. a string with escaped chars (format: "esc:xxx" or "\xxx")
|
||||
5. a string with chars to hide (format: "hide:char,string")
|
||||
6. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
|
||||
2. a user-defined variable (format: "name")
|
||||
3. an evaluated sub-string (format: "eval:xxx")
|
||||
4. an evaluated condition (format: "eval_cond:xxx")
|
||||
5. a string with escaped chars (format: "esc:xxx" or "\xxx")
|
||||
6. a string with chars to hide (format: "hide:char,string")
|
||||
7. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
|
||||
or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
|
||||
7. a reversed string (format: "rev:xxx" or "revscr:xxx")
|
||||
8. a repeated string (format: "repeat:count,string")
|
||||
9. length of a string (format: "length:xxx" or "lengthscr:xxx")
|
||||
10. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
||||
11. a modifier (format: "modifier:name,data,string")
|
||||
12. an info (format: "info:name,arguments", arguments are optional)
|
||||
13. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
|
||||
14. current date/time (format: "date" or "date:format")
|
||||
15. an environment variable (format: "env:XXX")
|
||||
16. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
||||
17. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
|
||||
18. a translated string (format: "translate:xxx")
|
||||
19. an option (format: "file.section.option")
|
||||
20. a local variable in buffer
|
||||
21. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
|
||||
8. a reversed string (format: "rev:xxx" or "revscr:xxx")
|
||||
9. a repeated string (format: "repeat:count,string")
|
||||
10. length of a string (format: "length:xxx" or "lengthscr:xxx")
|
||||
11. split of a string (format: "split:number,separators,flags,xxx")
|
||||
12. split of shell argmuents (format: "split_shell:number,xxx")
|
||||
13. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
||||
14. a modifier (format: "modifier:name,data,string")
|
||||
15. an info (format: "info:name,arguments", arguments are optional)
|
||||
16. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
|
||||
17. current date/time (format: "date" or "date:format")
|
||||
18. an environment variable (format: "env:XXX")
|
||||
19. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
||||
20. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
|
||||
21. a random integer number (format: "random:min,max")
|
||||
22. a translated string (format: "translate:xxx")
|
||||
23. define a user variable (format: "define:name,value")
|
||||
24. an option (format: "file.section.option")
|
||||
25. a local variable in buffer
|
||||
26. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
|
||||
Format for hdata can be one of following:
|
||||
hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed)
|
||||
hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example:
|
||||
@@ -1374,29 +1412,39 @@ Format for hdata can be one of following:
|
||||
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".
|
||||
|
||||
Examples (simple strings):
|
||||
/eval -n ${raw:${info:version}} ==> ${info:version}
|
||||
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
|
||||
/eval -n ${info:version} ==> 0.4.3
|
||||
/eval -n ${env:HOME} ==> /home/user
|
||||
/eval -n ${weechat.look.scroll_amount} ==> 3
|
||||
/eval -n ${sec.data.password} ==> secret
|
||||
/eval -n ${window} ==> 0x2549aa0
|
||||
/eval -n ${window.buffer} ==> 0x2549320
|
||||
/eval -n ${window.buffer.full_name} ==> core.weechat
|
||||
/eval -n ${window.buffer.number} ==> 1
|
||||
/eval -n ${\t} ==> <tab>
|
||||
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
||||
/eval -n ${cut:3,+,test} ==> tes+
|
||||
/eval -n ${cut:+3,+,test} ==> te+
|
||||
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${translate:Plugin} ==> Extension
|
||||
/eval -n ${raw:${info:version}} ==> ${info:version}
|
||||
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
|
||||
/eval -n ${info:version} ==> 0.4.3
|
||||
/eval -n ${env:HOME} ==> /home/user
|
||||
/eval -n ${weechat.look.scroll_amount} ==> 3
|
||||
/eval -n ${sec.data.password} ==> secret
|
||||
/eval -n ${window} ==> 0x2549aa0
|
||||
/eval -n ${window.buffer} ==> 0x2549320
|
||||
/eval -n ${window.buffer.full_name} ==> core.weechat
|
||||
/eval -n ${window.buffer.number} ==> 1
|
||||
/eval -n ${\t} ==> <tab>
|
||||
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
||||
/eval -n ${cut:3,+,test} ==> tes+
|
||||
/eval -n ${cut:+3,+,test} ==> te+
|
||||
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${split:1,,,abc,def,ghi} ==> abc
|
||||
/eval -n ${split:-1,,,abc,def,ghi} ==> ghi
|
||||
/eval -n ${split:count,,,abc,def,ghi} ==> 3
|
||||
/eval -n ${split:random,,,abc,def,ghi} ==> def
|
||||
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
|
||||
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
|
||||
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${random:0,10} ==> 3
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${translate:Plugin} ==> Extension
|
||||
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
|
||||
|
||||
Examples (conditions):
|
||||
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
||||
@@ -1549,6 +1597,9 @@ list of actions:
|
||||
jump_previously_visited_buffer: jump to previously visited buffer
|
||||
jump_next_visited_buffer: jump to next visited buffer
|
||||
hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight)
|
||||
hotlist_remove_buffer: remove current buffer from hotlist
|
||||
hotlist_restore_buffer: restore latest hotlist removed in the current buffer
|
||||
hotlist_restore_all: restore latest hotlist removed in all buffers
|
||||
grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds)
|
||||
grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds)
|
||||
grab_mouse: grab mouse event code
|
||||
@@ -1644,6 +1695,8 @@ windows: store/apply only windows (buffer displayed by each window)
|
||||
Without argument, this command displays stored layouts.
|
||||
|
||||
The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit".
|
||||
|
||||
Note: the layout only remembers windows split and buffers numbers. It does not open buffers. That means for example you must still auto-join IRC channels to open the buffers, the saved layout only applies once the buffers are opened.
|
||||
----
|
||||
|
||||
[[command_weechat_mouse]]
|
||||
@@ -1693,23 +1746,28 @@ Examples:
|
||||
* `+plugin+`: elenca/carica/scarica plugin
|
||||
|
||||
----
|
||||
/plugin list|listfull [<nome>]
|
||||
load <nome_file> [<argomenti>]
|
||||
autoload [<argomenti>]
|
||||
reload [<nome>|* [<argomenti>]]
|
||||
unload [<nome>]
|
||||
/plugin list [-o|-ol|-i|-il|<name>]
|
||||
listfull [<name>]
|
||||
load <filename> [<arguments>]
|
||||
autoload [<arguments>]
|
||||
reload [<name>|* [<arguments>]]
|
||||
unload [<name>]
|
||||
|
||||
list: elenca i plugin caricati
|
||||
listfull: elenca i plugin caricati (dettagliato)
|
||||
load: carica un plugin
|
||||
autoload: carica automaticamente un plugin nella directory di sistema o utente
|
||||
reload: ricarica un plugin (se non specificato, scarica e poi ricarica tutti i plugin)
|
||||
unload: scarica un plugin (se non specificato, scarica tutti i plugin
|
||||
nomefile: plugin (file) da caricare
|
||||
nome: nome di un plugin
|
||||
argomenti: argomenti passati al plugin durante il caricamento
|
||||
list: list loaded plugins
|
||||
-o: send list of loaded plugins to buffer (string in English)
|
||||
-ol: send list of loaded plugins to buffer (translated string)
|
||||
-i: copy list of loaded plugins in command line (for sending to buffer) (string in English)
|
||||
-il: copy list of loaded plugins in command line (for sending to buffer) (translated string)
|
||||
name: a plugin name
|
||||
listfull: list loaded plugins (verbose)
|
||||
load: load a plugin
|
||||
filename: plugin (file) to load
|
||||
arguments: arguments given to plugin on load
|
||||
autoload: autoload plugins in system or user directory
|
||||
reload: reload a plugin (if no name given, unload all plugins, then autoload plugins)
|
||||
unload: unload a plugin (if no name given, unload all plugins)
|
||||
|
||||
Senza argomento, questo comando elenca i plugin caricati.
|
||||
Without argument, this command lists loaded plugins.
|
||||
----
|
||||
|
||||
[[command_weechat_print]]
|
||||
@@ -1935,6 +1993,32 @@ Examples:
|
||||
/set env ABC ""
|
||||
----
|
||||
|
||||
[[command_weechat_toggle]]
|
||||
* `+toggle+`: toggle value of a config option
|
||||
|
||||
----
|
||||
/toggle <option> [<value> [<value>...]]
|
||||
|
||||
option: name of an option
|
||||
value: possible values for the option (values are split like the shell command arguments: quotes can be used to preserve spaces at the beginning/end of values)
|
||||
|
||||
Behavior:
|
||||
- only an option of type boolean or string can be toggled without a value:
|
||||
- boolean: toggle between on/off according to current value
|
||||
- string: toggle between empty string and default value (works only if empty string is allowed for the option)
|
||||
- with a single value given, toggle between this value and the default value of option
|
||||
- with multiple values given, toggle between these values: the value used is the one following the current value of option; if the current value of option is not in list, the first value in the list is used
|
||||
- the special value "null" can be given, but only as first value in the list and without quotes around.
|
||||
|
||||
Examples:
|
||||
toggle display of time in chat area (without displaying the new value used):
|
||||
/mute /toggle weechat.look.buffer_time_format
|
||||
switch format of time in chat area (with seconds, without seconds, disabled):
|
||||
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
|
||||
toggle autojoin of #weechat channel on libera server:
|
||||
/toggle irc.server.libera.autojoin null #weechat
|
||||
----
|
||||
|
||||
[[command_weechat_unset]]
|
||||
* `+unset+`: annulla/ripristina opzione
|
||||
|
||||
|
||||
@@ -1845,6 +1845,50 @@
|
||||
** valore predefinito: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
|
||||
// end::fifo_options[]
|
||||
|
||||
// tag::typing_options[]
|
||||
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
|
||||
** descrizione: pass:none[number of seconds after paused status has been set: if reached, the typing status is removed]
|
||||
** tipo: intero
|
||||
** valori: 1 .. 2147483647
|
||||
** valore predefinito: `+30+`
|
||||
|
||||
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
|
||||
** descrizione: pass:none[number of seconds after typing status has been set: if reached, the typing status is removed]
|
||||
** tipo: intero
|
||||
** valori: 1 .. 2147483647
|
||||
** valore predefinito: `+6+`
|
||||
|
||||
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
|
||||
** descrizione: pass:none[number of seconds after typing last char: if reached, the typing status becomes "paused" and no more typing signals are sent]
|
||||
** tipo: intero
|
||||
** valori: 1 .. 2147483647
|
||||
** valore predefinito: `+10+`
|
||||
|
||||
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
|
||||
** descrizione: pass:none[typing enabled for other nicks (display typing info for nicks typing in the current buffer)]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
|
||||
** descrizione: pass:none[typing enabled for self messages (send typing info to other users)]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
|
||||
** descrizione: pass:none[min number of chars in message to trigger send of typing signals]
|
||||
** tipo: intero
|
||||
** valori: 1 .. 2147483647
|
||||
** valore predefinito: `+4+`
|
||||
|
||||
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
|
||||
** descrizione: pass:none[max number of chars displayed in the bar item "typing" (0 = do not truncate content)]
|
||||
** tipo: intero
|
||||
** valori: 0 .. 2147483647
|
||||
** valore predefinito: `+0+`
|
||||
// end::typing_options[]
|
||||
|
||||
// tag::xfer_options[]
|
||||
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
|
||||
** descrizione: pass:none[colore del testo per lo status "annullato"]
|
||||
@@ -2214,6 +2258,12 @@
|
||||
** valori: qualsiasi stringa
|
||||
** valore predefinito: `+"%a, %d %b %Y %T %z"+`
|
||||
|
||||
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
|
||||
** descrizione: pass:none[display ACCOUNT messages received when capability account-notify is enabled]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+on+`
|
||||
|
||||
* [[option_irc.look.display_away]] *irc.look.display_away*
|
||||
** descrizione: pass:none[mostra messaggio quando (non) si risulta assenti (off: non mostra/invia nulla, local: mostra localmente, channel: invia azioni ai canali)]
|
||||
** tipo: intero
|
||||
@@ -2238,6 +2288,12 @@
|
||||
** valori: on, off
|
||||
** valore predefinito: `+on+`
|
||||
|
||||
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
|
||||
** descrizione: pass:none[display extra information in the JOIN messages: account name and real name (capability extended-join must be enabled)]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+on+`
|
||||
|
||||
* [[option_irc.look.display_host_join]] *irc.look.display_host_join*
|
||||
** descrizione: pass:none[visualizza l'host nei messaggi di entrata]
|
||||
** tipo: bool
|
||||
@@ -2508,6 +2564,18 @@
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
|
||||
** descrizione: pass:none[display nicks typing on the channel in bar item "typing" (option typing.look.enabled_nicks must be enabled and capability "message-tags" must be enabled on the server)]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
|
||||
** descrizione: pass:none[send self typing status to channels so that other users see when you are typing a message (option typing.look.enabled_self must be enabled and capability "message-tags" must be enabled on the server)]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
|
||||
** descrizione: pass:none[growing factor for autoreconnect delay to server (1 = always same delay, 2 = delay*2 for each retry, etc.)]
|
||||
** tipo: intero
|
||||
@@ -2665,10 +2733,10 @@
|
||||
** valore predefinito: `+25+`
|
||||
|
||||
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
|
||||
** descrizione: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat) (example: "away-notify,multi-prefix")]
|
||||
** descrizione: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat); "*" enables all capabilities by default (supported by both server and WeeChat); wildcard "*" is allowed; a capability beginning with "!" is excluded (example: "*,!account-*,!extended-join")]
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa
|
||||
** valore predefinito: `+""+`
|
||||
** valore predefinito: `+"*"+`
|
||||
|
||||
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
|
||||
** descrizione: pass:none[part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)]
|
||||
@@ -2770,7 +2838,7 @@
|
||||
** descrizione: pass:none[action to perform if SASL authentication fails: "continue" to ignore the authentication problem, "reconnect" to schedule a reconnection to the server, "disconnect" to disconnect from server (see also option irc.network.sasl_fail_unavailable)]
|
||||
** tipo: intero
|
||||
** valori: continue, reconnect, disconnect
|
||||
** valore predefinito: `+continue+`
|
||||
** valore predefinito: `+reconnect+`
|
||||
|
||||
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
|
||||
** descrizione: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
@@ -2779,9 +2847,9 @@
|
||||
** valore predefinito: `+""+`
|
||||
|
||||
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
|
||||
** descrizione: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL cert, "dh-blowfish" for blowfish crypted password (insecure, not recommended), "dh-aes" for AES crypted password (insecure, not recommended)]
|
||||
** descrizione: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL certificate]
|
||||
** tipo: intero
|
||||
** valori: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes
|
||||
** valori: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
|
||||
** valore predefinito: `+plain+`
|
||||
|
||||
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
|
||||
@@ -3075,34 +3143,6 @@
|
||||
** valore predefinito: `+""+`
|
||||
// end::relay_options[]
|
||||
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+on+`
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::guile_options[]
|
||||
* [[option_guile.look.check_license]] *guile.look.check_license*
|
||||
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
@@ -3117,19 +3157,33 @@
|
||||
** valore predefinito: `+on+`
|
||||
// end::guile_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+on+`
|
||||
// end::tcl_options[]
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::perl_options[]
|
||||
* [[option_perl.look.check_license]] *perl.look.check_license*
|
||||
@@ -3159,20 +3213,6 @@
|
||||
** valore predefinito: `+on+`
|
||||
// end::php_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::python_options[]
|
||||
* [[option_python.look.check_license]] *python.look.check_license*
|
||||
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
@@ -3187,6 +3227,34 @@
|
||||
** valore predefinito: `+on+`
|
||||
// end::python_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** tipo: bool
|
||||
** valori: on, off
|
||||
** valore predefinito: `+on+`
|
||||
// end::tcl_options[]
|
||||
|
||||
// tag::script_options[]
|
||||
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
|
||||
** descrizione: pass:none[colore per lo status "caricato automaticamente" ("a")]
|
||||
|
||||
@@ -88,6 +88,9 @@ $HOME/.config/weechat/tcl.conf::
|
||||
$HOME/.config/weechat/trigger.conf::
|
||||
configuration file for _trigger_ plugin
|
||||
|
||||
$HOME/.config/weechat/typing.conf::
|
||||
configuration file for _typing_ plugin
|
||||
|
||||
$HOME/.config/weechat/xfer.conf::
|
||||
configuration file for _xfer_ plugin
|
||||
|
||||
|
||||
@@ -579,7 +579,7 @@ You can just disable bracketed paste mode:
|
||||
|
||||
// TRANSLATION MISSING
|
||||
You can remove side bars (buflist and nicklist), change time format to display
|
||||
only hours and seconds, disable alignment of messages and set a char for nick
|
||||
only hours and minutes, disable alignment of messages and set a char for nick
|
||||
prefix/suffix:
|
||||
|
||||
----
|
||||
@@ -1173,6 +1173,15 @@ $ cd ~/.cache/weechat/script
|
||||
$ curl -O https://weechat.org/files/plugins.xml.gz
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
If you're running macOS and the downloaded file has a size of 0 bytes,
|
||||
try to set this variable in your shell initialization file or on command line,
|
||||
before starting WeeChat:
|
||||
|
||||
----
|
||||
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
[[spell_dictionaries]]
|
||||
=== I installed aspell dictionaries on my system, how can I use them without restarting WeeChat?
|
||||
|
||||
+1168
-1165
File diff suppressed because it is too large
Load Diff
@@ -1340,6 +1340,11 @@ The result is a hashtable with following keys
|
||||
The tags in message (can be empty). |
|
||||
`+time=2015-06-27T16:40:35.000Z+`
|
||||
|
||||
// TRANSLATION MISSING
|
||||
| tag_xxx | 3.3 |
|
||||
Unescaped value of tag "xxx" (one key per tag). |
|
||||
`+2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| message_without_tags | 0.4.0 |
|
||||
The message without the tags (the same as message if there are no tags). |
|
||||
`+:nick!user@host PRIVMSG #weechat :hello!+`
|
||||
@@ -1398,10 +1403,12 @@ The result is a hashtable with following keys
|
||||
----
|
||||
dict = weechat.info_get_hashtable(
|
||||
"irc_message_parse",
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
|
||||
# dict == {
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z",
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
|
||||
# "tag_time": "2015-06-27T16:40:35.000Z",
|
||||
# "tag_tag2": "value space",
|
||||
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
||||
# "nick": "nick",
|
||||
# "user": "user",
|
||||
@@ -1410,10 +1417,10 @@ dict = weechat.info_get_hashtable(
|
||||
# "channel": "#weechat",
|
||||
# "arguments": "#weechat :hello!",
|
||||
# "text": "hello!",
|
||||
# "pos_command": "47",
|
||||
# "pos_arguments": "55",
|
||||
# "pos_channel": "55",
|
||||
# "pos_text": "65",
|
||||
# "pos_command": "65",
|
||||
# "pos_arguments": "73",
|
||||
# "pos_channel": "73",
|
||||
# "pos_text": "83",
|
||||
# }
|
||||
----
|
||||
|
||||
|
||||
@@ -1,144 +0,0 @@
|
||||
= Guida al Tester di WeeChat
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: it
|
||||
:toc: left
|
||||
:toc-title: Indice
|
||||
:sectnums:
|
||||
:docinfo1:
|
||||
|
||||
|
||||
// TRANSLATION MISSING
|
||||
Translators:
|
||||
|
||||
* Marco Paolone <marcopaolone@gmail.com>, 2009-2012
|
||||
|
||||
|
||||
[[purpose]]
|
||||
== Scopo
|
||||
|
||||
Molti utenti riconoscenti chiedono come possono aiutare nello sviluppo
|
||||
di WeeChat. Il modo più semplice (ed anche più delicato) per aiutare
|
||||
lo sviluppo di WeeChat è il testing!
|
||||
|
||||
Il testing è una parte davvero importante dello sviluppo software e non
|
||||
può essere sottovalutato. Quando vengono implementate alcune
|
||||
funzionalità dovrebbero essere testate, ma per alcune di esse esistono
|
||||
troppi casi di utilizzo o questi casi sono delicati e gli sviluppatori non
|
||||
possono verificarli uno ad uno.
|
||||
|
||||
Per esempio: È stato introdotto un famigerato set di caratteri in WeeChat 0.2.2:
|
||||
nessuno di noi (sviluppatori, contributori e tester) utilizzava canali con lettere
|
||||
dell'alfabeto nazionale nei loro nomi e quando è stata rilasciata la 0.2.2 siamo
|
||||
stati inondati dagli utenti russi. Se avessimo più tester non dovrebbe più
|
||||
accadere in futuro.
|
||||
|
||||
Testare la versione stabile di WeeChat è inutile poiché gli sviluppatori sono
|
||||
occupati nell'implementazione di nuove funzionalità (e nella correzione di
|
||||
vecchi bug).
|
||||
|
||||
|
||||
[[prepare_system]]
|
||||
== Preparazione del sistema
|
||||
|
||||
Sarebbe molto di aiuto abilitare i file _core_ di Linux: se WeeChat
|
||||
dovesse andare in crash, Linux scriverebbe un file chiamato _core_.
|
||||
Questo file contiene informazioni di debug molto utili, per sapere
|
||||
esattamente dove sia il problema in WeeChat.
|
||||
|
||||
Se si utilizza la shell _bash_, aggiungere la seguente riga al file _~/.bashrc_:
|
||||
|
||||
----
|
||||
ulimit -c unlimited
|
||||
----
|
||||
|
||||
|
||||
[[download]]
|
||||
== Download della versione di sviluppo
|
||||
|
||||
Il codice più fresco (con gli ultimi bug e le funzionalità più recenti) è
|
||||
conservato in un deposito GIT.
|
||||
|
||||
È possibile compilarlo manualmente (raccomandato):
|
||||
|
||||
* La versione GIT può essere compilata ed installata parallelamente alla
|
||||
* versione stabile, non è necessario l'accesso da root né sacrificare la
|
||||
versione stabile di WeeChat.
|
||||
|
||||
[[get_sources]]
|
||||
=== Ottenere e compilare i sorgenti
|
||||
|
||||
Per prima cosa creare una directory, per esempio _weechat-git_:
|
||||
|
||||
----
|
||||
$ mkdir ~/weechat-git
|
||||
$ cd ~/weechat-git
|
||||
----
|
||||
|
||||
Se si ha git installato, si può clonare il deposito git (raccomandato):
|
||||
|
||||
----
|
||||
$ git clone https://github.com/weechat/weechat.git
|
||||
$ cd weechat
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
In seguito, si può eseguire `git pull` in questa directory per ricevere gli
|
||||
ultimi aggiornamenti.
|
||||
|
||||
Altrimenti si può scaricare ed estrarre il pacchetto _devel_:
|
||||
|
||||
----
|
||||
$ wget https://weechat.org/files/src/weechat-devel.tar.bz2
|
||||
$ tar xvjf weechat-devel.tar.bz2
|
||||
$ cd weechat-devel
|
||||
----
|
||||
|
||||
Per compilare i sorgenti, si raccomanda CMake:
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/weechat-git -DWEECHAT_HOME=~/.weechat-dev -DCMAKE_BUILD_TYPE=Debug
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
Se CMake non è installato, è ancora possibile usare gli autotools:
|
||||
|
||||
----
|
||||
$ ./autogen.sh
|
||||
$ ./configure --prefix=$HOME/weechat-git WEECHAT_HOME=~/.weechat-dev
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
[[install_binary_package]]
|
||||
=== Installazione del pacchetto binario
|
||||
|
||||
A seconda della distribuzione Linux:
|
||||
|
||||
* Debian: https://weechat.org/download/debian
|
||||
* Gentoo: https://weechat.org/download
|
||||
* ArchLinux: PKGBUILD da https://aur.archlinux.org/
|
||||
* altro: non lo sappiamo! Eheh.
|
||||
|
||||
|
||||
[[run]]
|
||||
== Eseguire WeeChat
|
||||
|
||||
Il comando è:
|
||||
|
||||
----
|
||||
$ ~/weechat-git/bin/weechat
|
||||
----
|
||||
|
||||
Se siete ancora svegli dovreste vedere un'interfaccia familiare e vantarvi del
|
||||
fatto di avere la versione più nuova possibile di WeeChat. ;)
|
||||
|
||||
Se si dovessero verificare strani comportamenti (potrebbe andare in crash
|
||||
o far bollire la vostra birra) non esitate ad entrare in _#weechat_ su
|
||||
_irc.libera.chat_ e farcelo sapere.
|
||||
|
||||
Se non dovesse andare in crash - ditelo comunque, abbiamo bisogno dei vostri
|
||||
commenti!
|
||||
+2364
-1876
File diff suppressed because it is too large
Load Diff
@@ -122,19 +122,6 @@ if(ENABLE_DOC)
|
||||
add_custom_target(doc-quickstart-ja ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.ja.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.ja.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# tester's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.ja.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.ja.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.ja.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.ja.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_tester.ja.html"
|
||||
)
|
||||
add_custom_target(doc-tester-ja ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.ja.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.ja.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# relay protocol
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.ja.html
|
||||
|
||||
@@ -28,7 +28,6 @@ EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_scripting.ja.adoc \
|
||||
weechat_faq.ja.adoc \
|
||||
weechat_quickstart.ja.adoc \
|
||||
weechat_tester.ja.adoc \
|
||||
weechat_relay_protocol.ja.adoc \
|
||||
weechat_dev.ja.adoc \
|
||||
includes/autogen_api_completions.ja.adoc \
|
||||
@@ -57,7 +56,6 @@ if DOC
|
||||
weechat_scripting.ja.html \
|
||||
weechat_faq.ja.html \
|
||||
weechat_quickstart.ja.html \
|
||||
weechat_tester.ja.html \
|
||||
weechat_relay_protocol.ja.html \
|
||||
weechat_dev.ja.html
|
||||
doc_install = install-doc
|
||||
@@ -91,10 +89,6 @@ weechat_faq.ja.html: weechat_faq.ja.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
weechat_quickstart.ja.html: weechat_quickstart.ja.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.ja.html $(abs_top_srcdir)/doc/ja/weechat_quickstart.ja.adoc
|
||||
|
||||
# tester's guide
|
||||
weechat_tester.ja.html: weechat_tester.ja.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.ja.html $(abs_top_srcdir)/doc/ja/weechat_tester.ja.adoc
|
||||
|
||||
# relay protocol
|
||||
weechat_relay_protocol.ja.html: weechat_relay_protocol.ja.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_relay_protocol.ja.html $(abs_top_srcdir)/doc/ja/weechat_relay_protocol.ja.adoc
|
||||
|
||||
@@ -79,6 +79,8 @@ _last_nick_speaking_time_ (pointer, hdata: "irc_channel_speaking") +
|
||||
_modelists_ (pointer, hdata: "irc_modelist") +
|
||||
_last_modelist_ (pointer, hdata: "irc_modelist") +
|
||||
_join_smart_filtered_ (hashtable) +
|
||||
_typing_state_ (integer) +
|
||||
_typing_status_sent_ (time) +
|
||||
_buffer_ (pointer, hdata: "buffer") +
|
||||
_buffer_as_string_ (string) +
|
||||
_prev_channel_ (pointer, hdata: "irc_channel") +
|
||||
@@ -237,6 +239,8 @@ _sasl_scram_client_first_ (string) +
|
||||
_sasl_scram_salted_pwd_ (other) +
|
||||
_sasl_scram_salted_pwd_size_ (integer) +
|
||||
_sasl_scram_auth_message_ (string) +
|
||||
_sasl_temp_username_ (string) +
|
||||
_sasl_temp_password_ (string) +
|
||||
_is_connected_ (integer) +
|
||||
_ssl_connected_ (integer) +
|
||||
_disconnected_ (integer) +
|
||||
@@ -267,6 +271,10 @@ _chantypes_ (string) +
|
||||
_chanmodes_ (string) +
|
||||
_monitor_ (integer) +
|
||||
_monitor_time_ (time) +
|
||||
_clienttagdeny_ (string) +
|
||||
_clienttagdeny_count_ (integer) +
|
||||
_clienttagdeny_array_ (string, array_size: "clienttagdeny_count") +
|
||||
_typing_allowed_ (integer) +
|
||||
_reconnect_delay_ (integer) +
|
||||
_reconnect_start_ (time) +
|
||||
_command_time_ (time) +
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|===
|
||||
| プラグイン | 名前 | 説明 | ハッシュテーブル (入力) | ハッシュテーブル (出力)
|
||||
|
||||
| irc | irc_message_parse | IRC メッセージを解析 | "message": IRC メッセージ、"server": サーバ名 (任意) | "tags": tags, "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
|
||||
| irc | irc_message_parse | IRC メッセージを解析 | "message": IRC メッセージ、"server": サーバ名 (任意) | "tags": tags, "tag_xxx": unescaped value of tag "xxx" (one key per tag), "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "param1" ... "paramN": parsed command parameters, "num_params": number of parsed command parameters, "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
|
||||
|
||||
| irc | irc_message_split | IRC メッセージを分割 (デフォルトでは 512 バイト内に収まるように分割します) | "message": IRC メッセージ、"server": サーバ名 (任意) | "msg1" ... "msgN": 送信メッセージ (最後の "\r\n" は無し), "args1" ... "argsN": メッセージの引数、"count": メッセージの数
|
||||
|
||||
|
||||
@@ -4,18 +4,26 @@
|
||||
//
|
||||
|
||||
// tag::plugins_priority[]
|
||||
. charset (15000)
|
||||
. logger (14000)
|
||||
. exec (13000)
|
||||
. trigger (12000)
|
||||
. spell (11000)
|
||||
. alias (10000)
|
||||
. buflist (9000)
|
||||
. fifo (8000)
|
||||
. charset (16000)
|
||||
. logger (15000)
|
||||
. exec (14000)
|
||||
. trigger (13000)
|
||||
. spell (12000)
|
||||
. alias (11000)
|
||||
. buflist (10000)
|
||||
. fifo (9000)
|
||||
. typing (8000)
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile, javascript, lua, perl, php, python, ruby, tcl (4000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
// end::plugins_priority[]
|
||||
|
||||
@@ -17,10 +17,11 @@ target: サーバ名
|
||||
* `+allchan+`: 全てのサーバ、全てのチャンネルに対してコマンドを実行
|
||||
|
||||
----
|
||||
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command>
|
||||
[-current] -include=<channel>[,<channel>...] <command>
|
||||
/allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
|
||||
[-current] [-parted] -include=<channel>[,<channel>...] <command>
|
||||
|
||||
-current: execute command for channels of current server only
|
||||
-parted: execute on parted channels only
|
||||
-exclude: exclude some channels (wildcard "*" is allowed)
|
||||
-include: include only some channels (wildcard "*" is allowed)
|
||||
command: command to execute (or text to send to buffer if command does not start with '/')
|
||||
@@ -41,6 +42,8 @@ Examples:
|
||||
/allchan -exclude=#weechat,#linux* hello
|
||||
say 'hello' on all channels beginning with #linux:
|
||||
/allchan -include=#linux* hello
|
||||
close all buffers with parted channels:
|
||||
/allchan -parted /close
|
||||
----
|
||||
|
||||
[[command_irc_allpv]]
|
||||
@@ -100,6 +103,26 @@ Examples:
|
||||
/allserv /whois $nick
|
||||
----
|
||||
|
||||
[[command_irc_auth]]
|
||||
* `+auth+`: authenticate with SASL
|
||||
|
||||
----
|
||||
/auth [<username> <password>]
|
||||
|
||||
username: SASL username (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
|
||||
password: SASL password or path to file with private key (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
|
||||
|
||||
If username and password are not provided, the values from server options "sasl_username" and "sasl_password" (or "sasl_key") are used.
|
||||
|
||||
Examples:
|
||||
authenticate with username/password defined in the server:
|
||||
/auth
|
||||
authenticate as a different user:
|
||||
/auth user2 password2
|
||||
authenticate as a different user with mechanism ecdsa-nist256p-challenge:
|
||||
/auth user2 ${weechat_config_dir}/ecdsa2.pem
|
||||
----
|
||||
|
||||
[[command_irc_ban]]
|
||||
* `+ban+`: ニックネームかホスト名を指定してバン
|
||||
|
||||
@@ -121,19 +144,19 @@ channel: チャンネル名
|
||||
req|ack [<capability> [<capability>...]]
|
||||
end
|
||||
|
||||
ls: サーバがサポートする機能をリスト
|
||||
list: 現在有効化されている機能をリスト
|
||||
req: 機能情報を要求
|
||||
ack: クライアント側に承認を要求する機能を承認
|
||||
end: 機能情報交換を終了
|
||||
ls: list the capabilities supported by the server
|
||||
list: list the capabilities currently enabled
|
||||
req: request a capability
|
||||
ack: acknowledge capabilities which require client-side acknowledgement
|
||||
end: end the capability negotiation
|
||||
|
||||
引数無しの場合、"ls" と "list" を送信します。
|
||||
Without argument, "ls" and "list" are sent.
|
||||
|
||||
WeeChat がサポートする機能: account-notify、away-notify、cap-notify、chghost、extended-join、invite-notify、multi-prefix、server-time、userhost-in-names。
|
||||
Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.
|
||||
|
||||
自動的に有効化する機能を設定するにはオプション irc.server_default.capabilities (または対象のサーバに関するオプション irc.server.xxx.capabilities) を使ってください。
|
||||
The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities).
|
||||
|
||||
例:
|
||||
Examples:
|
||||
/cap
|
||||
/cap req multi-prefix away-notify
|
||||
----
|
||||
@@ -808,6 +831,15 @@ mask: マスクにマッチするサービスだけをリストアップ
|
||||
type: タイプにマッチするサービスだけをリストアップ
|
||||
----
|
||||
|
||||
[[command_irc_setname]]
|
||||
* `+setname+`: set real name
|
||||
|
||||
----
|
||||
/setname <realname>
|
||||
|
||||
realname: new real name
|
||||
----
|
||||
|
||||
[[command_irc_squery]]
|
||||
* `+squery+`: サービスにメッセージを配送
|
||||
|
||||
@@ -1271,30 +1303,31 @@ Examples:
|
||||
/debug list
|
||||
set <plugin> <level>
|
||||
dump [<plugin>]
|
||||
buffer|color|infolists|memory|tags|term|windows
|
||||
buffer|color|infolists|libs|certs|memory|tags|term|windows
|
||||
mouse|cursor [verbose]
|
||||
hdata [free]
|
||||
time <command>
|
||||
|
||||
list: デバッグレベルの設定されたプラグインをリストアップ
|
||||
set: プラグインのデバッグレベルを設定
|
||||
plugin: プラグインの名前 ("core" は WeeChat コアを意味する)
|
||||
level: プラグインのデバッグレベル (0 はデバッグの無効化)
|
||||
dump: WeeChat ログファイルにメモリダンプを保存 (WeeChat がクラッシュした場合と同じダンプが書き込まれます)
|
||||
buffer: ログファイルに 16 進値でバッファの内容をダンプ
|
||||
color: 現在の色ペアに関する情報を表示
|
||||
cursor: カーソルモードのデバッグを切り替え
|
||||
dirs: ディレクトリを表示
|
||||
hdata: hdata に関する情報を表示 (free を付けた場合: メモリから全ての hdata を削除)
|
||||
hooks: フックに関する情報を表示
|
||||
infolists: インフォリストに関する情報を表示
|
||||
libs: 使用中の外部ライブラリに関する情報を表示
|
||||
memory: メモリ使用量に関する情報を表示
|
||||
mouse: マウスのデバックを切り替え
|
||||
tags: 行のタグを表示
|
||||
term: 端末に関する情報を表示
|
||||
windows: ウィンドウツリーの情報を表示
|
||||
time: コマンドの実行時間や現在のバッファへのテキスト送信にかかった時間を測定
|
||||
list: list plugins with debug levels
|
||||
set: set debug level for plugin
|
||||
plugin: name of plugin ("core" for WeeChat core)
|
||||
level: debug level for plugin (0 = disable debug)
|
||||
dump: save memory dump in WeeChat log file (same dump is written when WeeChat crashes)
|
||||
buffer: dump buffer content with hexadecimal values in log file
|
||||
color: display infos about current color pairs
|
||||
cursor: toggle debug for cursor mode
|
||||
dirs: display directories
|
||||
hdata: display infos about hdata (with free: remove all hdata in memory)
|
||||
hooks: display infos about hooks
|
||||
infolists: display infos about infolists
|
||||
libs: display infos about external libraries used
|
||||
certs: display number of loaded trusted certificate authorities
|
||||
memory: display infos about memory usage
|
||||
mouse: toggle debug for mouse
|
||||
tags: display tags for lines
|
||||
term: display infos about terminal
|
||||
windows: display windows tree
|
||||
time: measure time to execute a command or to send text to the current buffer
|
||||
----
|
||||
|
||||
[[command_weechat_eval]]
|
||||
@@ -1342,27 +1375,32 @@ To force a string comparison, you can add double quotes around each expression,
|
||||
|
||||
Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
|
||||
1. the string itself without evaluation (format: "raw:xxx")
|
||||
2. an evaluated sub-string (format: "eval:xxx")
|
||||
3. an evaluated condition (format: "eval_cond:xxx")
|
||||
4. a string with escaped chars (format: "esc:xxx" or "\xxx")
|
||||
5. a string with chars to hide (format: "hide:char,string")
|
||||
6. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
|
||||
2. a user-defined variable (format: "name")
|
||||
3. an evaluated sub-string (format: "eval:xxx")
|
||||
4. an evaluated condition (format: "eval_cond:xxx")
|
||||
5. a string with escaped chars (format: "esc:xxx" or "\xxx")
|
||||
6. a string with chars to hide (format: "hide:char,string")
|
||||
7. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
|
||||
or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
|
||||
7. a reversed string (format: "rev:xxx" or "revscr:xxx")
|
||||
8. a repeated string (format: "repeat:count,string")
|
||||
9. length of a string (format: "length:xxx" or "lengthscr:xxx")
|
||||
10. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
||||
11. a modifier (format: "modifier:name,data,string")
|
||||
12. an info (format: "info:name,arguments", arguments are optional)
|
||||
13. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
|
||||
14. current date/time (format: "date" or "date:format")
|
||||
15. an environment variable (format: "env:XXX")
|
||||
16. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
||||
17. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
|
||||
18. a translated string (format: "translate:xxx")
|
||||
19. an option (format: "file.section.option")
|
||||
20. a local variable in buffer
|
||||
21. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
|
||||
8. a reversed string (format: "rev:xxx" or "revscr:xxx")
|
||||
9. a repeated string (format: "repeat:count,string")
|
||||
10. length of a string (format: "length:xxx" or "lengthscr:xxx")
|
||||
11. split of a string (format: "split:number,separators,flags,xxx")
|
||||
12. split of shell argmuents (format: "split_shell:number,xxx")
|
||||
13. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
||||
14. a modifier (format: "modifier:name,data,string")
|
||||
15. an info (format: "info:name,arguments", arguments are optional)
|
||||
16. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
|
||||
17. current date/time (format: "date" or "date:format")
|
||||
18. an environment variable (format: "env:XXX")
|
||||
19. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
||||
20. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
|
||||
21. a random integer number (format: "random:min,max")
|
||||
22. a translated string (format: "translate:xxx")
|
||||
23. define a user variable (format: "define:name,value")
|
||||
24. an option (format: "file.section.option")
|
||||
25. a local variable in buffer
|
||||
26. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
|
||||
Format for hdata can be one of following:
|
||||
hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed)
|
||||
hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example:
|
||||
@@ -1374,29 +1412,39 @@ Format for hdata can be one of following:
|
||||
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".
|
||||
|
||||
Examples (simple strings):
|
||||
/eval -n ${raw:${info:version}} ==> ${info:version}
|
||||
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
|
||||
/eval -n ${info:version} ==> 0.4.3
|
||||
/eval -n ${env:HOME} ==> /home/user
|
||||
/eval -n ${weechat.look.scroll_amount} ==> 3
|
||||
/eval -n ${sec.data.password} ==> secret
|
||||
/eval -n ${window} ==> 0x2549aa0
|
||||
/eval -n ${window.buffer} ==> 0x2549320
|
||||
/eval -n ${window.buffer.full_name} ==> core.weechat
|
||||
/eval -n ${window.buffer.number} ==> 1
|
||||
/eval -n ${\t} ==> <tab>
|
||||
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
||||
/eval -n ${cut:3,+,test} ==> tes+
|
||||
/eval -n ${cut:+3,+,test} ==> te+
|
||||
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${translate:Plugin} ==> Extension
|
||||
/eval -n ${raw:${info:version}} ==> ${info:version}
|
||||
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
|
||||
/eval -n ${info:version} ==> 0.4.3
|
||||
/eval -n ${env:HOME} ==> /home/user
|
||||
/eval -n ${weechat.look.scroll_amount} ==> 3
|
||||
/eval -n ${sec.data.password} ==> secret
|
||||
/eval -n ${window} ==> 0x2549aa0
|
||||
/eval -n ${window.buffer} ==> 0x2549320
|
||||
/eval -n ${window.buffer.full_name} ==> core.weechat
|
||||
/eval -n ${window.buffer.number} ==> 1
|
||||
/eval -n ${\t} ==> <tab>
|
||||
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
||||
/eval -n ${cut:3,+,test} ==> tes+
|
||||
/eval -n ${cut:+3,+,test} ==> te+
|
||||
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${split:1,,,abc,def,ghi} ==> abc
|
||||
/eval -n ${split:-1,,,abc,def,ghi} ==> ghi
|
||||
/eval -n ${split:count,,,abc,def,ghi} ==> 3
|
||||
/eval -n ${split:random,,,abc,def,ghi} ==> def
|
||||
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
|
||||
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
|
||||
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${random:0,10} ==> 3
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${translate:Plugin} ==> Extension
|
||||
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
|
||||
|
||||
Examples (conditions):
|
||||
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
||||
@@ -1510,60 +1558,63 @@ value: 表示する履歴エントリの数
|
||||
----
|
||||
/input <action> [<arguments>]
|
||||
|
||||
アクションリスト:
|
||||
return: "enter" キーをシミュレート
|
||||
complete_next: 次の補完候補で単語を補完
|
||||
complete_previous: 一つ前の補完候補で単語を補完
|
||||
search_text_here: 現在の位置でテキストを検索
|
||||
search_text: バッファ内のテキストを検索
|
||||
search_switch_case: 完全一致検索に変更
|
||||
search_switch_regex: 検索タイプの切り替え: 文字列/正規表現
|
||||
search_switch_where: 検索範囲の切り替え: メッセージ/プレフィックス
|
||||
search_previous: 一つ前の行を検索
|
||||
search_next: 次の行を検索
|
||||
search_stop_here: 現在の位置で検索を終了
|
||||
search_stop: 検索を終了
|
||||
delete_previous_char: 一つ前の文字を削除
|
||||
delete_next_char: 次の文字を削除
|
||||
delete_previous_word: 一つ前の単語を削除
|
||||
delete_next_word: 次の単語を削除
|
||||
delete_beginning_of_line: 行の最初からカーソル位置までを削除
|
||||
delete_end_of_line: カーソルから行の最後までを削除
|
||||
delete_line: 行を削除
|
||||
clipboard_paste: WeeChat 専用の内部クリップボードの内容をペースト
|
||||
transpose_chars: 2 つの文字を入れ替え
|
||||
undo: 最新のコマンドラインアクションまで元に戻す
|
||||
redo: 最新のコマンドラインアクションまでやり直す
|
||||
move_beginning_of_line: カーソルを行頭に移動
|
||||
move_end_of_line: カーソルを行末まで移動
|
||||
move_previous_char: カーソルを一つ前の文字に移動
|
||||
move_next_char: カーソルを次の文字に移動
|
||||
move_previous_word: カーソルを一つ前の単語に移動
|
||||
move_next_word: カーソルを次の単語に移動
|
||||
history_previous: 現在のバッファ履歴のひとつ前のコマンドを再呼び出し
|
||||
history_next: 現在のバッファ履歴の次のコマンドを再呼び出し
|
||||
history_global_previous: グローバル履歴の一つ前のコマンドを再呼び出し
|
||||
history_global_next: グローバル履歴の次のコマンドを再呼び出し
|
||||
jump_smart: 次のアクティブバッファに飛ぶ
|
||||
jump_last_buffer_displayed: 表示されている最後のバッファに移動 (最新のバッファ移動の一つ前に表示されていたバッファ)
|
||||
jump_previously_visited_buffer: 一つ前に訪れたバッファに移動
|
||||
jump_next_visited_buffer: 次に訪れたバッファに移動
|
||||
hotlist_clear: ホットリストを消去 (オプション引数: "lowest" はホットリスト内の最も低いレベルだけを消去。"highest" はホットリスト内の最も高いレベルだけを消去。レベルマスクは 1 (参加/退出)、2 (メッセージ)、4 (プライベートメッセージ)、8 (ハイライト) を合計した整数値で指定したレベルを消去)
|
||||
grab_key: キーを横取り (任意引数: 最後の横取りからの遅延時間、デフォルトは 500 ミリ秒)
|
||||
grab_key_command: あるコマンドに関連してキーを横取り (任意引数: 最後の横取りからの遅延時間、デフォルトは 500 ミリ秒)
|
||||
grab_mouse: grab マウスイベントコードを横取り
|
||||
grab_mouse_area: 範囲指定のマウスイベントコードを横取り
|
||||
set_unread: 全てのバッファに対して未読マーカーを設定
|
||||
set_unread_current_buffer: 現在のバッファに対して未読マーカーを設定
|
||||
switch_active_buffer: 次のマージされたバッファに移動
|
||||
switch_active_buffer_previous: 一つ前のマージされたバッファに移動
|
||||
zoom_merged_buffer: マージされたバッファにズーム
|
||||
insert: コマンドラインにテキストを挿入 (エスケープ文字も可、/help print を参照してください)
|
||||
send: バッファにテキストを送信
|
||||
paste_start: ペーストの開始 (括弧付きペーストモード)
|
||||
paste_stop: ペーストの終了 (括弧付きペーストモード)
|
||||
list of actions:
|
||||
return: simulate key "enter"
|
||||
complete_next: complete word with next completion
|
||||
complete_previous: complete word with previous completion
|
||||
search_text_here: search text in buffer at current position
|
||||
search_text: search text in buffer
|
||||
search_switch_case: switch exact case for search
|
||||
search_switch_regex: switch search type: string/regular expression
|
||||
search_switch_where: switch search in messages/prefixes
|
||||
search_previous: search previous line
|
||||
search_next: search next line
|
||||
search_stop_here: stop search at current position
|
||||
search_stop: stop search
|
||||
delete_previous_char: delete previous char
|
||||
delete_next_char: delete next char
|
||||
delete_previous_word: delete previous word
|
||||
delete_next_word: delete next word
|
||||
delete_beginning_of_line: delete from beginning of line until cursor
|
||||
delete_end_of_line: delete from cursor until end of line
|
||||
delete_line: delete entire line
|
||||
clipboard_paste: paste from the internal clipboard
|
||||
transpose_chars: transpose two chars
|
||||
undo: undo last command line action
|
||||
redo: redo last command line action
|
||||
move_beginning_of_line: move cursor to beginning of line
|
||||
move_end_of_line: move cursor to end of line
|
||||
move_previous_char: move cursor to previous char
|
||||
move_next_char: move cursor to next char
|
||||
move_previous_word: move cursor to previous word
|
||||
move_next_word: move cursor to next word
|
||||
history_previous: recall previous command in current buffer history
|
||||
history_next: recall next command in current buffer history
|
||||
history_global_previous: recall previous command in global history
|
||||
history_global_next: recall next command in global history
|
||||
jump_smart: jump to next buffer with activity
|
||||
jump_last_buffer_displayed: jump to last buffer displayed (before last jump to a buffer)
|
||||
jump_previously_visited_buffer: jump to previously visited buffer
|
||||
jump_next_visited_buffer: jump to next visited buffer
|
||||
hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight)
|
||||
hotlist_remove_buffer: remove current buffer from hotlist
|
||||
hotlist_restore_buffer: restore latest hotlist removed in the current buffer
|
||||
hotlist_restore_all: restore latest hotlist removed in all buffers
|
||||
grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds)
|
||||
grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds)
|
||||
grab_mouse: grab mouse event code
|
||||
grab_mouse_area: grab mouse event code with area
|
||||
set_unread: set unread marker for all buffers
|
||||
set_unread_current_buffer: set unread marker for current buffer
|
||||
switch_active_buffer: switch to next merged buffer
|
||||
switch_active_buffer_previous: switch to previous merged buffer
|
||||
zoom_merged_buffer: zoom on merged buffer
|
||||
insert: insert text in command line (escaped chars are allowed, see /help print)
|
||||
send: send text to the buffer
|
||||
paste_start: start paste (bracketed paste mode)
|
||||
paste_stop: stop paste (bracketed paste mode)
|
||||
|
||||
これらのコマンドはキーバインドかプラグインで利用できます。
|
||||
This command is used by key bindings or plugins.
|
||||
----
|
||||
|
||||
[[command_weechat_key]]
|
||||
@@ -1631,19 +1682,21 @@ listdefault: デフォルトキーをリストアップ
|
||||
del [<name>] [buffers|windows]
|
||||
rename <name> <new_name>
|
||||
|
||||
store: レイアウトに現在のバッファ/ウィンドウを保存
|
||||
apply: 保存されたレイアウトを適用
|
||||
leave: 現在のレイアウトを保持する (レイアウトを更新しない)
|
||||
del: レイアウトとして保存されているバッファとウィンドウを削除
|
||||
(名前の後に "バッファ" や "ウィンドウ" を指定しない場合、レイアウトを削除)
|
||||
rename: レイアウトのリネーム
|
||||
name: 保存されたレイアウトの名前 (初期状態は "default")
|
||||
buffers: バッファのみに対してレイアウトを保存/適用 (バッファの順番)
|
||||
windows: ウィンドウのみに対してレイアウトを保存/適用 (それぞれのウィンドウに表示されるバッファ)
|
||||
store: store current buffers/windows in a layout
|
||||
apply: apply stored layout
|
||||
leave: leave current layout (does not update any layout)
|
||||
del: delete buffers and/or windows in a stored layout
|
||||
(if neither "buffers" nor "windows" is given after the name, the layout is deleted)
|
||||
rename: rename a layout
|
||||
name: name for stored layout (default is "default")
|
||||
buffers: store/apply only buffers (order of buffers)
|
||||
windows: store/apply only windows (buffer displayed by each window)
|
||||
|
||||
引数を指定しなかった場合、保存されたレイアウトを表示します。
|
||||
Without argument, this command displays stored layouts.
|
||||
|
||||
"weechat.look.save_layout_on_exit" オプションを使えば、現在のレイアウトを /quit コマンドの実行時に保存することが可能です。
|
||||
The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit".
|
||||
|
||||
Note: the layout only remembers windows split and buffers numbers. It does not open buffers. That means for example you must still auto-join IRC channels to open the buffers, the saved layout only applies once the buffers are opened.
|
||||
----
|
||||
|
||||
[[command_weechat_mouse]]
|
||||
@@ -1693,23 +1746,28 @@ Examples:
|
||||
* `+plugin+`: プラグインの表示/ロード/アンロード
|
||||
|
||||
----
|
||||
/plugin list|listfull [<name>]
|
||||
/plugin list [-o|-ol|-i|-il|<name>]
|
||||
listfull [<name>]
|
||||
load <filename> [<arguments>]
|
||||
autoload [<arguments>]
|
||||
reload [<name>|* [<arguments>]]
|
||||
unload [<name>]
|
||||
|
||||
list: ロードされたプラグインをリストアップ
|
||||
listfull: ロードされたプラグインをリストアップ (詳細)
|
||||
load: プラグインをロード
|
||||
autoload: システムかユーザディレクトリ指定の自動ロードプラグインをロード
|
||||
reload: プラグインを再ロード (名前が指定されない場合は、全てのプラグインをアンロードし、プラグインを自動ロード)
|
||||
unload: プラグインのアンロード (名前が指定されない場合は、全てのプラグインをアンロード)
|
||||
filename: ロードするプラグイン (ファイル)
|
||||
name: プラグイン名
|
||||
arguments: ロードするプラグインに与える引数
|
||||
list: list loaded plugins
|
||||
-o: send list of loaded plugins to buffer (string in English)
|
||||
-ol: send list of loaded plugins to buffer (translated string)
|
||||
-i: copy list of loaded plugins in command line (for sending to buffer) (string in English)
|
||||
-il: copy list of loaded plugins in command line (for sending to buffer) (translated string)
|
||||
name: a plugin name
|
||||
listfull: list loaded plugins (verbose)
|
||||
load: load a plugin
|
||||
filename: plugin (file) to load
|
||||
arguments: arguments given to plugin on load
|
||||
autoload: autoload plugins in system or user directory
|
||||
reload: reload a plugin (if no name given, unload all plugins, then autoload plugins)
|
||||
unload: unload a plugin (if no name given, unload all plugins)
|
||||
|
||||
引数無しでは、ロードされたプラグインをリストアップ。
|
||||
Without argument, this command lists loaded plugins.
|
||||
----
|
||||
|
||||
[[command_weechat_print]]
|
||||
@@ -1935,6 +1993,32 @@ option: オプションの名前 (value を指定せずにワイルドカード
|
||||
/set env ABC ""
|
||||
----
|
||||
|
||||
[[command_weechat_toggle]]
|
||||
* `+toggle+`: toggle value of a config option
|
||||
|
||||
----
|
||||
/toggle <option> [<value> [<value>...]]
|
||||
|
||||
option: name of an option
|
||||
value: possible values for the option (values are split like the shell command arguments: quotes can be used to preserve spaces at the beginning/end of values)
|
||||
|
||||
Behavior:
|
||||
- only an option of type boolean or string can be toggled without a value:
|
||||
- boolean: toggle between on/off according to current value
|
||||
- string: toggle between empty string and default value (works only if empty string is allowed for the option)
|
||||
- with a single value given, toggle between this value and the default value of option
|
||||
- with multiple values given, toggle between these values: the value used is the one following the current value of option; if the current value of option is not in list, the first value in the list is used
|
||||
- the special value "null" can be given, but only as first value in the list and without quotes around.
|
||||
|
||||
Examples:
|
||||
toggle display of time in chat area (without displaying the new value used):
|
||||
/mute /toggle weechat.look.buffer_time_format
|
||||
switch format of time in chat area (with seconds, without seconds, disabled):
|
||||
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
|
||||
toggle autojoin of #weechat channel on libera server:
|
||||
/toggle irc.server.libera.autojoin null #weechat
|
||||
----
|
||||
|
||||
[[command_weechat_unset]]
|
||||
* `+unset+`: オプションのアンセット/リセット
|
||||
|
||||
|
||||
@@ -1845,6 +1845,50 @@
|
||||
** デフォルト値: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
|
||||
// end::fifo_options[]
|
||||
|
||||
// tag::typing_options[]
|
||||
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
|
||||
** 説明: pass:none[number of seconds after paused status has been set: if reached, the typing status is removed]
|
||||
** タイプ: 整数
|
||||
** 値: 1 .. 2147483647
|
||||
** デフォルト値: `+30+`
|
||||
|
||||
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
|
||||
** 説明: pass:none[number of seconds after typing status has been set: if reached, the typing status is removed]
|
||||
** タイプ: 整数
|
||||
** 値: 1 .. 2147483647
|
||||
** デフォルト値: `+6+`
|
||||
|
||||
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
|
||||
** 説明: pass:none[number of seconds after typing last char: if reached, the typing status becomes "paused" and no more typing signals are sent]
|
||||
** タイプ: 整数
|
||||
** 値: 1 .. 2147483647
|
||||
** デフォルト値: `+10+`
|
||||
|
||||
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
|
||||
** 説明: pass:none[typing enabled for other nicks (display typing info for nicks typing in the current buffer)]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
|
||||
** 説明: pass:none[typing enabled for self messages (send typing info to other users)]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
|
||||
** 説明: pass:none[min number of chars in message to trigger send of typing signals]
|
||||
** タイプ: 整数
|
||||
** 値: 1 .. 2147483647
|
||||
** デフォルト値: `+4+`
|
||||
|
||||
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
|
||||
** 説明: pass:none[max number of chars displayed in the bar item "typing" (0 = do not truncate content)]
|
||||
** タイプ: 整数
|
||||
** 値: 0 .. 2147483647
|
||||
** デフォルト値: `+0+`
|
||||
// end::typing_options[]
|
||||
|
||||
// tag::xfer_options[]
|
||||
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
|
||||
** 説明: pass:none["中止" 状態のテキスト色]
|
||||
@@ -2214,6 +2258,12 @@
|
||||
** 値: 未制約文字列
|
||||
** デフォルト値: `+"%a, %d %b %Y %T %z"+`
|
||||
|
||||
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
|
||||
** 説明: pass:none[display ACCOUNT messages received when capability account-notify is enabled]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+on+`
|
||||
|
||||
* [[option_irc.look.display_away]] *irc.look.display_away*
|
||||
** 説明: pass:none[離席状態が変更されたらメッセージを表示 (off: 何も表示/送信しない、local: ローカルに表示、channel: チャンネルにアクションを送信)]
|
||||
** タイプ: 整数
|
||||
@@ -2238,6 +2288,12 @@
|
||||
** 値: on, off
|
||||
** デフォルト値: `+on+`
|
||||
|
||||
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
|
||||
** 説明: pass:none[display extra information in the JOIN messages: account name and real name (capability extended-join must be enabled)]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+on+`
|
||||
|
||||
* [[option_irc.look.display_host_join]] *irc.look.display_host_join*
|
||||
** 説明: pass:none[参加メッセージにホスト名を表示]
|
||||
** タイプ: ブール
|
||||
@@ -2508,6 +2564,18 @@
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
|
||||
** 説明: pass:none[display nicks typing on the channel in bar item "typing" (option typing.look.enabled_nicks must be enabled and capability "message-tags" must be enabled on the server)]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
|
||||
** 説明: pass:none[send self typing status to channels so that other users see when you are typing a message (option typing.look.enabled_self must be enabled and capability "message-tags" must be enabled on the server)]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
|
||||
** 説明: pass:none[サーバに自動再接続する際の遅延間隔に関する増加係数 (1 = 遅延間隔は常に同じ, 2 = リトライごとに遅延間隔を 2 倍、など)]
|
||||
** タイプ: 整数
|
||||
@@ -2665,10 +2733,10 @@
|
||||
** デフォルト値: `+25+`
|
||||
|
||||
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
|
||||
** 説明: pass:none[サーバで利用可能ならば有効化する "client capabilities" のコンマ区切りリスト (WeeChat がサポートする機能のリストは /help cap を参照してください) (例: "away-notify,multi-prefix")]
|
||||
** 説明: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat); "*" enables all capabilities by default (supported by both server and WeeChat); wildcard "*" is allowed; a capability beginning with "!" is excluded (example: "*,!account-*,!extended-join")]
|
||||
** タイプ: 文字列
|
||||
** 値: 未制約文字列
|
||||
** デフォルト値: `+""+`
|
||||
** デフォルト値: `+"*"+`
|
||||
|
||||
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
|
||||
** 説明: pass:none[part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)]
|
||||
@@ -2770,7 +2838,7 @@
|
||||
** 説明: pass:none[SASL 認証が失敗した場合の挙動: 認証の問題を無視する場合は "continue"、サーバへの再接続を予定する場合は "reconnect"、サーバから切断する場合は "disconnect" (irc.network.sasl_fail_unavailable も参照してください)]
|
||||
** タイプ: 整数
|
||||
** 値: continue, reconnect, disconnect
|
||||
** デフォルト値: `+continue+`
|
||||
** デフォルト値: `+reconnect+`
|
||||
|
||||
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
|
||||
** 説明: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
@@ -2779,9 +2847,9 @@
|
||||
** デフォルト値: `+""+`
|
||||
|
||||
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
|
||||
** 説明: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL cert, "dh-blowfish" for blowfish crypted password (insecure, not recommended), "dh-aes" for AES crypted password (insecure, not recommended)]
|
||||
** 説明: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL certificate]
|
||||
** タイプ: 整数
|
||||
** 値: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes
|
||||
** 値: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
|
||||
** デフォルト値: `+plain+`
|
||||
|
||||
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
|
||||
@@ -3075,34 +3143,6 @@
|
||||
** デフォルト値: `+""+`
|
||||
// end::relay_options[]
|
||||
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+on+`
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::guile_options[]
|
||||
* [[option_guile.look.check_license]] *guile.look.check_license*
|
||||
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
|
||||
@@ -3117,19 +3157,33 @@
|
||||
** デフォルト値: `+on+`
|
||||
// end::guile_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+on+`
|
||||
// end::tcl_options[]
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::perl_options[]
|
||||
* [[option_perl.look.check_license]] *perl.look.check_license*
|
||||
@@ -3159,20 +3213,6 @@
|
||||
** デフォルト値: `+on+`
|
||||
// end::php_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::python_options[]
|
||||
* [[option_python.look.check_license]] *python.look.check_license*
|
||||
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
|
||||
@@ -3187,6 +3227,34 @@
|
||||
** デフォルト値: `+on+`
|
||||
// end::python_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
|
||||
** タイプ: ブール
|
||||
** 値: on, off
|
||||
** デフォルト値: `+on+`
|
||||
// end::tcl_options[]
|
||||
|
||||
// tag::script_options[]
|
||||
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
|
||||
** 説明: pass:none["自動ロード" 状態 ("a") に対応する色]
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user