mirror of
https://github.com/weechat/weechat.git
synced 2026-06-27 13:26:38 +02:00
Compare commits
334 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d50d32629f | |||
| 5c0aa1aae7 | |||
| c827d6fa86 | |||
| 694b5c9f87 | |||
| 51a739df61 | |||
| 410a12b2ae | |||
| 236dbe3f62 | |||
| 632755d51d | |||
| ee52c8ceae | |||
| dda3ac7963 | |||
| e81d0787e4 | |||
| 54aa8b82b3 | |||
| 39ae55322d | |||
| 10f4e16695 | |||
| cfd7d31f95 | |||
| 621b87ea8a | |||
| c947d1575f | |||
| d876ec49fc | |||
| d2300e62af | |||
| a727516e0d | |||
| c0e48b0370 | |||
| 45509c3560 | |||
| fb8f0590b0 | |||
| 3dab07d659 | |||
| cd53fc61cf | |||
| d66a02ca9d | |||
| 771b932dec | |||
| 41911babd3 | |||
| f69079e3d0 | |||
| b43ab911fd | |||
| 0044fa1902 | |||
| 1a00368888 | |||
| c634d6c56e | |||
| 661ef1e653 | |||
| 8223263e0e | |||
| a843e8fb14 | |||
| e1692ab7e9 | |||
| 73b3ff1491 | |||
| 178b3eb8a6 | |||
| 2f99033384 | |||
| f1641604b0 | |||
| e743e731ec | |||
| 64aae8b959 | |||
| e4a9f95e38 | |||
| 7aa24ecd88 | |||
| 8cde654c6f | |||
| 9a40aa04f8 | |||
| 3a03184d7a | |||
| b5804bd64d | |||
| 005e5fd8f5 | |||
| fe7a05cb1f | |||
| 76c6f52e8c | |||
| 5c8ac69f73 | |||
| 682e558f76 | |||
| a36e17abf9 | |||
| 38bb297d91 | |||
| 421d6481da | |||
| 8d991f1284 | |||
| 9f8162651f | |||
| 17d3032b73 | |||
| 90aec7bec7 | |||
| 07577194c5 | |||
| 9264de9ce0 | |||
| 4f7a51f72b | |||
| 6507544947 | |||
| cdcbdc94e0 | |||
| 10f85df867 | |||
| 7e07954fbf | |||
| 015ae4a94b | |||
| 4a86ab55d8 | |||
| 7cac32fc1f | |||
| c6161d0e4a | |||
| ecc7edda9e | |||
| fbc9faed42 | |||
| c99889cb15 | |||
| f85f097c25 | |||
| 5d4220a91f | |||
| 7e6d933d74 | |||
| 92853e1b47 | |||
| 577a932201 | |||
| 899550ca94 | |||
| ab6a991de2 | |||
| 2dbc283023 | |||
| 513f5a1ee7 | |||
| 8fc8f728d4 | |||
| 9535f4a70b | |||
| f85adf5cf1 | |||
| 876a0a1609 | |||
| 1dda5ffd02 | |||
| dc9964ccc6 | |||
| 37415e61d5 | |||
| 116150c2fc | |||
| 5398f5d566 | |||
| 02c63beef9 | |||
| 6619219297 | |||
| 6fa0f49a28 | |||
| afe64aefbf | |||
| 85f9ead7b8 | |||
| b35c94cc91 | |||
| 8054cb0ee1 | |||
| cbeecc0cde | |||
| 528c769e71 | |||
| d2a63b2b44 | |||
| 86e623a554 | |||
| c391fe5fa5 | |||
| c3b33859ae | |||
| f2551b8403 | |||
| 98d9dc1a03 | |||
| e6570d6e3a | |||
| e47002884a | |||
| c77bccba87 | |||
| af5951c123 | |||
| 1eb54f4065 | |||
| de0209e6d6 | |||
| 903cb0baf3 | |||
| 5518b56561 | |||
| 53360a7909 | |||
| 529af39612 | |||
| 79e124d6e4 | |||
| d3254262ac | |||
| 587f5bf15b | |||
| 6e382d26a9 | |||
| 88aa82d672 | |||
| 1a0ba4a9dc | |||
| e921b9f432 | |||
| 86dcbc09c0 | |||
| 587ddf7222 | |||
| c521392207 | |||
| 1da5b9126e | |||
| 3c0bdc18f3 | |||
| 6c23f632b1 | |||
| 3e189fa60d | |||
| f9dcb573ca | |||
| 8c31306f30 | |||
| d2be0e8e1d | |||
| b03a4e192c | |||
| 70fd722278 | |||
| f3376f4264 | |||
| e386965aba | |||
| 90f711a965 | |||
| 177fa6c528 | |||
| a8ca4b5b3a | |||
| daad558291 | |||
| baf8f635ff | |||
| 779420d50d | |||
| 92cad366a2 | |||
| cddb314a10 | |||
| 45a55895fb | |||
| 2067136506 | |||
| 41cf758864 | |||
| 0678e0c9b3 | |||
| ae38b11407 | |||
| 3f33b327b1 | |||
| 8ab6422520 | |||
| 4b0e6d5da2 | |||
| 3a356f109f | |||
| 7d795c4d53 | |||
| dc5e334f5c | |||
| aa45748bff | |||
| fe193a350b | |||
| e437613acb | |||
| c5ffc3917f | |||
| 6942444a2b | |||
| 39b6fb6137 | |||
| 12ee9cb75c | |||
| bed26f42a1 | |||
| fbb0e85525 | |||
| afce4804f5 | |||
| 387a44f5ec | |||
| e1a4612797 | |||
| de45636388 | |||
| dcfc4e8ed5 | |||
| 1919f23c2d | |||
| bd3f1b5f00 | |||
| 92ecbe29ae | |||
| 997894edc0 | |||
| 0109c51937 | |||
| a81d266b31 | |||
| 4fca523b17 | |||
| 5cf419dd63 | |||
| 85f6c5eeda | |||
| 8a3ffda0a2 | |||
| e04c30f00b | |||
| 4324ff7c4b | |||
| 29cd012627 | |||
| d26893a70d | |||
| f7b84fcc67 | |||
| 63a05d72d9 | |||
| 40eb257d0d | |||
| 8e267ad9f3 | |||
| e8be4f62af | |||
| ea0bdbab1b | |||
| d690544499 | |||
| ab768ce902 | |||
| bff40e4c26 | |||
| 9cb6857672 | |||
| 7477845205 | |||
| ea139e7fdb | |||
| 2d2d349d3c | |||
| 948caf0857 | |||
| f24538646f | |||
| 1beebdf01e | |||
| 8bb4549494 | |||
| 63902ef52d | |||
| 93775de7ff | |||
| 62944b7168 | |||
| f0001ed670 | |||
| e11f6e3046 | |||
| 68d6f1b415 | |||
| f0685dd1b1 | |||
| 0884c9b33c | |||
| 3938328375 | |||
| 16592fdbbb | |||
| bad8db720e | |||
| 61c5d08320 | |||
| 04162214d4 | |||
| 2fa33b102b | |||
| 1e7232b8c2 | |||
| 608ec9f483 | |||
| 21dca71ee0 | |||
| 7f62985f89 | |||
| 80f103b68a | |||
| 156d855787 | |||
| bf21ca072d | |||
| a3e8163f37 | |||
| ceb579653f | |||
| 39e5b0574c | |||
| 05744f3b61 | |||
| 783aebfd53 | |||
| c411ee475a | |||
| a409080d8b | |||
| b1ae6ad1c6 | |||
| 0957231d30 | |||
| 464d31155a | |||
| 5f1b895f27 | |||
| dfcbb6b058 | |||
| dd133af522 | |||
| befa97ea81 | |||
| a906afc3d7 | |||
| b4215ee466 | |||
| 210e864899 | |||
| 47010dd9c6 | |||
| b6cc5ef70f | |||
| 59ba378eec | |||
| 0bf5a5ae9c | |||
| 4fa62a83f1 | |||
| 067f237ec3 | |||
| fbc022a77a | |||
| c46255b1d0 | |||
| d79e0cbd31 | |||
| 28d79d0c93 | |||
| 478ca22054 | |||
| 1f52101a41 | |||
| 9be225b201 | |||
| 07878046d2 | |||
| 2e07121457 | |||
| f8b8669d2e | |||
| f3426f4388 | |||
| ad64fd16e1 | |||
| 99bb662bc5 | |||
| 8bc5725278 | |||
| 8897e04c0d | |||
| 4744c3fa41 | |||
| ad7d16a5b3 | |||
| b8d69307ee | |||
| 015ec85f10 | |||
| acbf021330 | |||
| 93cd05bdd8 | |||
| 5eeb98e40c | |||
| f6bc6fec2e | |||
| c463b84421 | |||
| 6461aefcae | |||
| 643376fc1d | |||
| 26c0b1270f | |||
| ccaf99ff40 | |||
| 0fdf2c13a5 | |||
| fd592c2323 | |||
| 82a92bd4e9 | |||
| 162ca1fade | |||
| e56c7e8c9b | |||
| 5e9efeb2e3 | |||
| 965173ded5 | |||
| 768c0d9acc | |||
| 15ce4b2be5 | |||
| 789fa972f8 | |||
| 179b00b4a3 | |||
| 45fc8f1012 | |||
| c99dd0f611 | |||
| ab81128a7a | |||
| f9b6f359dd | |||
| a9a1066e63 | |||
| d540ea91ae | |||
| b1ab2a0c50 | |||
| 33ee803609 | |||
| 1d6714e428 | |||
| 98b5e90469 | |||
| b0ad684f6b | |||
| ca73fabc72 | |||
| f15a24b2ec | |||
| e5f963f78a | |||
| 087d4c7af3 | |||
| 07a8c4a0ec | |||
| eb2535982c | |||
| fe90a5ed4e | |||
| 60c61c3962 | |||
| 0d9b7ec954 | |||
| 9178156354 | |||
| 866a29c7e6 | |||
| 95cbf3a48b | |||
| b6c304ac87 | |||
| 31d0742aed | |||
| 7d24dd5a6c | |||
| 6c114bbba7 | |||
| 4b90549b86 | |||
| 04fd587fff | |||
| eb216de9b8 | |||
| 4d8785289d | |||
| 4ea193c981 | |||
| 7aa82db471 | |||
| f065b43b71 | |||
| 96d1276446 | |||
| 5988d17d2d | |||
| 980d26956f | |||
| 5910bcf3c8 | |||
| c7b242ffd9 | |||
| bf1462d7a1 | |||
| f5f6cf028c | |||
| d392b406c5 | |||
| 08719963de | |||
| d12e29620b | |||
| 49ce989de6 | |||
| 9cc68b641b | |||
| 93d2dbf3e1 | |||
| bcb7ac7777 |
@@ -1,6 +1,7 @@
|
|||||||
---
|
---
|
||||||
name: Bug report
|
name: Bug report
|
||||||
about: Create a bug report (please do not report security issues here)
|
about: Create a bug report (please do not report security issues here)
|
||||||
|
labels: bug
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
---
|
---
|
||||||
name: Feature request
|
name: Feature request
|
||||||
about: Request a new feature / enhancement
|
about: Request a new feature / enhancement
|
||||||
|
labels: feature
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
---
|
---
|
||||||
name: Question
|
name: Question
|
||||||
about: Ask a question (please read first FAQ and docs)
|
about: Ask a question (please read first FAQ and docs)
|
||||||
|
labels: question
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
+2
-1
@@ -16,7 +16,8 @@
|
|||||||
|
|
||||||
ABOUT-NLS
|
ABOUT-NLS
|
||||||
autom4te*
|
autom4te*
|
||||||
build*/*
|
build/*
|
||||||
|
builddir/*
|
||||||
compile
|
compile
|
||||||
config.guess
|
config.guess
|
||||||
config.h
|
config.h
|
||||||
|
|||||||
+6
-4
@@ -8,11 +8,11 @@ compiler:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
- BUILDTOOL="cmake" BUILDARGS=""
|
- BUILDTOOL="cmake" BUILDARGS=""
|
||||||
# - BUILDTOOL="cmake" BUILDARGS="-DENABLE_PYTHON3=ON"
|
- BUILDTOOL="cmake" BUILDARGS="-DENABLE_PYTHON2=ON"
|
||||||
- BUILDTOOL="cmake" BUILDARGS="-DENABLE_GNUTLS=OFF"
|
- BUILDTOOL="cmake" BUILDARGS="-DENABLE_GNUTLS=OFF"
|
||||||
- BUILDTOOL="cmake" BUILDARGS="-DENABLE_CODE_COVERAGE=ON" CODECOVERAGE="1"
|
- BUILDTOOL="cmake" BUILDARGS="-DENABLE_CODE_COVERAGE=ON" CODECOVERAGE="1"
|
||||||
- BUILDTOOL="autotools" BUILDARGS=""
|
- BUILDTOOL="autotools" BUILDARGS=""
|
||||||
# - BUILDTOOL="autotools" BUILDARGS="--enable-python3"
|
- BUILDTOOL="autotools" BUILDARGS="--enable-python2"
|
||||||
- BUILDTOOL="autotools" BUILDARGS="--disable-gnutls"
|
- BUILDTOOL="autotools" BUILDARGS="--disable-gnutls"
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
@@ -22,14 +22,16 @@ matrix:
|
|||||||
env: BUILDTOOL="cmake" BUILDARGS="-DENABLE_CODE_COVERAGE=ON" CODECOVERAGE="1"
|
env: BUILDTOOL="cmake" BUILDARGS="-DENABLE_CODE_COVERAGE=ON" CODECOVERAGE="1"
|
||||||
|
|
||||||
before_script:
|
before_script:
|
||||||
# Workaround https://github.com/travis-ci/travis-ci/issues/5326
|
- rm -rf "$HOME/.pyenv"
|
||||||
- export PATH=$(echo $PATH | tr ':' "\n" | sed '/\/opt\/python/d' | tr "\n" ":" | sed "s|::|:|g")
|
- sudo rm -rf /opt/pyenv
|
||||||
- echo 'APT::Install-Recommends "false";' | sudo tee -a /etc/apt/apt.conf
|
- echo 'APT::Install-Recommends "false";' | sudo tee -a /etc/apt/apt.conf
|
||||||
- travis_retry sudo apt-get update -qq
|
- travis_retry sudo apt-get update -qq
|
||||||
- travis_retry sudo apt-get -y install devscripts equivs python-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls-dev zlib1g-dev curl libcpputest-dev php7.0-dev libphp7.0-embed
|
- travis_retry sudo apt-get -y install devscripts equivs python-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls-dev zlib1g-dev curl libcpputest-dev php7.0-dev libphp7.0-embed
|
||||||
- travis_retry sudo gem install asciidoctor
|
- travis_retry sudo gem install asciidoctor
|
||||||
- travis_retry sudo -H pip install --ignore-installed msgcheck pylint
|
- travis_retry sudo -H pip install --ignore-installed msgcheck pylint
|
||||||
- phpenv local system
|
- phpenv local system
|
||||||
|
# work around broken travis environment variables, see https://github.com/travis-ci/travis-ci/issues/5301
|
||||||
|
- unset PYTHON_CFLAGS
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- ./tools/build-test.sh
|
- ./tools/build-test.sh
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ Alphabetically:
|
|||||||
* Dominik Honnef
|
* Dominik Honnef
|
||||||
* Dominique Martinet
|
* Dominique Martinet
|
||||||
* Eduardo Elias
|
* Eduardo Elias
|
||||||
|
* Eli Schwartz
|
||||||
* Elizabeth Myers (Elizacat)
|
* Elizabeth Myers (Elizacat)
|
||||||
* Elián Hanisch (m4v)
|
* Elián Hanisch (m4v)
|
||||||
* Emanuele Giaquinta
|
* Emanuele Giaquinta
|
||||||
@@ -54,9 +55,11 @@ Alphabetically:
|
|||||||
* Jakub Jirutka
|
* Jakub Jirutka
|
||||||
* Jason A. Donenfeld (zx2c4)
|
* Jason A. Donenfeld (zx2c4)
|
||||||
* JD Horelick (jdhore)
|
* JD Horelick (jdhore)
|
||||||
|
* jesopo
|
||||||
* Jim Ramsay (lack)
|
* Jim Ramsay (lack)
|
||||||
* Jiri Golembiovsky (GolemJ)
|
* Jiri Golembiovsky (GolemJ)
|
||||||
* Joey Pabalinas (alyptik)
|
* Joey Pabalinas (alyptik)
|
||||||
|
* Johan Rylander
|
||||||
* Jos Ahrens
|
* Jos Ahrens
|
||||||
* Joseph Kichline
|
* Joseph Kichline
|
||||||
* Juan Francisco Cantero Hurtado
|
* Juan Francisco Cantero Hurtado
|
||||||
@@ -65,6 +68,7 @@ Alphabetically:
|
|||||||
* Koka El Kiwi (KiwiDash)
|
* Koka El Kiwi (KiwiDash)
|
||||||
* Krzysztof Koroscik (soltys)
|
* Krzysztof Koroscik (soltys)
|
||||||
* Kyle Fuller (kylef)
|
* Kyle Fuller (kylef)
|
||||||
|
* Kyle Sabo
|
||||||
* Leonid Evdokimov
|
* Leonid Evdokimov
|
||||||
* Lázaro A.
|
* Lázaro A.
|
||||||
* Linus Heckemann
|
* Linus Heckemann
|
||||||
|
|||||||
+34
-14
@@ -28,7 +28,7 @@ set(CMAKE_VERBOSE_MAKEFILE OFF)
|
|||||||
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
|
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
|
||||||
set(CMAKE_SKIP_RPATH ON)
|
set(CMAKE_SKIP_RPATH ON)
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -Wall -Wextra -Werror-implicit-function-declaration")
|
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 -Werror-implicit-function-declaration")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -Wall -Wextra")
|
||||||
|
|
||||||
# version
|
# version
|
||||||
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-major OUTPUT_VARIABLE VERSION_MAJOR)
|
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-major OUTPUT_VARIABLE VERSION_MAJOR)
|
||||||
@@ -102,7 +102,7 @@ option(ENABLE_SCRIPT "Enable Script plugin (script manager)" ON)
|
|||||||
option(ENABLE_SCRIPTS "Enable script plugins (perl, python, ...)" ON)
|
option(ENABLE_SCRIPTS "Enable script plugins (perl, python, ...)" ON)
|
||||||
option(ENABLE_PERL "Enable Perl scripting language" ON)
|
option(ENABLE_PERL "Enable Perl scripting language" ON)
|
||||||
option(ENABLE_PYTHON "Enable Python scripting language" ON)
|
option(ENABLE_PYTHON "Enable Python scripting language" ON)
|
||||||
option(ENABLE_PYTHON3 "Use Python 3.x if found (NOT recommended because many \"official\" scripts won't work)" OFF)
|
option(ENABLE_PYTHON2 "Use Python 2 instead of Python 3" OFF)
|
||||||
option(ENABLE_RUBY "Enable Ruby scripting language" ON)
|
option(ENABLE_RUBY "Enable Ruby scripting language" ON)
|
||||||
option(ENABLE_LUA "Enable Lua scripting language" ON)
|
option(ENABLE_LUA "Enable Lua scripting language" ON)
|
||||||
option(ENABLE_TCL "Enable Tcl scripting language" ON)
|
option(ENABLE_TCL "Enable Tcl scripting language" ON)
|
||||||
@@ -180,6 +180,12 @@ if(ENABLE_NLS)
|
|||||||
find_package(Gettext)
|
find_package(Gettext)
|
||||||
if(GETTEXT_FOUND)
|
if(GETTEXT_FOUND)
|
||||||
add_definitions(-DENABLE_NLS)
|
add_definitions(-DENABLE_NLS)
|
||||||
|
find_package(Intl)
|
||||||
|
if(Intl_FOUND)
|
||||||
|
list(APPEND EXTRA_LIBS "${Intl_LIBRARIES}")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
message(SEND_ERROR "Gettext not found")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -197,6 +203,8 @@ if(ENABLE_GNUTLS)
|
|||||||
include_directories(${GNUTLS_INCLUDE_PATH})
|
include_directories(${GNUTLS_INCLUDE_PATH})
|
||||||
set(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} -L${GNUTLS_LIBRARY_PATH}")
|
set(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} -L${GNUTLS_LIBRARY_PATH}")
|
||||||
list(APPEND EXTRA_LIBS gnutls)
|
list(APPEND EXTRA_LIBS gnutls)
|
||||||
|
else()
|
||||||
|
message(SEND_ERROR "GnuTLS not found")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -227,6 +235,8 @@ if(DL_LIBRARY)
|
|||||||
list(APPEND EXTRA_LIBS dl)
|
list(APPEND EXTRA_LIBS dl)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
add_subdirectory(icons)
|
||||||
|
|
||||||
if(ENABLE_NLS)
|
if(ENABLE_NLS)
|
||||||
add_subdirectory(po)
|
add_subdirectory(po)
|
||||||
endif()
|
endif()
|
||||||
@@ -234,10 +244,14 @@ endif()
|
|||||||
add_subdirectory(src)
|
add_subdirectory(src)
|
||||||
add_subdirectory(doc)
|
add_subdirectory(doc)
|
||||||
|
|
||||||
find_package(CppUTest)
|
if(ENABLE_TESTS)
|
||||||
if(ENABLE_TESTS AND CPPUTEST_FOUND)
|
find_package(CppUTest)
|
||||||
enable_testing()
|
if(CPPUTEST_FOUND)
|
||||||
add_subdirectory(tests)
|
enable_testing()
|
||||||
|
add_subdirectory(tests)
|
||||||
|
else()
|
||||||
|
message(SEND_ERROR "CppUTest not found")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
configure_file(config.h.cmake config.h @ONLY)
|
configure_file(config.h.cmake config.h @ONLY)
|
||||||
@@ -245,19 +259,23 @@ configure_file(config.h.cmake config.h @ONLY)
|
|||||||
# set the git version in "config-git.h"
|
# set the git version in "config-git.h"
|
||||||
add_custom_target(version_git ALL
|
add_custom_target(version_git ALL
|
||||||
COMMAND "${CMAKE_CURRENT_SOURCE_DIR}/tools/git-version.sh" "${CMAKE_CURRENT_SOURCE_DIR}" "${VERSION}" "config-git.h"
|
COMMAND "${CMAKE_CURRENT_SOURCE_DIR}/tools/git-version.sh" "${CMAKE_CURRENT_SOURCE_DIR}" "${VERSION}" "config-git.h"
|
||||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}")
|
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||||
|
)
|
||||||
|
|
||||||
configure_file(
|
configure_file(
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in"
|
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in"
|
||||||
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
|
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
|
||||||
IMMEDIATE @ONLY)
|
IMMEDIATE @ONLY
|
||||||
|
)
|
||||||
|
|
||||||
add_custom_target(uninstall
|
add_custom_target(uninstall
|
||||||
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
|
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
|
||||||
|
)
|
||||||
|
|
||||||
add_custom_target(dist
|
add_custom_target(dist
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}/tools/makedist.sh" "${VERSION}" "HEAD" "${CMAKE_CURRENT_BINARY_DIR}"
|
"${CMAKE_CURRENT_SOURCE_DIR}/tools/makedist.sh" "${VERSION}" "HEAD" "${CMAKE_CURRENT_BINARY_DIR}"
|
||||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
)
|
||||||
|
|
||||||
# pkgconfig file
|
# pkgconfig file
|
||||||
set(PACKAGE "${PROJECT_NAME}")
|
set(PACKAGE "${PROJECT_NAME}")
|
||||||
@@ -279,11 +297,12 @@ if(CYGWIN)
|
|||||||
${CMAKE_CURRENT_SOURCE_DIR}/Contributing.adoc
|
${CMAKE_CURRENT_SOURCE_DIR}/Contributing.adoc
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/README.adoc
|
${CMAKE_CURRENT_SOURCE_DIR}/README.adoc
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/ReleaseNotes.adoc
|
${CMAKE_CURRENT_SOURCE_DIR}/ReleaseNotes.adoc
|
||||||
DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
|
DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME}
|
||||||
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# icon
|
# desktop file
|
||||||
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/weechat.png DESTINATION ${SHAREDIR}/icons/hicolor/32x32/apps)
|
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/weechat.desktop DESTINATION ${SHAREDIR}/applications)
|
||||||
|
|
||||||
# packages
|
# packages
|
||||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Fast, light and extensible chat client")
|
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Fast, light and extensible chat client")
|
||||||
@@ -301,7 +320,8 @@ set(CPACK_PACKAGE_FILE_NAME weechat-binary-${VERSION})
|
|||||||
# source package
|
# source package
|
||||||
set(CPACK_SOURCE_GENERATOR "TGZ;TBZ2")
|
set(CPACK_SOURCE_GENERATOR "TGZ;TBZ2")
|
||||||
set(CPACK_SOURCE_PACKAGE_FILE_NAME weechat-${VERSION})
|
set(CPACK_SOURCE_PACKAGE_FILE_NAME weechat-${VERSION})
|
||||||
set(CPACK_SOURCE_IGNORE_FILES "/\\\\.git" "/build/" "/m4/"
|
set(CPACK_SOURCE_IGNORE_FILES
|
||||||
|
"/\\\\.git" "/build/" "/m4/"
|
||||||
"/autom4te\\\\.cache/" "/ABOUT-NLS$" "/config\\\\.guess$" "/config\\\\.h$"
|
"/autom4te\\\\.cache/" "/ABOUT-NLS$" "/config\\\\.guess$" "/config\\\\.h$"
|
||||||
"/config\\\\.h.in$" "/config\\\\.log$" "/config\\\\.rpath$"
|
"/config\\\\.h.in$" "/config\\\\.log$" "/config\\\\.rpath$"
|
||||||
"/config\\\\.status$" "/config\\\\.sub$" "/configure$" "/depcomp$"
|
"/config\\\\.status$" "/config\\\\.sub$" "/configure$" "/depcomp$"
|
||||||
|
|||||||
+141
-27
@@ -15,6 +15,120 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
|
|||||||
(file _ReleaseNotes.adoc_ in sources).
|
(file _ReleaseNotes.adoc_ in sources).
|
||||||
|
|
||||||
|
|
||||||
|
[[v2.7.1]]
|
||||||
|
== Version 2.7.1 (2020-02-20)
|
||||||
|
|
||||||
|
Bug fixes::
|
||||||
|
|
||||||
|
* irc: fix crash when a new message 005 is received with longer nick prefixes (CVE-2020-9760)
|
||||||
|
* irc: fix crash when receiving a malformed message 352 (who) (CVE-2020-9759)
|
||||||
|
* irc: fix crash when receiving a malformed message 324 (channel mode) (CVE-2020-8955)
|
||||||
|
|
||||||
|
[[v2.7]]
|
||||||
|
== Version 2.7 (2019-12-08)
|
||||||
|
|
||||||
|
New features::
|
||||||
|
|
||||||
|
* core: add option weechat.look.nick_color_hash_salt to shuffle nick colors (issue #635)
|
||||||
|
* core: add different icons sizes (16x16 to 512x512) (issue #1347)
|
||||||
|
* core: add file weechat.desktop
|
||||||
|
* core: add reverse of string for screen in evaluation of expressions with "revscr:"
|
||||||
|
* core: add length of string (number of chars and on screen) in evaluation of expressions with "length:xxx" and "lengthscr:xxx"
|
||||||
|
* core: add calculation of expression in evaluation of expressions with "calc:xxx" (issue #997)
|
||||||
|
* core: add optional default path (evaluated) in completion "filename"
|
||||||
|
* core: add support of modifiers in evaluation of expressions with "modifier:name,data,string"
|
||||||
|
* api: add modifier "color_encode_ansi" (issue #528)
|
||||||
|
* api: add modifier "eval_path_home"
|
||||||
|
* irc: add filters on raw buffer (issue #1000)
|
||||||
|
* irc: add option irc.look.display_pv_warning_address to display a warning in private buffer if the remote nick address has changed (issue #892)
|
||||||
|
* irc: add server option "ssl_password" (issue #115, issue #1416)
|
||||||
|
* irc: add "user" in output of irc_message_parse (issue #136)
|
||||||
|
* irc: add options irc.color.message_kick and irc.color.reason_kick (issue #683, issue #684)
|
||||||
|
* logger: add option logger.file.color_lines (issue #528, issue #621)
|
||||||
|
* script: add options "-ol" and "-il" in command "/script list" to send translated string with list of scripts loaded, display "No scripts loaded" if no scripts are loaded
|
||||||
|
* xfer: add option xfer.file.download_temporary_suffix with default value ".part" (issue #1237)
|
||||||
|
|
||||||
|
Bug fixes::
|
||||||
|
|
||||||
|
* core: set buffer name, short name and title only if the value has changed
|
||||||
|
* core: fix scrolling up in bare mode when switched to bare mode at the top of the buffer (issue #899, issue #978)
|
||||||
|
* core: optimize load of configuration files
|
||||||
|
* core: fix window separators not respecting window splits (issue #630)
|
||||||
|
* core: fix cursor mode info when prefix_align is none and with words split across lines (issue #610, issue #617, issue #619)
|
||||||
|
* core: add support of reverse video in ANSI color codes
|
||||||
|
* core: fixed segfault during excessive evaluation in function string_repeat (issue #1400)
|
||||||
|
* buflist: fix extra spaces between buffers when conditions are used to hide buffers (regression introduced in version 2.6) (issue #1403)
|
||||||
|
* irc: do not automatically open a channel with name "0" (issue #1429)
|
||||||
|
* irc: remove option irc.network.channel_encode, add server option "charset_message" to control which part of the IRC message is decoded/encoded to the target charset (issue #832)
|
||||||
|
* irc: use path from option xfer.file.upload_path to complete filename in command "/dcc send" (issue #60)
|
||||||
|
* logger: fix write in log file if it has been deleted or renamed (issue #123)
|
||||||
|
* python: send "bytes" instead of "str" to callbacks in Python 3 when the string is not UTF-8 valid (issue #1389)
|
||||||
|
* relay: send message "_buffer_title_changed" to clients only when the title is changed
|
||||||
|
* xfer: fix memory leak when a xfer is freed and when the plugin is unloaded
|
||||||
|
|
||||||
|
Tests::
|
||||||
|
|
||||||
|
* unit: add tests on GUI color functions
|
||||||
|
|
||||||
|
Build::
|
||||||
|
|
||||||
|
* core: fix build on Haiku (issue #1420)
|
||||||
|
* core: fix build on Alpine
|
||||||
|
* core: remove file FindTCL.cmake
|
||||||
|
* core: display an error on missing dependency in CMake (issue #916, issue #956)
|
||||||
|
* debian: disable Javascript plugin on Debian Sid and Ubuntu Eoan
|
||||||
|
* debian: build with Guile 2.2
|
||||||
|
* guile: add support of Guile 2.2, disable /guile eval (issue #1098)
|
||||||
|
* python: add detection of Python 3.8
|
||||||
|
|
||||||
|
[[v2.6]]
|
||||||
|
== Version 2.6 (2019-09-08)
|
||||||
|
|
||||||
|
New features::
|
||||||
|
|
||||||
|
* core: add support of 32767 color pairs (issue #1343, issue #1345)
|
||||||
|
* core: add option "close" in command /window (issue #853)
|
||||||
|
* api: add infos "term_colors" and "term_color_pairs"
|
||||||
|
* api: add function list_user_data (issue #666)
|
||||||
|
* api: add argument "strip_items" in function string_split
|
||||||
|
* buflist: add infolist "buflist" with list of buffer pointers (issue #1375)
|
||||||
|
* exec: evaluate option exec.command.shell, change default value to "${env:SHELL}" (issue #1356)
|
||||||
|
* fset: add filters "h=xxx" and "he=xxx" to filter options by description (translated or in English)
|
||||||
|
* irc: make command char optional in server option "command" (issue #615)
|
||||||
|
* irc: add variables "user_max_length" and "host_max_length" in server structure (issue #1387)
|
||||||
|
|
||||||
|
Bug fixes::
|
||||||
|
|
||||||
|
* core: use fixed-width integer for computing nick and hashtable DJB2 key hashes, add values "djb2_32" and "sum_32" for option weechat.look.nick_color_hash (issue #1394)
|
||||||
|
* core: create or update option weechat.notify.xxx when function buffer_set is called with "notify" property (issue #1390)
|
||||||
|
* core: fix memory leak in case of error when building content of bar item for display (issue #1384)
|
||||||
|
* core: send command line parameter to plugins only if the name starts with the plugin name followed by a colon
|
||||||
|
* core: auto disable upgrade process (command line option "--upgrade") if the file weechat.upgrade is not found
|
||||||
|
* core: replace newlines by spaces in argument "completion" of function hook_command (issue #538)
|
||||||
|
* core: replace char "," by "~" in color codes to separate foreground from background (issue #1264)
|
||||||
|
* alias: remove default aliases /AME and /AMSG (issue #1355)
|
||||||
|
* buflist: use extra variables in option buflist.look.display_conditions (issue #1393)
|
||||||
|
* irc: fix parsing of messages 346 (invite list), 348 (exception list), 367 (ban list) and 728 (quiet list) when there is a colon before the timestamp (issue #1396)
|
||||||
|
* irc: fix memory leak when removing a server
|
||||||
|
* irc: fix length of user/nick/host in split of messages (issue #1387)
|
||||||
|
* irc: quote NICK command argument sent to the server only if there's a ":" in the nick (issue #1376, issue #1319)
|
||||||
|
* irc: return all arguments in the PONG response to a PING (issue #1369)
|
||||||
|
* irc: disable server reconnection when the server buffer is closed (issue #236)
|
||||||
|
* irc: strip spaces at beginning/end of addresses in server option "addresses" (issue #195)
|
||||||
|
* irc: fix display of enabled/disabled client capabilities received in command CAP ACK (issue #151)
|
||||||
|
* ruby: fix conversion of big integers on 32bit architecture (issue #1395)
|
||||||
|
|
||||||
|
Tests::
|
||||||
|
|
||||||
|
* unit: add tests on IRC ignore, message and nick functions
|
||||||
|
|
||||||
|
Build::
|
||||||
|
|
||||||
|
* core: fix compilation with autotools on FreeBSD 12.0
|
||||||
|
* debian: disable Javascript plugin on Debian Buster/Bullseye (issue #1374)
|
||||||
|
* python: compile with Python 3 by default
|
||||||
|
* python: use pkg-config to detect Python (issue #1382)
|
||||||
|
|
||||||
[[v2.5]]
|
[[v2.5]]
|
||||||
== Version 2.5 (2019-06-06)
|
== Version 2.5 (2019-06-06)
|
||||||
|
|
||||||
@@ -117,11 +231,11 @@ New features::
|
|||||||
|
|
||||||
* core: add repeat of string in evaluation of expressions with "repeat:count,string" (issue #958)
|
* core: add repeat of string in evaluation of expressions with "repeat:count,string" (issue #958)
|
||||||
* core: allow specifying buffer number/name for /buffer localvar (issue #1259)
|
* core: allow specifying buffer number/name for /buffer localvar (issue #1259)
|
||||||
* core: allow multiple arguments in command /buffer close
|
* core: allow multiple arguments in command "/buffer close"
|
||||||
* core: allow multiple options "-r" (or "--run-command") in command line arguments (issue #1248)
|
* core: allow multiple options "-r" (or "--run-command") in command line arguments (issue #1248)
|
||||||
* core: add command line option "-P" (or "--plugins") to customize the plugins to load at startup
|
* core: add command line option "-P" (or "--plugins") to customize the plugins to load at startup
|
||||||
* core: allow partial buffer name in command /buffer close (issue #1226)
|
* core: allow partial buffer name in command "/buffer close" (issue #1226)
|
||||||
* api: add function hook_line
|
* api: add function hook_line (issue #66)
|
||||||
* irc: display a warning when the value of option irc.server.xxx.autojoin is set to an invalid value
|
* irc: display a warning when the value of option irc.server.xxx.autojoin is set to an invalid value
|
||||||
* relay: add real IP in client description (issue #1256)
|
* relay: add real IP in client description (issue #1256)
|
||||||
* trigger: allow creation of temporary variables with the regex
|
* trigger: allow creation of temporary variables with the regex
|
||||||
@@ -262,7 +376,7 @@ New features::
|
|||||||
* core: add flag "input_get_empty" in buffer
|
* core: add flag "input_get_empty" in buffer
|
||||||
* core: add signals "buffer_filters_enabled" and "buffer_filters_disabled"
|
* core: add signals "buffer_filters_enabled" and "buffer_filters_disabled"
|
||||||
* core: support loading of plugins from path in environment variable "WEECHAT_EXTRA_LIBDIR" (issue #971, issue #979)
|
* core: support loading of plugins from path in environment variable "WEECHAT_EXTRA_LIBDIR" (issue #971, issue #979)
|
||||||
* core: make value optional in command /buffer set (issue #746, issue #1088)
|
* core: make value optional in command "/buffer set" (issue #746, issue #1088)
|
||||||
* core: allow floating point and hexadecimal numbers in comparison of evaluated values
|
* core: allow floating point and hexadecimal numbers in comparison of evaluated values
|
||||||
* core: add option weechat.look.save_config_with_fsync (issue #1083)
|
* core: add option weechat.look.save_config_with_fsync (issue #1083)
|
||||||
* api: add support of prefix "quiet:" in function key_unbind to quietly remove keys
|
* api: add support of prefix "quiet:" in function key_unbind to quietly remove keys
|
||||||
@@ -347,7 +461,7 @@ Bug fixes::
|
|||||||
New features::
|
New features::
|
||||||
|
|
||||||
* core: add option weechat.completion.nick_case_sensitive (issue #981)
|
* core: add option weechat.completion.nick_case_sensitive (issue #981)
|
||||||
* core: add wilcard matching operator (`+=*+` and `+!*+`) in evaluation of expressions (issue #611)
|
* core: add wildcard matching operator (`+=*+` and `+!*+`) in evaluation of expressions (issue #611)
|
||||||
* core: add cut of string in evaluation of expressions with "cut:" (number of chars) and "cutscr:" (number of chars displayed on screen)
|
* core: add cut of string in evaluation of expressions with "cut:" (number of chars) and "cutscr:" (number of chars displayed on screen)
|
||||||
* core: add ternary operator (condition) in evaluation of expressions (`${if:condition?value_if_true:value_if_false}`)
|
* core: add ternary operator (condition) in evaluation of expressions (`${if:condition?value_if_true:value_if_false}`)
|
||||||
* core: add resize of window parents with /window resize [h/v]size (task #11461, issue #893)
|
* core: add resize of window parents with /window resize [h/v]size (task #11461, issue #893)
|
||||||
@@ -432,7 +546,7 @@ Bug fixes::
|
|||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core, irc, xfer: fix compilation on macOS (add link with resolv) (issue #276)
|
* core, irc, xfer: fix compilation on macOS (add link with resolv) (issue #276)
|
||||||
* core: add build of xz package with make dist (cmake)
|
* core: add build of xz package with make dist (CMake)
|
||||||
* tests: fix compilation of tests on FreeBSD 11.0
|
* tests: fix compilation of tests on FreeBSD 11.0
|
||||||
|
|
||||||
[[v1.6]]
|
[[v1.6]]
|
||||||
@@ -440,7 +554,7 @@ Build::
|
|||||||
|
|
||||||
New features::
|
New features::
|
||||||
|
|
||||||
* core: add optional argument "lowest", "highest" or level mask in command /input hotlist_clear
|
* core: add optional argument "lowest", "highest" or level mask in command "/input hotlist_clear"
|
||||||
* core: add option "cycle" in command /buffer
|
* core: add option "cycle" in command /buffer
|
||||||
* core, irc, xfer: display more information on memory allocation errors (issue #573)
|
* core, irc, xfer: display more information on memory allocation errors (issue #573)
|
||||||
* api: add "extra" argument to evaluate extra variables in function string_eval_expression (issue #534)
|
* api: add "extra" argument to evaluate extra variables in function string_eval_expression (issue #534)
|
||||||
@@ -618,7 +732,7 @@ Bug fixes::
|
|||||||
|
|
||||||
Documentation::
|
Documentation::
|
||||||
|
|
||||||
* replace PREFIX with CMAKE_INSTALL_PREFIX in cmake instructions (issue #354)
|
* replace PREFIX with CMAKE_INSTALL_PREFIX in CMake instructions (issue #354)
|
||||||
|
|
||||||
Build::
|
Build::
|
||||||
|
|
||||||
@@ -637,7 +751,7 @@ New features::
|
|||||||
* core: add options weechat.look.word_chars_{highlight|input} (issue #55, task #9459)
|
* core: add options weechat.look.word_chars_{highlight|input} (issue #55, task #9459)
|
||||||
* core: remove WeeChat version from config files (issue #407)
|
* core: remove WeeChat version from config files (issue #407)
|
||||||
* core: display a warning on startup if the locale can not be set (issue #373)
|
* core: display a warning on startup if the locale can not be set (issue #373)
|
||||||
* core: allow "*" as plugin name in command /plugin reload to reload all plugins with options
|
* core: allow "*" as plugin name in command "/plugin reload" to reload all plugins with options
|
||||||
* core: add option "-s" in command /eval to split expression before evaluating it (no more split by default) (issue #324)
|
* core: add option "-s" in command /eval to split expression before evaluating it (no more split by default) (issue #324)
|
||||||
* core: add priority in plugins to initialize them in order
|
* core: add priority in plugins to initialize them in order
|
||||||
* api: add support of environment variables in function string_eval_expression and command /eval
|
* api: add support of environment variables in function string_eval_expression and command /eval
|
||||||
@@ -697,7 +811,7 @@ Bug fixes::
|
|||||||
|
|
||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core: fix random error when creating symbolic link weechat-curses on make install with cmake (bug #40313)
|
* core: fix random error when creating symbolic link weechat-curses on make install with CMake (bug #40313)
|
||||||
|
|
||||||
[[v1.1]]
|
[[v1.1]]
|
||||||
== Version 1.1 (2015-01-11)
|
== Version 1.1 (2015-01-11)
|
||||||
@@ -761,7 +875,7 @@ Bug fixes::
|
|||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core: fix compilation of man pages with autotools in source directory
|
* core: fix compilation of man pages with autotools in source directory
|
||||||
* core: fix compilation of plugins with cmake >= 3.1 (issue #287)
|
* core: fix compilation of plugins with CMake >= 3.1 (issue #287)
|
||||||
* lua: add detection of Lua 5.2
|
* lua: add detection of Lua 5.2
|
||||||
* python: fix Python detection with Homebrew (issue #217)
|
* python: fix Python detection with Homebrew (issue #217)
|
||||||
* tests: fix compilation of tests with clang (issue #275)
|
* tests: fix compilation of tests with clang (issue #275)
|
||||||
@@ -949,7 +1063,7 @@ Bug fixes::
|
|||||||
|
|
||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core: fix cmake warning CMP0007 on "make uninstall" (bug #41528)
|
* core: fix CMake warning CMP0007 on "make uninstall" (bug #41528)
|
||||||
* core: use glibtoolize on macOS (autotools) (issue #22)
|
* core: use glibtoolize on macOS (autotools) (issue #22)
|
||||||
* ruby: add detection of Ruby 2.1
|
* ruby: add detection of Ruby 2.1
|
||||||
|
|
||||||
@@ -1138,8 +1252,8 @@ Documentation::
|
|||||||
|
|
||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core: add CA_FILE option in cmake and configure to setup default value of option weechat.network.gnutls_ca_file (default is "/etc/ssl/certs/ca-certificates.crt") (task #12725)
|
* core: add CA_FILE option in CMake and configure to setup default value of option weechat.network.gnutls_ca_file (default is "/etc/ssl/certs/ca-certificates.crt") (task #12725)
|
||||||
* core: disable build of doc by default, add cmake option ENABLE_MAN to compile man page (off by default)
|
* core: disable build of doc by default, add CMake option ENABLE_MAN to compile man page (off by default)
|
||||||
* xfer: fix compilation on OpenBSD (bug #39071)
|
* xfer: fix compilation on OpenBSD (bug #39071)
|
||||||
|
|
||||||
[[v0.4.1]]
|
[[v0.4.1]]
|
||||||
@@ -1221,7 +1335,7 @@ Bug fixes::
|
|||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core: install icon file (patch #7972)
|
* core: install icon file (patch #7972)
|
||||||
* core: fix detection of iconv with cmake on macOS (bug #38321)
|
* core: fix detection of iconv with CMake on macOS (bug #38321)
|
||||||
* guile: fix compilation with Guile 2.0
|
* guile: fix compilation with Guile 2.0
|
||||||
* python: fix detection of Python on Ubuntu Raring
|
* python: fix detection of Python on Ubuntu Raring
|
||||||
* script: fix compilation on GNU/Hurd (patch #7977)
|
* script: fix compilation on GNU/Hurd (patch #7977)
|
||||||
@@ -1309,7 +1423,7 @@ Bug fixes::
|
|||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core: add git version in build, display it in "weechat-curses --help" and /version
|
* core: add git version in build, display it in "weechat-curses --help" and /version
|
||||||
* core: stop cmake if gcrypt lib is not found (bug #37671)
|
* core: stop CMake if gcrypt lib is not found (bug #37671)
|
||||||
* guile: fix detection of Guile in configure
|
* guile: fix detection of Guile in configure
|
||||||
* script: fix compilation on macOS
|
* script: fix compilation on macOS
|
||||||
|
|
||||||
@@ -1407,10 +1521,10 @@ Documentation::
|
|||||||
|
|
||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core: move the set of cmake policy CMP0003 in directory src (so it applies to all plugins) (bug #37311)
|
* core: move the set of CMake policy CMP0003 in directory src (so it applies to all plugins) (bug #37311)
|
||||||
* core: fix names of cache variables in configure.in (bug #36971)
|
* core: fix names of cache variables in configure.in (bug #36971)
|
||||||
* core: add cmake option "MANDIR" (bug #36776)
|
* core: add CMake option "MANDIR" (bug #36776)
|
||||||
* guile: fix path of Guile include dirs in cmake build (patch #7790)
|
* guile: fix path of Guile include dirs in CMake build (patch #7790)
|
||||||
* lua: add support of Lua 5.2
|
* lua: add support of Lua 5.2
|
||||||
* python: fix detection of Python (first try "python2.x" and then "python") (bug #36835)
|
* python: fix detection of Python (first try "python2.x" and then "python") (bug #36835)
|
||||||
* ruby: add detection of Ruby 1.9.3
|
* ruby: add detection of Ruby 1.9.3
|
||||||
@@ -1561,8 +1675,8 @@ Documentation::
|
|||||||
|
|
||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core: add library "pthread" in cmake file for link on OpenBSD
|
* core: add library "pthread" in CMake file for link on OpenBSD
|
||||||
* core: add WEECHAT_HOME option in cmake and configure to setup default WeeChat home (default is "~/.weechat") (task #11266)
|
* core: add WEECHAT_HOME option in CMake and configure to setup default WeeChat home (default is "~/.weechat") (task #11266)
|
||||||
* core: fix compilation under OpenBSD 5.0 (lib utf8 not needed any more) (bug #34727)
|
* core: fix compilation under OpenBSD 5.0 (lib utf8 not needed any more) (bug #34727)
|
||||||
* core: fix compilation error with "pid_t" on macOS (bug #34639)
|
* core: fix compilation error with "pid_t" on macOS (bug #34639)
|
||||||
|
|
||||||
@@ -1581,14 +1695,14 @@ New features::
|
|||||||
* core: allow name of buffer for command /buffer clear (task #11269)
|
* core: allow name of buffer for command /buffer clear (task #11269)
|
||||||
* core: add new command /repeat (execute a command several times)
|
* core: add new command /repeat (execute a command several times)
|
||||||
* core: save and restore layout for buffers and windows on /upgrade
|
* core: save and restore layout for buffers and windows on /upgrade
|
||||||
* core: add option "-all" in command /buffer unmerge
|
* core: add option "-all" in command "/buffer unmerge"
|
||||||
* core: add number in windows (add optional argument "-window" so some actions for command /window)
|
* core: add number in windows (add optional argument "-window" so some actions for command /window)
|
||||||
* core: allow buffer name in /buffer close
|
* core: allow buffer name in /buffer close
|
||||||
* core: add support of mouse: new command /mouse, new key context "mouse", new options weechat.look.mouse and weechat.look.mouse_timer_delay (task #5435)
|
* core: add support of mouse: new command /mouse, new key context "mouse", new options weechat.look.mouse and weechat.look.mouse_timer_delay (task #5435)
|
||||||
* core: add command /cursor (free movement of cursor on screen), with key context "cursor"
|
* core: add command /cursor (free movement of cursor on screen), with key context "cursor"
|
||||||
* core: automatic scroll direction in /bar scroll (x/y is now optional)
|
* core: automatic scroll direction in /bar scroll (x/y is now optional)
|
||||||
* core: add optional delay for key grab (commands /input grab_key and /input grab_key_command, default is 500 milliseconds)
|
* core: add optional delay for key grab (commands /input grab_key and /input grab_key_command, default is 500 milliseconds)
|
||||||
* core: allow plugin name in command /buffer name
|
* core: allow plugin name in command "/buffer name"
|
||||||
* core: add context "search" for keys (to define keys used during search in buffer with kbd:[Ctrl+r])
|
* core: add context "search" for keys (to define keys used during search in buffer with kbd:[Ctrl+r])
|
||||||
* core: add new option weechat.look.separator_vertical, rename option weechat.look.hline_char to weechat.look.separator_horizontal
|
* core: add new option weechat.look.separator_vertical, rename option weechat.look.hline_char to weechat.look.separator_horizontal
|
||||||
* core: add local variable "highlight_regex" in buffers
|
* core: add local variable "highlight_regex" in buffers
|
||||||
@@ -1669,7 +1783,7 @@ New features::
|
|||||||
* core: add option weechat.look.hotlist_buffer_separator
|
* core: add option weechat.look.hotlist_buffer_separator
|
||||||
* core: add messages counts in hotlist for each buffer, new options: weechat.look.hotlist_count_max, weechat.look.hotlist_count_min_msg and weechat.color.status_count_{msg|private|highlight|other}
|
* core: add messages counts in hotlist for each buffer, new options: weechat.look.hotlist_count_max, weechat.look.hotlist_count_min_msg and weechat.color.status_count_{msg|private|highlight|other}
|
||||||
* core: add tag "notify_none" (line with this tag will not update hotlist)
|
* core: add tag "notify_none" (line with this tag will not update hotlist)
|
||||||
* core: add optional bar name in command /bar default
|
* core: add optional bar name in command "/bar default"
|
||||||
* core: add new option weechat.look.highlight_tags (force highlight on tags)
|
* core: add new option weechat.look.highlight_tags (force highlight on tags)
|
||||||
* core: allow list of buffers in command /filter (exclusion with prefix "!") (task #10880)
|
* core: allow list of buffers in command /filter (exclusion with prefix "!") (task #10880)
|
||||||
* core: allow relative size for command /window resize
|
* core: allow relative size for command /window resize
|
||||||
@@ -1801,7 +1915,7 @@ Bug fixes::
|
|||||||
|
|
||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core: add support of Python 2.7 in cmake and configure (debian #606989)
|
* core: add support of Python 2.7 in CMake and configure (debian #606989)
|
||||||
* ruby: fix compilation with Ruby 1.9.2 (patch #7316)
|
* ruby: fix compilation with Ruby 1.9.2 (patch #7316)
|
||||||
|
|
||||||
[[v0.3.3]]
|
[[v0.3.3]]
|
||||||
@@ -1980,7 +2094,7 @@ Bug fixes::
|
|||||||
|
|
||||||
Build::
|
Build::
|
||||||
|
|
||||||
* core: fix cmake directories: let user customize lib, share, locale and include directories (patch #6922)
|
* core: fix CMake directories: let user customize lib, share, locale and include directories (patch #6922)
|
||||||
* ruby: add support of Ruby >= 1.9.1 (patch #6989)
|
* ruby: add support of Ruby >= 1.9.1 (patch #6989)
|
||||||
|
|
||||||
[[v0.3.0]]
|
[[v0.3.0]]
|
||||||
@@ -2157,7 +2271,7 @@ Bug fixes::
|
|||||||
|
|
||||||
Build::
|
Build::
|
||||||
|
|
||||||
* add cmake for weechat compilation (patch #5943)
|
* add CMake for weechat compilation (patch #5943)
|
||||||
|
|
||||||
[[v0.2.4]]
|
[[v0.2.4]]
|
||||||
== Version 0.2.4 (2007-03-29)
|
== Version 0.2.4 (2007-03-29)
|
||||||
|
|||||||
+5
-6
@@ -29,7 +29,7 @@ if TESTS
|
|||||||
tests_dir = tests
|
tests_dir = tests
|
||||||
endif
|
endif
|
||||||
|
|
||||||
SUBDIRS = po doc intl src $(tests_dir)
|
SUBDIRS = icons po doc intl src $(tests_dir)
|
||||||
|
|
||||||
EXTRA_DIST = AUTHORS.adoc \
|
EXTRA_DIST = AUTHORS.adoc \
|
||||||
ChangeLog.adoc \
|
ChangeLog.adoc \
|
||||||
@@ -56,7 +56,6 @@ EXTRA_DIST = AUTHORS.adoc \
|
|||||||
cmake/FindPkgConfig.cmake \
|
cmake/FindPkgConfig.cmake \
|
||||||
cmake/FindPython.cmake \
|
cmake/FindPython.cmake \
|
||||||
cmake/FindRuby.cmake \
|
cmake/FindRuby.cmake \
|
||||||
cmake/FindTCL.cmake \
|
|
||||||
cmake/FindV8.cmake \
|
cmake/FindV8.cmake \
|
||||||
cmake/FindZLIB.cmake \
|
cmake/FindZLIB.cmake \
|
||||||
cmake/cmake_uninstall.cmake.in \
|
cmake/cmake_uninstall.cmake.in \
|
||||||
@@ -66,17 +65,17 @@ EXTRA_DIST = AUTHORS.adoc \
|
|||||||
tools/git-version.sh \
|
tools/git-version.sh \
|
||||||
tools/makedist.sh \
|
tools/makedist.sh \
|
||||||
version.sh \
|
version.sh \
|
||||||
weechat.png \
|
weechat.desktop \
|
||||||
weechat.pc.in \
|
weechat.pc.in \
|
||||||
weechat.cygport.in
|
weechat.cygport.in
|
||||||
|
|
||||||
ACLOCAL_AMFLAGS = -I m4
|
ACLOCAL_AMFLAGS = -I m4
|
||||||
|
|
||||||
pkgconfigdir = $(libdir)/pkgconfig
|
pkgconfigdir = $(libdir)/pkgconfig
|
||||||
pkgconfig_DATA = weechat.pc
|
pkgconfig_DATA = weechat.pc
|
||||||
|
|
||||||
icondir = $(datadir)/icons/hicolor/32x32/apps
|
desktopdir = $(datadir)/applications
|
||||||
icon_DATA = weechat.png
|
desktop_DATA = weechat.desktop
|
||||||
|
|
||||||
clean-local:
|
clean-local:
|
||||||
$(RM) config-git.h
|
$(RM) config-git.h
|
||||||
|
|||||||
+1
-1
@@ -8,7 +8,7 @@ pass:[<p align="center">] image:https://weechat.org/media/images/weechat_logo_la
|
|||||||
image:https://img.shields.io/badge/diaspora*-follow-blue.svg["Diaspora*", link="https://diasp.eu/u/weechat"]
|
image:https://img.shields.io/badge/diaspora*-follow-blue.svg["Diaspora*", link="https://diasp.eu/u/weechat"]
|
||||||
image:https://img.shields.io/badge/mastodon-follow-blue.svg["Mastodon", link="https://hostux.social/@weechat"]
|
image:https://img.shields.io/badge/mastodon-follow-blue.svg["Mastodon", link="https://hostux.social/@weechat"]
|
||||||
image:https://img.shields.io/badge/twitter-follow-blue.svg["Twitter", link="https://twitter.com/WeeChatClient"]
|
image:https://img.shields.io/badge/twitter-follow-blue.svg["Twitter", link="https://twitter.com/WeeChatClient"]
|
||||||
image:https://img.shields.io/badge/devel%20blog-follow-blue.svg["Devel blog", link="https://weechat.org/blog/"]
|
image:https://img.shields.io/badge/devel%20blog-follow-blue.svg["Devel blog", link="https://blog.weechat.org/"]
|
||||||
image:https://img.shields.io/badge/slant-recommend-28acad.svg["Slant", link="https://www.slant.co/topics/1323/~best-irc-clients-for-linux"]
|
image:https://img.shields.io/badge/slant-recommend-28acad.svg["Slant", link="https://www.slant.co/topics/1323/~best-irc-clients-for-linux"]
|
||||||
image:https://img.shields.io/badge/help-donate%20%E2%9D%A4-ff69b4.svg["Donate", link="https://weechat.org/donate/"]
|
image:https://img.shields.io/badge/help-donate%20%E2%9D%A4-ff69b4.svg["Donate", link="https://weechat.org/donate/"]
|
||||||
|
|
||||||
|
|||||||
+138
-3
@@ -17,6 +17,141 @@ https://weechat.org/files/changelog/ChangeLog-devel.html[ChangeLog]
|
|||||||
(file _ChangeLog.adoc_ in sources).
|
(file _ChangeLog.adoc_ in sources).
|
||||||
|
|
||||||
|
|
||||||
|
[[v2.7.1]]
|
||||||
|
== Version 2.7.1 (2020-02-20)
|
||||||
|
|
||||||
|
Bug fix and maintenance release.
|
||||||
|
|
||||||
|
[[v2.7]]
|
||||||
|
== Version 2.7 (2019-12-08)
|
||||||
|
|
||||||
|
[[v2.7_cmake_errors]]
|
||||||
|
=== CMake errors on missing dependencies
|
||||||
|
|
||||||
|
When compiling WeeChat with CMake (which is the recommended way), errors are
|
||||||
|
now displayed on any missing dependency, if the optional feature was enabled
|
||||||
|
(most features are automatically enabled, except documentation, man page and
|
||||||
|
tests).
|
||||||
|
|
||||||
|
Any error on a missing dependency is fatal, so WeeChat can not be compiled.
|
||||||
|
This is a new behavior compared to old versions, where any missing dependency
|
||||||
|
was silently ignored and the compilation was possible anyway.
|
||||||
|
|
||||||
|
For example if PHP is not installed on your system, CMake will display an error
|
||||||
|
on missing PHP library:
|
||||||
|
|
||||||
|
----
|
||||||
|
-- checking for one of the modules 'php7'
|
||||||
|
CMake Warning at cmake/FindPHP.cmake:57 (message):
|
||||||
|
Could not find libphp7. 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.
|
||||||
|
Call Stack (most recent call first):
|
||||||
|
src/plugins/CMakeLists.txt:157 (find_package)
|
||||||
|
|
||||||
|
|
||||||
|
CMake Error at src/plugins/CMakeLists.txt:161 (message):
|
||||||
|
Php not found
|
||||||
|
----
|
||||||
|
|
||||||
|
Then you can either install PHP or explicitly disable PHP if you don't need this
|
||||||
|
plugin, using this cmake option:
|
||||||
|
|
||||||
|
----
|
||||||
|
cmake .. -DENABLE_PHP=OFF
|
||||||
|
----
|
||||||
|
|
||||||
|
[[v2.7_python3_callbacks_strings]]
|
||||||
|
=== Strings received in Python 3 callbacks
|
||||||
|
|
||||||
|
The strings sent to script callbacks in Python 3 are now automatically converted
|
||||||
|
according to the content:
|
||||||
|
|
||||||
|
* if the string is valid UTF-8, it is sent as `str` (legacy behavior)
|
||||||
|
* if the string is not valid UTF-8, it is sent as `bytes` (new).
|
||||||
|
|
||||||
|
In some cases only, the string may not be valid UTF-8, so it is received as
|
||||||
|
`bytes` in the callback, which must take care of that.
|
||||||
|
|
||||||
|
For more information, see the WeeChat scripting guide: chapter about strings
|
||||||
|
received in callbacks (see also issue #1389).
|
||||||
|
|
||||||
|
Note: there are no changes for Python 2 (which is now deprecated and should not
|
||||||
|
be used any more), the strings sent to callbacks are always of type `str`, and
|
||||||
|
may contain invalid UTF-8 data, in the cases mentioned in the WeeChat scripting
|
||||||
|
guide.
|
||||||
|
|
||||||
|
[[v2.7_irc_message_decoding]]
|
||||||
|
=== IRC message decoding/encoding
|
||||||
|
|
||||||
|
A new server option called "charset_message" has been added, replacing the
|
||||||
|
option _irc.network.channel_encode_.
|
||||||
|
|
||||||
|
This new server option has three possible values:
|
||||||
|
|
||||||
|
* _message_ (default): the whole IRC message is decoded/encoded, this is the
|
||||||
|
new default behavior; in case of problem with channel names, try to use
|
||||||
|
_text_ instead
|
||||||
|
* _channel_: the message is decoded/encoded starting at the channel name (or
|
||||||
|
the text if no channel is present); this is like setting the old option
|
||||||
|
_irc.network.channel_encode_ to _on_
|
||||||
|
* _text_: the message is decoded/encoded starting from the text (for example
|
||||||
|
the user message); this is like setting the old option
|
||||||
|
_irc.network.channel_encode_ to _off_ (so this was the default behavior
|
||||||
|
in previous versions)
|
||||||
|
|
||||||
|
[[v2.7_xfer_file_receive_suffix]]
|
||||||
|
=== Suffix for files received via DCC
|
||||||
|
|
||||||
|
Files received via DCC (xfer plugin) now have a suffix ".part" during the
|
||||||
|
transfer. When the transfer is successful, the suffix is removed.
|
||||||
|
|
||||||
|
This suffix can be customized with the new option
|
||||||
|
_xfer.file.download_temporary_suffix_.
|
||||||
|
|
||||||
|
If you prefer the legacy behavior (no suffix added), you can set an empty value
|
||||||
|
in the new option:
|
||||||
|
|
||||||
|
----
|
||||||
|
/set xfer.file.download_temporary_suffix ""
|
||||||
|
----
|
||||||
|
|
||||||
|
[[v2.6]]
|
||||||
|
== Version 2.6 (2019-09-08)
|
||||||
|
|
||||||
|
[[v2.6_python3_default]]
|
||||||
|
=== Python 3 by default
|
||||||
|
|
||||||
|
Python 3 is now used by default to compile the "python" plugin (no fallback
|
||||||
|
on Python 2).
|
||||||
|
|
||||||
|
The CMake option `ENABLE_PYTHON3` has been renamed to `ENABLE_PYTHON2`
|
||||||
|
(configure option `--enable-python2`). If this option is enabled, the "python"
|
||||||
|
plugin is built with Python 2 (no fallback on Python 3).
|
||||||
|
|
||||||
|
[[v2.6_nick_colors]]
|
||||||
|
=== Nick colors
|
||||||
|
|
||||||
|
The function to compute the colors based on the nick letters has been fixed
|
||||||
|
(now the function uses only a 64-bit integer even if the underlying architecture
|
||||||
|
is 32-bit).
|
||||||
|
|
||||||
|
If you're running WeeChat on a 32-bit architecture and want to keep same colors
|
||||||
|
as the previous releases, you can use one of the two new hash values.
|
||||||
|
|
||||||
|
If you were using "djb2", you can switch to "djb2_32":
|
||||||
|
|
||||||
|
----
|
||||||
|
/set weechat.look.nick_color_hash djb2_32
|
||||||
|
----
|
||||||
|
|
||||||
|
If you were using "sum", you can switch to "sum_32":
|
||||||
|
|
||||||
|
----
|
||||||
|
/set weechat.look.nick_color_hash sum_32
|
||||||
|
----
|
||||||
|
|
||||||
[[v2.5]]
|
[[v2.5]]
|
||||||
== Version 2.5 (2019-06-06)
|
== Version 2.5 (2019-06-06)
|
||||||
|
|
||||||
@@ -1076,17 +1211,17 @@ accordingly).
|
|||||||
|
|
||||||
[NOTE]
|
[NOTE]
|
||||||
For packagers: you should create the link `weechat-curses` -> `weechat` if it's
|
For packagers: you should create the link `weechat-curses` -> `weechat` if it's
|
||||||
not automatically created in the package (both cmake and configure are creating
|
not automatically created in the package (both CMake and configure are creating
|
||||||
this link on make install).
|
this link on make install).
|
||||||
|
|
||||||
[[v0.4.2_man_page_documentation]]
|
[[v0.4.2_man_page_documentation]]
|
||||||
=== Man page / documentation
|
=== Man page / documentation
|
||||||
|
|
||||||
Documentation is not built by default any more, you have to use option
|
Documentation is not built by default any more, you have to use option
|
||||||
`-DENABLE_DOC=ON` in cmake to enable it.
|
`-DENABLE_DOC=ON` in cmake command to enable it.
|
||||||
|
|
||||||
The man page is now built with asciidoc and translated in several
|
The man page is now built with asciidoc and translated in several
|
||||||
languages. A new cmake option `ENABLE_MAN` has been added to compile man page
|
languages. A new CMake option `ENABLE_MAN` has been added to compile man page
|
||||||
(`OFF` by default).
|
(`OFF` by default).
|
||||||
|
|
||||||
[[v0.4.2_aspell_colors]]
|
[[v0.4.2_aspell_colors]]
|
||||||
|
|||||||
+4
-5
@@ -24,8 +24,8 @@
|
|||||||
### common stuff
|
### common stuff
|
||||||
###
|
###
|
||||||
|
|
||||||
DIR=$(cd $(dirname "$0"); pwd)
|
DIR=$(cd "$(dirname "$0")" || exit 1; pwd)
|
||||||
cd $DIR
|
cd "$DIR" || exit 1
|
||||||
|
|
||||||
AUTOGEN_LOG=autogen.log
|
AUTOGEN_LOG=autogen.log
|
||||||
|
|
||||||
@@ -41,9 +41,8 @@ err ()
|
|||||||
|
|
||||||
run ()
|
run ()
|
||||||
{
|
{
|
||||||
echo -n "Running \"$@\"..."
|
printf "Running \"%s\"..." "$@"
|
||||||
eval $@ >$AUTOGEN_LOG 2>&1
|
if eval "$@" >$AUTOGEN_LOG 2>&1 ; then
|
||||||
if [ $? = 0 ] ; then
|
|
||||||
echo " OK"
|
echo " OK"
|
||||||
else
|
else
|
||||||
echo " FAILED"
|
echo " FAILED"
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ if(ASCIIDOCTOR_EXECUTABLE)
|
|||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} --version
|
COMMAND ${ASCIIDOCTOR_EXECUTABLE} --version
|
||||||
OUTPUT_VARIABLE ASCIIDOCTOR_VERSION
|
OUTPUT_VARIABLE ASCIIDOCTOR_VERSION
|
||||||
)
|
)
|
||||||
|
|
||||||
string(REGEX REPLACE "^Asciidoctor ([^ ]+) .*" "\\1" ASCIIDOCTOR_VERSION "${ASCIIDOCTOR_VERSION}")
|
string(REGEX REPLACE "^Asciidoctor ([^ ]+) .*" "\\1" ASCIIDOCTOR_VERSION "${ASCIIDOCTOR_VERSION}")
|
||||||
|
|
||||||
@@ -45,5 +45,5 @@ if(ASCIIDOCTOR_EXECUTABLE)
|
|||||||
mark_as_advanced(
|
mark_as_advanced(
|
||||||
ASCIIDOCTOR_EXECUTABLE
|
ASCIIDOCTOR_EXECUTABLE
|
||||||
ASCIIDOCTOR_VERSION
|
ASCIIDOCTOR_VERSION
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -55,4 +55,4 @@ endif()
|
|||||||
mark_as_advanced(
|
mark_as_advanced(
|
||||||
ASPELL_INCLUDE_PATH
|
ASPELL_INCLUDE_PATH
|
||||||
ASPELL_LIBRARY
|
ASPELL_LIBRARY
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -27,8 +27,8 @@
|
|||||||
# CPPUTEST_LIBRARIES = Link options to compile with CppUTest
|
# CPPUTEST_LIBRARIES = Link options to compile with CppUTest
|
||||||
|
|
||||||
if(CPPUTEST_FOUND)
|
if(CPPUTEST_FOUND)
|
||||||
# Already in cache, be silent
|
# Already in cache, be silent
|
||||||
set(CPPUTEST_FIND_QUIETLY TRUE)
|
set(CPPUTEST_FIND_QUIETLY TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_package(PkgConfig)
|
find_package(PkgConfig)
|
||||||
|
|||||||
+10
-11
@@ -13,10 +13,8 @@
|
|||||||
|
|
||||||
|
|
||||||
if(ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES)
|
if(ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES)
|
||||||
|
|
||||||
# in cache already
|
# in cache already
|
||||||
set(ENCHANT_FOUND TRUE)
|
set(ENCHANT_FOUND TRUE)
|
||||||
|
|
||||||
else()
|
else()
|
||||||
if(NOT WIN32)
|
if(NOT WIN32)
|
||||||
# use pkg-config to get the directories and then use these values
|
# use pkg-config to get the directories and then use these values
|
||||||
@@ -27,17 +25,19 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_path(ENCHANT_INCLUDE_DIR
|
find_path(ENCHANT_INCLUDE_DIR
|
||||||
NAMES enchant++.h
|
NAMES enchant++.h
|
||||||
HINTS ${PC_ENCHANT_INCLUDEDIR}
|
HINTS ${PC_ENCHANT_INCLUDEDIR} ${PC_ENCHANT_INCLUDE_DIRS}
|
||||||
${PC_ENCHANT_INCLUDE_DIRS}
|
PATH_SUFFIXES enchant
|
||||||
PATH_SUFFIXES enchant )
|
)
|
||||||
|
|
||||||
find_library(ENCHANT_LIBRARIES NAMES enchant
|
find_library(ENCHANT_LIBRARIES
|
||||||
HINTS ${PC_ENCHANT_LIBDIR}
|
NAMES enchant
|
||||||
${PC_ENCHANT_LIBRARY_DIRS} )
|
HINTS ${PC_ENCHANT_LIBDIR}
|
||||||
|
${PC_ENCHANT_LIBRARY_DIRS}
|
||||||
|
)
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
include(FindPackageHandleStandardArgs)
|
||||||
find_package_handle_standard_args(ENCHANT DEFAULT_MSG ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES )
|
find_package_handle_standard_args(ENCHANT DEFAULT_MSG ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES)
|
||||||
|
|
||||||
mark_as_advanced(ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES)
|
mark_as_advanced(ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES)
|
||||||
|
|
||||||
@@ -47,5 +47,4 @@ else()
|
|||||||
check_symbol_exists(enchant_get_version "enchant.h" HAVE_ENCHANT_GET_VERSION)
|
check_symbol_exists(enchant_get_version "enchant.h" HAVE_ENCHANT_GET_VERSION)
|
||||||
set(CMAKE_REQUIRED_INCLUDES)
|
set(CMAKE_REQUIRED_INCLUDES)
|
||||||
set(CMAKE_REQUIRED_LIBRARIES)
|
set(CMAKE_REQUIRED_LIBRARIES)
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -28,8 +28,8 @@
|
|||||||
# GETTEXT_FOUND = is gettext usable on system?
|
# GETTEXT_FOUND = is gettext usable on system?
|
||||||
|
|
||||||
if(GETTEXT_FOUND)
|
if(GETTEXT_FOUND)
|
||||||
# Already in cache, be silent
|
# Already in cache, be silent
|
||||||
set(GETTEXT_FIND_QUIETLY TRUE)
|
set(GETTEXT_FIND_QUIETLY TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
include(CheckIncludeFiles)
|
include(CheckIncludeFiles)
|
||||||
@@ -54,7 +54,7 @@ if(HAVE_LIBINTL_H)
|
|||||||
PATHS
|
PATHS
|
||||||
/usr/local/lib
|
/usr/local/lib
|
||||||
/usr/lib
|
/usr/lib
|
||||||
)
|
)
|
||||||
if(LIBINTL_LIBRARY)
|
if(LIBINTL_LIBRARY)
|
||||||
if(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
|
if(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
|
||||||
set(CMAKE_REQUIRED_LIBRARIES "iconv")
|
set(CMAKE_REQUIRED_LIBRARIES "iconv")
|
||||||
@@ -62,7 +62,6 @@ if(HAVE_LIBINTL_H)
|
|||||||
else()
|
else()
|
||||||
check_library_exists(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT)
|
check_library_exists(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(LIBINTL_HAS_DGETTEXT)
|
if(LIBINTL_HAS_DGETTEXT)
|
||||||
set(GETTEXT_FOUND TRUE)
|
set(GETTEXT_FOUND TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -30,23 +30,23 @@
|
|||||||
# GNUTLS_LDFLAGS = ldflags to use to compile
|
# GNUTLS_LDFLAGS = ldflags to use to compile
|
||||||
|
|
||||||
if(GNUTLS_INCLUDE_PATH AND GNUTLS_LIBRARY)
|
if(GNUTLS_INCLUDE_PATH AND GNUTLS_LIBRARY)
|
||||||
# Already in cache, be silent
|
# Already in cache, be silent
|
||||||
set(GNUTLS_FIND_QUIETLY TRUE)
|
set(GNUTLS_FIND_QUIETLY TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config)
|
find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config)
|
||||||
|
|
||||||
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=prefix gnutls
|
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=prefix gnutls
|
||||||
OUTPUT_VARIABLE GNUTLS_PREFIX
|
OUTPUT_VARIABLE GNUTLS_PREFIX
|
||||||
)
|
)
|
||||||
|
|
||||||
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --cflags gnutls
|
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --cflags gnutls
|
||||||
OUTPUT_VARIABLE GNUTLS_CFLAGS
|
OUTPUT_VARIABLE GNUTLS_CFLAGS
|
||||||
)
|
)
|
||||||
string(REGEX REPLACE "[\r\n]" "" GNUTLS_CFLAGS "${GNUTLS_CFLAGS}")
|
string(REGEX REPLACE "[\r\n]" "" GNUTLS_CFLAGS "${GNUTLS_CFLAGS}")
|
||||||
|
|
||||||
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --libs gnutls
|
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --libs gnutls
|
||||||
OUTPUT_VARIABLE GNUTLS_LDFLAGS
|
OUTPUT_VARIABLE GNUTLS_LDFLAGS
|
||||||
)
|
)
|
||||||
string(REGEX REPLACE "[\r\n]" "" GNUTLS_LDFLAGS "${GNUTLS_LDFLAGS}")
|
string(REGEX REPLACE "[\r\n]" "" GNUTLS_LDFLAGS "${GNUTLS_LDFLAGS}")
|
||||||
|
|
||||||
|
|||||||
@@ -27,13 +27,13 @@
|
|||||||
# GUILE_LIBRARIES = Link options to compile Guile
|
# GUILE_LIBRARIES = Link options to compile Guile
|
||||||
|
|
||||||
if(GUILE_FOUND)
|
if(GUILE_FOUND)
|
||||||
# Already in cache, be silent
|
# Already in cache, be silent
|
||||||
set(GUILE_FIND_QUIETLY TRUE)
|
set(GUILE_FIND_QUIETLY TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_package(PkgConfig)
|
find_package(PkgConfig)
|
||||||
if(PKG_CONFIG_FOUND)
|
if(PKG_CONFIG_FOUND)
|
||||||
pkg_search_module(GUILE guile-2.0)
|
pkg_search_module(GUILE guile-2.2 guile-2.0)
|
||||||
if(GUILE_FOUND)
|
if(GUILE_FOUND)
|
||||||
# check if variable "scm_install_gmp_memory_functions" exists
|
# check if variable "scm_install_gmp_memory_functions" exists
|
||||||
set(CMAKE_REQUIRED_INCLUDES ${GUILE_INCLUDE_DIRS})
|
set(CMAKE_REQUIRED_INCLUDES ${GUILE_INCLUDE_DIRS})
|
||||||
|
|||||||
@@ -29,8 +29,8 @@
|
|||||||
# ICONV_FOUND = is iconv usable on system?
|
# ICONV_FOUND = is iconv usable on system?
|
||||||
|
|
||||||
if(ICONV_FOUND)
|
if(ICONV_FOUND)
|
||||||
# Already in cache, be silent
|
# Already in cache, be silent
|
||||||
set(ICONV_FIND_QUIETLY TRUE)
|
set(ICONV_FIND_QUIETLY TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
include(CheckLibraryExists)
|
include(CheckLibraryExists)
|
||||||
|
|||||||
+2
-2
@@ -29,8 +29,8 @@
|
|||||||
# LUA_FOUND = is liblua usable on system?
|
# LUA_FOUND = is liblua usable on system?
|
||||||
|
|
||||||
if(LUA_FOUND)
|
if(LUA_FOUND)
|
||||||
# Already in cache, be silent
|
# Already in cache, be silent
|
||||||
set(LUA_FIND_QUIETLY TRUE)
|
set(LUA_FIND_QUIETLY TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_package(PkgConfig)
|
find_package(PkgConfig)
|
||||||
|
|||||||
@@ -23,9 +23,8 @@ endif()
|
|||||||
|
|
||||||
find_path(NCURSES_INCLUDE_PATH
|
find_path(NCURSES_INCLUDE_PATH
|
||||||
NAMES ncurses.h curses.h
|
NAMES ncurses.h curses.h
|
||||||
PATHS /usr/include/ncursesw /usr/include/ncurses /usr/include
|
PATH_SUFFIXES ncursesw ncurses
|
||||||
/usr/local/include/ncursesw /usr/local/include/ncurses /usr/local/include
|
PATHS /usr/include /usr/local/include /usr/pkg/include
|
||||||
/usr/pkg/include/ncursesw /usr/pkg/include/ncurses /usr/pkg/include
|
|
||||||
)
|
)
|
||||||
|
|
||||||
find_library(NCURSESW_LIBRARY
|
find_library(NCURSESW_LIBRARY
|
||||||
|
|||||||
+4
-2
@@ -32,7 +32,8 @@ if(NOT PHP_FOUND)
|
|||||||
php-config7.2 php-config72
|
php-config7.2 php-config72
|
||||||
php-config7.1 php-config71
|
php-config7.1 php-config71
|
||||||
php-config7.0 php-config70
|
php-config7.0 php-config70
|
||||||
php-config php-config7)
|
php-config php-config7
|
||||||
|
)
|
||||||
if (PHP_CONFIG_EXECUTABLE)
|
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} --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} --includes OUTPUT_VARIABLE PHP_INCLUDE_DIRS OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
@@ -41,7 +42,8 @@ if(NOT PHP_FOUND)
|
|||||||
if(${PHP_VERSION} MATCHES "^7")
|
if(${PHP_VERSION} MATCHES "^7")
|
||||||
find_library(PHP_LIB
|
find_library(PHP_LIB
|
||||||
NAMES php7.3 php7.2 php7.1 php7.0 php7
|
NAMES php7.3 php7.2 php7.1 php7.0 php7
|
||||||
HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64)
|
HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64
|
||||||
|
)
|
||||||
if(PHP_LIB)
|
if(PHP_LIB)
|
||||||
get_filename_component(PHP_LIB_DIR ${PHP_LIB} DIRECTORY)
|
get_filename_component(PHP_LIB_DIR ${PHP_LIB} DIRECTORY)
|
||||||
string(REPLACE "-I" "" PHP_INCLUDE_DIRS ${PHP_INCLUDE_DIRS})
|
string(REPLACE "-I" "" PHP_INCLUDE_DIRS ${PHP_INCLUDE_DIRS})
|
||||||
|
|||||||
@@ -29,31 +29,31 @@
|
|||||||
# PERL_LFLAGS = perl compiler options for linking
|
# PERL_LFLAGS = perl compiler options for linking
|
||||||
|
|
||||||
if(PERL_FOUND)
|
if(PERL_FOUND)
|
||||||
# Already in cache, be silent
|
# Already in cache, be silent
|
||||||
set(PERL_FIND_QUIETLY TRUE)
|
set(PERL_FIND_QUIETLY TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_program(PERL_EXECUTABLE
|
find_program(PERL_EXECUTABLE
|
||||||
NAMES perl perl5
|
NAMES perl perl5
|
||||||
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
|
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
|
||||||
)
|
)
|
||||||
|
|
||||||
if(PERL_EXECUTABLE)
|
if(PERL_EXECUTABLE)
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \"\$Config{archlibexp}/CORE\""
|
COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \"\$Config{archlibexp}/CORE\""
|
||||||
OUTPUT_VARIABLE PERL_INTERNAL_DIR
|
OUTPUT_VARIABLE PERL_INTERNAL_DIR
|
||||||
)
|
)
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${PERL_EXECUTABLE} -MExtUtils::Embed -e ccopts
|
COMMAND ${PERL_EXECUTABLE} -MExtUtils::Embed -e ccopts
|
||||||
OUTPUT_VARIABLE PERL_CFLAGS
|
OUTPUT_VARIABLE PERL_CFLAGS
|
||||||
)
|
)
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${PERL_EXECUTABLE} -MExtUtils::Embed -e ldopts
|
COMMAND ${PERL_EXECUTABLE} -MExtUtils::Embed -e ldopts
|
||||||
OUTPUT_VARIABLE PERL_LFLAGS
|
OUTPUT_VARIABLE PERL_LFLAGS
|
||||||
)
|
)
|
||||||
|
|
||||||
# remove the new lines from the output by replacing them with empty strings
|
# remove the new lines from the output by replacing them with empty strings
|
||||||
string(REPLACE "\n" "" PERL_INTERNAL_DIR "${PERL_INTERNAL_DIR}")
|
string(REPLACE "\n" "" PERL_INTERNAL_DIR "${PERL_INTERNAL_DIR}")
|
||||||
@@ -63,12 +63,12 @@ if(PERL_EXECUTABLE)
|
|||||||
find_path(PERL_INCLUDE_PATH
|
find_path(PERL_INCLUDE_PATH
|
||||||
NAMES perl.h
|
NAMES perl.h
|
||||||
PATHS ${PERL_INTERNAL_DIR}
|
PATHS ${PERL_INTERNAL_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
find_library(PERL_LIBRARY
|
find_library(PERL_LIBRARY
|
||||||
NAMES perl
|
NAMES perl
|
||||||
PATHS /usr/lib /usr/local/lib /usr/pkg/lib ${PERL_INTERNAL_DIR}
|
PATHS /usr/lib /usr/local/lib /usr/pkg/lib ${PERL_INTERNAL_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
if(PERL_LIBRARY AND PERL_INCLUDE_PATH)
|
if(PERL_LIBRARY AND PERL_INCLUDE_PATH)
|
||||||
set(PERL_FOUND TRUE)
|
set(PERL_FOUND TRUE)
|
||||||
@@ -80,5 +80,5 @@ if(PERL_EXECUTABLE)
|
|||||||
PERL_LIBRARY
|
PERL_LIBRARY
|
||||||
PERL_CFLAGS
|
PERL_CFLAGS
|
||||||
PERL_LFLAGS
|
PERL_LFLAGS
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
+597
-185
@@ -1,117 +1,60 @@
|
|||||||
# - a pkg-config module for CMake
|
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||||
#
|
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||||
# Usage:
|
|
||||||
# pkg_check_modules(<PREFIX> [REQUIRED] <MODULE> [<MODULE>]*)
|
|
||||||
# checks for all the given modules
|
|
||||||
#
|
|
||||||
# pkg_search_module(<PREFIX> [REQUIRED] <MODULE> [<MODULE>]*)
|
|
||||||
# checks for given modules and uses the first working one
|
|
||||||
#
|
|
||||||
# When the 'REQUIRED' argument was set, macros will fail with an error
|
|
||||||
# when module(s) could not be found
|
|
||||||
#
|
|
||||||
# It sets the following variables:
|
|
||||||
# PKG_CONFIG_FOUND ... true iff pkg-config works on the system
|
|
||||||
# PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program
|
|
||||||
# <PREFIX>_FOUND ... set to 1 iff module(s) exist
|
|
||||||
#
|
|
||||||
# For the following variables two sets of values exist; first one is the
|
|
||||||
# common one and has the given PREFIX. The second set contains flags
|
|
||||||
# which are given out when pkgconfig was called with the '--static'
|
|
||||||
# option.
|
|
||||||
# <XPREFIX>_LIBRARIES ... only the libraries (w/o the '-l')
|
|
||||||
# <XPREFIX>_LIBRARY_DIRS ... the paths of the libraries (w/o the '-L')
|
|
||||||
# <XPREFIX>_LDFLAGS ... all required linker flags
|
|
||||||
# <XPREFIX>_LDFLAGS_OTHER ... all other linker flags
|
|
||||||
# <XPREFIX>_INCLUDE_DIRS ... the '-I' preprocessor flags (w/o the '-I')
|
|
||||||
# <XPREFIX>_CFLAGS ... all required cflags
|
|
||||||
# <XPREFIX>_CFLAGS_OTHER ... the other compiler flags
|
|
||||||
#
|
|
||||||
# <XPREFIX> = <PREFIX> for common case
|
|
||||||
# <XPREFIX> = <PREFIX>_STATIC for static linking
|
|
||||||
#
|
|
||||||
# There are some special variables whose prefix depends on the count
|
|
||||||
# of given modules. When there is only one module, <PREFIX> stays
|
|
||||||
# unchanged. When there are multiple modules, the prefix will be
|
|
||||||
# changed to <PREFIX>_<MODNAME>:
|
|
||||||
# <XPREFIX>_VERSION ... version of the module
|
|
||||||
# <XPREFIX>_PREFIX ... prefix-directory of the module
|
|
||||||
# <XPREFIX>_INCLUDEDIR ... include-dir of the module
|
|
||||||
# <XPREFIX>_LIBDIR ... lib-dir of the module
|
|
||||||
#
|
|
||||||
# <XPREFIX> = <PREFIX> when |MODULES| == 1, else
|
|
||||||
# <XPREFIX> = <PREFIX>_<MODNAME>
|
|
||||||
#
|
|
||||||
# A <MODULE> parameter can have the following formats:
|
|
||||||
# {MODNAME} ... matches any version
|
|
||||||
# {MODNAME}>={VERSION} ... at least version <VERSION> is required
|
|
||||||
# {MODNAME}={VERSION} ... exactly version <VERSION> is required
|
|
||||||
# {MODNAME}<={VERSION} ... modules must not be newer than <VERSION>
|
|
||||||
#
|
|
||||||
# Examples
|
|
||||||
# pkg_check_modules (GLIB2 glib-2.0)
|
|
||||||
#
|
|
||||||
# pkg_check_modules (GLIB2 glib-2.0>=2.10)
|
|
||||||
# requires at least version 2.10 of glib2 and defines e.g.
|
|
||||||
# GLIB2_VERSION=2.10.3
|
|
||||||
#
|
|
||||||
# pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0)
|
|
||||||
# requires both glib2 and gtk2, and defines e.g.
|
|
||||||
# FOO_glib-2.0_VERSION=2.10.3
|
|
||||||
# FOO_gtk+-2.0_VERSION=2.8.20
|
|
||||||
#
|
|
||||||
# pkg_check_modules (XRENDER REQUIRED xrender)
|
|
||||||
# defines e.g.:
|
|
||||||
# XRENDER_LIBRARIES=Xrender;X11
|
|
||||||
# XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp
|
|
||||||
#
|
|
||||||
# pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2)
|
|
||||||
|
|
||||||
|
#[========================================[.rst:
|
||||||
|
FindPkgConfig
|
||||||
|
-------------
|
||||||
|
|
||||||
# Copyright (C) 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
|
A ``pkg-config`` module for CMake.
|
||||||
#
|
|
||||||
# Redistribution and use, with or without modification, are permitted
|
|
||||||
# provided that the following conditions are met:
|
|
||||||
#
|
|
||||||
# 1. Redistributions must retain the above copyright notice, this
|
|
||||||
# list of conditions and the following disclaimer.
|
|
||||||
# 2. The name of the author may not be used to endorse or promote
|
|
||||||
# products derived from this software without specific prior
|
|
||||||
# written permission.
|
|
||||||
#
|
|
||||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
||||||
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
||||||
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
||||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
|
||||||
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
||||||
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
|
||||||
# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
||||||
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
|
|
||||||
# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
|
||||||
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
|
||||||
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
|
Finds the ``pkg-config`` executable and adds the :command:`pkg_get_variable`,
|
||||||
|
:command:`pkg_check_modules` and :command:`pkg_search_module` commands. The
|
||||||
|
following variables will also be set:
|
||||||
|
|
||||||
|
``PKG_CONFIG_FOUND``
|
||||||
|
if pkg-config executable was found
|
||||||
|
``PKG_CONFIG_EXECUTABLE``
|
||||||
|
pathname of the pkg-config program
|
||||||
|
``PKG_CONFIG_VERSION_STRING``
|
||||||
|
version of pkg-config (since CMake 2.8.8)
|
||||||
|
|
||||||
|
#]========================================]
|
||||||
|
|
||||||
### Common stuff ####
|
### Common stuff ####
|
||||||
set(PKG_CONFIG_VERSION 1)
|
set(PKG_CONFIG_VERSION 1)
|
||||||
set(PKG_CONFIG_FOUND 0)
|
|
||||||
|
|
||||||
|
# find pkg-config, use PKG_CONFIG if set
|
||||||
|
if((NOT PKG_CONFIG_EXECUTABLE) AND (NOT "$ENV{PKG_CONFIG}" STREQUAL ""))
|
||||||
|
set(PKG_CONFIG_EXECUTABLE "$ENV{PKG_CONFIG}" CACHE FILEPATH "pkg-config executable")
|
||||||
|
endif()
|
||||||
find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable")
|
find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable")
|
||||||
mark_as_advanced(PKG_CONFIG_EXECUTABLE)
|
mark_as_advanced(PKG_CONFIG_EXECUTABLE)
|
||||||
|
|
||||||
if(PKG_CONFIG_EXECUTABLE)
|
if (PKG_CONFIG_EXECUTABLE)
|
||||||
set(PKG_CONFIG_FOUND 1)
|
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --version
|
||||||
endif(PKG_CONFIG_EXECUTABLE)
|
OUTPUT_VARIABLE PKG_CONFIG_VERSION_STRING
|
||||||
|
ERROR_QUIET
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
|
||||||
|
find_package_handle_standard_args(PkgConfig
|
||||||
|
REQUIRED_VARS PKG_CONFIG_EXECUTABLE
|
||||||
|
VERSION_VAR PKG_CONFIG_VERSION_STRING)
|
||||||
|
|
||||||
|
# This is needed because the module name is "PkgConfig" but the name of
|
||||||
|
# this variable has always been PKG_CONFIG_FOUND so this isn't automatically
|
||||||
|
# handled by FPHSA.
|
||||||
|
set(PKG_CONFIG_FOUND "${PKGCONFIG_FOUND}")
|
||||||
|
|
||||||
# Unsets the given variables
|
# Unsets the given variables
|
||||||
macro(_pkgconfig_unset var)
|
macro(_pkgconfig_unset var)
|
||||||
set(${var} "" CACHE INTERNAL "")
|
set(${var} "" CACHE INTERNAL "")
|
||||||
endmacro(_pkgconfig_unset)
|
endmacro()
|
||||||
|
|
||||||
macro(_pkgconfig_set var value)
|
macro(_pkgconfig_set var value)
|
||||||
set(${var} ${value} CACHE INTERNAL "")
|
set(${var} ${value} CACHE INTERNAL "")
|
||||||
endmacro(_pkgconfig_set)
|
endmacro()
|
||||||
|
|
||||||
# Invokes pkgconfig, cleans up the result and sets variables
|
# Invokes pkgconfig, cleans up the result and sets variables
|
||||||
macro(_pkgconfig_invoke _pkglist _prefix _varname _regexp)
|
macro(_pkgconfig_invoke _pkglist _prefix _varname _regexp)
|
||||||
@@ -120,55 +63,311 @@ macro(_pkgconfig_invoke _pkglist _prefix _varname _regexp)
|
|||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${PKG_CONFIG_EXECUTABLE} ${ARGN} ${_pkglist}
|
COMMAND ${PKG_CONFIG_EXECUTABLE} ${ARGN} ${_pkglist}
|
||||||
OUTPUT_VARIABLE _pkgconfig_invoke_result
|
OUTPUT_VARIABLE _pkgconfig_invoke_result
|
||||||
RESULT_VARIABLE _pkgconfig_failed)
|
RESULT_VARIABLE _pkgconfig_failed
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
if (_pkgconfig_failed)
|
if (_pkgconfig_failed)
|
||||||
set(_pkgconfig_${_varname} "")
|
set(_pkgconfig_${_varname} "")
|
||||||
_pkgconfig_unset(${_prefix}_${_varname})
|
_pkgconfig_unset(${_prefix}_${_varname})
|
||||||
else(_pkgconfig_failed)
|
else()
|
||||||
string(REGEX REPLACE "[\r\n]" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
|
string(REGEX REPLACE "[\r\n]" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
|
||||||
string(REGEX REPLACE " +$" "" _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
|
|
||||||
|
|
||||||
if (NOT ${_regexp} STREQUAL "")
|
if (NOT ${_regexp} STREQUAL "")
|
||||||
string(REGEX REPLACE "${_regexp}" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
|
string(REGEX REPLACE "${_regexp}" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
|
||||||
endif(NOT ${_regexp} STREQUAL "")
|
endif()
|
||||||
|
|
||||||
separate_arguments(_pkgconfig_invoke_result)
|
separate_arguments(_pkgconfig_invoke_result)
|
||||||
|
|
||||||
#message(STATUS " ${_varname} ... ${_pkgconfig_invoke_result}")
|
#message(STATUS " ${_varname} ... ${_pkgconfig_invoke_result}")
|
||||||
set(_pkgconfig_${_varname} ${_pkgconfig_invoke_result})
|
set(_pkgconfig_${_varname} ${_pkgconfig_invoke_result})
|
||||||
_pkgconfig_set(${_prefix}_${_varname} "${_pkgconfig_invoke_result}")
|
_pkgconfig_set(${_prefix}_${_varname} "${_pkgconfig_invoke_result}")
|
||||||
endif(_pkgconfig_failed)
|
endif()
|
||||||
endmacro(_pkgconfig_invoke)
|
endmacro()
|
||||||
|
|
||||||
|
# Internal version of pkg_get_variable; expects PKG_CONFIG_PATH to already be set
|
||||||
|
function (_pkg_get_variable result pkg variable)
|
||||||
|
_pkgconfig_invoke("${pkg}" "prefix" "result" "" "--variable=${variable}")
|
||||||
|
set("${result}"
|
||||||
|
"${prefix_result}"
|
||||||
|
PARENT_SCOPE)
|
||||||
|
endfunction ()
|
||||||
|
|
||||||
# Invokes pkgconfig two times; once without '--static' and once with
|
# Invokes pkgconfig two times; once without '--static' and once with
|
||||||
# '--static'
|
# '--static'
|
||||||
macro(_pkgconfig_invoke_dyn _pkglist _prefix _varname cleanup_regexp)
|
macro(_pkgconfig_invoke_dyn _pkglist _prefix _varname cleanup_regexp)
|
||||||
_pkgconfig_invoke("${_pkglist}" ${_prefix} ${_varname} "${cleanup_regexp}" ${ARGN})
|
_pkgconfig_invoke("${_pkglist}" ${_prefix} ${_varname} "${cleanup_regexp}" ${ARGN})
|
||||||
_pkgconfig_invoke("${_pkglist}" ${_prefix} STATIC_${_varname} "${cleanup_regexp}" --static ${ARGN})
|
_pkgconfig_invoke("${_pkglist}" ${_prefix} STATIC_${_varname} "${cleanup_regexp}" --static ${ARGN})
|
||||||
endmacro(_pkgconfig_invoke_dyn)
|
endmacro()
|
||||||
|
|
||||||
# Splits given arguments into options and a package list
|
# Splits given arguments into options and a package list
|
||||||
macro(_pkgconfig_parse_options _result _is_req)
|
macro(_pkgconfig_parse_options _result _is_req _is_silent _no_cmake_path _no_cmake_environment_path _imp_target _imp_target_global)
|
||||||
set(${_is_req} 0)
|
set(${_is_req} 0)
|
||||||
|
set(${_is_silent} 0)
|
||||||
|
set(${_no_cmake_path} 0)
|
||||||
|
set(${_no_cmake_environment_path} 0)
|
||||||
|
set(${_imp_target} 0)
|
||||||
|
set(${_imp_target_global} 0)
|
||||||
|
if(DEFINED PKG_CONFIG_USE_CMAKE_PREFIX_PATH)
|
||||||
|
if(NOT PKG_CONFIG_USE_CMAKE_PREFIX_PATH)
|
||||||
|
set(${_no_cmake_path} 1)
|
||||||
|
set(${_no_cmake_environment_path} 1)
|
||||||
|
endif()
|
||||||
|
elseif(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 3.1)
|
||||||
|
set(${_no_cmake_path} 1)
|
||||||
|
set(${_no_cmake_environment_path} 1)
|
||||||
|
endif()
|
||||||
|
|
||||||
foreach(_pkg ${ARGN})
|
foreach(_pkg ${ARGN})
|
||||||
if (_pkg STREQUAL "REQUIRED")
|
if (_pkg STREQUAL "REQUIRED")
|
||||||
set(${_is_req} 1)
|
set(${_is_req} 1)
|
||||||
endif (_pkg STREQUAL "REQUIRED")
|
endif ()
|
||||||
endforeach(_pkg ${ARGN})
|
if (_pkg STREQUAL "QUIET")
|
||||||
|
set(${_is_silent} 1)
|
||||||
|
endif ()
|
||||||
|
if (_pkg STREQUAL "NO_CMAKE_PATH")
|
||||||
|
set(${_no_cmake_path} 1)
|
||||||
|
endif()
|
||||||
|
if (_pkg STREQUAL "NO_CMAKE_ENVIRONMENT_PATH")
|
||||||
|
set(${_no_cmake_environment_path} 1)
|
||||||
|
endif()
|
||||||
|
if (_pkg STREQUAL "IMPORTED_TARGET")
|
||||||
|
set(${_imp_target} 1)
|
||||||
|
endif()
|
||||||
|
if (_pkg STREQUAL "GLOBAL")
|
||||||
|
set(${_imp_target_global} 1)
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
if (${_imp_target_global} AND NOT ${_imp_target})
|
||||||
|
message(SEND_ERROR "the argument GLOBAL may only be used together with IMPORTED_TARGET")
|
||||||
|
endif()
|
||||||
|
|
||||||
set(${_result} ${ARGN})
|
set(${_result} ${ARGN})
|
||||||
list(REMOVE_ITEM ${_result} "REQUIRED")
|
list(REMOVE_ITEM ${_result} "REQUIRED")
|
||||||
endmacro(_pkgconfig_parse_options)
|
list(REMOVE_ITEM ${_result} "QUIET")
|
||||||
|
list(REMOVE_ITEM ${_result} "NO_CMAKE_PATH")
|
||||||
|
list(REMOVE_ITEM ${_result} "NO_CMAKE_ENVIRONMENT_PATH")
|
||||||
|
list(REMOVE_ITEM ${_result} "IMPORTED_TARGET")
|
||||||
|
list(REMOVE_ITEM ${_result} "GLOBAL")
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
# Add the content of a variable or an environment variable to a list of
|
||||||
|
# paths
|
||||||
|
# Usage:
|
||||||
|
# - _pkgconfig_add_extra_path(_extra_paths VAR)
|
||||||
|
# - _pkgconfig_add_extra_path(_extra_paths ENV VAR)
|
||||||
|
function(_pkgconfig_add_extra_path _extra_paths_var _var)
|
||||||
|
set(_is_env 0)
|
||||||
|
if(ARGC GREATER 2 AND _var STREQUAL "ENV")
|
||||||
|
set(_var ${ARGV2})
|
||||||
|
set(_is_env 1)
|
||||||
|
endif()
|
||||||
|
if(NOT _is_env)
|
||||||
|
if(NOT "${${_var}}" STREQUAL "")
|
||||||
|
list(APPEND ${_extra_paths_var} ${${_var}})
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
if(NOT "$ENV{${_var}}" STREQUAL "")
|
||||||
|
file(TO_CMAKE_PATH "$ENV{${_var}}" _path)
|
||||||
|
list(APPEND ${_extra_paths_var} ${_path})
|
||||||
|
unset(_path)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
set(${_extra_paths_var} ${${_extra_paths_var}} PARENT_SCOPE)
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
# scan the LDFLAGS returned by pkg-config for library directories and
|
||||||
|
# libraries, figure out the absolute paths of that libraries in the
|
||||||
|
# given directories
|
||||||
|
function(_pkg_find_libs _prefix _no_cmake_path _no_cmake_environment_path)
|
||||||
|
unset(_libs)
|
||||||
|
unset(_find_opts)
|
||||||
|
|
||||||
|
# set the options that are used as long as the .pc file does not provide a library
|
||||||
|
# path to look into
|
||||||
|
if(_no_cmake_path)
|
||||||
|
list(APPEND _find_opts "NO_CMAKE_PATH")
|
||||||
|
endif()
|
||||||
|
if(_no_cmake_environment_path)
|
||||||
|
list(APPEND _find_opts "NO_CMAKE_ENVIRONMENT_PATH")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
unset(_search_paths)
|
||||||
|
foreach (flag IN LISTS ${_prefix}_LDFLAGS)
|
||||||
|
if (flag MATCHES "^-L(.*)")
|
||||||
|
list(APPEND _search_paths ${CMAKE_MATCH_1})
|
||||||
|
continue()
|
||||||
|
endif()
|
||||||
|
if (flag MATCHES "^-l(.*)")
|
||||||
|
set(_pkg_search "${CMAKE_MATCH_1}")
|
||||||
|
else()
|
||||||
|
continue()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(_search_paths)
|
||||||
|
# Firstly search in -L paths
|
||||||
|
find_library(pkgcfg_lib_${_prefix}_${_pkg_search}
|
||||||
|
NAMES ${_pkg_search}
|
||||||
|
HINTS ${_search_paths} NO_DEFAULT_PATH)
|
||||||
|
endif()
|
||||||
|
find_library(pkgcfg_lib_${_prefix}_${_pkg_search}
|
||||||
|
NAMES ${_pkg_search}
|
||||||
|
${_find_opts})
|
||||||
|
mark_as_advanced(pkgcfg_lib_${_prefix}_${_pkg_search})
|
||||||
|
if(pkgcfg_lib_${_prefix}_${_pkg_search})
|
||||||
|
list(APPEND _libs "${pkgcfg_lib_${_prefix}_${_pkg_search}}")
|
||||||
|
else()
|
||||||
|
list(APPEND _libs ${_pkg_search})
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
set(${_prefix}_LINK_LIBRARIES "${_libs}" PARENT_SCOPE)
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
# create an imported target from all the information returned by pkg-config
|
||||||
|
function(_pkg_create_imp_target _prefix _imp_target_global)
|
||||||
|
# only create the target if it is linkable, i.e. no executables
|
||||||
|
if (NOT TARGET PkgConfig::${_prefix}
|
||||||
|
AND ( ${_prefix}_INCLUDE_DIRS OR ${_prefix}_LINK_LIBRARIES OR ${_prefix}_LDFLAGS_OTHER OR ${_prefix}_CFLAGS_OTHER ))
|
||||||
|
if(${_imp_target_global})
|
||||||
|
set(_global_opt "GLOBAL")
|
||||||
|
else()
|
||||||
|
unset(_global_opt)
|
||||||
|
endif()
|
||||||
|
add_library(PkgConfig::${_prefix} INTERFACE IMPORTED ${_global_opt})
|
||||||
|
|
||||||
|
if(${_prefix}_INCLUDE_DIRS)
|
||||||
|
set_property(TARGET PkgConfig::${_prefix} PROPERTY
|
||||||
|
INTERFACE_INCLUDE_DIRECTORIES "${${_prefix}_INCLUDE_DIRS}")
|
||||||
|
endif()
|
||||||
|
if(${_prefix}_LINK_LIBRARIES)
|
||||||
|
set_property(TARGET PkgConfig::${_prefix} PROPERTY
|
||||||
|
INTERFACE_LINK_LIBRARIES "${${_prefix}_LINK_LIBRARIES}")
|
||||||
|
endif()
|
||||||
|
if(${_prefix}_LDFLAGS_OTHER)
|
||||||
|
set_property(TARGET PkgConfig::${_prefix} PROPERTY
|
||||||
|
INTERFACE_LINK_OPTIONS "${${_prefix}_LDFLAGS_OTHER}")
|
||||||
|
endif()
|
||||||
|
if(${_prefix}_CFLAGS_OTHER)
|
||||||
|
set_property(TARGET PkgConfig::${_prefix} PROPERTY
|
||||||
|
INTERFACE_COMPILE_OPTIONS "${${_prefix}_CFLAGS_OTHER}")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
# recalculate the dynamic output
|
||||||
|
# this is a macro and not a function so the result of _pkg_find_libs is automatically propagated
|
||||||
|
macro(_pkg_recalculate _prefix _no_cmake_path _no_cmake_environment_path _imp_target _imp_target_global)
|
||||||
|
_pkg_find_libs(${_prefix} ${_no_cmake_path} ${_no_cmake_environment_path})
|
||||||
|
if(${_imp_target})
|
||||||
|
_pkg_create_imp_target(${_prefix} ${_imp_target_global})
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
###
|
###
|
||||||
macro(_pkg_check_modules_internal _is_required _is_silent _prefix)
|
macro(_pkg_set_path_internal)
|
||||||
|
set(_extra_paths)
|
||||||
|
|
||||||
|
if(NOT _no_cmake_path)
|
||||||
|
_pkgconfig_add_extra_path(_extra_paths CMAKE_PREFIX_PATH)
|
||||||
|
_pkgconfig_add_extra_path(_extra_paths CMAKE_FRAMEWORK_PATH)
|
||||||
|
_pkgconfig_add_extra_path(_extra_paths CMAKE_APPBUNDLE_PATH)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT _no_cmake_environment_path)
|
||||||
|
_pkgconfig_add_extra_path(_extra_paths ENV CMAKE_PREFIX_PATH)
|
||||||
|
_pkgconfig_add_extra_path(_extra_paths ENV CMAKE_FRAMEWORK_PATH)
|
||||||
|
_pkgconfig_add_extra_path(_extra_paths ENV CMAKE_APPBUNDLE_PATH)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT _extra_paths STREQUAL "")
|
||||||
|
# Save the PKG_CONFIG_PATH environment variable, and add paths
|
||||||
|
# from the CMAKE_PREFIX_PATH variables
|
||||||
|
set(_pkgconfig_path_old "$ENV{PKG_CONFIG_PATH}")
|
||||||
|
set(_pkgconfig_path "${_pkgconfig_path_old}")
|
||||||
|
if(NOT _pkgconfig_path STREQUAL "")
|
||||||
|
file(TO_CMAKE_PATH "${_pkgconfig_path}" _pkgconfig_path)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Create a list of the possible pkgconfig subfolder (depending on
|
||||||
|
# the system
|
||||||
|
set(_lib_dirs)
|
||||||
|
if(NOT DEFINED CMAKE_SYSTEM_NAME
|
||||||
|
OR (CMAKE_SYSTEM_NAME MATCHES "^(Linux|kFreeBSD|GNU)$"
|
||||||
|
AND NOT CMAKE_CROSSCOMPILING))
|
||||||
|
if(EXISTS "/etc/debian_version") # is this a debian system ?
|
||||||
|
if(CMAKE_LIBRARY_ARCHITECTURE)
|
||||||
|
list(APPEND _lib_dirs "lib/${CMAKE_LIBRARY_ARCHITECTURE}/pkgconfig")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
# not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
|
||||||
|
get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
|
||||||
|
if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
|
||||||
|
list(APPEND _lib_dirs "lib32/pkgconfig")
|
||||||
|
endif()
|
||||||
|
get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
|
||||||
|
if(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||||
|
list(APPEND _lib_dirs "lib64/pkgconfig")
|
||||||
|
endif()
|
||||||
|
get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
|
||||||
|
if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
|
||||||
|
list(APPEND _lib_dirs "libx32/pkgconfig")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" AND NOT CMAKE_CROSSCOMPILING)
|
||||||
|
list(APPEND _lib_dirs "libdata/pkgconfig")
|
||||||
|
endif()
|
||||||
|
list(APPEND _lib_dirs "lib/pkgconfig")
|
||||||
|
list(APPEND _lib_dirs "share/pkgconfig")
|
||||||
|
|
||||||
|
# Check if directories exist and eventually append them to the
|
||||||
|
# pkgconfig path list
|
||||||
|
foreach(_prefix_dir ${_extra_paths})
|
||||||
|
foreach(_lib_dir ${_lib_dirs})
|
||||||
|
if(EXISTS "${_prefix_dir}/${_lib_dir}")
|
||||||
|
list(APPEND _pkgconfig_path "${_prefix_dir}/${_lib_dir}")
|
||||||
|
list(REMOVE_DUPLICATES _pkgconfig_path)
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
# Prepare and set the environment variable
|
||||||
|
if(NOT _pkgconfig_path STREQUAL "")
|
||||||
|
# remove empty values from the list
|
||||||
|
list(REMOVE_ITEM _pkgconfig_path "")
|
||||||
|
file(TO_NATIVE_PATH "${_pkgconfig_path}" _pkgconfig_path)
|
||||||
|
if(UNIX)
|
||||||
|
string(REPLACE ";" ":" _pkgconfig_path "${_pkgconfig_path}")
|
||||||
|
string(REPLACE "\\ " " " _pkgconfig_path "${_pkgconfig_path}")
|
||||||
|
endif()
|
||||||
|
set(ENV{PKG_CONFIG_PATH} "${_pkgconfig_path}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Unset variables
|
||||||
|
unset(_lib_dirs)
|
||||||
|
unset(_pkgconfig_path)
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(_pkg_restore_path_internal)
|
||||||
|
if(NOT _extra_paths STREQUAL "")
|
||||||
|
# Restore the environment variable
|
||||||
|
set(ENV{PKG_CONFIG_PATH} "${_pkgconfig_path_old}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
unset(_extra_paths)
|
||||||
|
unset(_pkgconfig_path_old)
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
###
|
||||||
|
macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cmake_environment_path _imp_target _imp_target_global _prefix)
|
||||||
_pkgconfig_unset(${_prefix}_FOUND)
|
_pkgconfig_unset(${_prefix}_FOUND)
|
||||||
_pkgconfig_unset(${_prefix}_VERSION)
|
_pkgconfig_unset(${_prefix}_VERSION)
|
||||||
_pkgconfig_unset(${_prefix}_PREFIX)
|
_pkgconfig_unset(${_prefix}_PREFIX)
|
||||||
_pkgconfig_unset(${_prefix}_INCLUDEDIR)
|
_pkgconfig_unset(${_prefix}_INCLUDEDIR)
|
||||||
_pkgconfig_unset(${_prefix}_LIBDIR)
|
_pkgconfig_unset(${_prefix}_LIBDIR)
|
||||||
|
_pkgconfig_unset(${_prefix}_MODULE_NAME)
|
||||||
_pkgconfig_unset(${_prefix}_LIBS)
|
_pkgconfig_unset(${_prefix}_LIBS)
|
||||||
_pkgconfig_unset(${_prefix}_LIBS_L)
|
_pkgconfig_unset(${_prefix}_LIBS_L)
|
||||||
_pkgconfig_unset(${_prefix}_LIBS_PATHS)
|
_pkgconfig_unset(${_prefix}_LIBS_PATHS)
|
||||||
@@ -193,83 +392,77 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix)
|
|||||||
# give out status message telling checked module
|
# give out status message telling checked module
|
||||||
if (NOT ${_is_silent})
|
if (NOT ${_is_silent})
|
||||||
if (_pkg_check_modules_cnt EQUAL 1)
|
if (_pkg_check_modules_cnt EQUAL 1)
|
||||||
message(STATUS "checking for module '${_pkg_check_modules_list}'")
|
message(STATUS "Checking for module '${_pkg_check_modules_list}'")
|
||||||
else(_pkg_check_modules_cnt EQUAL 1)
|
else()
|
||||||
message(STATUS "checking for modules '${_pkg_check_modules_list}'")
|
message(STATUS "Checking for modules '${_pkg_check_modules_list}'")
|
||||||
endif(_pkg_check_modules_cnt EQUAL 1)
|
endif()
|
||||||
endif(NOT ${_is_silent})
|
endif()
|
||||||
|
|
||||||
set(_pkg_check_modules_packages)
|
set(_pkg_check_modules_packages)
|
||||||
set(_pkg_check_modules_failed)
|
set(_pkg_check_modules_failed)
|
||||||
|
|
||||||
|
_pkg_set_path_internal()
|
||||||
|
|
||||||
# iterate through module list and check whether they exist and match the required version
|
# iterate through module list and check whether they exist and match the required version
|
||||||
foreach (_pkg_check_modules_pkg ${_pkg_check_modules_list})
|
foreach (_pkg_check_modules_pkg ${_pkg_check_modules_list})
|
||||||
set(_pkg_check_modules_exist_query)
|
set(_pkg_check_modules_exist_query)
|
||||||
|
|
||||||
# check whether version is given
|
# check whether version is given
|
||||||
if (_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*")
|
if (_pkg_check_modules_pkg MATCHES "(.*[^><])(=|[><]=?)(.*)")
|
||||||
string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\1" _pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}")
|
set(_pkg_check_modules_pkg_name "${CMAKE_MATCH_1}")
|
||||||
string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\2" _pkg_check_modules_pkg_op "${_pkg_check_modules_pkg}")
|
set(_pkg_check_modules_pkg_op "${CMAKE_MATCH_2}")
|
||||||
string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\3" _pkg_check_modules_pkg_ver "${_pkg_check_modules_pkg}")
|
set(_pkg_check_modules_pkg_ver "${CMAKE_MATCH_3}")
|
||||||
else(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*")
|
else()
|
||||||
set(_pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}")
|
set(_pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}")
|
||||||
set(_pkg_check_modules_pkg_op)
|
set(_pkg_check_modules_pkg_op)
|
||||||
set(_pkg_check_modules_pkg_ver)
|
set(_pkg_check_modules_pkg_ver)
|
||||||
endif(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*")
|
endif()
|
||||||
|
|
||||||
# handle the operands
|
|
||||||
if (_pkg_check_modules_pkg_op STREQUAL ">=")
|
|
||||||
list(APPEND _pkg_check_modules_exist_query --atleast-version)
|
|
||||||
endif(_pkg_check_modules_pkg_op STREQUAL ">=")
|
|
||||||
|
|
||||||
if (_pkg_check_modules_pkg_op STREQUAL "=")
|
|
||||||
list(APPEND _pkg_check_modules_exist_query --exact-version)
|
|
||||||
endif(_pkg_check_modules_pkg_op STREQUAL "=")
|
|
||||||
|
|
||||||
if (_pkg_check_modules_pkg_op STREQUAL "<=")
|
|
||||||
list(APPEND _pkg_check_modules_exist_query --max-version)
|
|
||||||
endif(_pkg_check_modules_pkg_op STREQUAL "<=")
|
|
||||||
|
|
||||||
# create the final query which is of the format:
|
|
||||||
# * --atleast-version <version> <pkg-name>
|
|
||||||
# * --exact-version <version> <pkg-name>
|
|
||||||
# * --max-version <version> <pkg-name>
|
|
||||||
# * --exists <pkg-name>
|
|
||||||
if (_pkg_check_modules_pkg_op)
|
|
||||||
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_ver}")
|
|
||||||
else(_pkg_check_modules_pkg_op)
|
|
||||||
list(APPEND _pkg_check_modules_exist_query --exists)
|
|
||||||
endif(_pkg_check_modules_pkg_op)
|
|
||||||
|
|
||||||
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_VERSION)
|
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_VERSION)
|
||||||
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_PREFIX)
|
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_PREFIX)
|
||||||
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_INCLUDEDIR)
|
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_INCLUDEDIR)
|
||||||
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_LIBDIR)
|
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_LIBDIR)
|
||||||
|
|
||||||
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name}")
|
|
||||||
list(APPEND _pkg_check_modules_packages "${_pkg_check_modules_pkg_name}")
|
list(APPEND _pkg_check_modules_packages "${_pkg_check_modules_pkg_name}")
|
||||||
|
|
||||||
|
# create the final query which is of the format:
|
||||||
|
# * <pkg-name> > <version>
|
||||||
|
# * <pkg-name> >= <version>
|
||||||
|
# * <pkg-name> = <version>
|
||||||
|
# * <pkg-name> <= <version>
|
||||||
|
# * <pkg-name> < <version>
|
||||||
|
# * --exists <pkg-name>
|
||||||
|
list(APPEND _pkg_check_modules_exist_query --print-errors --short-errors)
|
||||||
|
if (_pkg_check_modules_pkg_op)
|
||||||
|
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name} ${_pkg_check_modules_pkg_op} ${_pkg_check_modules_pkg_ver}")
|
||||||
|
else()
|
||||||
|
list(APPEND _pkg_check_modules_exist_query --exists)
|
||||||
|
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name}")
|
||||||
|
endif()
|
||||||
|
|
||||||
# execute the query
|
# execute the query
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${PKG_CONFIG_EXECUTABLE} ${_pkg_check_modules_exist_query}
|
COMMAND ${PKG_CONFIG_EXECUTABLE} ${_pkg_check_modules_exist_query}
|
||||||
RESULT_VARIABLE _pkgconfig_retval)
|
RESULT_VARIABLE _pkgconfig_retval
|
||||||
|
ERROR_VARIABLE _pkgconfig_error
|
||||||
|
ERROR_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
# evaluate result and tell failures
|
# evaluate result and tell failures
|
||||||
if (_pkgconfig_retval)
|
if (_pkgconfig_retval)
|
||||||
if(NOT ${_is_silent})
|
if(NOT ${_is_silent})
|
||||||
message(STATUS " package '${_pkg_check_modules_pkg}' not found")
|
message(STATUS " ${_pkgconfig_error}")
|
||||||
endif(NOT ${_is_silent})
|
endif()
|
||||||
|
|
||||||
set(_pkg_check_modules_failed 1)
|
set(_pkg_check_modules_failed 1)
|
||||||
endif(_pkgconfig_retval)
|
endif()
|
||||||
endforeach(_pkg_check_modules_pkg)
|
endforeach()
|
||||||
|
|
||||||
if(_pkg_check_modules_failed)
|
if(_pkg_check_modules_failed)
|
||||||
# fail when requested
|
# fail when requested
|
||||||
if (${_is_required})
|
if (${_is_required})
|
||||||
message(SEND_ERROR "A required package was not found")
|
message(FATAL_ERROR "A required package was not found")
|
||||||
endif (${_is_required})
|
endif ()
|
||||||
else(_pkg_check_modules_failed)
|
else()
|
||||||
# when we are here, we checked whether requested modules
|
# when we are here, we checked whether requested modules
|
||||||
# exist. Now, go through them and set variables
|
# exist. Now, go through them and set variables
|
||||||
|
|
||||||
@@ -281,17 +474,23 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix)
|
|||||||
# handle case when there is only one package required
|
# handle case when there is only one package required
|
||||||
if (pkg_count EQUAL 1)
|
if (pkg_count EQUAL 1)
|
||||||
set(_pkg_check_prefix "${_prefix}")
|
set(_pkg_check_prefix "${_prefix}")
|
||||||
else(pkg_count EQUAL 1)
|
else()
|
||||||
set(_pkg_check_prefix "${_prefix}_${_pkg_check_modules_pkg}")
|
set(_pkg_check_prefix "${_prefix}_${_pkg_check_modules_pkg}")
|
||||||
endif(pkg_count EQUAL 1)
|
endif()
|
||||||
|
|
||||||
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" VERSION "" --modversion )
|
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" VERSION "" --modversion )
|
||||||
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" PREFIX "" --variable=prefix )
|
pkg_get_variable("${_pkg_check_prefix}_PREFIX" ${_pkg_check_modules_pkg} "prefix")
|
||||||
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" INCLUDEDIR "" --variable=includedir )
|
pkg_get_variable("${_pkg_check_prefix}_INCLUDEDIR" ${_pkg_check_modules_pkg} "includedir")
|
||||||
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" LIBDIR "" --variable=libdir )
|
pkg_get_variable("${_pkg_check_prefix}_LIBDIR" ${_pkg_check_modules_pkg} "libdir")
|
||||||
|
foreach (variable IN ITEMS PREFIX INCLUDEDIR LIBDIR)
|
||||||
|
_pkgconfig_set("${_pkg_check_prefix}_${variable}" "${${_pkg_check_prefix}_${variable}}")
|
||||||
|
endforeach ()
|
||||||
|
_pkgconfig_set("${_pkg_check_prefix}_MODULE_NAME" "${_pkg_check_modules_pkg}")
|
||||||
|
|
||||||
message(STATUS " found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}")
|
if (NOT ${_is_silent})
|
||||||
endforeach(_pkg_check_modules_pkg)
|
message(STATUS " Found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}")
|
||||||
|
endif ()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
# set variables which are combined for multiple modules
|
# set variables which are combined for multiple modules
|
||||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARIES "(^| )-l" --libs-only-l )
|
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARIES "(^| )-l" --libs-only-l )
|
||||||
@@ -302,58 +501,271 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix)
|
|||||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" INCLUDE_DIRS "(^| )-I" --cflags-only-I )
|
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" INCLUDE_DIRS "(^| )-I" --cflags-only-I )
|
||||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS "" --cflags )
|
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS "" --cflags )
|
||||||
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS_OTHER "" --cflags-only-other )
|
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS_OTHER "" --cflags-only-other )
|
||||||
endif(_pkg_check_modules_failed)
|
|
||||||
else(PKG_CONFIG_EXECUTABLE)
|
_pkg_recalculate("${_prefix}" ${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} ${_imp_target_global})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
_pkg_restore_path_internal()
|
||||||
|
else()
|
||||||
if (${_is_required})
|
if (${_is_required})
|
||||||
message(SEND_ERROR "pkg-config tool not found")
|
message(SEND_ERROR "pkg-config tool not found")
|
||||||
endif (${_is_required})
|
endif ()
|
||||||
endif(PKG_CONFIG_EXECUTABLE)
|
endif()
|
||||||
endmacro(_pkg_check_modules_internal)
|
endmacro()
|
||||||
|
|
||||||
###
|
|
||||||
### User visible macros start here
|
|
||||||
###
|
|
||||||
|
|
||||||
###
|
#[========================================[.rst:
|
||||||
|
.. command:: pkg_check_modules
|
||||||
|
|
||||||
|
Checks for all the given modules, setting a variety of result variables in
|
||||||
|
the calling scope.
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
pkg_check_modules(<prefix>
|
||||||
|
[REQUIRED] [QUIET]
|
||||||
|
[NO_CMAKE_PATH]
|
||||||
|
[NO_CMAKE_ENVIRONMENT_PATH]
|
||||||
|
[IMPORTED_TARGET [GLOBAL]]
|
||||||
|
<moduleSpec> [<moduleSpec>...])
|
||||||
|
|
||||||
|
When the ``REQUIRED`` argument is given, the command will fail with an error
|
||||||
|
if module(s) could not be found.
|
||||||
|
|
||||||
|
When the ``QUIET`` argument is given, no status messages will be printed.
|
||||||
|
|
||||||
|
By default, if :variable:`CMAKE_MINIMUM_REQUIRED_VERSION` is 3.1 or
|
||||||
|
later, or if :variable:`PKG_CONFIG_USE_CMAKE_PREFIX_PATH` is set to a
|
||||||
|
boolean ``True`` value, then the :variable:`CMAKE_PREFIX_PATH`,
|
||||||
|
:variable:`CMAKE_FRAMEWORK_PATH`, and :variable:`CMAKE_APPBUNDLE_PATH` cache
|
||||||
|
and environment variables will be added to the ``pkg-config`` search path.
|
||||||
|
The ``NO_CMAKE_PATH`` and ``NO_CMAKE_ENVIRONMENT_PATH`` arguments
|
||||||
|
disable this behavior for the cache variables and environment variables
|
||||||
|
respectively.
|
||||||
|
|
||||||
|
The ``IMPORTED_TARGET`` argument will create an imported target named
|
||||||
|
``PkgConfig::<prefix>`` that can be passed directly as an argument to
|
||||||
|
:command:`target_link_libraries`. The ``GLOBAL`` argument will make the
|
||||||
|
imported target available in global scope.
|
||||||
|
|
||||||
|
Each ``<moduleSpec>`` can be either a bare module name or it can be a
|
||||||
|
module name with a version constraint (operators ``=``, ``<``, ``>``,
|
||||||
|
``<=`` and ``>=`` are supported). The following are examples for a module
|
||||||
|
named ``foo`` with various constraints:
|
||||||
|
|
||||||
|
- ``foo`` matches any version.
|
||||||
|
- ``foo<2`` only matches versions before 2.
|
||||||
|
- ``foo>=3.1`` matches any version from 3.1 or later.
|
||||||
|
- ``foo=1.2.3`` requires that foo must be exactly version 1.2.3.
|
||||||
|
|
||||||
|
The following variables may be set upon return. Two sets of values exist:
|
||||||
|
One for the common case (``<XXX> = <prefix>``) and another for the
|
||||||
|
information ``pkg-config`` provides when called with the ``--static``
|
||||||
|
option (``<XXX> = <prefix>_STATIC``).
|
||||||
|
|
||||||
|
``<XXX>_FOUND``
|
||||||
|
set to 1 if module(s) exist
|
||||||
|
``<XXX>_LIBRARIES``
|
||||||
|
only the libraries (without the '-l')
|
||||||
|
``<XXX>_LINK_LIBRARIES``
|
||||||
|
the libraries and their absolute paths
|
||||||
|
``<XXX>_LIBRARY_DIRS``
|
||||||
|
the paths of the libraries (without the '-L')
|
||||||
|
``<XXX>_LDFLAGS``
|
||||||
|
all required linker flags
|
||||||
|
``<XXX>_LDFLAGS_OTHER``
|
||||||
|
all other linker flags
|
||||||
|
``<XXX>_INCLUDE_DIRS``
|
||||||
|
the '-I' preprocessor flags (without the '-I')
|
||||||
|
``<XXX>_CFLAGS``
|
||||||
|
all required cflags
|
||||||
|
``<XXX>_CFLAGS_OTHER``
|
||||||
|
the other compiler flags
|
||||||
|
|
||||||
|
All but ``<XXX>_FOUND`` may be a :ref:`;-list <CMake Language Lists>` if the
|
||||||
|
associated variable returned from ``pkg-config`` has multiple values.
|
||||||
|
|
||||||
|
There are some special variables whose prefix depends on the number of
|
||||||
|
``<moduleSpec>`` given. When there is only one ``<moduleSpec>``,
|
||||||
|
``<YYY>`` will simply be ``<prefix>``, but if two or more ``<moduleSpec>``
|
||||||
|
items are given, ``<YYY>`` will be ``<prefix>_<moduleName>``.
|
||||||
|
|
||||||
|
``<YYY>_VERSION``
|
||||||
|
version of the module
|
||||||
|
``<YYY>_PREFIX``
|
||||||
|
prefix directory of the module
|
||||||
|
``<YYY>_INCLUDEDIR``
|
||||||
|
include directory of the module
|
||||||
|
``<YYY>_LIBDIR``
|
||||||
|
lib directory of the module
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
pkg_check_modules (GLIB2 glib-2.0)
|
||||||
|
|
||||||
|
Looks for any version of glib2. If found, the output variable
|
||||||
|
``GLIB2_VERSION`` will hold the actual version found.
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
pkg_check_modules (GLIB2 glib-2.0>=2.10)
|
||||||
|
|
||||||
|
Looks for at least version 2.10 of glib2. If found, the output variable
|
||||||
|
``GLIB2_VERSION`` will hold the actual version found.
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0)
|
||||||
|
|
||||||
|
Looks for both glib2-2.0 (at least version 2.10) and any version of
|
||||||
|
gtk2+-2.0. Only if both are found will ``FOO`` be considered found.
|
||||||
|
The ``FOO_glib-2.0_VERSION`` and ``FOO_gtk+-2.0_VERSION`` variables will be
|
||||||
|
set to their respective found module versions.
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
pkg_check_modules (XRENDER REQUIRED xrender)
|
||||||
|
|
||||||
|
Requires any version of ``xrender``. Example output variables set by a
|
||||||
|
successful call::
|
||||||
|
|
||||||
|
XRENDER_LIBRARIES=Xrender;X11
|
||||||
|
XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp
|
||||||
|
#]========================================]
|
||||||
macro(pkg_check_modules _prefix _module0)
|
macro(pkg_check_modules _prefix _module0)
|
||||||
|
_pkgconfig_parse_options(_pkg_modules _pkg_is_required _pkg_is_silent _no_cmake_path _no_cmake_environment_path _imp_target _imp_target_global "${_module0}" ${ARGN})
|
||||||
# check cached value
|
# check cached value
|
||||||
if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION})
|
if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND OR
|
||||||
_pkgconfig_parse_options (_pkg_modules _pkg_is_required "${_module0}" ${ARGN})
|
(NOT "${ARGN}" STREQUAL "" AND NOT "${__pkg_config_arguments_${_prefix}}" STREQUAL "${_module0};${ARGN}") OR
|
||||||
_pkg_check_modules_internal("${_pkg_is_required}" 0 "${_prefix}" ${_pkg_modules})
|
( "${ARGN}" STREQUAL "" AND NOT "${__pkg_config_arguments_${_prefix}}" STREQUAL "${_module0}"))
|
||||||
|
_pkg_check_modules_internal("${_pkg_is_required}" "${_pkg_is_silent}" ${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} ${_imp_target_global} "${_prefix}" ${_pkg_modules})
|
||||||
|
|
||||||
_pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})
|
_pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})
|
||||||
endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION})
|
if (${_prefix}_FOUND)
|
||||||
endmacro(pkg_check_modules)
|
_pkgconfig_set(__pkg_config_arguments_${_prefix} "${_module0};${ARGN}")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
if (${_prefix}_FOUND)
|
||||||
|
_pkg_recalculate("${_prefix}" ${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} ${_imp_target_global})
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
###
|
|
||||||
|
#[========================================[.rst:
|
||||||
|
.. command:: pkg_search_module
|
||||||
|
|
||||||
|
The behavior of this command is the same as :command:`pkg_check_modules`,
|
||||||
|
except that rather than checking for all the specified modules, it searches
|
||||||
|
for just the first successful match.
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
pkg_search_module(<prefix>
|
||||||
|
[REQUIRED] [QUIET]
|
||||||
|
[NO_CMAKE_PATH]
|
||||||
|
[NO_CMAKE_ENVIRONMENT_PATH]
|
||||||
|
[IMPORTED_TARGET [GLOBAL]]
|
||||||
|
<moduleSpec> [<moduleSpec>...])
|
||||||
|
|
||||||
|
If a module is found, the ``<prefix>_MODULE_NAME`` variable will contain the
|
||||||
|
name of the matching module. This variable can be used if you need to run
|
||||||
|
:command:`pkg_get_variable`.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2)
|
||||||
|
#]========================================]
|
||||||
macro(pkg_search_module _prefix _module0)
|
macro(pkg_search_module _prefix _module0)
|
||||||
|
_pkgconfig_parse_options(_pkg_modules_alt _pkg_is_required _pkg_is_silent _no_cmake_path _no_cmake_environment_path _imp_target _imp_target_global "${_module0}" ${ARGN})
|
||||||
# check cached value
|
# check cached value
|
||||||
if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND)
|
if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND)
|
||||||
set(_pkg_modules_found 0)
|
set(_pkg_modules_found 0)
|
||||||
_pkgconfig_parse_options(_pkg_modules_alt _pkg_is_required "${_module0}" ${ARGN})
|
|
||||||
|
|
||||||
message(STATUS "checking for one of the modules '${_pkg_modules_alt}'")
|
if (NOT ${_pkg_is_silent})
|
||||||
|
message(STATUS "Checking for one of the modules '${_pkg_modules_alt}'")
|
||||||
|
endif ()
|
||||||
|
|
||||||
# iterate through all modules and stop at the first working one.
|
# iterate through all modules and stop at the first working one.
|
||||||
foreach(_pkg_alt ${_pkg_modules_alt})
|
foreach(_pkg_alt ${_pkg_modules_alt})
|
||||||
if(NOT _pkg_modules_found)
|
if(NOT _pkg_modules_found)
|
||||||
_pkg_check_modules_internal(0 1 "${_prefix}" "${_pkg_alt}")
|
_pkg_check_modules_internal(0 1 ${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} ${_imp_target_global} "${_prefix}" "${_pkg_alt}")
|
||||||
endif(NOT _pkg_modules_found)
|
endif()
|
||||||
|
|
||||||
if (${_prefix}_FOUND)
|
if (${_prefix}_FOUND)
|
||||||
set(_pkg_modules_found 1)
|
set(_pkg_modules_found 1)
|
||||||
endif(${_prefix}_FOUND)
|
break()
|
||||||
endforeach(_pkg_alt)
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
if (NOT ${_prefix}_FOUND)
|
if (NOT ${_prefix}_FOUND)
|
||||||
if(${_pkg_is_required})
|
if(${_pkg_is_required})
|
||||||
message(SEND_ERROR "None of the required '${_pkg_modules_alt}' found")
|
message(SEND_ERROR "None of the required '${_pkg_modules_alt}' found")
|
||||||
endif(${_pkg_is_required})
|
endif()
|
||||||
endif(NOT ${_prefix}_FOUND)
|
endif()
|
||||||
|
|
||||||
_pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})
|
_pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})
|
||||||
endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND)
|
elseif (${_prefix}_FOUND)
|
||||||
endmacro(pkg_search_module)
|
_pkg_recalculate("${_prefix}" ${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} ${_imp_target_global})
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
#[========================================[.rst:
|
||||||
|
.. command:: pkg_get_variable
|
||||||
|
|
||||||
|
Retrieves the value of a pkg-config variable ``varName`` and stores it in the
|
||||||
|
result variable ``resultVar`` in the calling scope.
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
pkg_get_variable(<resultVar> <moduleName> <varName>)
|
||||||
|
|
||||||
|
If ``pkg-config`` returns multiple values for the specified variable,
|
||||||
|
``resultVar`` will contain a :ref:`;-list <CMake Language Lists>`.
|
||||||
|
|
||||||
|
For example:
|
||||||
|
|
||||||
|
.. code-block:: cmake
|
||||||
|
|
||||||
|
pkg_get_variable(GI_GIRDIR gobject-introspection-1.0 girdir)
|
||||||
|
#]========================================]
|
||||||
|
function (pkg_get_variable result pkg variable)
|
||||||
|
_pkg_set_path_internal()
|
||||||
|
_pkgconfig_invoke("${pkg}" "prefix" "result" "" "--variable=${variable}")
|
||||||
|
set("${result}"
|
||||||
|
"${prefix_result}"
|
||||||
|
PARENT_SCOPE)
|
||||||
|
_pkg_restore_path_internal()
|
||||||
|
endfunction ()
|
||||||
|
|
||||||
|
|
||||||
|
#[========================================[.rst:
|
||||||
|
Variables Affecting Behavior
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
.. variable:: PKG_CONFIG_EXECUTABLE
|
||||||
|
|
||||||
|
This can be set to the path of the pkg-config executable. If not provided,
|
||||||
|
it will be set by the module as a result of calling :command:`find_program`
|
||||||
|
internally. The ``PKG_CONFIG`` environment variable can be used as a hint.
|
||||||
|
|
||||||
|
.. variable:: PKG_CONFIG_USE_CMAKE_PREFIX_PATH
|
||||||
|
|
||||||
|
Specifies whether :command:`pkg_check_modules` and
|
||||||
|
:command:`pkg_search_module` should add the paths in the
|
||||||
|
:variable:`CMAKE_PREFIX_PATH`, :variable:`CMAKE_FRAMEWORK_PATH` and
|
||||||
|
:variable:`CMAKE_APPBUNDLE_PATH` cache and environment variables to the
|
||||||
|
``pkg-config`` search path.
|
||||||
|
|
||||||
|
If this variable is not set, this behavior is enabled by default if
|
||||||
|
:variable:`CMAKE_MINIMUM_REQUIRED_VERSION` is 3.1 or later, disabled
|
||||||
|
otherwise.
|
||||||
|
#]========================================]
|
||||||
|
|
||||||
|
|
||||||
### Local Variables:
|
### Local Variables:
|
||||||
### mode: cmake
|
### mode: cmake
|
||||||
|
|||||||
+9
-72
@@ -24,80 +24,17 @@
|
|||||||
# code sets the following variables:
|
# code sets the following variables:
|
||||||
#
|
#
|
||||||
# PYTHON_EXECUTABLE = full path to the python binary
|
# PYTHON_EXECUTABLE = full path to the python binary
|
||||||
# PYTHON_INCLUDE_PATH = path to where python.h can be found
|
# PYTHON_INCLUDE_DIRS = path to where python.h can be found
|
||||||
# PYTHON_LIBRARY = path to where libpython.so* can be found
|
# PYTHON_LIBRARIES = path to where libpython.so* can be found
|
||||||
# PYTHON_LFLAGS = python compiler options for linking
|
# PYTHON_LDFLAGS = python compiler options for linking
|
||||||
|
|
||||||
if(PYTHON_FOUND)
|
include(FindPkgConfig)
|
||||||
# Already in cache, be silent
|
|
||||||
set(PYTHON_FIND_QUIETLY TRUE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(ENABLE_PYTHON3)
|
if(ENABLE_PYTHON2)
|
||||||
find_program(PYTHON_EXECUTABLE
|
pkg_check_modules(PYTHON python2 IMPORTED_TARGET GLOBAL)
|
||||||
NAMES python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python3 python2.7 python2.6 python2.5 python
|
|
||||||
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
|
|
||||||
)
|
|
||||||
else()
|
else()
|
||||||
find_program(PYTHON_EXECUTABLE
|
pkg_check_modules(PYTHON python3-embed IMPORTED_TARGET GLOBAL)
|
||||||
NAMES python2.7 python2.6 python2.5 python
|
if(NOT PYTHON_FOUND)
|
||||||
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
|
pkg_check_modules(PYTHON python3 IMPORTED_TARGET GLOBAL)
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(PYTHON_EXECUTABLE)
|
|
||||||
execute_process(
|
|
||||||
COMMAND ${PYTHON_EXECUTABLE} -c "import sys; from distutils.sysconfig import *; sys.stdout.write(get_config_var('INCLUDEPY'))"
|
|
||||||
OUTPUT_VARIABLE PYTHON_INC_DIR
|
|
||||||
)
|
|
||||||
|
|
||||||
execute_process(
|
|
||||||
COMMAND ${PYTHON_EXECUTABLE} -c "import sys; from distutils.sysconfig import *; sys.stdout.write(get_config_var('LIBPL'))"
|
|
||||||
OUTPUT_VARIABLE PYTHON_POSSIBLE_LIB_PATH
|
|
||||||
)
|
|
||||||
|
|
||||||
execute_process(
|
|
||||||
COMMAND ${PYTHON_EXECUTABLE} -c "import sys; from distutils.sysconfig import *; sys.stdout.write(get_config_var('LIBS') + ' ' + get_config_var('LINKFORSHARED'))"
|
|
||||||
OUTPUT_VARIABLE PYTHON_LFLAGS
|
|
||||||
)
|
|
||||||
|
|
||||||
find_path(PYTHON_INCLUDE_PATH
|
|
||||||
NAMES Python.h
|
|
||||||
HINTS ${PYTHON_INC_DIR}
|
|
||||||
)
|
|
||||||
if(ENABLE_PYTHON3)
|
|
||||||
find_library(PYTHON_LIBRARY
|
|
||||||
NAMES python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python3 python2.7 python2.6 python2.5 python
|
|
||||||
HINTS ${PYTHON_POSSIBLE_LIB_PATH}
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
find_library(PYTHON_LIBRARY
|
|
||||||
NAMES python2.7 python2.6 python2.5 python
|
|
||||||
HINTS ${PYTHON_POSSIBLE_LIB_PATH}
|
|
||||||
)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(PYTHON_LIBRARY AND PYTHON_INCLUDE_PATH)
|
|
||||||
execute_process(
|
|
||||||
COMMAND ${PYTHON_EXECUTABLE} -c "import sys; sys.stdout.write(sys.version[:3])"
|
|
||||||
OUTPUT_VARIABLE PYTHON_VERSION
|
|
||||||
)
|
|
||||||
execute_process(
|
|
||||||
COMMAND ${PYTHON_EXECUTABLE} -c "import sys; sys.stdout.write(str(sys.version_info < (2,5)))"
|
|
||||||
OUTPUT_VARIABLE PYTHON_OLD_VERSION
|
|
||||||
)
|
|
||||||
if(${PYTHON_OLD_VERSION} STREQUAL "True")
|
|
||||||
message("Python >= 2.5 is needed to build python plugin, version found: ${PYTHON_VERSION}")
|
|
||||||
else()
|
|
||||||
set(PYTHON_FOUND TRUE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(
|
|
||||||
PYTHON_EXECUTABLE
|
|
||||||
PYTHON_INCLUDE_PATH
|
|
||||||
PYTHON_LIBRARY
|
|
||||||
PYTHON_LFLAGS
|
|
||||||
)
|
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
+13
-13
@@ -27,13 +27,13 @@
|
|||||||
# RUBY_LIB = ruby library (found without pkg-config)
|
# RUBY_LIB = ruby library (found without pkg-config)
|
||||||
|
|
||||||
if(RUBY_FOUND)
|
if(RUBY_FOUND)
|
||||||
# Already in cache, be silent
|
# Already in cache, be silent
|
||||||
set(RUBY_FIND_QUIETLY TRUE)
|
set(RUBY_FIND_QUIETLY TRUE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_package(PkgConfig)
|
find_package(PkgConfig)
|
||||||
if(PKG_CONFIG_FOUND)
|
if(PKG_CONFIG_FOUND)
|
||||||
pkg_search_module(RUBY 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-1.8)
|
pkg_search_module(RUBY 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()
|
endif()
|
||||||
|
|
||||||
if(RUBY_FOUND)
|
if(RUBY_FOUND)
|
||||||
@@ -41,35 +41,35 @@ if(RUBY_FOUND)
|
|||||||
mark_as_advanced(RUBY_LIB)
|
mark_as_advanced(RUBY_LIB)
|
||||||
else()
|
else()
|
||||||
find_program(RUBY_EXECUTABLE
|
find_program(RUBY_EXECUTABLE
|
||||||
NAMES 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 ruby1.8 ruby18 ruby
|
NAMES 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
|
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
|
||||||
)
|
)
|
||||||
if(RUBY_EXECUTABLE)
|
if(RUBY_EXECUTABLE)
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubyhdrdir'] || RbConfig::CONFIG['archdir']"
|
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubyhdrdir'] || RbConfig::CONFIG['archdir']"
|
||||||
OUTPUT_VARIABLE RUBY_ARCH_DIR
|
OUTPUT_VARIABLE RUBY_ARCH_DIR
|
||||||
)
|
)
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['arch']"
|
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['arch']"
|
||||||
OUTPUT_VARIABLE RUBY_ARCH
|
OUTPUT_VARIABLE RUBY_ARCH
|
||||||
)
|
)
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['libdir']"
|
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['libdir']"
|
||||||
OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH
|
OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH
|
||||||
)
|
)
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubylibdir']"
|
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubylibdir']"
|
||||||
OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH
|
OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH
|
||||||
)
|
)
|
||||||
find_path(RUBY_INCLUDE_DIRS
|
find_path(RUBY_INCLUDE_DIRS
|
||||||
NAMES ruby.h
|
NAMES ruby.h
|
||||||
PATHS ${RUBY_ARCH_DIR}
|
PATHS ${RUBY_ARCH_DIR}
|
||||||
)
|
)
|
||||||
set(RUBY_INCLUDE_ARCH "${RUBY_INCLUDE_DIRS}/${RUBY_ARCH}")
|
set(RUBY_INCLUDE_ARCH "${RUBY_INCLUDE_DIRS}/${RUBY_ARCH}")
|
||||||
find_library(RUBY_LIB
|
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 ruby1.8 ruby18 ruby
|
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}
|
PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH}
|
||||||
)
|
)
|
||||||
if(RUBY_LIB AND RUBY_INCLUDE_DIRS)
|
if(RUBY_LIB AND RUBY_INCLUDE_DIRS)
|
||||||
set(RUBY_FOUND TRUE)
|
set(RUBY_FOUND TRUE)
|
||||||
endif()
|
endif()
|
||||||
@@ -78,6 +78,6 @@ else()
|
|||||||
RUBY_INCLUDE_DIRS
|
RUBY_INCLUDE_DIRS
|
||||||
RUBY_LIBRARY_DIRS
|
RUBY_LIBRARY_DIRS
|
||||||
RUBY_LIB
|
RUBY_LIB
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -1,162 +0,0 @@
|
|||||||
#
|
|
||||||
# Copyright (C) 2008 Julien Louis <ptitlouis@sysif.net>
|
|
||||||
# Copyright (C) 2008-2019 Sébastien Helleu <flashcode@flashtux.org>
|
|
||||||
#
|
|
||||||
# This file is part of WeeChat, the extensible chat client.
|
|
||||||
#
|
|
||||||
# WeeChat is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
#
|
|
||||||
# WeeChat is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
|
|
||||||
#
|
|
||||||
|
|
||||||
# - Find Tcl includes and libraries.
|
|
||||||
# This module finds if Tcl is installed and determines where the
|
|
||||||
# include files and libraries are. It also determines what the name of
|
|
||||||
# the library is. This code sets the following variables:
|
|
||||||
# TCL_FOUND = Tcl was found
|
|
||||||
# TK_FOUND = Tk was found
|
|
||||||
# TCLTK_FOUND = Tcl and Tk were found
|
|
||||||
# TCL_LIBRARY = path to Tcl library (tcl tcl80)
|
|
||||||
# TCL_INCLUDE_PATH = path to where tcl.h can be found
|
|
||||||
# TCL_TCLSH = path to tclsh binary (tcl tcl80)
|
|
||||||
# TK_LIBRARY = path to Tk library (tk tk80 etc)
|
|
||||||
# TK_INCLUDE_PATH = path to where tk.h can be found
|
|
||||||
# TK_WISH = full path to the wish executable
|
|
||||||
#
|
|
||||||
# In an effort to remove some clutter and clear up some issues for people
|
|
||||||
# who are not necessarily Tcl/Tk gurus/developpers, some variables were
|
|
||||||
# moved or removed. Changes compared to CMake 2.4 are:
|
|
||||||
# - The stub libraries are now found in FindTclStub.cmake
|
|
||||||
# => they were only useful for people writing Tcl/Tk extensions.
|
|
||||||
# - TCL_LIBRARY_DEBUG and TK_LIBRARY_DEBUG were removed.
|
|
||||||
# => these libs are not packaged by default with Tcl/Tk distributions.
|
|
||||||
# Even when Tcl/Tk is built from source, several flavors of debug libs
|
|
||||||
# are created and there is no real reason to pick a single one
|
|
||||||
# specifically (say, amongst tcl84g, tcl84gs, or tcl84sgx).
|
|
||||||
# Let's leave that choice to the user by allowing him to assign
|
|
||||||
# TCL_LIBRARY to any Tcl library, debug or not.
|
|
||||||
# - TK_INTERNAL_PATH was removed.
|
|
||||||
# => this ended up being only a Win32 variable, and there is a lot of
|
|
||||||
# confusion regarding the location of this file in an installed Tcl/Tk
|
|
||||||
# tree anyway (see 8.5 for example). If you need the internal path at
|
|
||||||
# this point it is safer you ask directly where the *source* tree is
|
|
||||||
# and dig from there.
|
|
||||||
|
|
||||||
if(TCL_FOUND)
|
|
||||||
set(TCL_FIND_QUIETLY TRUE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(CMakeFindFrameworks)
|
|
||||||
include(FindTclsh)
|
|
||||||
|
|
||||||
get_filename_component(TCL_TCLSH_PATH "${TCL_TCLSH}" PATH)
|
|
||||||
get_filename_component(TCL_TCLSH_PATH_PARENT "${TCL_TCLSH_PATH}" PATH)
|
|
||||||
string(REGEX REPLACE
|
|
||||||
"^.*tclsh([0-9]\\.*[0-9]).*$" "\\1" TCL_TCLSH_VERSION "${TCL_TCLSH}")
|
|
||||||
|
|
||||||
get_filename_component(TCL_INCLUDE_PATH_PARENT "${TCL_INCLUDE_PATH}" PATH)
|
|
||||||
|
|
||||||
get_filename_component(TCL_LIBRARY_PATH "${TCL_LIBRARY}" PATH)
|
|
||||||
get_filename_component(TCL_LIBRARY_PATH_PARENT "${TCL_LIBRARY_PATH}" PATH)
|
|
||||||
string(REGEX REPLACE
|
|
||||||
"^.*tcl([0-9]\\.*[0-9]).*$" "\\1" TCL_VERSION "${TCL_LIBRARY}")
|
|
||||||
|
|
||||||
set(TCL_POSSIBLE_LIB_PATHS
|
|
||||||
"${TCL_INCLUDE_PATH_PARENT}/lib"
|
|
||||||
"${TCL_INCLUDE_PATH_PARENT}/lib64"
|
|
||||||
"${TCL_LIBRARY_PATH}"
|
|
||||||
"${TCL_TCLSH_PATH_PARENT}/lib"
|
|
||||||
"${TCL_TCLSH_PATH_PARENT}/lib64"
|
|
||||||
/usr/lib
|
|
||||||
/usr/lib64
|
|
||||||
/usr/local/lib
|
|
||||||
/usr/local/lib64
|
|
||||||
)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
get_filename_component(
|
|
||||||
ActiveTcl_CurrentVersion
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]"
|
|
||||||
NAME)
|
|
||||||
set(TCLTK_POSSIBLE_LIB_PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/lib"
|
|
||||||
"$ENV{ProgramFiles}/Tcl/Lib"
|
|
||||||
"C:/Program Files/Tcl/lib"
|
|
||||||
"C:/Tcl/lib"
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_library(TCL_LIBRARY
|
|
||||||
NAMES
|
|
||||||
tcl86 tcl8.6
|
|
||||||
tcl85 tcl8.5
|
|
||||||
tcl
|
|
||||||
tcl${TCL_VERSION} tcl${TCL_TCLSH_VERSION}
|
|
||||||
PATHS ${TCL_POSSIBLE_LIB_PATHS}
|
|
||||||
)
|
|
||||||
|
|
||||||
cmake_find_frameworks(Tcl)
|
|
||||||
|
|
||||||
set(TCL_FRAMEWORK_INCLUDES)
|
|
||||||
if(Tcl_FRAMEWORKS)
|
|
||||||
if(NOT TCL_INCLUDE_PATH)
|
|
||||||
foreach(dir ${Tcl_FRAMEWORKS})
|
|
||||||
set(TCL_FRAMEWORK_INCLUDES ${TCL_FRAMEWORK_INCLUDES} ${dir}/Headers)
|
|
||||||
endforeach(dir)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(TCL_POSSIBLE_INCLUDE_PATHS
|
|
||||||
"${TCL_LIBRARY_PATH_PARENT}/include"
|
|
||||||
"${TCL_INCLUDE_PATH}"
|
|
||||||
${TCL_FRAMEWORK_INCLUDES}
|
|
||||||
"${TCL_TCLSH_PATH_PARENT}/include"
|
|
||||||
/usr/include/tcl8.6
|
|
||||||
/usr/include/tcl8.5
|
|
||||||
/usr/include
|
|
||||||
/usr/local/include
|
|
||||||
/usr/include/tcl${TCL_VERSION}
|
|
||||||
/usr/local/include/tcl${TCL_VERSION}
|
|
||||||
/usr/local/include/tcl8.6
|
|
||||||
/usr/local/include/tcl8.5
|
|
||||||
)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
set(TCLTK_POSSIBLE_INCLUDE_PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS}
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/include"
|
|
||||||
"$ENV{ProgramFiles}/Tcl/include"
|
|
||||||
"C:/Program Files/Tcl/include"
|
|
||||||
"C:/Tcl/include"
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(TCL_INCLUDE_PATH
|
|
||||||
NAMES tcl.h
|
|
||||||
PATHS ${TCL_POSSIBLE_INCLUDE_PATHS}
|
|
||||||
)
|
|
||||||
|
|
||||||
if(TCL_LIBRARY AND TCL_INCLUDE_PATH)
|
|
||||||
set(TCL_VERSION ${TCL_VERSION})
|
|
||||||
set(TCL_LIBARY ${TCL_LIBRARY})
|
|
||||||
set(TCL_INCLUDE_PATH ${TCL_INCLUDE_PATH})
|
|
||||||
set(TCL_FOUND TRUE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(
|
|
||||||
TCL_INCLUDE_PATH
|
|
||||||
TCL_LIBRARY
|
|
||||||
TCL_VERSION
|
|
||||||
)
|
|
||||||
@@ -41,7 +41,7 @@ find_library(ZLIB_LIBRARY
|
|||||||
${ZLIB_NAMES}
|
${ZLIB_NAMES}
|
||||||
PATHS
|
PATHS
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\GnuWin32\\Zlib;InstallPath]/lib"
|
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\GnuWin32\\Zlib;InstallPath]/lib"
|
||||||
)
|
)
|
||||||
mark_as_advanced(ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
|
mark_as_advanced(ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
|
||||||
|
|
||||||
if(ZLIB_INCLUDE_DIR AND EXISTS "${ZLIB_INCLUDE_DIR}/zlib.h")
|
if(ZLIB_INCLUDE_DIR AND EXISTS "${ZLIB_INCLUDE_DIR}/zlib.h")
|
||||||
|
|||||||
@@ -37,4 +37,4 @@ foreach(file ${files})
|
|||||||
else()
|
else()
|
||||||
message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
|
message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
|
||||||
endif()
|
endif()
|
||||||
endforeach(file)
|
endforeach()
|
||||||
|
|||||||
+17
-56
@@ -37,6 +37,7 @@ AC_PROG_MAKE_SET
|
|||||||
AC_GNU_SOURCE
|
AC_GNU_SOURCE
|
||||||
AC_PROG_LN_S
|
AC_PROG_LN_S
|
||||||
AM_PROG_LIBTOOL
|
AM_PROG_LIBTOOL
|
||||||
|
PKG_PROG_PKG_CONFIG
|
||||||
|
|
||||||
# Files to generate
|
# Files to generate
|
||||||
AC_CONFIG_FILES([weechat.pc])
|
AC_CONFIG_FILES([weechat.pc])
|
||||||
@@ -153,7 +154,7 @@ AC_ARG_ENABLE(script, [ --disable-script turn off Script plugin (d
|
|||||||
AC_ARG_ENABLE(scripts, [ --disable-scripts turn off script plugins (perl, python, ...) (default=compiled if found)],enable_scripts=$enableval,enable_scripts=yes)
|
AC_ARG_ENABLE(scripts, [ --disable-scripts turn off script plugins (perl, python, ...) (default=compiled if found)],enable_scripts=$enableval,enable_scripts=yes)
|
||||||
AC_ARG_ENABLE(perl, [ --disable-perl turn off Perl script plugin (default=compiled if found)],enable_perl=$enableval,enable_perl=yes)
|
AC_ARG_ENABLE(perl, [ --disable-perl turn off Perl script plugin (default=compiled if found)],enable_perl=$enableval,enable_perl=yes)
|
||||||
AC_ARG_ENABLE(python, [ --disable-python turn off Python script plugin (default=compiled if found)],enable_python=$enableval,enable_python=yes)
|
AC_ARG_ENABLE(python, [ --disable-python turn off Python script plugin (default=compiled if found)],enable_python=$enableval,enable_python=yes)
|
||||||
AC_ARG_ENABLE(python3, [ --enable-python3 use Python 3.x if found (NOT recommended because many "official" scripts won't work) (default=off)],enable_python3=$enableval,enable_python3=no)
|
AC_ARG_ENABLE(python2, [ --enable-python2 use Python 2 instead of Python 3 (default=off)],enable_python2=$enableval,enable_python2=no)
|
||||||
AC_ARG_ENABLE(ruby, [ --disable-ruby turn off Ruby script plugin (default=compiled if found)],enable_ruby=$enableval,enable_ruby=yes)
|
AC_ARG_ENABLE(ruby, [ --disable-ruby turn off Ruby script plugin (default=compiled if found)],enable_ruby=$enableval,enable_ruby=yes)
|
||||||
AC_ARG_ENABLE(lua, [ --disable-lua turn off Lua script plugin (default=compiled if found)],enable_lua=$enableval,enable_lua=yes)
|
AC_ARG_ENABLE(lua, [ --disable-lua turn off Lua script plugin (default=compiled if found)],enable_lua=$enableval,enable_lua=yes)
|
||||||
AC_ARG_ENABLE(tcl, [ --disable-tcl turn off Tcl script plugin (default=compiled if found)],enable_tcl=$enableval,enable_tcl=yes)
|
AC_ARG_ENABLE(tcl, [ --disable-tcl turn off Tcl script plugin (default=compiled if found)],enable_tcl=$enableval,enable_tcl=yes)
|
||||||
@@ -473,66 +474,21 @@ fi
|
|||||||
PYTHON_VERSION=
|
PYTHON_VERSION=
|
||||||
|
|
||||||
if test "x$enable_python" = "xyes" ; then
|
if test "x$enable_python" = "xyes" ; then
|
||||||
if test "x$enable_python3" = "xyes" ; then
|
if test "x$enable_python2" = "xyes" ; then
|
||||||
AC_PATH_PROGS(PYTHON, python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python3 python2.7 python2.6 python2.5 python2 python)
|
PKG_CHECK_MODULES(PYTHON, [python2], [PYTHON_FOUND=yes; PYTHON_VERSION=`$PKGCONFIG --modversion python2`], [PYTHON_FOUND=no])
|
||||||
else
|
else
|
||||||
AC_PATH_PROGS(PYTHON, python2.7 python2.6 python2.5 python2 python)
|
PKG_CHECK_MODULES(PYTHON, [python3-embed], [PYTHON_FOUND=yes; PYTHON_VERSION=`$PKGCONFIG --modversion python3-embed`], [PYTHON_FOUND=no])
|
||||||
|
if test "x$PYTHON_FOUND" != "xyes"; then
|
||||||
|
PKG_CHECK_MODULES(PYTHON, [python3], [PYTHON_FOUND=yes; PYTHON_VERSION=`$PKGCONFIG --modversion python3`], [PYTHON_FOUND=no])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
if test -z $PYTHON ; then
|
if test "x$PYTHON_FOUND" != "xyes" ; then
|
||||||
AC_MSG_WARN([
|
AC_MSG_WARN([
|
||||||
*** Python must be installed on your system but python interpreter couldn't be found in path.
|
*** Python must be installed on your system but python interpreter couldn't be found in path.
|
||||||
*** Please check that python is in path, or install it with your software package manager.
|
*** Please check that python is in path, or install it with your software package manager.
|
||||||
*** WeeChat will be built without Python support.])
|
*** WeeChat will be built without Python support.])
|
||||||
enable_python="no"
|
enable_python="no"
|
||||||
not_found="$not_found python"
|
not_found="$not_found python"
|
||||||
else
|
|
||||||
PYTHON_SYSPREFIX=`$PYTHON -c 'import sys; sys.stdout.write("%s" % sys.prefix)'`
|
|
||||||
PYTHON_VERSION=`$PYTHON -c 'import sys; sys.stdout.write(sys.version[[:3]])'`
|
|
||||||
PYTHON_INCLUDE=`$PYTHON -c "import sys, distutils.sysconfig, string; sys.stdout.write(distutils.sysconfig.get_config_var('INCLUDEPY'))"`
|
|
||||||
PYTHON_OLD_VERSION=`$PYTHON -c "import sys; sys.stdout.write(str(sys.version_info < (2,5)))"`
|
|
||||||
if test "x$PYTHON_OLD_VERSION" = "xTrue" ; then
|
|
||||||
AC_MSG_WARN([
|
|
||||||
*** Python >= 2.5 is needed to build Python plugin, version found: $PYTHON_VERSION.
|
|
||||||
*** WeeChat will be built without Python support.])
|
|
||||||
enable_python="no"
|
|
||||||
not_found="$not_found python"
|
|
||||||
else
|
|
||||||
AC_MSG_CHECKING(for Python header files)
|
|
||||||
if test -r "$PYTHON_INCLUDE/Python.h"; then
|
|
||||||
PYTHON_CFLAGS="-I$PYTHON_INCLUDE"
|
|
||||||
AC_MSG_RESULT(found)
|
|
||||||
PYTHON_LIB=`$PYTHON -c "import sys, distutils.sysconfig; sys.stdout.write(distutils.sysconfig.get_config_var('LIBPL'))"`
|
|
||||||
PYTHON_LFLAGS="-lpython$PYTHON_VERSION "`$PYTHON -c "import sys, distutils.sysconfig; sys.stdout.write(distutils.sysconfig.get_config_var('LIBS')+' '+distutils.sysconfig.get_config_var('SYSLIBS')+' '+distutils.sysconfig.get_config_var('LINKFORSHARED'))"`
|
|
||||||
AC_MSG_CHECKING(for Python library)
|
|
||||||
if test -r "$PYTHON_LIB/libpython$PYTHON_VERSION.so"; then
|
|
||||||
PYTHON_LFLAGS="-L$PYTHON_LIB $PYTHON_LFLAGS"
|
|
||||||
AC_MSG_RESULT(found)
|
|
||||||
elif test -r "$PYTHON_LIB/libpython$PYTHON_VERSION.a"; then
|
|
||||||
PYTHON_LFLAGS="-L$PYTHON_LIB $PYTHON_LFLAGS"
|
|
||||||
AC_MSG_RESULT(found)
|
|
||||||
elif test -r "$PYTHON_LIB/libpython$PYTHON_VERSION.dll.a"; then
|
|
||||||
PYTHON_LFLAGS="-L$PYTHON_LIB $PYTHON_LFLAGS"
|
|
||||||
AC_MSG_RESULT(found)
|
|
||||||
elif test -r "$PYTHON_SYSPREFIX/lib/libpython$PYTHON_VERSION.so"; then
|
|
||||||
PYTHON_LFLAGS="-L$PYTHON_SYSPREFIX/lib/ $PYTHON_LFLAGS"
|
|
||||||
AC_MSG_RESULT(found)
|
|
||||||
else
|
|
||||||
AC_MSG_WARN([
|
|
||||||
*** Python library couldn't be found on your system.
|
|
||||||
*** Try to install it with your software package manager.
|
|
||||||
*** WeeChat will be built without Python support.])
|
|
||||||
enable_python="no"
|
|
||||||
not_found="$not_found python"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
AC_MSG_WARN([
|
|
||||||
*** Python header files couldn't be found on your system.
|
|
||||||
*** Try to install them with your software package manager.
|
|
||||||
*** WeeChat will be built without Python support.])
|
|
||||||
enable_python="no"
|
|
||||||
not_found="$not_found python"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
not_asked="$not_asked python"
|
not_asked="$not_asked python"
|
||||||
@@ -540,7 +496,8 @@ fi
|
|||||||
|
|
||||||
if test "x$enable_python" = "xyes" ; then
|
if test "x$enable_python" = "xyes" ; then
|
||||||
AC_SUBST(PYTHON_CFLAGS)
|
AC_SUBST(PYTHON_CFLAGS)
|
||||||
AC_SUBST(PYTHON_LFLAGS)
|
AC_SUBST(PYTHON_LIBS)
|
||||||
|
AC_SUBST(PYTHON_VERSION)
|
||||||
AC_DEFINE(PLUGIN_PYTHON)
|
AC_DEFINE(PLUGIN_PYTHON)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -563,7 +520,7 @@ if test "x$enable_ruby" = "xyes" ; then
|
|||||||
|
|
||||||
# detect old Ruby versions
|
# detect old Ruby versions
|
||||||
if test "x$RUBY_CFLAGS" = "x" -o "x$RUBY_LFLAGS" = "x" ; then
|
if test "x$RUBY_CFLAGS" = "x" -o "x$RUBY_LFLAGS" = "x" ; then
|
||||||
AC_PATH_PROGS(RUBY, ruby1.9.3 ruby1.9.2 ruby1.9.1 ruby1.9 ruby1.8 ruby)
|
AC_PATH_PROGS(RUBY, ruby1.9.3 ruby1.9.2 ruby1.9.1 ruby1.9 ruby)
|
||||||
if test -z $RUBY ; then
|
if test -z $RUBY ; then
|
||||||
AC_MSG_WARN([
|
AC_MSG_WARN([
|
||||||
*** Ruby must be installed on your system but ruby interpreter couldn't be found in path.
|
*** Ruby must be installed on your system but ruby interpreter couldn't be found in path.
|
||||||
@@ -773,7 +730,7 @@ if test "x$enable_guile" = "xyes" ; then
|
|||||||
guile_found="no"
|
guile_found="no"
|
||||||
AC_MSG_CHECKING(for Guile headers and libraries)
|
AC_MSG_CHECKING(for Guile headers and libraries)
|
||||||
echo
|
echo
|
||||||
for v in "2.0" ; do
|
for v in "2.2" "2.0" ; do
|
||||||
pkgconfig_guile_found=`$PKGCONFIG --exists guile-$v 2>/dev/null`
|
pkgconfig_guile_found=`$PKGCONFIG --exists guile-$v 2>/dev/null`
|
||||||
if test "x$?" = "x0" ; then
|
if test "x$?" = "x0" ; then
|
||||||
GUILE_VERSION=`$PKGCONFIG --modversion guile-$v`
|
GUILE_VERSION=`$PKGCONFIG --modversion guile-$v`
|
||||||
@@ -1373,6 +1330,9 @@ netbsd*)
|
|||||||
gnu*)
|
gnu*)
|
||||||
LDFLAGS="$LDFLAGS -lpthread"
|
LDFLAGS="$LDFLAGS -lpthread"
|
||||||
;;
|
;;
|
||||||
|
haiku*)
|
||||||
|
LDFLAGS="$LDFLAGS -lnetwork"
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -1415,6 +1375,7 @@ AM_CONDITIONAL(MAN, test "$enable_man" = "yes")
|
|||||||
AM_CONDITIONAL(DOC, test "$enable_doc" = "yes")
|
AM_CONDITIONAL(DOC, test "$enable_doc" = "yes")
|
||||||
|
|
||||||
AC_OUTPUT([Makefile
|
AC_OUTPUT([Makefile
|
||||||
|
icons/Makefile
|
||||||
doc/Makefile
|
doc/Makefile
|
||||||
doc/en/Makefile
|
doc/en/Makefile
|
||||||
doc/fr/Makefile
|
doc/fr/Makefile
|
||||||
|
|||||||
@@ -9,11 +9,11 @@ Build-Depends:
|
|||||||
libncursesw5-dev,
|
libncursesw5-dev,
|
||||||
gem2deb,
|
gem2deb,
|
||||||
libperl-dev,
|
libperl-dev,
|
||||||
python-dev,
|
python3-dev,
|
||||||
libaspell-dev,
|
libaspell-dev,
|
||||||
liblua5.1-0-dev,
|
liblua5.3-dev,
|
||||||
tcl8.6-dev,
|
tcl8.6-dev,
|
||||||
guile-2.0-dev,
|
guile-2.2-dev,
|
||||||
libv8-dev [amd64 i386 armel armhf mips mipsel hurd-i386 kfreebsd-amd64 kfreebsd-i386],
|
libv8-dev [amd64 i386 armel armhf mips mipsel hurd-i386 kfreebsd-amd64 kfreebsd-i386],
|
||||||
php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
|
php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
|
||||||
libxml2-dev,
|
libxml2-dev,
|
||||||
@@ -21,7 +21,7 @@ Build-Depends:
|
|||||||
libgcrypt20-dev,
|
libgcrypt20-dev,
|
||||||
libgnutls28-dev,
|
libgnutls28-dev,
|
||||||
zlib1g-dev
|
zlib1g-dev
|
||||||
Standards-Version: 4.3.0
|
Standards-Version: 4.4.0
|
||||||
Homepage: https://weechat.org/
|
Homepage: https://weechat.org/
|
||||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||||
@@ -162,11 +162,11 @@ Depends:
|
|||||||
${shlibs:Depends},
|
${shlibs:Depends},
|
||||||
weechat-devel-curses (= ${binary:Version}) | weechat-devel-headless (= ${binary:Version})
|
weechat-devel-curses (= ${binary:Version}) | weechat-devel-headless (= ${binary:Version})
|
||||||
Conflicts: weechat-python
|
Conflicts: weechat-python
|
||||||
Description: Fast, light and extensible chat client - Python plugin
|
Description: Fast, light and extensible chat client - Python 3 plugin
|
||||||
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
|
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
|
||||||
for many operating systems. Everything can be done with a keyboard.
|
for many operating systems. Everything can be done with a keyboard.
|
||||||
.
|
.
|
||||||
This package provides the Python scripting API plugin.
|
This package provides the Python 3 scripting API plugin.
|
||||||
|
|
||||||
Package: weechat-devel-perl
|
Package: weechat-devel-perl
|
||||||
Architecture: any
|
Architecture: any
|
||||||
|
|||||||
+1
-1
@@ -26,7 +26,7 @@ weechat (0.3.1-1) unstable; urgency=low
|
|||||||
are stronger checks while connecting with SSL. By default, if a connection
|
are stronger checks while connecting with SSL. By default, if a connection
|
||||||
is not fully trusted it will fail.
|
is not fully trusted it will fail.
|
||||||
You can find more information on how to handle this new behaviour here:
|
You can find more information on how to handle this new behaviour here:
|
||||||
https://weechat.org/blog/post/2009/12/01/SSL-certificates
|
https://blog.weechat.org/post/2009/12/01/SSL-certificates
|
||||||
|
|
||||||
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 25 Jan 2010 12:35:11 +0100
|
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 25 Jan 2010 12:35:11 +0100
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,18 @@
|
|||||||
|
weechat (2.6-2) unstable; urgency=medium
|
||||||
|
|
||||||
|
* Add a patch from upstream to support Guile 2.2 (Closes: #885235)
|
||||||
|
|
||||||
|
-- Emmanuel Bouthenot <kolter@debian.org> Fri, 11 Oct 2019 15:07:22 +0000
|
||||||
|
|
||||||
|
weechat (2.6-1) unstable; urgency=medium
|
||||||
|
|
||||||
|
* New upstream release
|
||||||
|
* Build only with Python3 (Closes: #938817)
|
||||||
|
* Bump Standards-Version to 4.4.0
|
||||||
|
* Build Lua plugin against Lua 5.3
|
||||||
|
|
||||||
|
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 17 Sep 2019 13:30:32 +0000
|
||||||
|
|
||||||
weechat (2.4-1) unstable; urgency=medium
|
weechat (2.4-1) unstable; urgency=medium
|
||||||
|
|
||||||
* New upstream release
|
* New upstream release
|
||||||
|
|||||||
@@ -9,11 +9,11 @@ Build-Depends:
|
|||||||
libncursesw5-dev,
|
libncursesw5-dev,
|
||||||
gem2deb,
|
gem2deb,
|
||||||
libperl-dev,
|
libperl-dev,
|
||||||
python-dev,
|
python3-dev,
|
||||||
libaspell-dev,
|
libaspell-dev,
|
||||||
liblua5.1-0-dev,
|
liblua5.3-dev,
|
||||||
tcl8.6-dev,
|
tcl8.6-dev,
|
||||||
guile-2.0-dev,
|
guile-2.2-dev,
|
||||||
libv8-dev [amd64 i386 armel armhf mips mipsel hurd-i386 kfreebsd-amd64 kfreebsd-i386],
|
libv8-dev [amd64 i386 armel armhf mips mipsel hurd-i386 kfreebsd-amd64 kfreebsd-i386],
|
||||||
php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
|
php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
|
||||||
libxml2-dev,
|
libxml2-dev,
|
||||||
@@ -21,7 +21,7 @@ Build-Depends:
|
|||||||
libgcrypt20-dev,
|
libgcrypt20-dev,
|
||||||
libgnutls28-dev,
|
libgnutls28-dev,
|
||||||
zlib1g-dev
|
zlib1g-dev
|
||||||
Standards-Version: 4.3.0
|
Standards-Version: 4.4.0
|
||||||
Homepage: https://weechat.org/
|
Homepage: https://weechat.org/
|
||||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||||
@@ -156,11 +156,11 @@ Depends:
|
|||||||
${misc:Depends},
|
${misc:Depends},
|
||||||
${shlibs:Depends},
|
${shlibs:Depends},
|
||||||
weechat-curses (= ${binary:Version}) | weechat-headless (= ${binary:Version})
|
weechat-curses (= ${binary:Version}) | weechat-headless (= ${binary:Version})
|
||||||
Description: Fast, light and extensible chat client - Python plugin
|
Description: Fast, light and extensible chat client - Python 3 plugin
|
||||||
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
|
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
|
||||||
for many operating systems. Everything can be done with a keyboard.
|
for many operating systems. Everything can be done with a keyboard.
|
||||||
.
|
.
|
||||||
This package provides the Python scripting API plugin.
|
This package provides the Python 3 scripting API plugin.
|
||||||
|
|
||||||
Package: weechat-perl
|
Package: weechat-perl
|
||||||
Architecture: any
|
Architecture: any
|
||||||
|
|||||||
+2
-6
@@ -19,13 +19,9 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
if(ENABLE_MAN OR ENABLE_DOC)
|
if(ENABLE_MAN OR ENABLE_DOC)
|
||||||
|
|
||||||
find_package(Asciidoctor)
|
find_package(Asciidoctor)
|
||||||
|
|
||||||
if(ASCIIDOCTOR_FOUND)
|
if(ASCIIDOCTOR_FOUND)
|
||||||
|
|
||||||
set(ASCIIDOCTOR_ARGS -a experimental -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=prettify)
|
set(ASCIIDOCTOR_ARGS -a experimental -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=prettify)
|
||||||
|
|
||||||
add_subdirectory(cs)
|
add_subdirectory(cs)
|
||||||
add_subdirectory(de)
|
add_subdirectory(de)
|
||||||
add_subdirectory(en)
|
add_subdirectory(en)
|
||||||
@@ -35,7 +31,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
|||||||
add_subdirectory(ja)
|
add_subdirectory(ja)
|
||||||
add_subdirectory(pl)
|
add_subdirectory(pl)
|
||||||
add_subdirectory(ru)
|
add_subdirectory(ru)
|
||||||
|
else()
|
||||||
|
message(SEND_ERROR "Asciidoctor not found")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -235,12 +235,16 @@ název volby):
|
|||||||
----
|
----
|
||||||
|
|
||||||
[[connect_to_irc_server]]
|
[[connect_to_irc_server]]
|
||||||
== Připojení k IRC serveru a automatické ořipojení kanálů
|
== Připojení k IRC serveru
|
||||||
|
|
||||||
----
|
----
|
||||||
/connect freenode
|
/connect freenode
|
||||||
----
|
----
|
||||||
|
|
||||||
|
// TRANSLATION MISSING
|
||||||
|
With this command, WeeChat connects to the freenode server and auto-joins the
|
||||||
|
channels configured in the "autojoin" server option.
|
||||||
|
|
||||||
// TRANSLATION MISSING
|
// TRANSLATION MISSING
|
||||||
[NOTE]
|
[NOTE]
|
||||||
Tento příkaz může být použit k vytvoření nového připojení k serveru bez
|
Tento příkaz může být použit k vytvoření nového připojení k serveru bez
|
||||||
|
|||||||
@@ -38,6 +38,8 @@
|
|||||||
|
|
||||||
| irc | irc_privates | Private auf allen IRC Servern
|
| irc | irc_privates | Private auf allen IRC Servern
|
||||||
|
|
||||||
|
| irc | irc_raw_filters | Filter für IRC Rohbuffer
|
||||||
|
|
||||||
| irc | irc_server | aktueller IRC-Server
|
| irc | irc_server | aktueller IRC-Server
|
||||||
|
|
||||||
| irc | irc_server_channels | Channels des derzeitigen IRC-Server
|
| irc | irc_server_channels | Channels des derzeitigen IRC-Server
|
||||||
@@ -142,7 +144,7 @@
|
|||||||
|
|
||||||
| weechat | env_vars | Umgebungsvariablen
|
| weechat | env_vars | Umgebungsvariablen
|
||||||
|
|
||||||
| weechat | filename | Dateinamen
|
| weechat | filename | Dateiname; optionales Argument: default path (Hinweis: Inhalt wird evaluiert, siehe /help eval)
|
||||||
|
|
||||||
| weechat | filters_names | Liste der Filter
|
| weechat | filters_names | Liste der Filter
|
||||||
|
|
||||||
|
|||||||
@@ -252,6 +252,8 @@ _isupport_ (string) +
|
|||||||
_prefix_modes_ (string) +
|
_prefix_modes_ (string) +
|
||||||
_prefix_chars_ (string) +
|
_prefix_chars_ (string) +
|
||||||
_nick_max_length_ (integer) +
|
_nick_max_length_ (integer) +
|
||||||
|
_user_max_length_ (integer) +
|
||||||
|
_host_max_length_ (integer) +
|
||||||
_casemapping_ (integer) +
|
_casemapping_ (integer) +
|
||||||
_chantypes_ (string) +
|
_chantypes_ (string) +
|
||||||
_chanmodes_ (string) +
|
_chanmodes_ (string) +
|
||||||
@@ -970,6 +972,7 @@ _charset_ (string) +
|
|||||||
_priority_ (integer) +
|
_priority_ (integer) +
|
||||||
_initialized_ (integer) +
|
_initialized_ (integer) +
|
||||||
_debug_ (integer) +
|
_debug_ (integer) +
|
||||||
|
_upgrading_ (integer) +
|
||||||
_variables_ (hashtable) +
|
_variables_ (hashtable) +
|
||||||
_prev_plugin_ (pointer, hdata: "plugin") +
|
_prev_plugin_ (pointer, hdata: "plugin") +
|
||||||
_next_plugin_ (pointer, hdata: "plugin") +
|
_next_plugin_ (pointer, hdata: "plugin") +
|
||||||
|
|||||||
@@ -10,6 +10,8 @@
|
|||||||
|
|
||||||
| alias | alias_default | Liste der standardmäßigen Aliase | - | -
|
| alias | alias_default | Liste der standardmäßigen Aliase | - | -
|
||||||
|
|
||||||
|
| buflist | buflist | Liste der Buffer in buflist Bar-Item | - | buflist Bar-Item Name (optional)
|
||||||
|
|
||||||
| fset | fset_option | Auflistung der fset Optionen | fset Option-Pointer (optional) | Name einer Einstellung (Platzhalter "*" kann verwendet werden) (optional)
|
| fset | fset_option | Auflistung der fset Optionen | fset Option-Pointer (optional) | Name einer Einstellung (Platzhalter "*" kann verwendet werden) (optional)
|
||||||
|
|
||||||
| guile | guile_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
| guile | guile_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
||||||
|
|||||||
@@ -108,6 +108,10 @@
|
|||||||
|
|
||||||
| weechat | pid | WeeChat PID (Prozess-ID) | -
|
| weechat | pid | WeeChat PID (Prozess-ID) | -
|
||||||
|
|
||||||
|
| weechat | term_color_pairs | Anzahl der Farbpaare die durch das Terminal unterstützt werden | -
|
||||||
|
|
||||||
|
| weechat | term_colors | Anzahl der Farben die durch das Terminal unterstützt werden | -
|
||||||
|
|
||||||
| weechat | term_height | Höhe des Terminals | -
|
| weechat | term_height | Höhe des Terminals | -
|
||||||
|
|
||||||
| weechat | term_width | Breite des Terminals | -
|
| weechat | term_width | Breite des Terminals | -
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
|===
|
|===
|
||||||
| Erweiterung | Name | Beschreibung | Hashtable (Eingabe) | Hashtable (Ausgabe)
|
| 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, "host": Host, "command": Befehl, "channel": Channel, "arguments": Argumente (schließt Channel ein), "text": Text (zum Beispiel eine Nachricht von einem User), "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird)
|
| irc | irc_message_parse | Parse eine IRC Nachricht | "message": IRC Nachricht, "server": Servername (optional) | "tags": Tags, "message_without_tags": Nachrichten ohne Tags, "nick": Nick, "user": Benutzername, "host": Host, "command": Befehl, "channel": Channel, "arguments": Argumente (schließt Channel ein), "text": Text (zum Beispiel eine Nachricht von einem User), "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird)
|
||||||
|
|
||||||
| irc | irc_message_split | trennt eine IRC Nachricht (standardmäßig in 512 Bytes große Nachrichten) | "message": IRC Nachricht, "server": Servername (optional) | "msg1" ... "msgN": Nachrichten die versendet werden sollen (ohne abschließendes "\r\n"), "args1" ... "argsN": Argumente für Nachrichten, "count": Anzahl der Nachrichten
|
| 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
|
||||||
|
|
||||||
|
|||||||
@@ -62,6 +62,8 @@
|
|||||||
|
|
||||||
| unix_socket_path | string |
|
| unix_socket_path | string |
|
||||||
|
|
||||||
|
| abstract_unix_socket | string |
|
||||||
|
|
||||||
| path_as_is | long |
|
| path_as_is | long |
|
||||||
|
|
||||||
| proxy_service_name | string |
|
| proxy_service_name | string |
|
||||||
@@ -72,15 +74,21 @@
|
|||||||
|
|
||||||
| tcp_fastopen | long |
|
| tcp_fastopen | long |
|
||||||
|
|
||||||
|
| socks5_auth | long |
|
||||||
|
|
||||||
|
| haproxyprotocol | long |
|
||||||
|
|
||||||
|
| doh_url | string |
|
||||||
|
|
||||||
| netrc | long | ignored, optional, required
|
| netrc | long | ignored, optional, required
|
||||||
|
|
||||||
| userpwd | string |
|
| userpwd | string |
|
||||||
|
|
||||||
| proxyuserpwd | string |
|
| proxyuserpwd | string |
|
||||||
|
|
||||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate
|
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||||
|
|
||||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate
|
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||||
|
|
||||||
| netrc_file | string |
|
| netrc_file | string |
|
||||||
|
|
||||||
@@ -104,6 +112,8 @@
|
|||||||
|
|
||||||
| login_options | string |
|
| login_options | string |
|
||||||
|
|
||||||
|
| disallow_username_in_url | long |
|
||||||
|
|
||||||
| autoreferer | long |
|
| autoreferer | long |
|
||||||
|
|
||||||
| followlocation | long |
|
| followlocation | long |
|
||||||
@@ -114,8 +124,6 @@
|
|||||||
|
|
||||||
| postfields | string |
|
| postfields | string |
|
||||||
|
|
||||||
| httppost | list |
|
|
||||||
|
|
||||||
| referer | string |
|
| referer | string |
|
||||||
|
|
||||||
| useragent | string |
|
| useragent | string |
|
||||||
@@ -170,6 +178,8 @@
|
|||||||
|
|
||||||
| stream_weight | long |
|
| stream_weight | long |
|
||||||
|
|
||||||
|
| request_target | string |
|
||||||
|
|
||||||
| mail_from | string |
|
| mail_from | string |
|
||||||
|
|
||||||
| mail_rcpt | list |
|
| mail_rcpt | list |
|
||||||
@@ -258,6 +268,10 @@
|
|||||||
|
|
||||||
| maxfilesize_large | long long |
|
| maxfilesize_large | long long |
|
||||||
|
|
||||||
|
| timevalue_large | long long |
|
||||||
|
|
||||||
|
| upload_buffersize | long |
|
||||||
|
|
||||||
| timeout | long |
|
| timeout | long |
|
||||||
|
|
||||||
| low_speed_limit | long |
|
| low_speed_limit | long |
|
||||||
@@ -300,9 +314,15 @@
|
|||||||
|
|
||||||
| connect_to | list |
|
| connect_to | list |
|
||||||
|
|
||||||
|
| happy_eyeballs_timeout_ms | long |
|
||||||
|
|
||||||
|
| dns_shuffle_addresses | long |
|
||||||
|
|
||||||
|
| upkeep_interval_ms | long |
|
||||||
|
|
||||||
| sslcert | string |
|
| sslcert | string |
|
||||||
|
|
||||||
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3
|
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||||
|
|
||||||
| ssl_verifypeer | long |
|
| ssl_verifypeer | long |
|
||||||
|
|
||||||
@@ -342,7 +362,7 @@
|
|||||||
|
|
||||||
| gssapi_delegation | long | none, policy_flag, flag
|
| gssapi_delegation | long | none, policy_flag, flag
|
||||||
|
|
||||||
| ssl_options | long | allow_beast, no_revoke
|
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||||
|
|
||||||
| ssl_enable_alpn | long |
|
| ssl_enable_alpn | long |
|
||||||
|
|
||||||
@@ -372,11 +392,11 @@
|
|||||||
|
|
||||||
| proxy_sslkeytype | string |
|
| proxy_sslkeytype | string |
|
||||||
|
|
||||||
| proxy_sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3
|
| proxy_sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||||
|
|
||||||
| proxy_ssl_cipher_list | list |
|
| proxy_ssl_cipher_list | list |
|
||||||
|
|
||||||
| proxy_ssl_options | long | allow_beast, no_revoke
|
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||||
|
|
||||||
| proxy_ssl_verifyhost | long |
|
| proxy_ssl_verifyhost | long |
|
||||||
|
|
||||||
@@ -388,6 +408,10 @@
|
|||||||
|
|
||||||
| proxy_tlsauth_username | string |
|
| proxy_tlsauth_username | string |
|
||||||
|
|
||||||
|
| tls13_ciphers | list |
|
||||||
|
|
||||||
|
| proxy_tls13_ciphers | list |
|
||||||
|
|
||||||
| ssh_auth_types | mask | none, policy_flag, flag
|
| ssh_auth_types | mask | none, policy_flag, flag
|
||||||
|
|
||||||
| ssh_public_keyfile | string |
|
| ssh_public_keyfile | string |
|
||||||
@@ -398,6 +422,8 @@
|
|||||||
|
|
||||||
| ssh_knownhosts | string |
|
| ssh_knownhosts | string |
|
||||||
|
|
||||||
|
| ssh_compression | long |
|
||||||
|
|
||||||
| new_file_perms | long |
|
| new_file_perms | long |
|
||||||
|
|
||||||
| new_directory_perms | long |
|
| new_directory_perms | long |
|
||||||
|
|||||||
@@ -7,8 +7,6 @@
|
|||||||
| Alias | Befehl | Vervollständigung
|
| Alias | Befehl | Vervollständigung
|
||||||
|
|
||||||
| /AAWAY | /allserv /away | -
|
| /AAWAY | /allserv /away | -
|
||||||
| /AME | /allchan /me | -
|
|
||||||
| /AMSG | /allchan /msg * | -
|
|
||||||
| /ANICK | /allserv /nick | -
|
| /ANICK | /allserv /nick | -
|
||||||
| /BEEP | /print -beep | -
|
| /BEEP | /print -beep | -
|
||||||
| /BYE | /quit | -
|
| /BYE | /quit | -
|
||||||
@@ -35,8 +33,9 @@
|
|||||||
| /UMODE | /mode $nick | -
|
| /UMODE | /mode $nick | -
|
||||||
| /V | /command core version | -
|
| /V | /command core version | -
|
||||||
| /W | /who | -
|
| /W | /who | -
|
||||||
| /WC | /window merge | -
|
| /WC | /window close | -
|
||||||
| /WI | /whois | -
|
| /WI | /whois | -
|
||||||
| /WII | /whois $1 $1 | -
|
| /WII | /whois $1 $1 | -
|
||||||
|
| /WM | /window merge | -
|
||||||
| /WW | /whowas | -
|
| /WW | /whowas | -
|
||||||
|===
|
|===
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ Die folgenden Variablen können in den obigen Optionen genutzt werden:
|
|||||||
- ${format_buffer}: der evaluierte Wert der Option buflist.format.buffer; dies kann in der Option buflist.format.buffer_current genutzt werden um zum Beispiel die Hintergrundfarbe zu verändern
|
- ${format_buffer}: der evaluierte Wert der Option buflist.format.buffer; dies kann in der Option buflist.format.buffer_current genutzt werden um zum Beispiel die Hintergrundfarbe zu verändern
|
||||||
- ${current_buffer}: ein Boolean ("0" oder "1"), "1" falls es sich um den aktuellen Buffer handelt; dies kann in einer Bedingung verwendet werden: ${if:${current_buffer}?...:...}
|
- ${current_buffer}: ein Boolean ("0" oder "1"), "1" falls es sich um den aktuellen Buffer handelt; dies kann in einer Bedingung verwendet werden: ${if:${current_buffer}?...:...}
|
||||||
- ${merged}: ein Boolean ("0" oder "1"), "1" wenn der Buffer mit einem anderen zusammengefügt ist; kann innerhalb einer Bedingung genutzt werden: ${if:${merged}?...:...}
|
- ${merged}: ein Boolean ("0" oder "1"), "1" wenn der Buffer mit einem anderen zusammengefügt ist; kann innerhalb einer Bedingung genutzt werden: ${if:${merged}?...:...}
|
||||||
- ${format_number}: eingerückte Numer mit Trennzeichen (evaluiert aus Option buflist.format.number)
|
- ${format_number}: eingerückte Nummer mit Trennzeichen (evaluiert aus Option buflist.format.number)
|
||||||
- ${number}: eingerückte Nummer, zum Beispiel " 1", falls die Anzahl der Buffer zwischen 10 und 99 liegt; bei zusammengefügten Buffern enthält die Variable für den ersten Buffer die entsprechende Nummer, die weiteren Buffer enthalten ein Leerzeichen anstelle der Nummer
|
- ${number}: eingerückte Nummer, zum Beispiel " 1", falls die Anzahl der Buffer zwischen 10 und 99 liegt; bei zusammengefügten Buffern enthält die Variable für den ersten Buffer die entsprechende Nummer, die weiteren Buffer enthalten ein Leerzeichen anstelle der Nummer
|
||||||
- ${number2}: eingerückte Nummer, zum Beispiel " 1", falls die Anzahl der Buffer zwischen 10 und 99 liegt
|
- ${number2}: eingerückte Nummer, zum Beispiel " 1", falls die Anzahl der Buffer zwischen 10 und 99 liegt
|
||||||
- ${number_displayed}: "1" falls Nummer angezeigt wird, ansonsten "0"
|
- ${number_displayed}: "1" falls Nummer angezeigt wird, ansonsten "0"
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
** Standardwert: `+0+`
|
** Standardwert: `+0+`
|
||||||
|
|
||||||
* [[option_exec.command.shell]] *exec.command.shell*
|
* [[option_exec.command.shell]] *exec.command.shell*
|
||||||
** Beschreibung: pass:none[shell welche für den Befehl "/exec -sh" genutzt werden soll; hierbei kann es sich um den Namen der shell handeln der über PATH gefunden wird (zum Beispiel "bash") oder man nutzt eine absolute Pfadangabe zur Binärdatei (zum Beispiel "/bin/bash")]
|
** Beschreibung: pass:none[shell welche für den Befehl "/exec -sh" genutzt werden soll; hierbei kann es sich um den Namen der shell handeln der über PATH gefunden wird (zum Beispiel "bash") oder man nutzt eine absolute Pfadangabe zur Binärdatei (zum Beispiel "/bin/bash"); wenn kein Wert angegeben ist, wird "sh" genutzt (Hinweis: Inhalt ist evaluiert, siehe /help eval)]
|
||||||
** Typ: Zeichenkette
|
** Typ: Zeichenkette
|
||||||
** Werte: beliebige Zeichenkette
|
** Werte: beliebige Zeichenkette
|
||||||
** Standardwert: `+"sh"+`
|
** Standardwert: `+"${env:SHELL}"+`
|
||||||
|
|||||||
@@ -51,6 +51,8 @@
|
|||||||
d:xxx zeigt nur Optionen die verändert wurden und "xxx" im Namen haben
|
d:xxx zeigt nur Optionen die verändert wurden und "xxx" im Namen haben
|
||||||
d=xxx zeigt nur veränderte Optionen, die "xxx" als Wert haben
|
d=xxx zeigt nur veränderte Optionen, die "xxx" als Wert haben
|
||||||
d==xxx zeigt nur veränderte Optionen die exakt "xxx" als Wert haben
|
d==xxx zeigt nur veränderte Optionen die exakt "xxx" als Wert haben
|
||||||
|
h=xxx zeigt alle Optionen, die den Text "xxx" in der Beschreibung enthalten (in der Übersetzung)
|
||||||
|
he=xxx zeigt alle Optionen, die den Text "xxx" in der Beschreibung enthalten (in der englischen Beschreibung)
|
||||||
=xxx zeigt nur Optionen mit "xxx" als Wert
|
=xxx zeigt nur Optionen mit "xxx" als Wert
|
||||||
==xxx zeigt nur Optionen die exakt "xxx" als Wert haben
|
==xxx zeigt nur Optionen die exakt "xxx" als Wert haben
|
||||||
c:xxx zeigt nur Optionen auf die die evaluierte Bedingung "xxx" zutrifft, folgende Variable können verwendet werden: file, section, option, name, parent_name, type, type_en, type_short (bool/int/str/col), type_tiny (b/i/s/c), default_value, default_value_undef, value, quoted_value, value_undef, value_changed, parent_value, min, max, description, description2, description_en, description_en2, string_values
|
c:xxx zeigt nur Optionen auf die die evaluierte Bedingung "xxx" zutrifft, folgende Variable können verwendet werden: file, section, option, name, parent_name, type, type_en, type_short (bool/int/str/col), type_tiny (b/i/s/c), default_value, default_value_undef, value, quoted_value, value_undef, value_changed, parent_value, min, max, description, description2, description_en, description_en2, string_values
|
||||||
@@ -60,14 +62,14 @@ Zeilen werden mittels evaluierten Ausdrücken dargestellt (siehe /help eval für
|
|||||||
- fset.format.option2: zweites Format für eine Option
|
- fset.format.option2: zweites Format für eine Option
|
||||||
|
|
||||||
Die nachfolgenden Variablen können in den Optionen genutzt werden:
|
Die nachfolgenden Variablen können in den Optionen genutzt werden:
|
||||||
- Optionsdaten, mit Farbe und durch Leerzeichen auf der rechten Seite aufgefüllt:
|
- Optionsdaten, mit Farbe und durch Leerzeichen auf der rechten Seite aufgefüllt:
|
||||||
- ${file}: Konfigurationsdatei (zum Beispiel "weechat" oder "irc")
|
- ${file}: Konfigurationsdatei (zum Beispiel "weechat" oder "irc")
|
||||||
- ${section}: Sektion
|
- ${section}: Sektion
|
||||||
- ${option}: Name der Option
|
- ${option}: Name der Option
|
||||||
- ${name}: vollständiger Name der Option (file.section.option)
|
- ${name}: vollständiger Name der Option (file.section.option)
|
||||||
- ${parent_name}: übergeordneter Name der Option
|
- ${parent_name}: übergeordneter Name der Option
|
||||||
- ${type}: Optionstyp (übersetzt)
|
- ${type}: Optionstyp (übersetzt)
|
||||||
- ${type_en}: Optionstyp (auf englisch)
|
- ${type_en}: Optionstyp (auf englisch)
|
||||||
- ${type_short}: Optionstyp Kurzform (bool/int/str/col)
|
- ${type_short}: Optionstyp Kurzform (bool/int/str/col)
|
||||||
- ${type_tiny}: Optionstyp klein (b/i/s/c)
|
- ${type_tiny}: Optionstyp klein (b/i/s/c)
|
||||||
- ${default_value}: Standardwert einer Option
|
- ${default_value}: Standardwert einer Option
|
||||||
@@ -145,7 +147,7 @@ Mausaktionen im fset Buffer:
|
|||||||
Hinweis: Leerzeichen am Anfang der Eingabezeile werden ignoriert und der folgende Text wird als Filter verwendet. Ein Beispiel: "q" schließt den fset Buffer wobei hingegen " q" alle Optionen anzeigt die ein "q" im Namen beinhalten.
|
Hinweis: Leerzeichen am Anfang der Eingabezeile werden ignoriert und der folgende Text wird als Filter verwendet. Ein Beispiel: "q" schließt den fset Buffer wobei hingegen " q" alle Optionen anzeigt die ein "q" im Namen beinhalten.
|
||||||
|
|
||||||
Beispiele:
|
Beispiele:
|
||||||
zeigt alle IRC Optionen an die verändert wurden:
|
zeigt alle IRC Optionen an, die verändert wurden:
|
||||||
/fset d:irc.*
|
/fset d:irc.*
|
||||||
zeigt alle Optionen die "nicklist" im Namen tragen:
|
zeigt alle Optionen die "nicklist" im Namen tragen:
|
||||||
/fset nicklist
|
/fset nicklist
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ Beispiele:
|
|||||||
* `+connect+`: Mit IRC-Server(n) verbinden
|
* `+connect+`: Mit IRC-Server(n) verbinden
|
||||||
|
|
||||||
----
|
----
|
||||||
/connect <server> [<server>...] [-<option>[=<value>]] [-no<option>] [-nojoin] [-switch]
|
/connect [<server> [<server>...]] [-<option>[=<value>]] [-no<option>] [-nojoin] [-switch]
|
||||||
-all|-auto|-open [-nojoin] [-switch]
|
-all|-auto|-open [-nojoin] [-switch]
|
||||||
|
|
||||||
server: Name des Servers, folgende Möglichkeiten bestehen:
|
server: Name des Servers, folgende Möglichkeiten bestehen:
|
||||||
@@ -373,7 +373,7 @@ reason: Grund der Abmeldung
|
|||||||
----
|
----
|
||||||
|
|
||||||
[[command_irc_links]]
|
[[command_irc_links]]
|
||||||
* `+links+`: alle Servernamen auflisten die dem antwortenden Server bekannt sind
|
* `+links+`: alle Servernamen auflisten, die dem antwortenden Server bekannt sind
|
||||||
|
|
||||||
----
|
----
|
||||||
/links [[<target>] <server_mask>]
|
/links [[<target>] <server_mask>]
|
||||||
@@ -726,7 +726,8 @@ reason: Grund der Abmeldung
|
|||||||
reorder <name> [<name>...]
|
reorder <name> [<name>...]
|
||||||
open <name>|-all [<name>...]
|
open <name>|-all [<name>...]
|
||||||
del|keep <name>
|
del|keep <name>
|
||||||
deloutq|jump|raw
|
deloutq|jump
|
||||||
|
raw [<filter>]
|
||||||
|
|
||||||
list: listet Server auf (ohne Angabe von Argumente wird diese Liste standardmäßig ausgegeben)
|
list: listet Server auf (ohne Angabe von Argumente wird diese Liste standardmäßig ausgegeben)
|
||||||
listfull: listet alle Server auf, mit detaillierten Informationen zu jedem einzelnen Server
|
listfull: listet alle Server auf, mit detaillierten Informationen zu jedem einzelnen Server
|
||||||
@@ -739,12 +740,19 @@ nooption: stellt die Boolean Einstellung auf 'off' (Beispiel: -nossl)
|
|||||||
copy: erstellt eine Kopie des Servers
|
copy: erstellt eine Kopie des Servers
|
||||||
rename: benennt den Server um
|
rename: benennt den Server um
|
||||||
reorder: Anordnung der Server ändern
|
reorder: Anordnung der Server ändern
|
||||||
open: öffnen den Serverbuffer, ohne eine Verbindung herzustellen
|
open: öffnet den Serverbuffer, ohne eine Verbindung herzustellen
|
||||||
keep: übernimmt den Server in die Konfigurationsdatei (nur sinnvoll bei temporär angelegten Servern)
|
keep: übernimmt den Server in die Konfigurationsdatei (nur sinnvoll bei temporär angelegten Servern)
|
||||||
del: entfernt einen Server
|
del: entfernt einen Server
|
||||||
deloutq: löscht bei allen Servern alle ausgehende Nachrichten, die in der Warteschlange stehen (dies betrifft alle Nachrichten die WeeChat gerade sendet)
|
deloutq: löscht bei allen Servern alle ausgehende Nachrichten, die in der Warteschlange stehen (dies betrifft alle Nachrichten die WeeChat gerade sendet)
|
||||||
jump: springt zum Server-Buffer
|
jump: springt zum Server-Buffer
|
||||||
raw: öffnet Buffer mit Roh-IRC-Daten
|
raw: öffnet Buffer mit Roh-IRC-Daten
|
||||||
|
filter: setzt einen neuen Filter um übereinstimmende Nachrichten anzuzeigen (ein Filter kann auch in der Eingabezeile im IRC Datenbuffer angelegt werden); erlaubte Formattierungen:
|
||||||
|
* zeigt alle Nachrichten an (keine Filterung von Nachrichten)
|
||||||
|
xxx zeigt nur Nachrichten mit "xxx" an
|
||||||
|
s:xxx zeigt nur Nachrichten von Server "xxx" an
|
||||||
|
f:xxx zeigt nur Nachrichten mit dem entsprechenden Flag an: recv (erhaltene Nachricht), sent (gesendete Nachricht), modified (Nachricht welche modifiziert wurde), redirected (umgeleitete Nachricht)
|
||||||
|
m:xxx zeigt nur IRC Befehl "xxx" an
|
||||||
|
c:xxx zeigt nur Nachrichten an auf die die evaluierte Bedingung "xxx" zutrifft, folgende Variable können verwendet werden: Ausgabe der Funktion irc_message_parse (wie nick, command, channel, text, etc., siehe Funktion info_get_hashtable in der Anleitung für API Erweiterung für eine Liste aller möglichen Variablen), date (Format: "yyyy-mm-dd hh:mm:ss"), server, recv, sent, modified, redirected
|
||||||
|
|
||||||
Beispiele:
|
Beispiele:
|
||||||
/server listfull
|
/server listfull
|
||||||
@@ -756,6 +764,9 @@ Beispiele:
|
|||||||
/server reorder freenode2 freenode
|
/server reorder freenode2 freenode
|
||||||
/server del freenode
|
/server del freenode
|
||||||
/server deloutq
|
/server deloutq
|
||||||
|
/server raw
|
||||||
|
/server raw s:freenode
|
||||||
|
/server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo
|
||||||
----
|
----
|
||||||
|
|
||||||
[[command_irc_service]]
|
[[command_irc_service]]
|
||||||
|
|||||||
@@ -44,6 +44,12 @@
|
|||||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||||
** Standardwert: `+green+`
|
** Standardwert: `+green+`
|
||||||
|
|
||||||
|
* [[option_irc.color.message_kick]] *irc.color.message_kick*
|
||||||
|
** Beschreibung: pass:none[Textfarbe in der die Meldungen für kick/kill Nachrichten angezeigt werden soll]
|
||||||
|
** Typ: Farbe
|
||||||
|
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||||
|
** Standardwert: `+red+`
|
||||||
|
|
||||||
* [[option_irc.color.message_quit]] *irc.color.message_quit*
|
* [[option_irc.color.message_quit]] *irc.color.message_quit*
|
||||||
** Beschreibung: pass:none[Textfarbe in der die Meldungen für das Verlassen/Beenden eines Channels angezeigt werden soll]
|
** Beschreibung: pass:none[Textfarbe in der die Meldungen für das Verlassen/Beenden eines Channels angezeigt werden soll]
|
||||||
** Typ: Farbe
|
** Typ: Farbe
|
||||||
@@ -68,6 +74,12 @@
|
|||||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||||
** Standardwert: `+green+`
|
** Standardwert: `+green+`
|
||||||
|
|
||||||
|
* [[option_irc.color.reason_kick]] *irc.color.reason_kick*
|
||||||
|
** Beschreibung: pass:none[Textfarbe in der die Begründung einer kick/kill Nachricht angezeigt werden soll]
|
||||||
|
** Typ: Farbe
|
||||||
|
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||||
|
** Standardwert: `+default+`
|
||||||
|
|
||||||
* [[option_irc.color.reason_quit]] *irc.color.reason_quit*
|
* [[option_irc.color.reason_quit]] *irc.color.reason_quit*
|
||||||
** Beschreibung: pass:none[Textfarbe in der die Begründung einer part/quit Nachricht angezeigt werden soll]
|
** Beschreibung: pass:none[Textfarbe in der die Begründung einer part/quit Nachricht angezeigt werden soll]
|
||||||
** Typ: Farbe
|
** Typ: Farbe
|
||||||
@@ -212,6 +224,12 @@
|
|||||||
** Werte: on, off
|
** Werte: on, off
|
||||||
** Standardwert: `+on+`
|
** Standardwert: `+on+`
|
||||||
|
|
||||||
|
* [[option_irc.look.display_pv_warning_address]] *irc.look.display_pv_warning_address*
|
||||||
|
** Beschreibung: pass:none[zeigt eine Warnung in einem privaten Buffer an, sobald sich die Adresse eines Remote-Nick geändert hat; diese Option ist standardmäßig ausgeschaltet, da Server wie bitlbee eine solche Warnung unvermittelt auslösen (die Adresse des Remote-Nick ändert sich während eines Login mehrfach)]
|
||||||
|
** Typ: boolesch
|
||||||
|
** Werte: on, off
|
||||||
|
** Standardwert: `+off+`
|
||||||
|
|
||||||
* [[option_irc.look.highlight_channel]] *irc.look.highlight_channel*
|
* [[option_irc.look.highlight_channel]] *irc.look.highlight_channel*
|
||||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Wörtern die in Channel-Buffern als Highlight erscheinen sollen (zwischen Groß- und Kleinschreibung wird nicht unterschieden. Um zwischen Groß- und Kleinschreibung zu unterscheiden muss zu Beginn "(?-i)" genutzt werden; des Weiteren können folgende Variablen genutzt werden: $nick, $channel und $server). Wird ein Buffer geöffnet, dann werden die angegeben Wörter dem Buffer-Merkmal "highlight_words" hinzugefügt. Dies bedeutet, dass diese Einstellung keinen direkten Einfluss auf schon geöffnete Buffer hat. Eine leere Zeichenkette deaktiviert ein Highlight für den Nick. Beispiel: "$nick", "(?-i)$nick"]
|
** Beschreibung: pass:none[durch Kommata getrennte Liste von Wörtern die in Channel-Buffern als Highlight erscheinen sollen (zwischen Groß- und Kleinschreibung wird nicht unterschieden. Um zwischen Groß- und Kleinschreibung zu unterscheiden muss zu Beginn "(?-i)" genutzt werden; des Weiteren können folgende Variablen genutzt werden: $nick, $channel und $server). Wird ein Buffer geöffnet, dann werden die angegeben Wörter dem Buffer-Merkmal "highlight_words" hinzugefügt. Dies bedeutet, dass diese Einstellung keinen direkten Einfluss auf schon geöffnete Buffer hat. Eine leere Zeichenkette deaktiviert ein Highlight für den Nick. Beispiel: "$nick", "(?-i)$nick"]
|
||||||
** Typ: Zeichenkette
|
** Typ: Zeichenkette
|
||||||
@@ -369,7 +387,7 @@
|
|||||||
** Standardwert: `+merge_with_core+`
|
** Standardwert: `+merge_with_core+`
|
||||||
|
|
||||||
* [[option_irc.look.smart_filter]] *irc.look.smart_filter*
|
* [[option_irc.look.smart_filter]] *irc.look.smart_filter*
|
||||||
** Beschreibung: pass:none[filtert join/part/quit/nick Nachrichten für einen Nick der einige Minuten im Channel inaktiv gewesen ist. Dazu muss ein Filter mit dem Schlagwort "irc_smart_filter" erstellt werden]
|
** Beschreibung: pass:none[filtert join/part/quit/nick Nachrichten für einen Nick der einige Minuten im Channel inaktiv gewesen ist (dazu muss ein Filter mit dem Schlagwort "irc_smart_filter" erstellt werden, siehe /help filter)]
|
||||||
** Typ: boolesch
|
** Typ: boolesch
|
||||||
** Werte: on, off
|
** Werte: on, off
|
||||||
** Standardwert: `+on+`
|
** Standardwert: `+on+`
|
||||||
@@ -446,12 +464,6 @@
|
|||||||
** Werte: beliebige Zeichenkette
|
** Werte: beliebige Zeichenkette
|
||||||
** Standardwert: `+"*!$ident@$host"+`
|
** Standardwert: `+"*!$ident@$host"+`
|
||||||
|
|
||||||
* [[option_irc.network.channel_encode]] *irc.network.channel_encode*
|
|
||||||
** Beschreibung: pass:none[dekodieren/kodieren von Channelnamen innerhalb einer Nachricht mittels Charset-Optionen; es wird empfohlen diese Option deaktiviert zu lassen sofern man ausschließlich UTF-8 in Channelnamen verwendet. Diese Option sollte nur dann verwendet werden, sofern man exotische Zeichensätze wie ISO für Channelnamen nutzt]
|
|
||||||
** Typ: boolesch
|
|
||||||
** Werte: on, off
|
|
||||||
** Standardwert: `+off+`
|
|
||||||
|
|
||||||
* [[option_irc.network.colors_receive]] *irc.network.colors_receive*
|
* [[option_irc.network.colors_receive]] *irc.network.colors_receive*
|
||||||
** Beschreibung: pass:none[wenn deaktiviert, werden Farben-Codes von eingehenden Nachrichten ignoriert]
|
** Beschreibung: pass:none[wenn deaktiviert, werden Farben-Codes von eingehenden Nachrichten ignoriert]
|
||||||
** Typ: boolesch
|
** Typ: boolesch
|
||||||
@@ -596,6 +608,12 @@
|
|||||||
** Werte: beliebige 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 Channel-Namen (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 Channel-Namen geben sollte)]
|
||||||
|
** Typ: integer
|
||||||
|
** Werte: message, channel, text
|
||||||
|
** Standardwert: `+message+`
|
||||||
|
|
||||||
* [[option_irc.server_default.command]] *irc.server_default.command*
|
* [[option_irc.server_default.command]] *irc.server_default.command*
|
||||||
** Beschreibung: pass:none[Befehl(e) welche nach einem Verbindungsaufbau zum Server und vor dem automatischem Betreten von Channels ausgeführt werden sollen (mehrere Befehle müssen durch ";" getrennt werden, soll ein Semikolon genutzt werden, schreibt man "\;", die Platzhalter $nick,$channel und $server werden durch den entsprechenden Wert ersetzt) (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
|
** Beschreibung: pass:none[Befehl(e) welche nach einem Verbindungsaufbau zum Server und vor dem automatischem Betreten von Channels ausgeführt werden sollen (mehrere Befehle müssen durch ";" getrennt werden, soll ein Semikolon genutzt werden, schreibt man "\;", die Platzhalter $nick,$channel und $server werden durch den entsprechenden Wert ersetzt) (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
|
||||||
** Typ: Zeichenkette
|
** Typ: Zeichenkette
|
||||||
@@ -746,6 +764,12 @@
|
|||||||
** Werte: beliebige Zeichenkette
|
** Werte: beliebige Zeichenkette
|
||||||
** Standardwert: `+""+`
|
** Standardwert: `+""+`
|
||||||
|
|
||||||
|
* [[option_irc.server_default.ssl_password]] *irc.server_default.ssl_password*
|
||||||
|
** Beschreibung: pass:none[Passwort für SSL Zertifikat des privaten Schlüssels (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
|
||||||
|
** Typ: Zeichenkette
|
||||||
|
** Werte: beliebige Zeichenkette
|
||||||
|
** Standardwert: `+""+`
|
||||||
|
|
||||||
* [[option_irc.server_default.ssl_priorities]] *irc.server_default.ssl_priorities*
|
* [[option_irc.server_default.ssl_priorities]] *irc.server_default.ssl_priorities*
|
||||||
** Beschreibung: pass:none[Zeichenkette mit Prioritäten für gnutls (für die korrekte Syntax siehe gnutls Dokumentation unter Funktion gnutls_priority_init. Gebräuchliche Zeichenketten sind: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
|
** Beschreibung: pass:none[Zeichenkette mit Prioritäten für gnutls (für die korrekte Syntax siehe gnutls Dokumentation unter Funktion gnutls_priority_init. Gebräuchliche Zeichenketten sind: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
|
||||||
** Typ: Zeichenkette
|
** Typ: Zeichenkette
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
** Standardwert: `+default+`
|
** Standardwert: `+default+`
|
||||||
|
|
||||||
* [[option_logger.color.backlog_line]] *logger.color.backlog_line*
|
* [[option_logger.color.backlog_line]] *logger.color.backlog_line*
|
||||||
** Beschreibung: pass:none[Textfarbe in der der Verlaufsspeicher dargestellt werden soll]
|
** Beschreibung: pass:none[Farbe der Zeilen des Verlaufspeichers; wird nur dann angewandt, wenn die Option logger.file.color_lines = off ist]
|
||||||
** Typ: Farbe
|
** Typ: Farbe
|
||||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||||
** Standardwert: `+default+`
|
** Standardwert: `+default+`
|
||||||
@@ -20,6 +20,12 @@
|
|||||||
** Werte: on, off
|
** Werte: on, off
|
||||||
** Standardwert: `+on+`
|
** Standardwert: `+on+`
|
||||||
|
|
||||||
|
* [[option_logger.file.color_lines]] *logger.file.color_lines*
|
||||||
|
** Beschreibung: pass:none[Nutze ANSI-Farbcodes für die in Logdateien geschriebenen Zeilen und zeige die Zeilen aus dem Verlaufspeicher in diesen Farben an]
|
||||||
|
** Typ: boolesch
|
||||||
|
** Werte: on, off
|
||||||
|
** Standardwert: `+off+`
|
||||||
|
|
||||||
* [[option_logger.file.flush_delay]] *logger.file.flush_delay*
|
* [[option_logger.file.flush_delay]] *logger.file.flush_delay*
|
||||||
** Beschreibung: pass:none[Zeit, in Sekunden, die verstreicht bis eine Protokolldatei gesichert wird (0 = Protokolldatei wird unmittelbar gesichert, nachdem eine neue Zeile dargestellt wurde)]
|
** Beschreibung: pass:none[Zeit, in Sekunden, die verstreicht bis eine Protokolldatei gesichert wird (0 = Protokolldatei wird unmittelbar gesichert, nachdem eine neue Zeile dargestellt wurde)]
|
||||||
** Typ: integer
|
** Typ: integer
|
||||||
|
|||||||
@@ -171,7 +171,7 @@
|
|||||||
** Standardwert: `+""+`
|
** Standardwert: `+""+`
|
||||||
|
|
||||||
* [[option_relay.network.totp_window]] *relay.network.totp_window*
|
* [[option_relay.network.totp_window]] *relay.network.totp_window*
|
||||||
** Beschreibung: pass:none[Anzahl der Time-based One-Time Passwörter die vor und nach dem aktuellen Passwort akzeptiert werden: 0 = nur das aktuelle Passwort wird akzeptiert, 1 = akzeptiert ein Passwort vorher, das aktuelle und ein Passwort danach, 2 = akzeptiert zwei Passwörter vorher, das aktuelle und zwei Passwörter danach, ...; umso höher die genutzte Zahl umso unsicherer das Verfahren (0 oder 1 sind empfohlene Werte)]
|
** Beschreibung: pass:none[Anzahl der Time-based One-Time Passwörter die vor und nach dem aktuellen Passwort akzeptiert werden: 0 = nur das aktuelle Passwort wird akzeptiert, 1 = akzeptiert ein Passwort vorher, das aktuelle und ein Passwort danach, 2 = akzeptiert zwei Passwörter vorher, das aktuelle und zwei Passwörter danach, ...; umso höher die genutzte Zahl umso unsicherer das Verfahren (0 oder 1 sind empfohlene Werte)]
|
||||||
** Typ: integer
|
** Typ: integer
|
||||||
** Werte: 0 .. 256
|
** Werte: 0 .. 256
|
||||||
** Standardwert: `+0+`
|
** Standardwert: `+0+`
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
* `+script+`: WeeChat Skriptmanager
|
* `+script+`: WeeChat Skriptmanager
|
||||||
|
|
||||||
----
|
----
|
||||||
/script list [-o|-i]
|
/script list [-o|-ol|-i|-il]
|
||||||
search <text>
|
search <text>
|
||||||
show <script>
|
show <script>
|
||||||
load|unload|reload <script> [<script>...]
|
load|unload|reload <script> [<script>...]
|
||||||
@@ -16,8 +16,10 @@
|
|||||||
update
|
update
|
||||||
|
|
||||||
list: gibt alle geladenen Skripten im Buffer aus (unabhängig der Programmiersprache)
|
list: gibt alle geladenen Skripten im Buffer aus (unabhängig der Programmiersprache)
|
||||||
-o: gibt eine Liste der gestarteten Skripten im Buffer aus
|
-o: gibt eine Liste der laufenden Skripten im Buffer aus (Ausgabe in englisch)
|
||||||
-i: eine Liste der gestarteten Skripten wird in die Eingabezeile kopiert (um sie dann manuell in einen Buffer zu senden)
|
-ol: gibt eine Liste der laufenden Skripten im Buffer aus (Ausgabe ist übersetzt)
|
||||||
|
-i: eine Liste der laufenden Skripten wird in die Eingabezeile kopiert (um sie dann manuell in einen Buffer zu senden)(Ausgabe in englisch)
|
||||||
|
-il: eine Liste der laufenden Skripten wird in die Eingabezeile kopiert (um sie dann manuell in einen Buffer zu senden)(Ausgabe ist übersetzt)
|
||||||
search: sucht Skripten nach Schlagwörtern, Skriptsprache (python, perl, ...), Dateierweiterung (py, pl, ...) oder beliebigem Text. Das Ergebnis wird im Skripten-Buffer dargestellt
|
search: sucht Skripten nach Schlagwörtern, Skriptsprache (python, perl, ...), Dateierweiterung (py, pl, ...) oder beliebigem Text. Das Ergebnis wird im Skripten-Buffer dargestellt
|
||||||
show: zeigt detailliert Informationen zu einem Skript an
|
show: zeigt detailliert Informationen zu einem Skript an
|
||||||
load: startet Skript(en)
|
load: startet Skript(en)
|
||||||
@@ -42,7 +44,7 @@ Im Skript-Buffer, werden folgende Statusangaben für ein Skript angezeigt:
|
|||||||
| | | | | obsolete (neue Version verfügbar)
|
| | | | | obsolete (neue Version verfügbar)
|
||||||
| | | | Skript wird ausgeführt (geladen)
|
| | | | Skript wird ausgeführt (geladen)
|
||||||
| | | gehalten
|
| | | gehalten
|
||||||
| | Skript wird beim Start, von WeeChat, automatisch gestartet
|
| | Skript wird beim Start, von WeeChat, automatisch geladen
|
||||||
| Skript ist installiert (wird aber nicht ausgeführt)
|
| Skript ist installiert (wird aber nicht ausgeführt)
|
||||||
es wird empfohlen dieses Skript zu installieren
|
es wird empfohlen dieses Skript zu installieren
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
** Beschreibung: pass:none[durch Kommata getrennte Liste der Befehle, für die eine Rechtschreibprüfung gelten soll (Rechtschreibprüfung ist für andere Befehle deaktiviert)]
|
** Beschreibung: pass:none[durch Kommata getrennte Liste der Befehle, für die eine Rechtschreibprüfung gelten soll (Rechtschreibprüfung ist für andere Befehle deaktiviert)]
|
||||||
** Typ: Zeichenkette
|
** Typ: Zeichenkette
|
||||||
** Werte: beliebige Zeichenkette
|
** Werte: beliebige Zeichenkette
|
||||||
** Standardwert: `+"ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"+`
|
** Standardwert: `+"away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"+`
|
||||||
|
|
||||||
* [[option_spell.check.default_dict]] *spell.check.default_dict*
|
* [[option_spell.check.default_dict]] *spell.check.default_dict*
|
||||||
** Beschreibung: pass:none[Voreingestelltes Wörterbuch (oder durch Kommata getrennte Liste der Wörterbücher) welche(s) genutzt werden soll, sofern kein Wörterbuch für einen Buffer definiert wurde (wird kein Wörterbuch angegeben dann ist die Rechtschreibprüfung in allen Buffer deaktiviert, außer es wird für einen Buffer explizit ein Wörterbuch angegeben)]
|
** Beschreibung: pass:none[Voreingestelltes Wörterbuch (oder durch Kommata getrennte Liste der Wörterbücher) welche(s) genutzt werden soll, sofern kein Wörterbuch für einen Buffer definiert wurde (wird kein Wörterbuch angegeben dann ist die Rechtschreibprüfung in allen Buffer deaktiviert, außer es wird für einen Buffer explizit ein Wörterbuch angegeben)]
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ listdefault: zeigt die standardmäßig genutzten Trigger an
|
|||||||
hsignal: Name(en) des hsignal (erforderlich)
|
hsignal: Name(en) des hsignal (erforderlich)
|
||||||
modifier: Name(en) des modifier (erforderlich)
|
modifier: Name(en) des modifier (erforderlich)
|
||||||
line: Buffertyp ("formatted", "free" oder "*"), Liste von Buffermasken, Tags
|
line: Buffertyp ("formatted", "free" oder "*"), Liste von Buffermasken, Tags
|
||||||
print: buffer, tags, message, strip colors
|
print: Buffer, Tags, Nachricht, Farben entfernen
|
||||||
command: Befehl (erforderlich), Beschreibung, Argumente, Beschreibung der Argumente, Vervollständigung
|
command: Befehl (erforderlich), Beschreibung, Argumente, Beschreibung der Argumente, Vervollständigung
|
||||||
command_run: Befehl(e) (erforderlich)
|
command_run: Befehl(e) (erforderlich)
|
||||||
timer: Intervall (erforderlich), Anpassung an Sekunden (erforderlich), maximale Anzahl an Aufrufen
|
timer: Intervall (erforderlich), Anpassung an Sekunden (erforderlich), maximale Anzahl an Aufrufen
|
||||||
|
|||||||
@@ -97,7 +97,7 @@ Beispiele:
|
|||||||
unmerge: trennt Buffer wieder voneinander, falls zwei Buffer die selbe Nummer teilen
|
unmerge: trennt Buffer wieder voneinander, falls zwei Buffer die selbe Nummer teilen
|
||||||
hide: versteckt einen Buffer
|
hide: versteckt einen Buffer
|
||||||
unhide: macht Buffer wieder sichtbar
|
unhide: macht Buffer wieder sichtbar
|
||||||
renumber: Buffer werden um nummeriert (Einstellung weechat.look.buffer_auto_renumber muss deaktiviert sein)
|
renumber: Buffer werden umnummeriert (Einstellung weechat.look.buffer_auto_renumber muss deaktiviert sein)
|
||||||
close: Buffer schließen (Nummer oder Bereich ist optional)
|
close: Buffer schließen (Nummer oder Bereich ist optional)
|
||||||
notify: setzt den Status der Benachrichtigung für den aktuellen Buffer. Folgende Möglichkeiten bestimmen den Grad der Benachrichtigung und ob der Buffer in der Hotlist angezeigt wird:
|
notify: setzt den Status der Benachrichtigung für den aktuellen Buffer. Folgende Möglichkeiten bestimmen den Grad der Benachrichtigung und ob der Buffer in der Hotlist angezeigt wird:
|
||||||
none: keine Benachrichtigung
|
none: keine Benachrichtigung
|
||||||
@@ -203,9 +203,9 @@ Ohne Angabe von Argumenten wird der Cursor-Modus umgeschaltet.
|
|||||||
Ist die Mausfunktion aktiviert (siehe /help mouse), startet man den Cursor-Modus mit der mittleren Maustaste und positioniert den Cursor auf diesen Punkt.
|
Ist die Mausfunktion aktiviert (siehe /help mouse), startet man den Cursor-Modus mit der mittleren Maustaste und positioniert den Cursor auf diesen Punkt.
|
||||||
|
|
||||||
Standardtastenbefehle im Chatbereich:
|
Standardtastenbefehle im Chatbereich:
|
||||||
m quote Nachricht
|
m zitiere Nachricht
|
||||||
q quote Präfix + Nachricht
|
q zitiere Präfix + Nachricht
|
||||||
Q quote Zeit + Präfix + Nachricht
|
Q zitiere Zeit + Präfix + Nachricht
|
||||||
|
|
||||||
Standardtastenbefehle in Nickliste:
|
Standardtastenbefehle in Nickliste:
|
||||||
b banne Nick (/ban)
|
b banne Nick (/ban)
|
||||||
@@ -214,6 +214,11 @@ Standardtastenbefehle in Nickliste:
|
|||||||
q öffne private Unterhaltung mit Nick (/query)
|
q öffne private Unterhaltung mit Nick (/query)
|
||||||
w hole Informationen über Anwender (/whois)
|
w hole Informationen über Anwender (/whois)
|
||||||
|
|
||||||
|
weitere Standardtasten im Cursor-Modus:
|
||||||
|
Pfeiltasten bewege Cursor
|
||||||
|
alt+Pfeiltasten bewege Cursor zum nächsten Bereich
|
||||||
|
enter beendet den Cursor-Modus
|
||||||
|
|
||||||
Beispiele:
|
Beispiele:
|
||||||
gehe zur Benutzerliste:
|
gehe zur Benutzerliste:
|
||||||
/cursor go nicklist
|
/cursor go nicklist
|
||||||
@@ -261,8 +266,8 @@ infolists: zeigt Information über die Infolists an
|
|||||||
/eval [-n|-s] <expression>
|
/eval [-n|-s] <expression>
|
||||||
[-n] -c <expression1> <operator> <expression2>
|
[-n] -c <expression1> <operator> <expression2>
|
||||||
|
|
||||||
-n: gibt das Ergebnis aus, ohne das dieses in den Buffer gesendet wird (debug Modus)
|
-n: gibt das Ergebnis aus, ohne dass dieses in den Buffer gesendet wird (debug Modus)
|
||||||
-s: teilt Ausdrücke bevor sie evaluiert werden (mehrere Befehle können durch Semikolon getrennt werden)
|
-s: teilt Ausdrücke, bevor sie evaluiert werden (mehrere Befehle können durch Semikolon getrennt werden)
|
||||||
-c: Auswertung als Bedingung: nutzt Operatoren und runde Klammern, Rückgabewert als Boolean-Wert ("0" oder "1")
|
-c: Auswertung als Bedingung: nutzt Operatoren und runde Klammern, Rückgabewert als Boolean-Wert ("0" oder "1")
|
||||||
expression: Ausdruck welcher verarbeitet werden soll. Variablen im Format ${variable} werden ersetzt (siehe unten); mehrere Befehle werden durch ein Semikolon voneinander getrennt
|
expression: Ausdruck welcher verarbeitet werden soll. Variablen im Format ${variable} werden ersetzt (siehe unten); mehrere Befehle werden durch ein Semikolon voneinander getrennt
|
||||||
operator: ein logischer oder vergleichender Operand:
|
operator: ein logischer oder vergleichender Operand:
|
||||||
@@ -282,7 +287,7 @@ expression: Ausdruck welcher verarbeitet werden soll. Variablen im Format ${vari
|
|||||||
!* stimmt mit Maske NICHT überein (Platzhalter "*" ist erlaubt)
|
!* stimmt mit Maske NICHT überein (Platzhalter "*" ist erlaubt)
|
||||||
|
|
||||||
Ein Ausdruck gilt als "wahr" sofern das Ergebnis weder NULL, nicht leer und von "0" abweichend ist.
|
Ein Ausdruck gilt als "wahr" sofern das Ergebnis weder NULL, nicht leer und von "0" abweichend ist.
|
||||||
Für einen Vergleich werden Fließkommazahlen genutzt sofern es sich bei beiden Ausdrücken um gültige Nummer handelt, folgende Formate werden unterstützt:
|
Für einen Vergleich werden Fließkommazahlen genutzt, insofern es sich bei beiden Ausdrücken um gültige Zahlen handelt, folgende Formate werden unterstützt:
|
||||||
- Integer (Beispiele: 5, -7)
|
- Integer (Beispiele: 5, -7)
|
||||||
- Fließkommazahl (Beispiele: 5.2, -7.5, 2.83e-2)
|
- Fließkommazahl (Beispiele: 5.2, -7.5, 2.83e-2)
|
||||||
- hexadezimale Zahl (Beispiele: 0xA3, -0xA3)
|
- hexadezimale Zahl (Beispiele: 0xA3, -0xA3)
|
||||||
@@ -290,22 +295,25 @@ Um einen Vergleich zwischen zwei Zeichenketten zu erzwingen, müssen die Ausdrü
|
|||||||
50 > 100 ==> 0
|
50 > 100 ==> 0
|
||||||
"50" > "100" ==> 1
|
"50" > "100" ==> 1
|
||||||
|
|
||||||
Einige Variablen werden im Ausdruck, mittels der Formatierung ${variable}, ersetzt. Mögliche Variablen sind, nach Reihenfolge ihrer Priorität:
|
Einige Variablen werden im Ausdruck mittels der Formatierung ${variable} ersetzt. Mögliche Variablen sind, nach Reihenfolge ihrer Priorität:
|
||||||
1. eine evaluierte Teilzeichenkette (Format: "eval:xxx")
|
1. eine evaluierte Teilzeichenkette (Format: "eval:xxx")
|
||||||
2. eine Zeichenkette mit Escapesequenzen (Format: "esc:xxx" oder "\xxx")
|
2. eine Zeichenkette mit Escapesequenzen (Format: "esc:xxx" oder "\xxx")
|
||||||
3. Zeichen welche in einer Zeichenkette nicht dargestellt werden sollen (Format: "hide:Zeichen,Zeichenkette")
|
3. Zeichen, die in einer Zeichenkette nicht dargestellt werden sollen (Format: "hide:Zeichen,Zeichenkette")
|
||||||
4. eine Zeichenkette mit einer maximalen Anzahl an Zeichen (Format: "cut:+Max,Suffix,Zeichenkette")
|
4. eine Zeichenkette mit einer maximalen Anzahl an Zeichen (Format: "cut:+Max,Suffix,Zeichenkette")
|
||||||
oder maximale Anzahl an Zeichen die auf dem Bildschirm angezeigt werden sollen (Format: "cutscr:Max,Suffix,Zeichenkette oder "cutscr:+Max,Suffix,Zeichenkette")
|
oder maximale Anzahl an Zeichen die auf dem Bildschirm angezeigt werden sollen (Format: "cutscr:Max,Suffix,Zeichenkette oder "cutscr:+Max,Suffix,Zeichenkette")
|
||||||
5. Ende einer Zeichenkette nutzen (Format: "rev:xxx")
|
5. eine Zeichenkette umkehren (Format: "rev:xxx" oder "revscr:xxx")
|
||||||
6. Wiederholung einer Zeichenkette (Format: "repeat:Anzahl,Zeichenkette")
|
6. eine Zeichenkette wiederholen (Format: "repeat:Anzahl,Zeichenkette")
|
||||||
7. eine Farbe (Format: "color:xxx", siehe "Anleitung für API Erweiterung", Funktion "color")
|
7. Länge einer Zeichenkette (Format: "length:xxx" oder "lengthscr:xxx")
|
||||||
8. eine Info (Format: "info:Name,Argumente", Argumente sind optional)
|
8. eine Farbe (Format: "color:xxx", siehe "Anleitung für API Erweiterung", Funktion "color")
|
||||||
9. aktuelles Datum/Uhrzeit (Format: "date" oder "date:format")
|
9. ein Modifizierer (Format: "info:Name,Argumente", Argumente sind optional)
|
||||||
10. eine Umgebungsvariable (Format: "env:XXX")
|
10. eine Info (Format: "Info:Name,Argumente", Argumente sind optional)
|
||||||
11. ein Dreifachoperand (Format: "if:Bedingung?Wert_falls_wahr:Wert_falls_unwahr")
|
11. aktuelles Datum/Uhrzeit (Format: "date" oder "date:format")
|
||||||
12. eine Option (Format: "file.section.option")
|
12. eine Umgebungsvariable (Format: "env:XXX")
|
||||||
13. der Name einer lokalen Variablen eines Buffer
|
13. ein Dreifachoperand (Format: "if:Bedingung?Wert_falls_wahr:Wert_falls_unwahr")
|
||||||
14. ein hdata Name/Variable (der Wert wird automatisch in eine Zeichenkette konvertiert), standardmäßig wird für "window" und "buffer" das aktuelle Fenster/Buffer verwendet.
|
14. Ergebnis eines Ausdrucks mit Klammern und Operatoren + - * / // % ** (Format: "calc:xxx")
|
||||||
|
15. eine Option (Format: "file.section.option")
|
||||||
|
16. eine lokale Variable eines Buffers
|
||||||
|
17. 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:
|
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.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:
|
hdata[list].var1.var2...: startet hdata mittels einer Liste, zum Beispiel:
|
||||||
@@ -332,6 +340,8 @@ Beispiele (einfache Zeichenketten):
|
|||||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||||
/eval -n ${rev:Hello} ==> olleH
|
/eval -n ${rev:Hello} ==> olleH
|
||||||
/eval -n ${repeat:5,-} ==> -----
|
/eval -n ${repeat:5,-} ==> -----
|
||||||
|
/eval -n ${length:test} ==> 4
|
||||||
|
/eval -n ${calc:(5+2)*3} ==> 21
|
||||||
|
|
||||||
Beispiele (Bedingungen):
|
Beispiele (Bedingungen):
|
||||||
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
||||||
@@ -346,7 +356,7 @@ Beispiele (Bedingungen):
|
|||||||
----
|
----
|
||||||
|
|
||||||
[[command_weechat_filter]]
|
[[command_weechat_filter]]
|
||||||
* `+filter+`: Filterfunktion um Nachrichten in Buffer aus- oder einzublenden, dazu können Schlagwörter oder reguläre Ausdrücke verwendet werden
|
* `+filter+`: Filterfunktion um Nachrichten in Buffern aus- oder einzublenden, dazu können Schlagwörter oder reguläre Ausdrücke verwendet werden
|
||||||
|
|
||||||
----
|
----
|
||||||
/filter list
|
/filter list
|
||||||
@@ -920,7 +930,7 @@ Es ist möglich die WeeChat-Sitzung auf einem anderen Rechner wiederherzustellen
|
|||||||
* `+uptime+`: Zeigt die Uptime von WeeChat an
|
* `+uptime+`: Zeigt die Uptime von WeeChat an
|
||||||
|
|
||||||
----
|
----
|
||||||
/uptime [-o | -ol]
|
/uptime [-o|-ol]
|
||||||
|
|
||||||
-o: die Laufzeit von WeeChat wird in den aktuellen Buffer geschrieben (in englischer Sprache)
|
-o: die Laufzeit von WeeChat wird in den aktuellen Buffer geschrieben (in englischer Sprache)
|
||||||
-ol: die Laufzeit von WeeChat wird in den aktuellen Buffer geschrieben (in der voreingestellten Landessprache)
|
-ol: die Laufzeit von WeeChat wird in den aktuellen Buffer geschrieben (in der voreingestellten Landessprache)
|
||||||
@@ -930,7 +940,7 @@ Es ist möglich die WeeChat-Sitzung auf einem anderen Rechner wiederherzustellen
|
|||||||
* `+version+`: Zeigt die WeeChat-Version und das Datum der Kompilierung an
|
* `+version+`: Zeigt die WeeChat-Version und das Datum der Kompilierung an
|
||||||
|
|
||||||
----
|
----
|
||||||
/version [-o | -ol]
|
/version [-o|-ol]
|
||||||
|
|
||||||
-o: die Version von WeeChat wird in den aktuellen Buffer ausgegeben (in englischer Sprache)
|
-o: die Version von WeeChat wird in den aktuellen Buffer ausgegeben (in englischer Sprache)
|
||||||
-ol: die Version von WeeChat wird in den aktuellen Buffer ausgegeben (in der voreingestellten Landessprache)
|
-ol: die Version von WeeChat wird in den aktuellen Buffer ausgegeben (in der voreingestellten Landessprache)
|
||||||
@@ -974,6 +984,7 @@ Beispiele:
|
|||||||
resize [-window <number>] [h|v][+|-]<pct>
|
resize [-window <number>] [h|v][+|-]<pct>
|
||||||
balance
|
balance
|
||||||
merge [-window <number>] [all]
|
merge [-window <number>] [all]
|
||||||
|
close [-window <number>]
|
||||||
page_up|page_down [-window <number>]
|
page_up|page_down [-window <number>]
|
||||||
refresh
|
refresh
|
||||||
scroll [-window <number>] [+|-]<value>[s|m|h|d|M|y]
|
scroll [-window <number>] [+|-]<value>[s|m|h|d|M|y]
|
||||||
@@ -998,6 +1009,7 @@ Beispiele:
|
|||||||
wird "h" oder "v" angegeben, findet eine Größenanpassung des Stammfenster statt, sofern es vom selben Typ ist (horizontal/vertikal)
|
wird "h" oder "v" angegeben, findet eine Größenanpassung des Stammfenster statt, sofern es vom selben Typ ist (horizontal/vertikal)
|
||||||
balance: passt die Größe aller Fenster an
|
balance: passt die Größe aller Fenster an
|
||||||
merge: vereinigt Fenster miteinander (all = alle Fenster vereinigen)
|
merge: vereinigt Fenster miteinander (all = alle Fenster vereinigen)
|
||||||
|
close: Fenster wird geschlossen
|
||||||
page_up: scrollt eine Seite nach oben
|
page_up: scrollt eine Seite nach oben
|
||||||
page_down: scrollt eine Seite nach unten
|
page_down: scrollt eine Seite nach unten
|
||||||
refresh: Seite wird neu aufgebaut
|
refresh: Seite wird neu aufgebaut
|
||||||
@@ -1010,19 +1022,19 @@ scroll_bottom: scrollt zum Ende des Buffers
|
|||||||
scroll_beyond_end: scrollt über das Ende des Buffers hinaus
|
scroll_beyond_end: scrollt über das Ende des Buffers hinaus
|
||||||
scroll_previous_highlight: scrollt zum vorherigen Hightlight
|
scroll_previous_highlight: scrollt zum vorherigen Hightlight
|
||||||
scroll_next_highlight: scrollt zum nächsten Highlight
|
scroll_next_highlight: scrollt zum nächsten Highlight
|
||||||
scroll_unread: springt zur ersten ungelesenen Zeile in einem Buffer
|
scroll_unread: scrollt zur ersten ungelesenen Zeile in einem Buffer
|
||||||
swap: tauscht die Buffer von zwei Fenstern (mit optionaler Angabe für das Zielfenster)
|
swap: tauscht die Buffer von zwei Fenstern (mit optionaler Angabe für das Zielfenster)
|
||||||
zoom: vergrößert ein Fenster auf 100%
|
zoom: vergrößert ein Fenster auf 100%
|
||||||
bare: wechselt zum einfachen Anzeigemodus (optional kann eine Wartezeit, in Sekunden, angegeben werden, wann zum Standardmodus zurück gewechselt werden soll)
|
bare: wechselt zum einfachen Anzeigemodus (optional kann eine Wartezeit in Sekunden angegeben werden, wann wieder zum Standardmodus zurück gewechselt werden soll)
|
||||||
|
|
||||||
Bei splith und splitv gibt "pct" die neue Größe des Fensters im Verhältnis zur aktuellen Größe an. Zum Beispiel würde ein Wert von 25 bedeuten, dass das neue Fenster nur noch ein Viertel der Größe des alten Fensters besitzt.
|
Für splith und splitv gibt "pct" die Größe des neuen Fensters im Verhältnis zur aktuellen Größe an. Zum Beispiel würde ein Wert von 25 bedeuten, dass das neue Fenster nur noch ein Viertel der Größe des alten Fensters besitzt.
|
||||||
|
|
||||||
Beispiele:
|
Beispiele:
|
||||||
springt zum Fenster mit dem Buffer #1:
|
springt zum Fenster mit dem Buffer #1:
|
||||||
/window b1
|
/window b1
|
||||||
scrollt zwei Zeilen hoch:
|
scrollt zwei Zeilen hoch:
|
||||||
/window scroll -2
|
/window scroll -2
|
||||||
scrollt zwei Tage hoch: /window scroll -2d
|
scrollt zwei Tage hoch:
|
||||||
/window scroll -2d
|
/window scroll -2d
|
||||||
scrollt zum Beginn des aktuellen Tages:
|
scrollt zum Beginn des aktuellen Tages:
|
||||||
/window scroll -d
|
/window scroll -d
|
||||||
@@ -1036,6 +1048,8 @@ Beispiele:
|
|||||||
/window resize v+10
|
/window resize v+10
|
||||||
eine Teilung wird rückgängig gemacht:
|
eine Teilung wird rückgängig gemacht:
|
||||||
/window merge
|
/window merge
|
||||||
|
das aktuelle Fenster wird geschlossen:
|
||||||
|
/window close
|
||||||
aktiviert den einfachen Anzeigemodus für zwei Sekunden:
|
aktiviert den einfachen Anzeigemodus für zwei Sekunden:
|
||||||
/window bare 2
|
/window bare 2
|
||||||
----
|
----
|
||||||
|
|||||||
@@ -915,17 +915,23 @@
|
|||||||
** Standardwert: `+100+`
|
** Standardwert: `+100+`
|
||||||
|
|
||||||
* [[option_weechat.look.nick_color_force]] *weechat.look.nick_color_force*
|
* [[option_weechat.look.nick_color_force]] *weechat.look.nick_color_force*
|
||||||
** Beschreibung: pass:none[erzwingt für einen Nick eine spezielle Farbe. Die standardmäßig, mittels Streuwertfunktion aus dem Nicknamen, generierte Farbe findet für diese Nicks keine Anwendung (Format:"Nick1:Farbe1;Nick2:Farbe2"). Zuerst wird beim Namen des Nick nach Groß- und Kleinschreibung unterschieden. Sollte der Nick nicht gefunden werden findet keine Unterscheidung mehr statt. Somit ist es möglich die Nicks, für diese Einstellung, ausschließlich in Kleinschrift aufzuführen]
|
** Beschreibung: pass:none[erzwingt für einen Nick eine spezielle Farbe. Die standardmäßig, mittels Streuwertfunktion aus dem Nicknamen, generierte Farbe findet für diese Nicks keine Anwendung (Format:"Nick1:Farbe1;Nick2:Farbe2"). Zuerst wird beim Namen des Nick nach Groß- und Kleinschreibung unterschieden. Sollte der Nick nicht gefunden werden findet keine Unterscheidung mehr statt. Somit ist es möglich die Nicks, für diese Einstellung, ausschließlich in Kleinschrift aufzuführen; die Farbauswahl kann auch eine Hintergrundfarbe beinhalten "Textfarbe,Hintergrundfarbe", zum Beispiel "yellow,red"]
|
||||||
** Typ: Zeichenkette
|
** Typ: Zeichenkette
|
||||||
** Werte: beliebige Zeichenkette
|
** Werte: beliebige Zeichenkette
|
||||||
** Standardwert: `+""+`
|
** Standardwert: `+""+`
|
||||||
|
|
||||||
* [[option_weechat.look.nick_color_hash]] *weechat.look.nick_color_hash*
|
* [[option_weechat.look.nick_color_hash]] *weechat.look.nick_color_hash*
|
||||||
** Beschreibung: pass:none[Gibt an welcher Hash-Algorithmus zur Farbauswahl für Nicks genutzt werden soll: djb2 = Variante des djb2 (Position der Buchstaben innerhalb des Nicks werden berücksichtigt: Anagramme eines Nick erhalten eine andere Farbe), sum = hier ist nur die Anzahl der Buchstaben maßgeblich]
|
** Beschreibung: pass:none[Gibt an welcher Hash-Algorithmus zur Farbauswahl für Nicks genutzt werden soll: djb2 = Variante des djb2 (Position der Buchstaben innerhalb des Nicks werden berücksichtigt: Anagramme eines Nick erhalten eine andere Farbe), djb2_32 = Variante von djb2 wobei 32-Bit anstelle von 64-Bit Integer genutzt wird, sum = hier ist nur die Anzahl der Buchstaben maßgeblich, sum_32 = wie sum, nur das 32-Bit anstelle von 64-Bit Integer genutzt wird]
|
||||||
** Typ: integer
|
** Typ: integer
|
||||||
** Werte: djb2, sum
|
** Werte: djb2, sum, djb2_32, sum_32
|
||||||
** Standardwert: `+djb2+`
|
** Standardwert: `+djb2+`
|
||||||
|
|
||||||
|
* [[option_weechat.look.nick_color_hash_salt]] *weechat.look.nick_color_hash_salt*
|
||||||
|
** Beschreibung: pass:none[salt für den Hash-Algorithmus, der zum Auffinden von Nickfarben verwendet wird (der Nickname wird an diesen Salt angehängt und der Hash-Algorithmus verarbeitet diesen String); Wenn Sie dies ändern, werden die Nickfarben gemischt]
|
||||||
|
** Typ: Zeichenkette
|
||||||
|
** Werte: beliebige Zeichenkette
|
||||||
|
** Standardwert: `+""+`
|
||||||
|
|
||||||
* [[option_weechat.look.nick_color_stop_chars]] *weechat.look.nick_color_stop_chars*
|
* [[option_weechat.look.nick_color_stop_chars]] *weechat.look.nick_color_stop_chars*
|
||||||
** Beschreibung: pass:none[Zeichen die genutzt werden sollen damit bei der Generierung der Farbe für einen Nicknamen abgebrochen wird. Es muss mindestens ein Zeichen im Nicknamen enthalten sein der nicht in dieser Liste aufgeführt wird, damit eine Farbe für den Nicknamen erstellt werden kann (Beispiel: Der Nickname lautet "|nick|abwesend" wobei das Zeichen "|" ignoriert werden soll. Die Farbe für den Nicknamen wird nun für "|nick" anstelle von "|nick|abwesend" erstellt); diese Option hat einen Einfluss auf die Option weechat.look.nick_color_force, dort aufgeführte Nicks sollten keine Zeichen haben, die von dieser Option ignoriert werden]
|
** Beschreibung: pass:none[Zeichen die genutzt werden sollen damit bei der Generierung der Farbe für einen Nicknamen abgebrochen wird. Es muss mindestens ein Zeichen im Nicknamen enthalten sein der nicht in dieser Liste aufgeführt wird, damit eine Farbe für den Nicknamen erstellt werden kann (Beispiel: Der Nickname lautet "|nick|abwesend" wobei das Zeichen "|" ignoriert werden soll. Die Farbe für den Nicknamen wird nun für "|nick" anstelle von "|nick|abwesend" erstellt); diese Option hat einen Einfluss auf die Option weechat.look.nick_color_force, dort aufgeführte Nicks sollten keine Zeichen haben, die von dieser Option ignoriert werden]
|
||||||
** Typ: Zeichenkette
|
** Typ: Zeichenkette
|
||||||
|
|||||||
@@ -104,6 +104,12 @@
|
|||||||
** Werte: beliebige Zeichenkette
|
** Werte: beliebige Zeichenkette
|
||||||
** Standardwert: `+"%h/xfer"+`
|
** Standardwert: `+"%h/xfer"+`
|
||||||
|
|
||||||
|
* [[option_xfer.file.download_temporary_suffix]] *xfer.file.download_temporary_suffix*
|
||||||
|
** Beschreibung: pass:none[Dateiendung der temporären Datei, die während eines eingehenden Datei-Transfers genutzt wird und die gelöscht wird, sobald die Übertragung erfolgreich beendet wurde; wenn -leer-, dann wird keine temporäre Dateiendung während des Transfers genutzt]
|
||||||
|
** Typ: Zeichenkette
|
||||||
|
** Werte: beliebige Zeichenkette
|
||||||
|
** Standardwert: `+".part"+`
|
||||||
|
|
||||||
* [[option_xfer.file.upload_path]] *xfer.file.upload_path*
|
* [[option_xfer.file.upload_path]] *xfer.file.upload_path*
|
||||||
** Beschreibung: pass:none[Pfad für ausgehende Dateien (falls kein Pfad durch den Anwender angegeben wurde): "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat") (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
|
** Beschreibung: pass:none[Pfad für ausgehende Dateien (falls kein Pfad durch den Anwender angegeben wurde): "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat") (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
|
||||||
** Typ: Zeichenkette
|
** Typ: Zeichenkette
|
||||||
|
|||||||
+328
-278
File diff suppressed because it is too large
Load Diff
@@ -22,7 +22,7 @@ Die bevorzugte Terminal-Emulation für X (aber nicht obligatorisch) ist
|
|||||||
rxvt-unicode: rxvt verfügt über eine gute UTF-8 Unterstützung und hat
|
rxvt-unicode: rxvt verfügt über eine gute UTF-8 Unterstützung und hat
|
||||||
keine Probleme mit der Standard Tastaturbelegung.
|
keine Probleme mit der Standard Tastaturbelegung.
|
||||||
|
|
||||||
Programmstart aus Deiner shell:
|
Programmstart aus deiner Shell:
|
||||||
|
|
||||||
----
|
----
|
||||||
$ weechat
|
$ weechat
|
||||||
@@ -64,7 +64,7 @@ Um Optionen zu setzen benutzt man:
|
|||||||
----
|
----
|
||||||
|
|
||||||
WeeChat verwendet umgehend einen neu eingestellten Wert (WeeChat muss also zu *keinem* Zeitpunkt
|
WeeChat verwendet umgehend einen neu eingestellten Wert (WeeChat muss also zu *keinem* Zeitpunkt
|
||||||
neu gestartet werden, nach dem die Konfiguration verändert wurde).
|
neu gestartet werden, nachdem die Konfiguration verändert wurde).
|
||||||
|
|
||||||
Beim Beenden von WeeChat werden alle Einstellungen gespeichert (mittels des
|
Beim Beenden von WeeChat werden alle Einstellungen gespeichert (mittels des
|
||||||
Befehls `/save` kann das Sichern der Optionen manuell durchgeführt werden).
|
Befehls `/save` kann das Sichern der Optionen manuell durchgeführt werden).
|
||||||
@@ -102,33 +102,36 @@ Um weitere Informationen zum `/fset` Befehl und seine Tastenbefehle zu behalten,
|
|||||||
siehe `/help fset`.
|
siehe `/help fset`.
|
||||||
|
|
||||||
[[core_vs_plugins]]
|
[[core_vs_plugins]]
|
||||||
== Kern (Core) vs Erweiterungen
|
== Kern (Core) vs. Erweiterungen
|
||||||
|
|
||||||
|
Der Kern (core) von WeeChat
|
||||||
|
dient ausschließlich der Ausgabe von Daten auf dem Bildschirm
|
||||||
|
und der Interaktion mit dem Benutzer.
|
||||||
|
WeeChat - also der WeeChat-Kern - ist somit ohne jedwede Erweiterung
|
||||||
|
eigentlich™ unbrauchbar für die Nutzung als Kommunikationswerkzeug im Internet.
|
||||||
|
Alle Netzwerkprotokolle (z.B. IRC) werden als separate Erweiterung bereitgestellt.
|
||||||
|
|
||||||
Der Kern (core) von WeeChat dient ausschließlich dazu um Daten auf dem Bildschirm
|
|
||||||
auszugeben und um mit dem Benutzer zu interagieren. Dies bedeutet das WeeChat,
|
|
||||||
-also der WeeChat core-, ohne jedwede Erweiterung, unbrauchbar ist.
|
|
||||||
(an die treuen User: IRC war Teil des Kerns in den Versionen ≤ 0.2.6)
|
(an die treuen User: IRC war Teil des Kerns in den Versionen ≤ 0.2.6)
|
||||||
|
|
||||||
Alle Netzwerkprotokolle, z.B. IRC, werden als separate Erweiterung bereit gestellt.
|
|
||||||
|
|
||||||
Benutze den Befehl `/plugin` um alle Erweiterungen aufzulisten, "irc" sowie andere
|
Benutze den Befehl `/plugin` um alle Erweiterungen aufzulisten, "irc" sowie andere
|
||||||
Erweiterungen sollten aufgelistet werden.
|
Erweiterungen sollten aufgelistet werden.
|
||||||
|
|
||||||
[[create_irc_server]]
|
[[create_irc_server]]
|
||||||
== Einen IRC-Server erstellen
|
== Einen IRC-Server erstellen
|
||||||
|
|
||||||
Um eine Verbindung zu einem IRC Server herzustellen wird der
|
Um eine Verbindung zu einem IRC Server herzustellen, wird der
|
||||||
`/server` Befehl verwendet. Beispiel:
|
`/server` Befehl verwendet. Beispiel:
|
||||||
|
|
||||||
----
|
----
|
||||||
/server add freenode chat.freenode.net
|
/server add freenode chat.freenode.net
|
||||||
----
|
----
|
||||||
|
|
||||||
In dieser Zeile ist `freenode` der interne Servername der von WeeChat genutzt wird:
|
In diesem Beispiel ist `freenode` der interne, von Weechat genutzte Servername.
|
||||||
Damit ist es möglich sich mit dem Server zu verbinden `/connect freenode` und um
|
Mit dem Befehl `/connect freenode` kann jetzt die Verbindung
|
||||||
die Server relevanten Optionen anzupassen _irc.server.freenode.xxx_.
|
zu diesem Freenode-IRC-Server aufgebaut werden.
|
||||||
|
Alle für den Server relevanten Optionen sind unter _irc.server.freenode.xxx_ zu finden.
|
||||||
|
|
||||||
Falls noch Fragen offen sein sollten, einfach die Hilfe verwenden:
|
Verwende die Hilfe, falls noch Fragen offen sind:
|
||||||
|
|
||||||
----
|
----
|
||||||
/help server
|
/help server
|
||||||
@@ -139,50 +142,53 @@ Falls noch Fragen offen sein sollten, einfach die Hilfe verwenden:
|
|||||||
|
|
||||||
WeeChat verwendet Vorgabewerte für alle Server (so genannte "fall backs"), sofern
|
WeeChat verwendet Vorgabewerte für alle Server (so genannte "fall backs"), sofern
|
||||||
keine individuellen Werte für die entsprechenden Server-Optionen gesetzt worden sind.
|
keine individuellen Werte für die entsprechenden Server-Optionen gesetzt worden sind.
|
||||||
Die Vorgabewerte sind in "irc.server_default.*" hinterlegt.
|
Die Vorgabewerte sind in den Optionen _irc.server_default.xxx_ hinterlegt.
|
||||||
|
|
||||||
Für jede Server-Option benutzt WeeChat den individuellen Wert - falls einer
|
Für jede Server-Option benutzt WeeChat den individuellen Wert - falls einer
|
||||||
definiert ist (nicht "null"). Andernfalls verwendet WeeChat die Vorgabewerte
|
definiert ist (nicht "null"). Andernfalls verwendet WeeChat die Vorgabewerte
|
||||||
("irc.server_default.xxx").
|
(_irc.server_default.xxx_).
|
||||||
|
|
||||||
Beispielsweise werden Standard Nicks verwendet (basierend auf dem Un*x Login). Um
|
Beispielsweise werden Standard Nicks verwendet (basierend auf dem Un*x Login).
|
||||||
dies nun für den freenode-Server anzupassen, kann folgender Befehl genutzt werden:
|
Sollen speziell für den freenode-Server andere Nicks genutzt werden,
|
||||||
|
können diese mit folgendem Befehl angepasst werden:
|
||||||
|
|
||||||
----
|
----
|
||||||
/set irc.server.freenode.nicks "meinNick,meinNick2,meinNick3,meinNick4,meinNick5"
|
/set irc.server.freenode.nicks "meinNick,meinNick2,meinNick3,meinNick4,meinNick5"
|
||||||
----
|
----
|
||||||
|
|
||||||
Um den User- und realen Namen anzupassen:
|
Benutzernamen und wirklichen Namen (realname) anpassen:
|
||||||
|
|
||||||
----
|
----
|
||||||
/set irc.server.freenode.username "Mein User-Name"
|
/set irc.server.freenode.username "Mein Benutzername"
|
||||||
/set irc.server.freenode.realname "Mein wirklicher Name"
|
/set irc.server.freenode.realname "Mein wirklicher Name"
|
||||||
----
|
----
|
||||||
|
|
||||||
Um beim Start von WeeChat automatisch eine Verbindung zu einem Server
|
Beim Start von WeeChat automatisch die Verbindung zu einem Server herstellen:
|
||||||
herzustellen:
|
|
||||||
|
|
||||||
----
|
----
|
||||||
/set irc.server.freenode.autoconnect on
|
/set irc.server.freenode.autoconnect on
|
||||||
----
|
----
|
||||||
|
|
||||||
Um eine SSL Verbindung herzustellen:
|
Beim Verbindungsaufbau SSL (sichere Verbindung) nutzen:
|
||||||
|
|
||||||
----
|
----
|
||||||
/set irc.server.freenode.addresses "chat.freenode.net/7000"
|
/set irc.server.freenode.addresses "chat.freenode.net/7000"
|
||||||
/set irc.server.freenode.ssl on
|
/set irc.server.freenode.ssl on
|
||||||
----
|
----
|
||||||
|
|
||||||
Sollte der Server SASL unterstützen, kann man sich damit automatisch Authentifizieren
|
Wenn der Server SASL unterstützt,
|
||||||
(dadurch identifiziert man sich beim Server, bevor man Channels (Chaträume) betritt):
|
kann die Authentifizierung des Benutzers schon beim Aufbau der IRC-Session stattfinden.
|
||||||
|
Der Benutzer wird auf diese Weise gegenüber dem IRC-Server identifiziert,
|
||||||
|
noch bevor Server-Befehle übermittelt oder Cannels (Chaträume) betreten werden können.
|
||||||
|
|
||||||
----
|
----
|
||||||
/set irc.server.freenode.sasl_username "mynick"
|
/set irc.server.freenode.sasl_username "mynick"
|
||||||
/set irc.server.freenode.sasl_password "xxxxxxx"
|
/set irc.server.freenode.sasl_password "xxxxxxx"
|
||||||
----
|
----
|
||||||
|
|
||||||
Unterstützt der Server keine SASL Authentifizierung, muss man sich bei "nickserv"
|
Wenn der Server keine SASL-Authentifizierung unterstützt,
|
||||||
identifizieren:
|
muss der Benutzer sich nach dem Verbindungsaufbau bei "nickserv" identifizieren.
|
||||||
|
Der dafür notwendige IRC-Server-Befehl kann auch automatisch übermittelt werden:
|
||||||
|
|
||||||
----
|
----
|
||||||
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
|
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
|
||||||
@@ -191,31 +197,34 @@ identifizieren:
|
|||||||
[NOTE]
|
[NOTE]
|
||||||
Mehrere Befehle in der Option _command_ können durch ein `;` (Semikolon) voneinander getrennt werden.
|
Mehrere Befehle in der Option _command_ können durch ein `;` (Semikolon) voneinander getrennt werden.
|
||||||
|
|
||||||
Möchte man seine Passwörter nicht als Klartext in der Konfiguration sichern, kann man die
|
Sollen Passwörter nicht als Klartext in der Konfiguration sichtbar sein,
|
||||||
Erweiterung /secure nutzen.
|
kann die Erweiterung _/secure_ genutzt werden.
|
||||||
|
|
||||||
Zuerst sollte eine Passphrase gesetzt werden:
|
Zuerst sollte die Passphrase gesetzt werden:
|
||||||
|
|
||||||
----
|
----
|
||||||
/secure passphrase Dies ist meine geheime Passphrase
|
/secure passphrase Dies ist meine geheime Passphrase
|
||||||
----
|
----
|
||||||
|
|
||||||
Dann kann man zum Beispiel für Freenode ein geheimes Passwort setzen:
|
Jetzt wird das Passwort (`xxxxxx`)
|
||||||
|
für den Zugang zum Freenode-Server verschlüsselt
|
||||||
|
und mit dem Bezeichner `freenode_password` verknüpft:
|
||||||
|
|
||||||
----
|
----
|
||||||
/secure set freenode_password xxxxxxx
|
/secure set freenode_password xxxxxx
|
||||||
----
|
----
|
||||||
|
|
||||||
Um nun das geschützte Freenode-Passwort in einer Option zu nutzen setzt man eine
|
Das geschützte Freenode-Passwort kann nun in anderen Optionen genutzt werden.
|
||||||
Variable anstelle des Passworts, `+${sec.data.freenode_password}+`:
|
Dazu wird anstelle des Klartext-Passwortes die Variable
|
||||||
|
`+${sec.data.freenode_password}+` eingesetzt:
|
||||||
|
|
||||||
----
|
----
|
||||||
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
|
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
|
||||||
----
|
----
|
||||||
|
|
||||||
Um ein auto-join (automatisches _betreten_) von Channels (Räumen) nach der
|
Das automatische Betreten (auto-join) von Channels (Chaträume) direkt nach dem
|
||||||
Verbindung zum Server durchzuführen, müssen die entsprechenden Channels in
|
Verbindungsaufbau zum IRC-Server kann durch den Eintrag der gewünschten Channels
|
||||||
eine Liste eingetragen werden:
|
in folgender Option erreicht werden:
|
||||||
|
|
||||||
----
|
----
|
||||||
/set irc.server.freenode.autojoin "#channel1,#channel2"
|
/set irc.server.freenode.autojoin "#channel1,#channel2"
|
||||||
@@ -224,31 +233,37 @@ eine Liste eingetragen werden:
|
|||||||
[TIP]
|
[TIP]
|
||||||
Mittels der kbd:[Tab] Taste kann man sehr einfach Namen und Werte von Optionen
|
Mittels der kbd:[Tab] Taste kann man sehr einfach Namen und Werte von Optionen
|
||||||
vervollständigen und mittels kbd:[Shift+Tab] kann eine teilweise Vervollständigung
|
vervollständigen und mittels kbd:[Shift+Tab] kann eine teilweise Vervollständigung
|
||||||
durchgeführt werden (was bei langen Wörtern, wie z.B. der Name einer Option, nützlich
|
durchgeführt werden (was bei langen Wörtern, wie z.B. dem Namen einer Option, nützlich
|
||||||
sein kann).
|
sein kann).
|
||||||
|
|
||||||
Um einen Wert der Server-Optionen zu entfernen und stattdessen wieder den
|
Mit dem Befehl `/unset` können Server-Optionen zurückgesetzt werden.
|
||||||
Vorgabewert zu nutzen, z.B. Nutzen der vorgegebenen Nicknamen
|
Ist eine Server-Option zurückgesetzt, _wirkt_ der entsprechende Vorgabewert
|
||||||
(irc.server_default.nicks):
|
aus dem fall-back-Bereich `irc.server_default.xxx`. So nimmt, beispielsweise
|
||||||
|
nach dem Rücksetzen der Freenode-Nicks, diese Server-Option _automatisch_ den Wert
|
||||||
|
der entsprechenden fall-back-Option `irc.server_default.nicks` an:
|
||||||
|
|
||||||
----
|
----
|
||||||
/unset irc.server.freenode.nicks
|
/unset irc.server.freenode.nicks
|
||||||
----
|
----
|
||||||
|
|
||||||
Andere Optionen: Du kannst andere Optionen mit folgendem Befehl festlegen ("xxx"
|
*Andere Optionen:*
|
||||||
ist der Optionsname):
|
Werte anderer Server-Optionen (`xxx`) können festgelegt werden mit:
|
||||||
|
|
||||||
----
|
----
|
||||||
/set irc.server.freenode.xxx Wert
|
/set irc.server.freenode.xxx Wert
|
||||||
----
|
----
|
||||||
|
|
||||||
[[connect_to_irc_server]]
|
[[connect_to_irc_server]]
|
||||||
== Verbinden mit dem IRC-Server und auto-join der Channel
|
== Verbinden mit dem IRC-Server
|
||||||
|
|
||||||
----
|
----
|
||||||
/connect freenode
|
/connect freenode
|
||||||
----
|
----
|
||||||
|
|
||||||
|
Mittels obigem Befehl stellt WeeChat eine Verbindung zum freenode Server
|
||||||
|
her und betritt automatisch die Kanäle die in der "autojoin" Server-Option
|
||||||
|
aufgeführt sind.
|
||||||
|
|
||||||
[NOTE]
|
[NOTE]
|
||||||
Dieser Befehl kann dazu benutzt werden um einen neuen Server zu erstellen und
|
Dieser Befehl kann dazu benutzt werden um einen neuen Server zu erstellen und
|
||||||
sich mit diesem zu verbinden, ohne den Befehl `/server` zu benutzen
|
sich mit diesem zu verbinden, ohne den Befehl `/server` zu benutzen
|
||||||
@@ -268,7 +283,7 @@ um dadurch separate Server-Buffer zu erhalten:
|
|||||||
[[join_part_irc_channels]]
|
[[join_part_irc_channels]]
|
||||||
== Betreten/verlassen der IRC-Channel
|
== Betreten/verlassen der IRC-Channel
|
||||||
|
|
||||||
Einen Channel betreten:
|
Einen Channel (Chatraum) betreten:
|
||||||
|
|
||||||
----
|
----
|
||||||
/join #channel
|
/join #channel
|
||||||
@@ -277,22 +292,23 @@ Einen Channel betreten:
|
|||||||
Einen Channel verlassen (der Buffer bleibt dabei geöffnet):
|
Einen Channel verlassen (der Buffer bleibt dabei geöffnet):
|
||||||
|
|
||||||
----
|
----
|
||||||
/part [quit message]
|
/part [Verlassen-Nachricht]
|
||||||
----
|
----
|
||||||
|
|
||||||
Schließt einen Server, Channel oder privaten Buffer (`/close` ist ein Alias
|
Einen Buffer schließen (Server, Channel, privater Buffer);
|
||||||
für `/buffer close`):
|
`/close` ist dabei ein Alias für `/buffer close`:
|
||||||
|
|
||||||
----
|
----
|
||||||
/close
|
/close
|
||||||
----
|
----
|
||||||
|
|
||||||
[WARNING]
|
[WARNING]
|
||||||
Wird ein Server-Buffer geschlossen, werden automatisch die Channel/privaten
|
Wird ein Server-Buffer geschlossen,
|
||||||
Buffer geschlossen.
|
schließt WeeChat ebenfalls alle zum Server
|
||||||
|
gehörenden Channels und privaten Buffer.
|
||||||
|
|
||||||
Um sich bei einem Server abzumelden, führt man im entsprechenden Server-Buffer
|
Die Abmeldung von einem Server erfolgt im entsprechenden Server-Buffer
|
||||||
folgenden Befehl aus:
|
mit Hilfe des Befehls:
|
||||||
|
|
||||||
----
|
----
|
||||||
/disconnect
|
/disconnect
|
||||||
@@ -301,13 +317,15 @@ folgenden Befehl aus:
|
|||||||
[[irc_private_messages]]
|
[[irc_private_messages]]
|
||||||
== IRC private Nachrichten
|
== IRC private Nachrichten
|
||||||
|
|
||||||
Öffnet einen Buffer und schickt eine Nachricht an einen User (Nick _foo_):
|
Schicke eine Nachricht an einen bestimmten Benutzer (hier: _foo_)
|
||||||
|
und öffne einen privaten Buffer (Nachrichten in diesem Buffer
|
||||||
|
sehen nur der andere Benutzer und ich):
|
||||||
|
|
||||||
----
|
----
|
||||||
/query foo Dies ist eine Nachricht
|
/query foo Dies ist eine Nachricht
|
||||||
----
|
----
|
||||||
|
|
||||||
Schließt einen privaten Buffer:
|
Schließe den privaten Buffer:
|
||||||
|
|
||||||
----
|
----
|
||||||
/close
|
/close
|
||||||
@@ -316,16 +334,19 @@ Schließt einen privaten Buffer:
|
|||||||
[[buffer_window]]
|
[[buffer_window]]
|
||||||
== Buffer/Fenster Verwaltung
|
== Buffer/Fenster Verwaltung
|
||||||
|
|
||||||
Ein Buffer ist einer Erweiterung zugeordnet und besitzt eine Buffer-Nummer,
|
Ein Buffer ist einer Erweiterung zugeordnet
|
||||||
einen Buffer-Namen und beinhaltet die auf dem Bildschirm dargestellten
|
und besitzt sowohl eine Buffer-Nummer als auch einen Buffer-Namen.
|
||||||
Zeilen.
|
Die innerhalb eines Fensters dargestellten Zeilen/Zeichen
|
||||||
|
werden aus dem Inhalt des Buffers generiert.
|
||||||
|
|
||||||
Ein Fenster ist die Ansicht eines Buffers. Standardmäßig nutzt WeeChat ein
|
Ein Fenster ist der Ausschnitt der Programmoberfläche,
|
||||||
Fenster, in welchem ein Buffer darstellt wird. Wird der Bildschirm in
|
den WeeChat für einen bestimmten Buffer bereitstellt.
|
||||||
mehrere Fenster aufgeteilt, kann man sich entsprechend der Anzahl der
|
Standardmäßig nutzt WeeChat genau ein Fenster pro darzustellendem Buffer.
|
||||||
geteilten Fenster einen Buffer pro Fenster anzeigen lassen.
|
Wird der Bildschirm in mehrere Fenster aufgeteilt,
|
||||||
|
können, entsprechend der Anzahl der Fenster,
|
||||||
|
die gleiche Anzahl an Buffern angezeigt werden.
|
||||||
|
|
||||||
Befehle, zum Verwalten von Buffern und Fenstern:
|
Befehle zum Verwalten von Buffern und Fenstern:
|
||||||
|
|
||||||
----
|
----
|
||||||
/buffer
|
/buffer
|
||||||
@@ -348,9 +369,9 @@ Um die Teilung des Bildschirms rückgängig zu machen:
|
|||||||
[[key_bindings]]
|
[[key_bindings]]
|
||||||
== Tastaturbelegung
|
== Tastaturbelegung
|
||||||
|
|
||||||
WeeChat verwendet viele Standardtasten. Alle Tastenbelegungen sind in der
|
WeeChat verwendet viele Standardtasten.
|
||||||
Dokumentation beschrieben. Im folgenden werden die wichtigsten Tastenbelegungen
|
Alle Tastenbelegungen sind in der Dokumentation beschrieben.
|
||||||
kurz erläutert:
|
Im Folgenden werden die wichtigsten Tastenbelegungen kurz erläutert:
|
||||||
|
|
||||||
- kbd:[Alt+←] / kbd:[Alt+→] oder kbd:[F5] / kbd:[F6]: Wechsel zum
|
- kbd:[Alt+←] / kbd:[Alt+→] oder kbd:[F5] / kbd:[F6]: Wechsel zum
|
||||||
vorherigen/nächsten Buffer
|
vorherigen/nächsten Buffer
|
||||||
@@ -363,11 +384,16 @@ kurz erläutert:
|
|||||||
- kbd:[PgUp] / kbd:[PgDn]: scrollt den Text im aktiven Buffer
|
- kbd:[PgUp] / kbd:[PgDn]: scrollt den Text im aktiven Buffer
|
||||||
- kbd:[Alt+a]: springt zum Buffer mit Aktivität (aus der Hotlist)
|
- kbd:[Alt+a]: springt zum Buffer mit Aktivität (aus der Hotlist)
|
||||||
|
|
||||||
Gemäß Deiner Tastatur und/oder Deinen Bedürfnissen kann jede Taste mit Hilfe
|
Die Tastenbelegung WeeChat's kann sowohl an deine persönlichen Vorlieben
|
||||||
des `/key` Befehls durch jedweden Befehl neu belegt werden.
|
als auch an die Besonderheiten deiner Tastatur angepasst werden.
|
||||||
Eine nützliche Tastenkombination um Tastencodes zu ermitteln ist kbd:[Alt+k].
|
Mit Hilfe des Befehls `/key` wird einer bestimmten Taste oder Tastenkombination
|
||||||
|
ein WeeChat-Befehl zugeordnet.
|
||||||
|
|
||||||
Beispiel: Belegung von kbd:[Alt+!] mit dem Befehl `/buffer close`:
|
In diesem Zusammenhang ist die Standard-Tastenkombination kbd:[Alt+k] besonders
|
||||||
|
hervorzuheben. Sie ermittelt (auf magische Weise) beliebige Tastaturcodes.
|
||||||
|
|
||||||
|
Beispiel:
|
||||||
|
Belege die Tastenkombination kbd:[Alt+!] mit dem Befehl `/buffer close`:
|
||||||
|
|
||||||
----
|
----
|
||||||
/key bind (drücke alt-k) (drücke alt-!) /buffer close
|
/key bind (drücke alt-k) (drücke alt-!) /buffer close
|
||||||
@@ -379,7 +405,7 @@ Du wirst folgende Befehlszeile erhalten:
|
|||||||
/key bind meta-! /buffer close
|
/key bind meta-! /buffer close
|
||||||
----
|
----
|
||||||
|
|
||||||
Entfernen der Tastenbelegung:
|
Entferne die Tastenbelegung kbd:[Alt+!]:
|
||||||
|
|
||||||
----
|
----
|
||||||
/key unbind meta-!
|
/key unbind meta-!
|
||||||
@@ -388,28 +414,38 @@ Entfernen der Tastenbelegung:
|
|||||||
[[plugins_scripts]]
|
[[plugins_scripts]]
|
||||||
== Erweiterungen/Skripten
|
== Erweiterungen/Skripten
|
||||||
|
|
||||||
Bei einigen Distributionen wie z.B. Debian, sind die Erweiterungen über separate Pakete
|
Bei einigen Distributionen (z.B. Debian),
|
||||||
erhältlich (z.B. weechat-plugins).
|
sind die WeeChat-Erweiterungen über separate Pakete erhältlich (z.B. _weechat-plugins_).
|
||||||
Erweiterungen werden -sofern welche gefunden worden sind- automatisch geladen (Bitte beachte
|
Erweiterungen werden, insofern sie beim Start von WeeChat gefunden wurden,
|
||||||
die Dokumentation zum installieren/entfernen von Erweiterungen und/oder Skripten).
|
automatisch geladen (Bitte beachte die Dokumentation zum Installieren
|
||||||
|
und Entfernen von Erweiterungen und/oder Skripten).
|
||||||
|
|
||||||
Viele externe Skripten (von Drittprogrammierern) sind für WeeChat verfügbar. Diese
|
Viele externe Skripten (von Drittprogrammierern) sind für WeeChat verfügbar.
|
||||||
Skripten können mittels des `/script` Befehls heruntergeladen und installiert werden:
|
Diese Skripten können mit Hilfe des `/script`-Befehls heruntergeladen
|
||||||
|
und installiert werden:
|
||||||
|
|
||||||
----
|
----
|
||||||
/script install go.py
|
/script install go.py
|
||||||
----
|
----
|
||||||
|
|
||||||
siehe `/help script` für weitere Informationen.
|
Zeige weitere Informationen:
|
||||||
|
----
|
||||||
|
/help script
|
||||||
|
----
|
||||||
|
|
||||||
Eine Liste aller verfügbaren Skripten kann man sich in WeeChat mittels
|
Zeige eine liste aller verfügbaren Skripten:
|
||||||
`/script` anzeigen lassen oder man besucht folgende Webseite:
|
----
|
||||||
https://weechat.org/scripts
|
/script
|
||||||
|
----
|
||||||
|
|
||||||
|
Auf *weechat.org* von Drittanbietern bereitgestellte Scripten: https://weechat.org/scripts
|
||||||
|
|
||||||
[[more_doc]]
|
[[more_doc]]
|
||||||
== Weitere Dokumentation
|
== Weitere Dokumentation
|
||||||
|
|
||||||
Nun kannst Du WeeChat nutzen, für weitere Fragen lese die FAQ und/oder Dokumentation:
|
Mit dieser Quickstart-Anleitung wurden dir die wesentlichen
|
||||||
https://weechat.org/doc
|
Bedienungswerkzeuge von WeeChat nähergebracht.
|
||||||
|
Für das eingehende Studium aller verfügbaren Funktionalitäten
|
||||||
|
sei dir unsere ausführliche FAQ/Dokumentation ans Herz gelegt: https://weechat.org/doc
|
||||||
|
|
||||||
Viel Spass mit WeeChat!
|
Viel Spass mit WeeChat!
|
||||||
|
|||||||
@@ -3,9 +3,10 @@
|
|||||||
:email: flashcode@flashtux.org
|
:email: flashcode@flashtux.org
|
||||||
:lang: de
|
:lang: de
|
||||||
:toc: left
|
:toc: left
|
||||||
:toclevels: 3
|
:toclevels: 4
|
||||||
:toc-title: Inhaltsverzeichnis
|
:toc-title: Inhaltsverzeichnis
|
||||||
:sectnums:
|
:sectnums:
|
||||||
|
:sectnumlevels: 3
|
||||||
:docinfo1:
|
:docinfo1:
|
||||||
|
|
||||||
|
|
||||||
@@ -73,22 +74,93 @@ und die Dokumentation für die Funktion `hook_process` in link:weechat_plugin_ap
|
|||||||
|
|
||||||
==== Python
|
==== Python
|
||||||
|
|
||||||
* WeeChat muss als Modul eingebunden werden: `import weechat`
|
===== Module
|
||||||
* Um die WeeChat Funktion `+print*+` nutzen zu können muss `+prnt*+` genutzt
|
|
||||||
werden (_print_ ist ein reservierter Befehl von Python!)
|
WeeChat definiert ein `weechat` Module welches mittels `import weechat`
|
||||||
* Funktionen werden im Format `weechat.xxx(arg1, arg2, ...)` ausgeführt
|
importiert werden muss.
|
||||||
|
|
||||||
|
===== Funktionen
|
||||||
|
|
||||||
|
Funktionen werden aufgerufen mittels `weechat.xxx(arg1, arg2, ...)`.
|
||||||
|
|
||||||
|
Die Funktionen `+print*+` werden bei python durch `+prnt*+` ersetzt
|
||||||
|
(`print` war ein reserviertes Schlüsselwort unter Python 2).
|
||||||
|
|
||||||
|
===== In Callbacks empfangene Zeichen
|
||||||
|
|
||||||
|
Mit Python 3 und WeeChat ≥ 2.7 sind die Zeichenketten in Callbacks
|
||||||
|
vom Typ `str`, sofern die Zeichenketten gültige UTF-8 Daten enthalten
|
||||||
|
(was am häufigsten zutreffen sollte), oder vom Typ `bytes` falls
|
||||||
|
die Zeichenkette keine gültigen UTF-8 Daten enthält. Deshalb sollte
|
||||||
|
im Callback darauf geachtet werden das ungültige UTF-8 Daten
|
||||||
|
empfangen werden können.
|
||||||
|
|
||||||
|
In folgenden Fällen können einige ungültige UTF-8-Daten empfangen werden,
|
||||||
|
sodass im Callback Zeichenketten vom Typ `str` oder `bytes` (diese
|
||||||
|
Liste ist nicht vollständig):
|
||||||
|
|
||||||
|
[width="100%",cols="3m,3m,3m,8",options="header"]
|
||||||
|
|===
|
||||||
|
| API Funktion | Argumente | Beispiele| Beschreibung
|
||||||
|
|
||||||
|
| hook_modifier |
|
||||||
|
irc_in_yyy |
|
||||||
|
pass:[irc_in_privmsg] +
|
||||||
|
pass:[irc_in_notice] |
|
||||||
|
Eine Nachricht die von der IRC Erweiterung empfangen wurde und bevor sie nach UTF-8 dekodiert wurde (intern
|
||||||
|
verwendet). +
|
||||||
|
+
|
||||||
|
Es wird empfohlen den Modifier `irc_in2_yyy` zu nutzen, da die empfangene Zeichenkette
|
||||||
|
immer UTF-8 gültig ist. +
|
||||||
|
siehe Funktion `hook_modifier` in der
|
||||||
|
link:weechat_plugin_api.en.html#_hook_modifier[WeeChat Anleitung für API Erweiterung].
|
||||||
|
|
||||||
|
| hook_signal |
|
||||||
|
xxx,irc_out_yyy +
|
||||||
|
xxx,irc_outtags_yyy |
|
||||||
|
pass:[*,irc_out_privmsg] +
|
||||||
|
pass:[*,irc_out_notice] +
|
||||||
|
pass:[*,irc_outtags_privmsg] +
|
||||||
|
pass:[*,irc_outtags_notice] |
|
||||||
|
Eine Nachricht welche von der IRC Erweiterung versendet wurde, nachdem diese entsprechend
|
||||||
|
der Benutzereinstellung `encode` Charset kodiert (falls abweichend von der `UTF-8` Standardeinstellung). +
|
||||||
|
+
|
||||||
|
Es wird empfohlen das Signal `xxx,irc_out1_yyy` zu nutzen, da die empfangene Zeichenkette
|
||||||
|
immer UTF-8 gültig ist. +
|
||||||
|
siehe Funktion `hook_signal` in der
|
||||||
|
link:weechat_plugin_api.en.html#_hook_signal[WeeChat Anleitung für API Erweiterung].
|
||||||
|
|
||||||
|
| hook_process +
|
||||||
|
hook_process_hashtable |
|
||||||
|
- |
|
||||||
|
- |
|
||||||
|
Ausgabe des Befehls, dass an den Callback gesendet wurde, kann ungültige UTF-8 Daten enthalten.
|
||||||
|
|
||||||
|
|===
|
||||||
|
|
||||||
|
Mit Python 2, das mittlerweile veraltet ist und nicht mehr verwendet werden sollte, ist die
|
||||||
|
Zeichenkette die an die Callbacks gesendet wird immer vom Typ `str` und kann deshalb bei den
|
||||||
|
oben genannten Fällen, ungültige UTF-8 Daten enthalten.
|
||||||
|
|
||||||
==== Perl
|
==== Perl
|
||||||
|
|
||||||
* Funktionen werden im Format `weechat::xxx(arg1, arg2, ...);` ausgeführt
|
===== Funktionen
|
||||||
|
|
||||||
|
Funktionen werden aufgerufen mittels `weechat::xxx(arg1, arg2, ...);`.
|
||||||
|
|
||||||
==== Ruby
|
==== Ruby
|
||||||
|
|
||||||
* Es muss _weechat_init_ definiert und darin die Funktion _register_ ausgeführt werden
|
===== Initialization
|
||||||
* Funktionen werden im Format `Weechat.xxx(arg1, arg2, ...)` ausgeführt
|
|
||||||
* Aufgrund einer Limitierung, seitens Ruby (maximal 15 Argumente pro Funktion), empfängt
|
Es muss _weechat_init_ definiert werden und darin dann _register_ ausgeführt werden.
|
||||||
die Funktion `Weechat.config_new_option` den Callback in einem Array von 6 Strings
|
|
||||||
(3 Callbacks + 3 Data Strings), somit sieht ein Aufruf der Funktion folgendermaßen aus:
|
===== Functions
|
||||||
|
|
||||||
|
Funktionen werden aufgerufen mittels `Weechat.xxx(arg1, arg2, ...)`.
|
||||||
|
|
||||||
|
Aufgrund einer Beschränkung von Ruby (maximal 15 Argumente pro Funktion), empfängt
|
||||||
|
die Funktion `Weechat.config_new_option` ein Callback mit einem Array von 6 Zeichenketten
|
||||||
|
(3 Callbacks + 3 Datenzeichenketten), so sieht ein Aufruf dieser Funktion aus:
|
||||||
|
|
||||||
[source,ruby]
|
[source,ruby]
|
||||||
----
|
----
|
||||||
@@ -98,29 +170,41 @@ Weechat.config_new_option(config, section, "name", "string", "description of opt
|
|||||||
|
|
||||||
==== Lua
|
==== Lua
|
||||||
|
|
||||||
* Funktionen werden im Format `weechat.xxx(arg1, arg2, ...)` ausgeführt
|
===== Funktionen
|
||||||
|
|
||||||
|
Funktionen werden aufgerufen mittels `weechat.xxx(arg1, arg2, ...)`.
|
||||||
|
|
||||||
==== Tcl
|
==== Tcl
|
||||||
|
|
||||||
* Funktionen werden im Format `weechat::xxx arg1 arg2 ...` ausgeführt
|
===== Funktionen
|
||||||
|
|
||||||
|
Funktionen werden aufgerufen mittels `weechat::xxx arg1 arg2 ...`.
|
||||||
|
|
||||||
==== Guile (Scheme)
|
==== Guile (Scheme)
|
||||||
|
|
||||||
* Funktionen werden im Format `(weechat:xxx arg1 arg2 ...)` ausgeführt
|
===== Funktionen
|
||||||
* folgende Funktionen nutzen eine Liste von Argumente (anstelle von vielen
|
|
||||||
Argumenten für andere Funktionen), dies liegt daran das Guile die Anzahl
|
Funktionen werden aufgerufen mittels `(weechat:xxx arg1 arg2 ...)`.
|
||||||
der Argumente eingeschränkt ist:
|
|
||||||
** config_new_section
|
Die folgenden Funktionen verwenden eine Liste von Argumenten (anstelle vieler Argumente
|
||||||
** config_new_option
|
für andere Funktionen), da die Anzahl der Argumente die zulässige Anzahl in Guile
|
||||||
** bar_new
|
überschreiten würde:
|
||||||
|
|
||||||
|
* config_new_section
|
||||||
|
* config_new_option
|
||||||
|
* bar_new
|
||||||
|
|
||||||
==== JavaScript
|
==== JavaScript
|
||||||
|
|
||||||
* Funktionen werden im Format `weechat.xxx(arg1, arg2, ...);` ausgeführt
|
===== Funktionen
|
||||||
|
|
||||||
|
Funktionen werden aufgerufen mittels `weechat.xxx(arg1, arg2, ...);`.
|
||||||
|
|
||||||
==== PHP
|
==== PHP
|
||||||
|
|
||||||
* Funktionen werden im Format `weechat_xxx(arg1, arg2, ...);` ausgeführt
|
===== Functions
|
||||||
|
|
||||||
|
Funktionen werden aufgerufen mittels `weechat_xxx(arg1, arg2, ...);`.
|
||||||
|
|
||||||
[[register_function]]
|
[[register_function]]
|
||||||
=== Die "Register" Funktion
|
=== Die "Register" Funktion
|
||||||
@@ -1103,15 +1187,20 @@ weechat.prnt("", "Wert der Option weechat.color.chat_delimiters ist: %s"
|
|||||||
[[irc_catch_messages]]
|
[[irc_catch_messages]]
|
||||||
==== Nachrichten abfangen
|
==== Nachrichten abfangen
|
||||||
|
|
||||||
Die IRC Erweiterung sendet zwei Signale wenn eine Nachricht empfangen wurde.
|
Die IRC Erweiterung sendet vier Signale wenn eine Nachricht empfangen wurde
|
||||||
`xxx` ist der interne IRC Servername, `yyy` ist der IRC Befehl der empfangen
|
(`xxx` ist dabei der interne Servername, `yyy` ist der IRC Befehl z.B. JOIN, QUIT, PRIVMSG, 301, ..):
|
||||||
wurde (JOIN, QUIT, PRIVMSG, 301, ..):
|
|
||||||
|
|
||||||
xxxx,irc_in_yyy::
|
xxx,irc_in_yyy::
|
||||||
Signal wird gesendet bevor die Nachricht verarbeitet wurde.
|
Signal wird gesendet, bevor die Nachricht verarbeitet wird, nur wenn Nachricht *nicht* ignoriert wird
|
||||||
|
|
||||||
xxx,irc_in2_yyy::
|
xxx,irc_in2_yyy::
|
||||||
Signal wird gesendet nachdem die Nachricht verarbeitet wurde.
|
Signal wird gesendet, nachdem die Nachricht verarbeitet wird, nur wenn Nachricht *nicht* ignoriert wird
|
||||||
|
|
||||||
|
xxx,irc_raw_in_yyy::
|
||||||
|
Signal wird gesendet, bevor die Nachricht verarbeitet wird, auch wenn Nachricht ignoriert wird
|
||||||
|
|
||||||
|
xxx,irc_raw_in2_yyy::
|
||||||
|
Signal wird gesendet, nachdem die Nachricht verarbeitet wird, auch wenn Nachricht ignoriert wird
|
||||||
|
|
||||||
[source,python]
|
[source,python]
|
||||||
----
|
----
|
||||||
@@ -1133,8 +1222,17 @@ weechat.hook_signal("*,irc_in2_join", "join_cb", "")
|
|||||||
[[irc_modify_messages]]
|
[[irc_modify_messages]]
|
||||||
==== Nachrichten ändern
|
==== Nachrichten ändern
|
||||||
|
|
||||||
Die IRC Erweiterung verschickt einen "modifier" mit Namen "irc_in_xxx" ("xxx" steht für den
|
Die IRC Erweiterung sendet zwei "Modifier" für eine empfangene Nachricht
|
||||||
Namen des IRC Befehls) falls eine Nachricht empfangen wurde die dann modifiziert werden kann.
|
("xxx" ist der IRC Befehl), damit die Nachricht verändert werden kann:
|
||||||
|
|
||||||
|
irc_in_xxx::
|
||||||
|
Modifier, der vor der Zeichensatzdekodierung gesendet wurde: diese Zeichenkette
|
||||||
|
sollte mit Vorsicht verwendet werden, da sie ungültige UTF-8-Daten enthalten kann;
|
||||||
|
Nur bei Rohoperationen für eine Nachricht verwenden
|
||||||
|
|
||||||
|
irc_in2_xxx::
|
||||||
|
Modifier wird nach der Zeichensatzdekodierung gesendet, sodass die empfangene
|
||||||
|
Zeichenkette immer eine gültige UTF-8 Kodierung enthält (*empfohlen*)
|
||||||
|
|
||||||
[source,python]
|
[source,python]
|
||||||
----
|
----
|
||||||
@@ -1143,7 +1241,7 @@ def modifier_cb(data, modifier, modifier_data, string):
|
|||||||
# (Okay dies ist nicht wirklich sinnvoll, aber es ist auch nur ein Beispiel!)
|
# (Okay dies ist nicht wirklich sinnvoll, aber es ist auch nur ein Beispiel!)
|
||||||
return "%s %s" % (string, modifier_data)
|
return "%s %s" % (string, modifier_data)
|
||||||
|
|
||||||
weechat.hook_modifier("irc_in_privmsg", "modifier_cb", "")
|
weechat.hook_modifier("irc_in2_privmsg", "modifier_cb", "")
|
||||||
----
|
----
|
||||||
|
|
||||||
[WARNING]
|
[WARNING]
|
||||||
@@ -1177,6 +1275,10 @@ Das Ergebnis ist eine Hashtabelle mit folgenden Schlüsseln
|
|||||||
der ursprüngliche Nick. |
|
der ursprüngliche Nick. |
|
||||||
`nick`
|
`nick`
|
||||||
|
|
||||||
|
| user | ≥ 2.7 |
|
||||||
|
der ursprüngliche Benutzer. |
|
||||||
|
`user`
|
||||||
|
|
||||||
| host | ≥ 0.3.4 |
|
| host | ≥ 0.3.4 |
|
||||||
der ursprüngliche Host (beinhaltet den Nick). |
|
der ursprüngliche Host (beinhaltet den Nick). |
|
||||||
`nick!user@host`
|
`nick!user@host`
|
||||||
@@ -1224,6 +1326,7 @@ dict = weechat.info_get_hashtable(
|
|||||||
# "tags": "time=2015-06-27T16:40:35.000Z",
|
# "tags": "time=2015-06-27T16:40:35.000Z",
|
||||||
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
||||||
# "nick": "nick",
|
# "nick": "nick",
|
||||||
|
# "user": "user",
|
||||||
# "host": "nick!user@host",
|
# "host": "nick!user@host",
|
||||||
# "command": "PRIVMSG",
|
# "command": "PRIVMSG",
|
||||||
# "channel": "#weechat",
|
# "channel": "#weechat",
|
||||||
|
|||||||
@@ -97,7 +97,7 @@ $ tar xvjf weechat-devel.tar.bz2
|
|||||||
$ cd weechat-devel
|
$ cd weechat-devel
|
||||||
----
|
----
|
||||||
|
|
||||||
Um die Quellen zu übersetzen, wird cmake empfohlen:
|
Um die Quellen zu übersetzen, wird CMake empfohlen:
|
||||||
|
|
||||||
----
|
----
|
||||||
$ mkdir build
|
$ mkdir build
|
||||||
@@ -107,7 +107,7 @@ $ make
|
|||||||
$ make install
|
$ make install
|
||||||
----
|
----
|
||||||
|
|
||||||
Falls Du cmake nicht hast, ist es auch möglich die autotools zu nutzen:
|
Falls Du CMake nicht hast, ist es auch möglich die autotools zu nutzen:
|
||||||
|
|
||||||
----
|
----
|
||||||
$ ./autogen.sh
|
$ ./autogen.sh
|
||||||
|
|||||||
+83
-58
@@ -85,12 +85,11 @@ wie man Pakete installiert.
|
|||||||
[[source_package]]
|
[[source_package]]
|
||||||
=== Quellpakete
|
=== Quellpakete
|
||||||
|
|
||||||
WeeChat kann mittels cmake oder autotools kompiliert werden (cmake sollte dabei die bevorzugte Methode sein).
|
WeeChat kann mittels CMake oder autotools kompiliert werden (CMake sollte dabei die bevorzugte Methode sein).
|
||||||
|
|
||||||
[NOTE]
|
[NOTE]
|
||||||
Unter macOS kann https://brew.sh/[Homebrew] verwendet werden:
|
Unter macOS kann https://brew.sh/[Homebrew] verwendet werden:
|
||||||
`brew install weechat --with-python --with-perl`
|
`brew install weechat` (für Hilfe: `brew info weechat`).
|
||||||
(für Hilfe: `brew info weechat`).
|
|
||||||
|
|
||||||
[[dependencies]]
|
[[dependencies]]
|
||||||
==== Abhängigkeiten
|
==== Abhängigkeiten
|
||||||
@@ -104,7 +103,7 @@ zu kompilieren und welche Pakete optional genutzt werden können.
|
|||||||
| C compiler
|
| C compiler
|
||||||
(gcc, clang, ...) | | *ja* | zum Erstellen der Binärdatei.
|
(gcc, clang, ...) | | *ja* | zum Erstellen der Binärdatei.
|
||||||
| C++ compiler | | | zum Erstellen der Binärdatei und um Test auszuführen, JavaScript Erweiterung.
|
| C++ compiler | | | zum Erstellen der Binärdatei und um Test auszuführen, JavaScript Erweiterung.
|
||||||
| cmake | ≥ 3.0 | *ja* | zum kompilieren (autotools ist möglich. cmake wird aber empfohlen).
|
| cmake | ≥ 3.0 | *ja* | zum kompilieren (autotools ist möglich. CMake wird aber empfohlen).
|
||||||
| pkg-config | | *ja* | entdeckt installierte Bibliotheken.
|
| pkg-config | | *ja* | entdeckt installierte Bibliotheken.
|
||||||
| libncursesw5-dev ^(2)^ | | *ja* | Ncurses Oberfläche.
|
| libncursesw5-dev ^(2)^ | | *ja* | Ncurses Oberfläche.
|
||||||
| libcurl4-gnutls-dev | | *ja* | URL Transfer.
|
| libcurl4-gnutls-dev | | *ja* | URL Transfer.
|
||||||
@@ -115,9 +114,9 @@ zu kompilieren und welche Pakete optional genutzt werden können.
|
|||||||
| ca-certificates | | | Zertifikate für SSL Verbindungen.
|
| ca-certificates | | | Zertifikate für SSL Verbindungen.
|
||||||
| libaspell-dev
|
| libaspell-dev
|
||||||
∥ libenchant-dev | | | Spell Erweiterung.
|
∥ libenchant-dev | | | Spell Erweiterung.
|
||||||
| python-dev | ≥ 2.6 ^(4)^ | | Python Erweiterung.
|
| python3-dev | ^(4)^ | | Python Erweiterung.
|
||||||
| libperl-dev | | | Perl Erweiterung.
|
| libperl-dev | | | Perl Erweiterung.
|
||||||
| ruby2.5, ruby2.5-dev | ≥ 1.8 | | Ruby Erweiterung.
|
| ruby2.5, ruby2.5-dev | ≥ 1.9.1 | | Ruby Erweiterung.
|
||||||
| liblua5.3-dev | | | Lua Erweiterung.
|
| liblua5.3-dev | | | Lua Erweiterung.
|
||||||
| tcl-dev | ≥ 8.5 | | Tcl Erweiterung.
|
| tcl-dev | ≥ 8.5 | | Tcl Erweiterung.
|
||||||
| guile-2.0-dev | ≥ 2.0 | | Guile (scheme) Erweiterung.
|
| guile-2.0-dev | ≥ 2.0 | | Guile (scheme) Erweiterung.
|
||||||
@@ -139,8 +138,8 @@ aber dies wird *NICHT* empfohlen:
|
|||||||
Es können Darstellungsfehler mit breiten Zeichen auftreten. +
|
Es können Darstellungsfehler mit breiten Zeichen auftreten. +
|
||||||
^(3)^ GnuTLS ≥ 3.0.21 wird benötigt um eine IRC SASL Authentifizierung mittels
|
^(3)^ GnuTLS ≥ 3.0.21 wird benötigt um eine IRC SASL Authentifizierung mittels
|
||||||
ECDSA-NIST256P-CHALLENGE durchzuführen. +
|
ECDSA-NIST256P-CHALLENGE durchzuführen. +
|
||||||
^(4)^ Die empfohlene Version ist 2.7 (alle Skripten laufen mit der Version 2.7,
|
^(4)^ standardmäßig wird Python 3.x verwendet. Wird die Option `ENABLE_PYTHON2` aktiviert
|
||||||
aber nicht mit Version < 2.7 oder ≥ 3.0).
|
(siehe unten), sollte die Version 2.7 von Python genutzt werden.
|
||||||
|
|
||||||
Falls eine Debian/Ubuntu basierte Distribution genutzt wird und man einen
|
Falls eine Debian/Ubuntu basierte Distribution genutzt wird und man einen
|
||||||
"deb-src" Quelleintrag in _/etc/apt/sources.list_ eingetragen hat, dann ist
|
"deb-src" Quelleintrag in _/etc/apt/sources.list_ eingetragen hat, dann ist
|
||||||
@@ -152,7 +151,7 @@ installieren:
|
|||||||
----
|
----
|
||||||
|
|
||||||
[[compile_with_cmake]]
|
[[compile_with_cmake]]
|
||||||
==== Kompilieren mit cmake
|
==== Kompilieren mit CMake
|
||||||
|
|
||||||
* Installation in das Systemverzeichnis (benötigt _root_ Privilegien):
|
* Installation in das Systemverzeichnis (benötigt _root_ Privilegien):
|
||||||
|
|
||||||
@@ -174,7 +173,7 @@ $ make
|
|||||||
$ make install
|
$ make install
|
||||||
----
|
----
|
||||||
|
|
||||||
Optionen für cmake können mit dem Format, "-DOPTION=VALUE", genutzt werden.
|
Optionen für CMake können mit dem Format, "-DOPTION=VALUE", genutzt werden.
|
||||||
|
|
||||||
Liste von häufig verwendeten Optionen:
|
Liste von häufig verwendeten Optionen:
|
||||||
|
|
||||||
@@ -213,7 +212,7 @@ Liste von häufig verwendeten Optionen:
|
|||||||
erstellt die HTML Dokumentation.
|
erstellt die HTML Dokumentation.
|
||||||
|
|
||||||
| ENABLE_ENCHANT | `ON`, `OFF` | OFF |
|
| ENABLE_ENCHANT | `ON`, `OFF` | OFF |
|
||||||
kompiliert <<spell_plugin,Spell plugin>> mittels Enchant.
|
kompiliert <<spell_plugin,Spell Erweiterung>> mittels Enchant.
|
||||||
|
|
||||||
| ENABLE_EXEC | `ON`, `OFF` | ON |
|
| ENABLE_EXEC | `ON`, `OFF` | ON |
|
||||||
kompiliert <<exec_plugin,Exec Erweiterung>>.
|
kompiliert <<exec_plugin,Exec Erweiterung>>.
|
||||||
@@ -260,12 +259,8 @@ Liste von häufig verwendeten Optionen:
|
|||||||
| ENABLE_PYTHON | `ON`, `OFF` | ON |
|
| ENABLE_PYTHON | `ON`, `OFF` | ON |
|
||||||
kompiliert <<scripts_plugins,Python Erweiterung>>.
|
kompiliert <<scripts_plugins,Python Erweiterung>>.
|
||||||
|
|
||||||
| ENABLE_PYTHON3 | `ON`, `OFF` | OFF |
|
| ENABLE_PYTHON2 | `ON`, `OFF` | OFF |
|
||||||
kompiliert <<scripts_plugins,Python plugin>> mit Python 3. +
|
kompiliert <<scripts_plugins,Python Erweiterung>> nutzt Python 2 anstelle von Python 3.
|
||||||
Diese Option wird zur Zeit nicht empfohlen, da die meisten Skripten noch
|
|
||||||
nicht kompatible mit Python 3 sind. +
|
|
||||||
Den Fortschritt der Python 3 Unterstützung kann man auf dieser Seite verfolgen:
|
|
||||||
https://weechat.org/scripts/python3/
|
|
||||||
|
|
||||||
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
||||||
kompiliert <<relay_plugin,Relay Erweiterung>>.
|
kompiliert <<relay_plugin,Relay Erweiterung>>.
|
||||||
@@ -316,10 +311,10 @@ $ ccmake ..
|
|||||||
==== Kompilieren mit autotools
|
==== Kompilieren mit autotools
|
||||||
|
|
||||||
[WARNING]
|
[WARNING]
|
||||||
Ausschließlich das Kompilieren mittels cmake wird offiziell unterstützt. Autotools
|
Ausschließlich das Kompilieren mittels CMake wird offiziell unterstützt. Autotools
|
||||||
sollte nur verwendet werden falls man keine Möglichkeit hat cmake zu nutzen. +
|
sollte nur verwendet werden falls man keine Möglichkeit hat CMake zu nutzen. +
|
||||||
Für die Erstellung mittels autotools werden zusätzliche Pakete benötigt und es ist
|
Für die Erstellung mittels autotools werden zusätzliche Pakete benötigt und es ist
|
||||||
zeitintensiver als cmake.
|
zeitintensiver als CMake.
|
||||||
|
|
||||||
* Installation in das Systemverzeichnis (benötigt _root_ Privilegien):
|
* Installation in das Systemverzeichnis (benötigt _root_ Privilegien):
|
||||||
|
|
||||||
@@ -358,13 +353,13 @@ Folgende Pakete werden *benötigt* um Tests zu kompilieren:
|
|||||||
* libcpputest-dev
|
* libcpputest-dev
|
||||||
* C++ compiler
|
* C++ compiler
|
||||||
|
|
||||||
Tests muss aktiviert werden wenn WeeChat kompiliert wird (mittels cmake):
|
Tests muss aktiviert werden wenn WeeChat kompiliert wird (mittels CMake):
|
||||||
|
|
||||||
----
|
----
|
||||||
$ cmake .. -DENABLE_TESTS=ON
|
$ cmake .. -DENABLE_TESTS=ON
|
||||||
----
|
----
|
||||||
|
|
||||||
Nach der Kompilierung wird die Testumgebung im build-Verzeichnis (bei cmake) ausgeführt:
|
Nach der Kompilierung wird die Testumgebung im build-Verzeichnis (bei CMake) ausgeführt:
|
||||||
|
|
||||||
----
|
----
|
||||||
$ ctest -V
|
$ ctest -V
|
||||||
@@ -396,7 +391,7 @@ Falls WeeChat abgestürzt sein sollte und Sie diesen Fehler melden möchten:
|
|||||||
[[debug_info]]
|
[[debug_info]]
|
||||||
==== Debug info
|
==== Debug info
|
||||||
|
|
||||||
Bei der Kompilierung mit cmake muss folgende Option gesetzt werden:
|
Bei der Kompilierung mit CMake muss folgende Option gesetzt werden:
|
||||||
|
|
||||||
----
|
----
|
||||||
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
|
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
|
||||||
@@ -803,13 +798,22 @@ Um sich alle verfügbaren Farben anzeigen zu lassen, die der Terminal
|
|||||||
unterstützt, kann man in WeeChat die Tastenkombination kbd:[Alt+c]
|
unterstützt, kann man in WeeChat die Tastenkombination kbd:[Alt+c]
|
||||||
im `/color` Buffer nutzen oder im Terminal den Befehl `weechat --colors` ausführen.
|
im `/color` Buffer nutzen oder im Terminal den Befehl `weechat --colors` ausführen.
|
||||||
|
|
||||||
Beispiel: Im Buffer wird "Hallo an alle!" ausgegeben. Dabei wird "Hallo" in Fettschrift
|
Beispiel: Im Buffer wird "Hallo Alice!" ausgegeben. Dabei wird "Hallo" in Fettschrift
|
||||||
und hellblau und "an alle" rot und unterstrichen dargestellt.
|
und hellblau und "Alice" rot und unterstrichen dargestellt.
|
||||||
|
|
||||||
----
|
----
|
||||||
^Cc12^CbHallo ^Cb^Cc04^C_an alle^C_^Cc!
|
^Cc12^CbHallo ^Cb^Cc04^C_Alice^C_^Cc!
|
||||||
----
|
----
|
||||||
|
|
||||||
|
Tastenbefehl:
|
||||||
|
|
||||||
|
kbd:[Ctrl+c] kbd:[c] kbd:[1] kbd:[2] kbd:[Ctrl+c] kbd:[b] +
|
||||||
|
kbd:[H] kbd:[a] kbd:[l] kbd:[l] kbd:[o] kbd:[Space] +
|
||||||
|
kbd:[Ctrl+c] kbd:[b] kbd:[Ctrl+c] kbd:[c] kbd:[0] kbd:[4] kbd:[Ctrl+c] kbd:[pass:[_]] +
|
||||||
|
kbd:[A] kbd:[l] kbd:[i] kbd:[c] kbd:[e] +
|
||||||
|
kbd:[Ctrl+c] kbd:[pass:[_]] kbd:[Ctrl+c] kbd:[c] +
|
||||||
|
kbd:[!]
|
||||||
|
|
||||||
[NOTE]
|
[NOTE]
|
||||||
Die Farben können in der IRC Erweiterung neu belegt werden,
|
Die Farben können in der IRC Erweiterung neu belegt werden,
|
||||||
mittels der Option <<option_irc.color.mirc_remap,irc.color.mirc_remap>>.
|
mittels der Option <<option_irc.color.mirc_remap,irc.color.mirc_remap>>.
|
||||||
@@ -817,7 +821,7 @@ mittels der Option <<option_irc.color.mirc_remap,irc.color.mirc_remap>>.
|
|||||||
[[colors]]
|
[[colors]]
|
||||||
=== Farben
|
=== Farben
|
||||||
|
|
||||||
WeeChat kann bis zu 256 Farbpaarungen nutzen um einen Text in Bars oder im
|
WeeChat kann bis zu 32767 Farbpaarungen nutzen um einen Text in Bars oder im
|
||||||
Chatbereich darzustellen (der Terminal muss natürlich 256 Farben unterstützten).
|
Chatbereich darzustellen (der Terminal muss natürlich 256 Farben unterstützten).
|
||||||
|
|
||||||
Gemäß der Einstellung in der _TERM_-Umgebungsvariable bestehen folgende Einschränkungen
|
Gemäß der Einstellung in der _TERM_-Umgebungsvariable bestehen folgende Einschränkungen
|
||||||
@@ -826,12 +830,12 @@ was die Farbdarstellung in WeeChat betrifft:
|
|||||||
[width="50%",cols="8,>2,>2",options="header"]
|
[width="50%",cols="8,>2,>2",options="header"]
|
||||||
|===
|
|===
|
||||||
| $TERM | Farben | Paare
|
| $TERM | Farben | Paare
|
||||||
| "rxvt-unicode", "xterm", ... | 88 | 256
|
| "rxvt-unicode", "xterm", ... | 88 | 32767
|
||||||
| "rxvt-256color", "xterm-256color", ... | 256 | 256
|
| "rxvt-256color", "xterm-256color", ... | 256 | 32767
|
||||||
| "screen" | 8 | 64
|
| "screen" | 8 | 64
|
||||||
| "screen-256color" | 256 | 256
|
| "screen-256color" | 256 | 32767
|
||||||
| "tmux" | 8 | 64
|
| "tmux" | 8 | 64
|
||||||
| "tmux-256color" | 256 | 256
|
| "tmux-256color" | 256 | 32767
|
||||||
|===
|
|===
|
||||||
|
|
||||||
Mittels `weechat --colors` oder dem internen WeeChat-Befehl `/color` kann man sich
|
Mittels `weechat --colors` oder dem internen WeeChat-Befehl `/color` kann man sich
|
||||||
@@ -2135,9 +2139,16 @@ Dem gegenüber ist ein _Skript_ eine Textdatei die durch eine Erweiterung z.B. _
|
|||||||
mittels dem Befehl `/python` geladen wird.
|
mittels dem Befehl `/python` geladen wird.
|
||||||
|
|
||||||
Mit dem Befehl `/plugin` kann eine Erweiterung geladen bzw. entfernt werden. Auch können
|
Mit dem Befehl `/plugin` kann eine Erweiterung geladen bzw. entfernt werden. Auch können
|
||||||
mit dem Befehl alle installierten Erweiterungen aufgelistet werden. Wird eine Erweiterung
|
mit dem Befehl alle installierten Erweiterungen aufgelistet werden.
|
||||||
entfernt hat dies Einfluss auf die von dieser Erweiterung geöffneten Buffer.
|
|
||||||
Diese Buffer werden dann geschlossen.
|
Sobald eine Erweiterung beendet wird, entfernt WeeChat:
|
||||||
|
|
||||||
|
* Buffer
|
||||||
|
* Konfigurationsoptionen (Optionen die in Datein geschrieben wurden)
|
||||||
|
* alle Hooks: commands, modifiers, process, etc.
|
||||||
|
* Infos und Infolisten
|
||||||
|
* hdata
|
||||||
|
* Bar-Items.
|
||||||
|
|
||||||
Beispiele wie man Erweiterungen lädt, entfernt und auflistet:
|
Beispiele wie man Erweiterungen lädt, entfernt und auflistet:
|
||||||
|
|
||||||
@@ -2659,9 +2670,13 @@ und Port müssen dabei an die eigene TOR Konfiguration angepasst werden):
|
|||||||
Jetzt muss der neue Server hinzufügt werden, zum Beispiel:
|
Jetzt muss der neue Server hinzufügt werden, zum Beispiel:
|
||||||
|
|
||||||
----
|
----
|
||||||
/server add freenode-tor freenodeok2gncmy.onion
|
/server add freenode-tor ajnvpgl6prmkb7yktvue6im5wiedlz2w32uhcwaamdiecdrfpwwgnlqd.onion
|
||||||
----
|
----
|
||||||
|
|
||||||
|
[NOTE]
|
||||||
|
Sollte eine alte Version (vor 0.3.5) von TOR verwendet werden, muss diese
|
||||||
|
Adresse, `freenodeok2gncmy.onion`, genutzt werden.
|
||||||
|
|
||||||
Einen Proxy für TOR anlegen:
|
Einen Proxy für TOR anlegen:
|
||||||
|
|
||||||
----
|
----
|
||||||
@@ -3023,12 +3038,16 @@ weitere Beispiele:
|
|||||||
==== Dateinamenmaske
|
==== Dateinamenmaske
|
||||||
|
|
||||||
Es ist möglich eine Dateinamenmaske für jeden Buffer zu erstellen und diese Maske
|
Es ist möglich eine Dateinamenmaske für jeden Buffer zu erstellen und diese Maske
|
||||||
mit lokalen Buffervariablen zu füllen. Um zu sehen welche lokalen Variabel es gibt:
|
mit lokalen Buffervariablen zu füllen. Um sich die verfügbaren lokalen Variablen
|
||||||
|
für den aktuellen Buffer anzeigen zu lassen:
|
||||||
|
|
||||||
----
|
----
|
||||||
/buffer localvar
|
/buffer localvar
|
||||||
----
|
----
|
||||||
|
|
||||||
|
Masken werden in absteigender Reihenfolge abgeglichen, beginnend mit
|
||||||
|
`logger.mask.$plugin.*`, dabei fungiert `logger.file.mask` als Fallback-Option.
|
||||||
|
|
||||||
Zum Beispiel für den Buffer "irc.freenode.#weechat". WeeChat sucht in dieser
|
Zum Beispiel für den Buffer "irc.freenode.#weechat". WeeChat sucht in dieser
|
||||||
Reihenfolge nach einer Maske:
|
Reihenfolge nach einer Maske:
|
||||||
|
|
||||||
@@ -3057,16 +3076,21 @@ Datumsspezifikationen in der Maske genutzt werden (siehe
|
|||||||
Erstellt eine Struktur in folgender Form:
|
Erstellt eine Struktur in folgender Form:
|
||||||
|
|
||||||
....
|
....
|
||||||
~/.weechat/
|
~/.weechat
|
||||||
|--- logs/
|
└── logs
|
||||||
|--- 2010/
|
├── 2010
|
||||||
|--- 11/
|
│ ├── 11
|
||||||
| irc.server.freenode.weechatlog
|
│ │ ├── irc.server.freenode.weechatlog
|
||||||
| irc.freenode.#weechat.weechatlog
|
│ │ └── irc.freenode.#weechat.weechatlog
|
||||||
|--- 2010/
|
│ └── 12
|
||||||
|--- 12/
|
│ ├── irc.server.freenode.weechatlog
|
||||||
| irc.server.freenode.weechatlog
|
│ └── irc.freenode.#weechat.weechatlog
|
||||||
| irc.freenode.#weechat.weechatlog
|
├── 2011
|
||||||
|
│ ├── 01
|
||||||
|
│ │ ├── irc.server.freenode.weechatlog
|
||||||
|
│ │ └── irc.freenode.#weechat.weechatlog
|
||||||
|
│ ├── 02
|
||||||
|
...
|
||||||
....
|
....
|
||||||
|
|
||||||
[[logger_irc_files_by_server_channel]]
|
[[logger_irc_files_by_server_channel]]
|
||||||
@@ -3082,17 +3106,18 @@ einer Protokolldatei für jeden Channel:
|
|||||||
Erstellt eine Struktur in folgender Form:
|
Erstellt eine Struktur in folgender Form:
|
||||||
|
|
||||||
....
|
....
|
||||||
~/.weechat/
|
~/.weechat
|
||||||
|--- logs/
|
└── logs
|
||||||
|--- irc/
|
└── irc
|
||||||
|--- freenode/
|
├── freenode
|
||||||
| freenode.weechatlog
|
│ ├── freenode.weechatlog
|
||||||
| #weechat.weechatlog
|
│ ├── #weechat.weechatlog
|
||||||
| #mychan.weechatlog
|
│ └── #mychan.weechatlog
|
||||||
|--- oftc/
|
├── oftc
|
||||||
| oftc.weechatlog
|
│ ├── oftc.weechatlog
|
||||||
| #chan1.weechatlog
|
│ ├── #chan1.weechatlog
|
||||||
| #chan2.weechatlog
|
│ └── #chan2.weechatlog
|
||||||
|
...
|
||||||
....
|
....
|
||||||
|
|
||||||
[[logger_commands]]
|
[[logger_commands]]
|
||||||
@@ -4101,7 +4126,7 @@ Der Callback von "line" legt folgende Variablen in der Hashtable an:
|
|||||||
| str_time | string | Datum für Darstellung. Kann Farbkodierungen erhalten.
|
| str_time | string | Datum für Darstellung. Kann Farbkodierungen erhalten.
|
||||||
| tags | string | Tags einer Nachricht (Komma wird automatisch zu Beginn und Ende den Tags hinzugefügt).
|
| tags | string | Tags einer Nachricht (Komma wird automatisch zu Beginn und Ende den Tags hinzugefügt).
|
||||||
| displayed | string | "1" wenn Zeile dargestellt wird, "0" wenn Zeile gefiltert wird.
|
| displayed | string | "1" wenn Zeile dargestellt wird, "0" wenn Zeile gefiltert wird.
|
||||||
| notify_level | string | "0" = low level, "1" = Nachricht, "2" = private Nachricht, "3" = Highlight
|
| notify_level | string | "-1" = keine Benachrichtigung, "0" = niedrige Stufe, "1" = Nachricht, "2" = private Nachricht, "3" = Highlight
|
||||||
| highlight | string | "1" wenn Highlight, andernfalls "0".
|
| highlight | string | "1" wenn Highlight, andernfalls "0".
|
||||||
| prefix | string | Prefix.
|
| prefix | string | Prefix.
|
||||||
| tg_prefix_nocolor | string | Prefix, ohne Farbkodierung.
|
| tg_prefix_nocolor | string | Prefix, ohne Farbkodierung.
|
||||||
|
|||||||
+67
-67
@@ -17,27 +17,33 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Documentation generator for WeeChat: build include files with commands,
|
Documentation generator for WeeChat: build include files with:
|
||||||
options, infos, infolists, hdata and completions for WeeChat core and
|
|
||||||
plugins.
|
|
||||||
|
|
||||||
Instructions to build config files yourself in WeeChat directories (replace
|
- commands
|
||||||
all paths with your path to WeeChat):
|
- config options
|
||||||
1. run WeeChat and load this script, with following command:
|
- default aliases
|
||||||
/python load ~/src/weechat/doc/docgen.py
|
- IRC colors
|
||||||
2. change path to build in your doc/ directory:
|
- infos
|
||||||
/set plugins.var.python.docgen.path "~/src/weechat/doc"
|
- infos hashtable
|
||||||
3. run docgen command:
|
- infolists
|
||||||
/docgen
|
- hdata
|
||||||
Note: it is recommended to load only this script when building doc.
|
- completions
|
||||||
Files should be in ~/src/weechat/doc/xx/autogen/ (where xx is language).
|
- URL options
|
||||||
|
- plugins priority.
|
||||||
|
|
||||||
|
Instructions to build config files yourself in WeeChat directories
|
||||||
|
(replace "path" with the path to the docgen.py script in WeeChat repository):
|
||||||
|
|
||||||
|
weechat -t -r "/python load /path/docgen.py;/docgen;/quit"
|
||||||
|
|
||||||
|
Output files are in /path/xx/autogen/ (where xx is language).
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
|
|
||||||
SCRIPT_NAME = 'docgen'
|
SCRIPT_NAME = 'docgen'
|
||||||
SCRIPT_AUTHOR = 'Sébastien Helleu <flashcode@flashtux.org>'
|
SCRIPT_AUTHOR = 'Sébastien Helleu <flashcode@flashtux.org>'
|
||||||
SCRIPT_VERSION = '0.1'
|
SCRIPT_VERSION = '0.2'
|
||||||
SCRIPT_LICENSE = 'GPL3'
|
SCRIPT_LICENSE = 'GPL3'
|
||||||
SCRIPT_DESC = 'Documentation generator for WeeChat'
|
SCRIPT_DESC = 'Documentation generator for WeeChat'
|
||||||
|
|
||||||
@@ -51,7 +57,6 @@ try:
|
|||||||
import hashlib
|
import hashlib
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
import sys
|
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
from operator import itemgetter
|
from operator import itemgetter
|
||||||
except ImportError as message:
|
except ImportError as message:
|
||||||
@@ -65,19 +70,15 @@ except ImportError:
|
|||||||
print('Get WeeChat now at: https://weechat.org/')
|
print('Get WeeChat now at: https://weechat.org/')
|
||||||
IMPORT_OK = False
|
IMPORT_OK = False
|
||||||
|
|
||||||
# default path where doc files will be written (should be doc/ in sources
|
|
||||||
# package tree)
|
|
||||||
# path must have subdirectories with languages and autogen directory:
|
|
||||||
# path
|
|
||||||
# |-- en
|
|
||||||
# | |-- autogen
|
|
||||||
# |-- fr
|
|
||||||
# | |-- autogen
|
|
||||||
# ...
|
|
||||||
DEFAULT_PATH = '~/src/weechat/doc'
|
|
||||||
|
|
||||||
# list of locales for which we want to build doc files to include
|
# list of locales for which we want to build doc files to include
|
||||||
LOCALE_LIST = ('en_US', 'fr_FR', 'it_IT', 'de_DE', 'ja_JP', 'pl_PL')
|
LOCALE_LIST = (
|
||||||
|
'de_DE',
|
||||||
|
'en_US',
|
||||||
|
'fr_FR',
|
||||||
|
'it_IT',
|
||||||
|
'ja_JP',
|
||||||
|
'pl_PL',
|
||||||
|
)
|
||||||
|
|
||||||
# all commands/options/.. of following plugins will produce a file
|
# all commands/options/.. of following plugins will produce a file
|
||||||
# non-listed plugins will be ignored
|
# non-listed plugins will be ignored
|
||||||
@@ -120,7 +121,6 @@ IGNORE_OPTIONS = (
|
|||||||
r'irc\.ctcp\..*',
|
r'irc\.ctcp\..*',
|
||||||
r'irc\.ignore\..*',
|
r'irc\.ignore\..*',
|
||||||
r'irc\.server\..*',
|
r'irc\.server\..*',
|
||||||
r'jabber\.server\..*',
|
|
||||||
r'logger\.level\..*',
|
r'logger\.level\..*',
|
||||||
r'logger\.mask\..*',
|
r'logger\.mask\..*',
|
||||||
r'relay\.port\..*',
|
r'relay\.port\..*',
|
||||||
@@ -137,11 +137,19 @@ IGNORE_OPTIONS = (
|
|||||||
# completions to ignore
|
# completions to ignore
|
||||||
IGNORE_COMPLETIONS_ITEMS = (
|
IGNORE_COMPLETIONS_ITEMS = (
|
||||||
'docgen.*',
|
'docgen.*',
|
||||||
'jabber.*',
|
|
||||||
'weeget.*',
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def sha256_file(filename, default=None):
|
||||||
|
"""Return SHA256 checksum of a file."""
|
||||||
|
try:
|
||||||
|
with open(filename, 'rb') as _file:
|
||||||
|
checksum = hashlib.sha256(_file.read()).hexdigest()
|
||||||
|
except IOError:
|
||||||
|
checksum = default
|
||||||
|
return checksum
|
||||||
|
|
||||||
|
|
||||||
class AutogenDoc(object):
|
class AutogenDoc(object):
|
||||||
"""A class to write auto-generated doc files."""
|
"""A class to write auto-generated doc files."""
|
||||||
|
|
||||||
@@ -159,29 +167,14 @@ class AutogenDoc(object):
|
|||||||
"""Write a line in auto-generated doc file."""
|
"""Write a line in auto-generated doc file."""
|
||||||
self._file.write(string)
|
self._file.write(string)
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def sha256_file(filename, default):
|
|
||||||
"""
|
|
||||||
Return SHA256 checksum of a file, "default" if file is not found.
|
|
||||||
"""
|
|
||||||
try:
|
|
||||||
with open(filename, 'r') as _file:
|
|
||||||
content = _file.read()
|
|
||||||
if sys.version_info >= (3, ):
|
|
||||||
content = content.encode('utf-8')
|
|
||||||
checksum = hashlib.sha256(content).hexdigest()
|
|
||||||
except IOError:
|
|
||||||
checksum = default
|
|
||||||
return checksum
|
|
||||||
|
|
||||||
def update(self, obj_name, num_files, num_files_updated):
|
def update(self, obj_name, num_files, num_files_updated):
|
||||||
"""Update doc file if needed (if content has changed)."""
|
"""Update doc file if needed (if content has changed)."""
|
||||||
# close temp file
|
# close temp file
|
||||||
self._file.close()
|
self._file.close()
|
||||||
shaold = AutogenDoc.sha256_file(self.filename, 'old')
|
sha_old = sha256_file(self.filename, 'old')
|
||||||
shanew = AutogenDoc.sha256_file(self.filename_tmp, 'new')
|
sha_new = sha256_file(self.filename_tmp, 'new')
|
||||||
# compare checksums
|
# compare checksums
|
||||||
if shaold != shanew:
|
if sha_old != sha_new:
|
||||||
# update doc file
|
# update doc file
|
||||||
if os.path.exists(self.filename):
|
if os.path.exists(self.filename):
|
||||||
os.unlink(self.filename)
|
os.unlink(self.filename)
|
||||||
@@ -450,6 +443,15 @@ def get_plugins_priority():
|
|||||||
return plugins_priority
|
return plugins_priority
|
||||||
|
|
||||||
|
|
||||||
|
def print_counters(label, files, updated):
|
||||||
|
"""Print a line with counters."""
|
||||||
|
color = weechat.color('*lightred') if updated > 0 else ''
|
||||||
|
weechat.prnt('',
|
||||||
|
'docgen: {0}: {1} files, {2}{3}{4} updated'
|
||||||
|
''.format(label, files, color, updated,
|
||||||
|
weechat.color('reset')))
|
||||||
|
|
||||||
|
|
||||||
# pylint: disable=too-many-locals, too-many-branches, too-many-statements
|
# pylint: disable=too-many-locals, too-many-branches, too-many-statements
|
||||||
# pylint: disable=too-many-nested-blocks
|
# pylint: disable=too-many-nested-blocks
|
||||||
def docgen_cmd_cb(data, buf, args):
|
def docgen_cmd_cb(data, buf, args):
|
||||||
@@ -457,7 +459,7 @@ def docgen_cmd_cb(data, buf, args):
|
|||||||
if args:
|
if args:
|
||||||
locales = args.split(' ')
|
locales = args.split(' ')
|
||||||
else:
|
else:
|
||||||
locales = LOCALE_LIST
|
locales = sorted(LOCALE_LIST)
|
||||||
commands = get_commands()
|
commands = get_commands()
|
||||||
options = get_options()
|
options = get_options()
|
||||||
infos = get_infos()
|
infos = get_infos()
|
||||||
@@ -470,11 +472,6 @@ def docgen_cmd_cb(data, buf, args):
|
|||||||
irc_colors = get_irc_colors()
|
irc_colors = get_irc_colors()
|
||||||
plugins_priority = get_plugins_priority()
|
plugins_priority = get_plugins_priority()
|
||||||
|
|
||||||
# get path and replace ~ by home if needed
|
|
||||||
path = weechat.config_get_plugin('path')
|
|
||||||
if path.startswith('~'):
|
|
||||||
path = os.environ['HOME'] + path[1:]
|
|
||||||
|
|
||||||
# write to doc files, by locale
|
# write to doc files, by locale
|
||||||
num_files = defaultdict(int)
|
num_files = defaultdict(int)
|
||||||
num_files_updated = defaultdict(int)
|
num_files_updated = defaultdict(int)
|
||||||
@@ -483,6 +480,8 @@ def docgen_cmd_cb(data, buf, args):
|
|||||||
translate = lambda s: (s and _(s)) or s
|
translate = lambda s: (s and _(s)) or s
|
||||||
escape = lambda s: s.replace('|', '\\|')
|
escape = lambda s: s.replace('|', '\\|')
|
||||||
|
|
||||||
|
weechat.prnt('', '-' * 40)
|
||||||
|
|
||||||
for locale in locales:
|
for locale in locales:
|
||||||
for key in num_files:
|
for key in num_files:
|
||||||
if key != 'total2':
|
if key != 'total2':
|
||||||
@@ -493,7 +492,9 @@ def docgen_cmd_cb(data, buf, args):
|
|||||||
languages=[locale + '.UTF-8'],
|
languages=[locale + '.UTF-8'],
|
||||||
fallback=True)
|
fallback=True)
|
||||||
trans.install()
|
trans.install()
|
||||||
directory = path + '/' + locale[0:2] + '/autogen'
|
directory = os.path.join(os.path.dirname(data),
|
||||||
|
locale[0:2],
|
||||||
|
'autogen')
|
||||||
if not os.path.isdir(directory):
|
if not os.path.isdir(directory):
|
||||||
weechat.prnt('',
|
weechat.prnt('',
|
||||||
'{0}docgen error: directory "{1}" does not exist'
|
'{0}docgen error: directory "{1}" does not exist'
|
||||||
@@ -721,7 +722,7 @@ def docgen_cmd_cb(data, buf, args):
|
|||||||
doc.write('|===\n')
|
doc.write('|===\n')
|
||||||
doc.update('completions', num_files, num_files_updated)
|
doc.update('completions', num_files, num_files_updated)
|
||||||
|
|
||||||
# write url options
|
# write URL options
|
||||||
doc = AutogenDoc(directory, 'plugin_api', 'url_options')
|
doc = AutogenDoc(directory, 'plugin_api', 'url_options')
|
||||||
doc.write('[width="100%",cols="2,^1,7",options="header"]\n')
|
doc.write('[width="100%",cols="2,^1,7",options="header"]\n')
|
||||||
doc.write('|===\n')
|
doc.write('|===\n')
|
||||||
@@ -748,14 +749,15 @@ def docgen_cmd_cb(data, buf, args):
|
|||||||
doc.update('plugins_priority', num_files, num_files_updated)
|
doc.update('plugins_priority', num_files, num_files_updated)
|
||||||
|
|
||||||
# write counters
|
# write counters
|
||||||
weechat.prnt('',
|
print_counters(locale, num_files['total1'],
|
||||||
'docgen: {0}: {1} files, {2} updated'
|
num_files_updated['total1'])
|
||||||
''.format(locale,
|
|
||||||
num_files['total1'],
|
weechat.prnt('', ' -' * 20)
|
||||||
num_files_updated['total1']))
|
|
||||||
weechat.prnt('',
|
print_counters('total', num_files['total2'], num_files_updated['total2'])
|
||||||
'docgen: total: {0} files, {1} updated'
|
|
||||||
''.format(num_files['total2'], num_files_updated['total2']))
|
weechat.prnt('', '-' * 40)
|
||||||
|
|
||||||
return weechat.WEECHAT_RC_OK
|
return weechat.WEECHAT_RC_OK
|
||||||
|
|
||||||
|
|
||||||
@@ -776,8 +778,6 @@ if __name__ == '__main__' and IMPORT_OK:
|
|||||||
'locales: list of locales to build (by default '
|
'locales: list of locales to build (by default '
|
||||||
'build all locales)',
|
'build all locales)',
|
||||||
'%(docgen_locales)|%*',
|
'%(docgen_locales)|%*',
|
||||||
'docgen_cmd_cb', '')
|
'docgen_cmd_cb', __file__)
|
||||||
weechat.hook_completion('docgen_locales', 'locales for docgen',
|
weechat.hook_completion('docgen_locales', 'locales for docgen',
|
||||||
'docgen_completion_cb', '')
|
'docgen_completion_cb', '')
|
||||||
if not weechat.config_is_set_plugin('path'):
|
|
||||||
weechat.config_set_plugin('path', DEFAULT_PATH)
|
|
||||||
|
|||||||
@@ -38,6 +38,8 @@
|
|||||||
|
|
||||||
| irc | irc_privates | privates on all IRC servers
|
| irc | irc_privates | privates on all IRC servers
|
||||||
|
|
||||||
|
| irc | irc_raw_filters | filters for irc raw buffer
|
||||||
|
|
||||||
| irc | irc_server | current IRC server
|
| irc | irc_server | current IRC server
|
||||||
|
|
||||||
| irc | irc_server_channels | channels on current IRC server
|
| irc | irc_server_channels | channels on current IRC server
|
||||||
@@ -142,7 +144,7 @@
|
|||||||
|
|
||||||
| weechat | env_vars | environment variables
|
| weechat | env_vars | environment variables
|
||||||
|
|
||||||
| weechat | filename | filename
|
| weechat | filename | filename; optional argument: default path (evaluated, see /help eval)
|
||||||
|
|
||||||
| weechat | filters_names | names of filters
|
| weechat | filters_names | names of filters
|
||||||
|
|
||||||
|
|||||||
@@ -252,6 +252,8 @@ _isupport_ (string) +
|
|||||||
_prefix_modes_ (string) +
|
_prefix_modes_ (string) +
|
||||||
_prefix_chars_ (string) +
|
_prefix_chars_ (string) +
|
||||||
_nick_max_length_ (integer) +
|
_nick_max_length_ (integer) +
|
||||||
|
_user_max_length_ (integer) +
|
||||||
|
_host_max_length_ (integer) +
|
||||||
_casemapping_ (integer) +
|
_casemapping_ (integer) +
|
||||||
_chantypes_ (string) +
|
_chantypes_ (string) +
|
||||||
_chanmodes_ (string) +
|
_chanmodes_ (string) +
|
||||||
@@ -970,6 +972,7 @@ _charset_ (string) +
|
|||||||
_priority_ (integer) +
|
_priority_ (integer) +
|
||||||
_initialized_ (integer) +
|
_initialized_ (integer) +
|
||||||
_debug_ (integer) +
|
_debug_ (integer) +
|
||||||
|
_upgrading_ (integer) +
|
||||||
_variables_ (hashtable) +
|
_variables_ (hashtable) +
|
||||||
_prev_plugin_ (pointer, hdata: "plugin") +
|
_prev_plugin_ (pointer, hdata: "plugin") +
|
||||||
_next_plugin_ (pointer, hdata: "plugin") +
|
_next_plugin_ (pointer, hdata: "plugin") +
|
||||||
|
|||||||
@@ -10,6 +10,8 @@
|
|||||||
|
|
||||||
| alias | alias_default | list of default aliases | - | -
|
| alias | alias_default | list of default aliases | - | -
|
||||||
|
|
||||||
|
| buflist | buflist | list of buffers in a buflist bar item | - | buflist bar item name (optional)
|
||||||
|
|
||||||
| fset | fset_option | list of fset options | fset option pointer (optional) | option name (wildcard "*" is allowed) (optional)
|
| fset | fset_option | list of fset options | fset option pointer (optional) | option name (wildcard "*" is allowed) (optional)
|
||||||
|
|
||||||
| guile | guile_script | list of scripts | script pointer (optional) | script name (wildcard "*" is allowed) (optional)
|
| guile | guile_script | list of scripts | script pointer (optional) | script name (wildcard "*" is allowed) (optional)
|
||||||
|
|||||||
@@ -108,6 +108,10 @@
|
|||||||
|
|
||||||
| weechat | pid | WeeChat PID (process ID) | -
|
| weechat | pid | WeeChat PID (process ID) | -
|
||||||
|
|
||||||
|
| weechat | term_color_pairs | number of color pairs supported in terminal | -
|
||||||
|
|
||||||
|
| weechat | term_colors | number of colors supported in terminal | -
|
||||||
|
|
||||||
| weechat | term_height | height of terminal | -
|
| weechat | term_height | height of terminal | -
|
||||||
|
|
||||||
| weechat | term_width | width of terminal | -
|
| weechat | term_width | width of terminal | -
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
|===
|
|===
|
||||||
| Plugin | Name | Description | Hashtable (input) | Hashtable (output)
|
| 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, "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, "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_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
|
| 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
|
||||||
|
|
||||||
|
|||||||
@@ -62,6 +62,8 @@
|
|||||||
|
|
||||||
| unix_socket_path | string |
|
| unix_socket_path | string |
|
||||||
|
|
||||||
|
| abstract_unix_socket | string |
|
||||||
|
|
||||||
| path_as_is | long |
|
| path_as_is | long |
|
||||||
|
|
||||||
| proxy_service_name | string |
|
| proxy_service_name | string |
|
||||||
@@ -72,15 +74,21 @@
|
|||||||
|
|
||||||
| tcp_fastopen | long |
|
| tcp_fastopen | long |
|
||||||
|
|
||||||
|
| socks5_auth | long |
|
||||||
|
|
||||||
|
| haproxyprotocol | long |
|
||||||
|
|
||||||
|
| doh_url | string |
|
||||||
|
|
||||||
| netrc | long | ignored, optional, required
|
| netrc | long | ignored, optional, required
|
||||||
|
|
||||||
| userpwd | string |
|
| userpwd | string |
|
||||||
|
|
||||||
| proxyuserpwd | string |
|
| proxyuserpwd | string |
|
||||||
|
|
||||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate
|
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||||
|
|
||||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate
|
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||||
|
|
||||||
| netrc_file | string |
|
| netrc_file | string |
|
||||||
|
|
||||||
@@ -104,6 +112,8 @@
|
|||||||
|
|
||||||
| login_options | string |
|
| login_options | string |
|
||||||
|
|
||||||
|
| disallow_username_in_url | long |
|
||||||
|
|
||||||
| autoreferer | long |
|
| autoreferer | long |
|
||||||
|
|
||||||
| followlocation | long |
|
| followlocation | long |
|
||||||
@@ -114,8 +124,6 @@
|
|||||||
|
|
||||||
| postfields | string |
|
| postfields | string |
|
||||||
|
|
||||||
| httppost | list |
|
|
||||||
|
|
||||||
| referer | string |
|
| referer | string |
|
||||||
|
|
||||||
| useragent | string |
|
| useragent | string |
|
||||||
@@ -170,6 +178,8 @@
|
|||||||
|
|
||||||
| stream_weight | long |
|
| stream_weight | long |
|
||||||
|
|
||||||
|
| request_target | string |
|
||||||
|
|
||||||
| mail_from | string |
|
| mail_from | string |
|
||||||
|
|
||||||
| mail_rcpt | list |
|
| mail_rcpt | list |
|
||||||
@@ -258,6 +268,10 @@
|
|||||||
|
|
||||||
| maxfilesize_large | long long |
|
| maxfilesize_large | long long |
|
||||||
|
|
||||||
|
| timevalue_large | long long |
|
||||||
|
|
||||||
|
| upload_buffersize | long |
|
||||||
|
|
||||||
| timeout | long |
|
| timeout | long |
|
||||||
|
|
||||||
| low_speed_limit | long |
|
| low_speed_limit | long |
|
||||||
@@ -300,9 +314,15 @@
|
|||||||
|
|
||||||
| connect_to | list |
|
| connect_to | list |
|
||||||
|
|
||||||
|
| happy_eyeballs_timeout_ms | long |
|
||||||
|
|
||||||
|
| dns_shuffle_addresses | long |
|
||||||
|
|
||||||
|
| upkeep_interval_ms | long |
|
||||||
|
|
||||||
| sslcert | string |
|
| sslcert | string |
|
||||||
|
|
||||||
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3
|
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||||
|
|
||||||
| ssl_verifypeer | long |
|
| ssl_verifypeer | long |
|
||||||
|
|
||||||
@@ -342,7 +362,7 @@
|
|||||||
|
|
||||||
| gssapi_delegation | long | none, policy_flag, flag
|
| gssapi_delegation | long | none, policy_flag, flag
|
||||||
|
|
||||||
| ssl_options | long | allow_beast, no_revoke
|
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||||
|
|
||||||
| ssl_enable_alpn | long |
|
| ssl_enable_alpn | long |
|
||||||
|
|
||||||
@@ -372,11 +392,11 @@
|
|||||||
|
|
||||||
| proxy_sslkeytype | string |
|
| proxy_sslkeytype | string |
|
||||||
|
|
||||||
| proxy_sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3
|
| proxy_sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||||
|
|
||||||
| proxy_ssl_cipher_list | list |
|
| proxy_ssl_cipher_list | list |
|
||||||
|
|
||||||
| proxy_ssl_options | long | allow_beast, no_revoke
|
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||||
|
|
||||||
| proxy_ssl_verifyhost | long |
|
| proxy_ssl_verifyhost | long |
|
||||||
|
|
||||||
@@ -388,6 +408,10 @@
|
|||||||
|
|
||||||
| proxy_tlsauth_username | string |
|
| proxy_tlsauth_username | string |
|
||||||
|
|
||||||
|
| tls13_ciphers | list |
|
||||||
|
|
||||||
|
| proxy_tls13_ciphers | list |
|
||||||
|
|
||||||
| ssh_auth_types | mask | none, policy_flag, flag
|
| ssh_auth_types | mask | none, policy_flag, flag
|
||||||
|
|
||||||
| ssh_public_keyfile | string |
|
| ssh_public_keyfile | string |
|
||||||
@@ -398,6 +422,8 @@
|
|||||||
|
|
||||||
| ssh_knownhosts | string |
|
| ssh_knownhosts | string |
|
||||||
|
|
||||||
|
| ssh_compression | long |
|
||||||
|
|
||||||
| new_file_perms | long |
|
| new_file_perms | long |
|
||||||
|
|
||||||
| new_directory_perms | long |
|
| new_directory_perms | long |
|
||||||
|
|||||||
@@ -7,8 +7,6 @@
|
|||||||
| Alias | Command | Completion
|
| Alias | Command | Completion
|
||||||
|
|
||||||
| /AAWAY | /allserv /away | -
|
| /AAWAY | /allserv /away | -
|
||||||
| /AME | /allchan /me | -
|
|
||||||
| /AMSG | /allchan /msg * | -
|
|
||||||
| /ANICK | /allserv /nick | -
|
| /ANICK | /allserv /nick | -
|
||||||
| /BEEP | /print -beep | -
|
| /BEEP | /print -beep | -
|
||||||
| /BYE | /quit | -
|
| /BYE | /quit | -
|
||||||
@@ -35,8 +33,9 @@
|
|||||||
| /UMODE | /mode $nick | -
|
| /UMODE | /mode $nick | -
|
||||||
| /V | /command core version | -
|
| /V | /command core version | -
|
||||||
| /W | /who | -
|
| /W | /who | -
|
||||||
| /WC | /window merge | -
|
| /WC | /window close | -
|
||||||
| /WI | /whois | -
|
| /WI | /whois | -
|
||||||
| /WII | /whois $1 $1 | -
|
| /WII | /whois $1 $1 | -
|
||||||
|
| /WM | /window merge | -
|
||||||
| /WW | /whowas | -
|
| /WW | /whowas | -
|
||||||
|===
|
|===
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
** default value: `+0+`
|
** default value: `+0+`
|
||||||
|
|
||||||
* [[option_exec.command.shell]] *exec.command.shell*
|
* [[option_exec.command.shell]] *exec.command.shell*
|
||||||
** description: pass:none[shell to use with command "/exec -sh"; it can be just the name of shell if it is in PATH (for example "bash") or the absolute path to the shell (for example "/bin/bash")]
|
** description: pass:none[shell to use with command "/exec -sh"; it can be just the name of shell if it is in PATH (for example "bash") or the absolute path to the shell (for example "/bin/bash"); if value is empty, "sh" is used (note: content is evaluated, see /help eval)]
|
||||||
** type: string
|
** type: string
|
||||||
** values: any string
|
** values: any string
|
||||||
** default value: `+"sh"+`
|
** default value: `+"${env:SHELL}"+`
|
||||||
|
|||||||
@@ -51,6 +51,8 @@
|
|||||||
d:xxx show only changed options with "xxx" in name
|
d:xxx show only changed options with "xxx" in name
|
||||||
d=xxx show only changed options with "xxx" in value
|
d=xxx show only changed options with "xxx" in value
|
||||||
d==xxx show only changed options with exact value "xxx"
|
d==xxx show only changed options with exact value "xxx"
|
||||||
|
h=xxx show only options with "xxx" in description (translated)
|
||||||
|
he=xxx show only options with "xxx" in description (in English)
|
||||||
=xxx show only options with "xxx" in value
|
=xxx show only options with "xxx" in value
|
||||||
==xxx show only options with exact value "xxx"
|
==xxx show only options with exact value "xxx"
|
||||||
c:xxx show only options matching the evaluated condition "xxx", using following variables: file, section, option, name, parent_name, type, type_en, type_short (bool/int/str/col), type_tiny (b/i/s/c), default_value, default_value_undef, value, quoted_value, value_undef, value_changed, parent_value, min, max, description, description2, description_en, description_en2, string_values
|
c:xxx show only options matching the evaluated condition "xxx", using following variables: file, section, option, name, parent_name, type, type_en, type_short (bool/int/str/col), type_tiny (b/i/s/c), default_value, default_value_undef, value, quoted_value, value_undef, value_changed, parent_value, min, max, description, description2, description_en, description_en2, string_values
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ Examples:
|
|||||||
* `+connect+`: connect to IRC server(s)
|
* `+connect+`: connect to IRC server(s)
|
||||||
|
|
||||||
----
|
----
|
||||||
/connect <server> [<server>...] [-<option>[=<value>]] [-no<option>] [-nojoin] [-switch]
|
/connect [<server> [<server>...]] [-<option>[=<value>]] [-no<option>] [-nojoin] [-switch]
|
||||||
-all|-auto|-open [-nojoin] [-switch]
|
-all|-auto|-open [-nojoin] [-switch]
|
||||||
|
|
||||||
server: server name, which can be:
|
server: server name, which can be:
|
||||||
@@ -373,7 +373,7 @@ reason: reason
|
|||||||
----
|
----
|
||||||
|
|
||||||
[[command_irc_links]]
|
[[command_irc_links]]
|
||||||
* `+links+`: list all servernames which are known by the server answering the query
|
* `+links+`: list all server names which are known by the server answering the query
|
||||||
|
|
||||||
----
|
----
|
||||||
/links [[<target>] <server_mask>]
|
/links [[<target>] <server_mask>]
|
||||||
@@ -726,7 +726,8 @@ reason: reason
|
|||||||
reorder <name> [<name>...]
|
reorder <name> [<name>...]
|
||||||
open <name>|-all [<name>...]
|
open <name>|-all [<name>...]
|
||||||
del|keep <name>
|
del|keep <name>
|
||||||
deloutq|jump|raw
|
deloutq|jump
|
||||||
|
raw [<filter>]
|
||||||
|
|
||||||
list: list servers (without argument, this list is displayed)
|
list: list servers (without argument, this list is displayed)
|
||||||
listfull: list servers with detailed info for each server
|
listfull: list servers with detailed info for each server
|
||||||
@@ -745,6 +746,13 @@ nooption: set boolean option to 'off' (for example: -nossl)
|
|||||||
deloutq: delete messages out queue for all servers (all messages WeeChat is currently sending)
|
deloutq: delete messages out queue for all servers (all messages WeeChat is currently sending)
|
||||||
jump: jump to server buffer
|
jump: jump to server buffer
|
||||||
raw: open buffer with raw IRC data
|
raw: open buffer with raw IRC data
|
||||||
|
filter: set a new filter to see only matching messages (this filter can be used as input in raw IRC data buffer as well); allowed formats are:
|
||||||
|
* show all messages (no filter)
|
||||||
|
xxx show only messages containing "xxx"
|
||||||
|
s:xxx show only messages for server "xxx"
|
||||||
|
f:xxx show only messages with a flag: recv (message received), sent (message sent), modified (message modified by a modifier), redirected (message redirected)
|
||||||
|
m:xxx show only IRC command "xxx"
|
||||||
|
c:xxx show only messages matching the evaluated condition "xxx", using following variables: output of function irc_message_parse (like nick, command, channel, text, etc., see function info_get_hashtable in plugin API reference for the list of all variables), date (format: "yyyy-mm-dd hh:mm:ss"), server, recv, sent, modified, redirected
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
/server listfull
|
/server listfull
|
||||||
@@ -756,6 +764,9 @@ Examples:
|
|||||||
/server reorder freenode2 freenode
|
/server reorder freenode2 freenode
|
||||||
/server del freenode
|
/server del freenode
|
||||||
/server deloutq
|
/server deloutq
|
||||||
|
/server raw
|
||||||
|
/server raw s:freenode
|
||||||
|
/server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo
|
||||||
----
|
----
|
||||||
|
|
||||||
[[command_irc_service]]
|
[[command_irc_service]]
|
||||||
|
|||||||
@@ -44,6 +44,12 @@
|
|||||||
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
||||||
** default value: `+green+`
|
** default value: `+green+`
|
||||||
|
|
||||||
|
* [[option_irc.color.message_kick]] *irc.color.message_kick*
|
||||||
|
** description: pass:none[color for text in kick/kill messages]
|
||||||
|
** type: color
|
||||||
|
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
||||||
|
** default value: `+red+`
|
||||||
|
|
||||||
* [[option_irc.color.message_quit]] *irc.color.message_quit*
|
* [[option_irc.color.message_quit]] *irc.color.message_quit*
|
||||||
** description: pass:none[color for text in part/quit messages]
|
** description: pass:none[color for text in part/quit messages]
|
||||||
** type: color
|
** type: color
|
||||||
@@ -68,6 +74,12 @@
|
|||||||
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
||||||
** default value: `+green+`
|
** default value: `+green+`
|
||||||
|
|
||||||
|
* [[option_irc.color.reason_kick]] *irc.color.reason_kick*
|
||||||
|
** description: pass:none[color for reason in kick/kill messages]
|
||||||
|
** type: color
|
||||||
|
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
||||||
|
** default value: `+default+`
|
||||||
|
|
||||||
* [[option_irc.color.reason_quit]] *irc.color.reason_quit*
|
* [[option_irc.color.reason_quit]] *irc.color.reason_quit*
|
||||||
** description: pass:none[color for reason in part/quit messages]
|
** description: pass:none[color for reason in part/quit messages]
|
||||||
** type: color
|
** type: color
|
||||||
@@ -212,6 +224,12 @@
|
|||||||
** values: on, off
|
** values: on, off
|
||||||
** default value: `+on+`
|
** default value: `+on+`
|
||||||
|
|
||||||
|
* [[option_irc.look.display_pv_warning_address]] *irc.look.display_pv_warning_address*
|
||||||
|
** description: pass:none[display a warning in private buffer if the address of remote nick has changed; this option is disabled by default because servers like bitlbee are causing this warning to be displayed when it is not expected (the address of remote nick changes multiple times on login)]
|
||||||
|
** type: boolean
|
||||||
|
** values: on, off
|
||||||
|
** default value: `+off+`
|
||||||
|
|
||||||
* [[option_irc.look.highlight_channel]] *irc.look.highlight_channel*
|
* [[option_irc.look.highlight_channel]] *irc.look.highlight_channel*
|
||||||
** description: pass:none[comma separated list of words to highlight in channel buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their value), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
|
** description: pass:none[comma separated list of words to highlight in channel buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their value), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
|
||||||
** type: string
|
** type: string
|
||||||
@@ -369,7 +387,7 @@
|
|||||||
** default value: `+merge_with_core+`
|
** default value: `+merge_with_core+`
|
||||||
|
|
||||||
* [[option_irc.look.smart_filter]] *irc.look.smart_filter*
|
* [[option_irc.look.smart_filter]] *irc.look.smart_filter*
|
||||||
** description: pass:none[filter join/part/quit/nick messages for a nick if not speaking for some minutes on channel (you must create a filter on tag "irc_smart_filter")]
|
** description: pass:none[filter join/part/quit/nick messages for a nick if not speaking for some minutes on channel (you must create a filter on tag "irc_smart_filter", see /help filter)]
|
||||||
** type: boolean
|
** type: boolean
|
||||||
** values: on, off
|
** values: on, off
|
||||||
** default value: `+on+`
|
** default value: `+on+`
|
||||||
@@ -446,12 +464,6 @@
|
|||||||
** values: any string
|
** values: any string
|
||||||
** default value: `+"*!$ident@$host"+`
|
** default value: `+"*!$ident@$host"+`
|
||||||
|
|
||||||
* [[option_irc.network.channel_encode]] *irc.network.channel_encode*
|
|
||||||
** description: pass:none[decode/encode channel name inside messages using charset options; it is recommended to keep that off if you use only UTF-8 in channel names; you can enable this option if you are using an exotic charset like ISO in channel names]
|
|
||||||
** type: boolean
|
|
||||||
** values: on, off
|
|
||||||
** default value: `+off+`
|
|
||||||
|
|
||||||
* [[option_irc.network.colors_receive]] *irc.network.colors_receive*
|
* [[option_irc.network.colors_receive]] *irc.network.colors_receive*
|
||||||
** description: pass:none[when off, colors codes are ignored in incoming messages]
|
** description: pass:none[when off, colors codes are ignored in incoming messages]
|
||||||
** type: boolean
|
** type: boolean
|
||||||
@@ -596,6 +608,12 @@
|
|||||||
** values: any 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)]
|
||||||
|
** type: integer
|
||||||
|
** values: message, channel, text
|
||||||
|
** default value: `+message+`
|
||||||
|
|
||||||
* [[option_irc.server_default.command]] *irc.server_default.command*
|
* [[option_irc.server_default.command]] *irc.server_default.command*
|
||||||
** description: pass:none[command(s) to run after connection to server and before auto-join of channels (many commands can be separated by ";", use "\;" for a semicolon, special variables $nick, $channel and $server are replaced by their value) (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)]
|
** description: pass:none[command(s) to run after connection to server and before auto-join of channels (many commands can be separated by ";", use "\;" for a semicolon, special variables $nick, $channel and $server are replaced by their value) (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)]
|
||||||
** type: string
|
** type: string
|
||||||
@@ -746,6 +764,12 @@
|
|||||||
** values: any string
|
** values: any string
|
||||||
** default value: `+""+`
|
** default value: `+""+`
|
||||||
|
|
||||||
|
* [[option_irc.server_default.ssl_password]] *irc.server_default.ssl_password*
|
||||||
|
** description: pass:none[password for SSL certificate's private key (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)]
|
||||||
|
** type: string
|
||||||
|
** values: any string
|
||||||
|
** default value: `+""+`
|
||||||
|
|
||||||
* [[option_irc.server_default.ssl_priorities]] *irc.server_default.ssl_priorities*
|
* [[option_irc.server_default.ssl_priorities]] *irc.server_default.ssl_priorities*
|
||||||
** description: pass:none[string with priorities for gnutls (for syntax, see documentation of function gnutls_priority_init in gnutls manual, common strings are: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
|
** description: pass:none[string with priorities for gnutls (for syntax, see documentation of function gnutls_priority_init in gnutls manual, common strings are: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
|
||||||
** type: string
|
** type: string
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
** default value: `+default+`
|
** default value: `+default+`
|
||||||
|
|
||||||
* [[option_logger.color.backlog_line]] *logger.color.backlog_line*
|
* [[option_logger.color.backlog_line]] *logger.color.backlog_line*
|
||||||
** description: pass:none[color for backlog lines]
|
** description: pass:none[color for backlog lines, used only if the option logger.file.color_lines is off]
|
||||||
** type: color
|
** type: color
|
||||||
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
||||||
** default value: `+default+`
|
** default value: `+default+`
|
||||||
@@ -20,6 +20,12 @@
|
|||||||
** values: on, off
|
** values: on, off
|
||||||
** default value: `+on+`
|
** default value: `+on+`
|
||||||
|
|
||||||
|
* [[option_logger.file.color_lines]] *logger.file.color_lines*
|
||||||
|
** description: pass:none[use ANSI color codes in lines written in log files and display backlog lines with these colors]
|
||||||
|
** type: boolean
|
||||||
|
** values: on, off
|
||||||
|
** default value: `+off+`
|
||||||
|
|
||||||
* [[option_logger.file.flush_delay]] *logger.file.flush_delay*
|
* [[option_logger.file.flush_delay]] *logger.file.flush_delay*
|
||||||
** description: pass:none[number of seconds between flush of log files (0 = write in log files immediately for each line printed)]
|
** description: pass:none[number of seconds between flush of log files (0 = write in log files immediately for each line printed)]
|
||||||
** type: integer
|
** type: integer
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
* `+script+`: WeeChat script manager
|
* `+script+`: WeeChat script manager
|
||||||
|
|
||||||
----
|
----
|
||||||
/script list [-o|-i]
|
/script list [-o|-ol|-i|-il]
|
||||||
search <text>
|
search <text>
|
||||||
show <script>
|
show <script>
|
||||||
load|unload|reload <script> [<script>...]
|
load|unload|reload <script> [<script>...]
|
||||||
@@ -16,8 +16,10 @@
|
|||||||
update
|
update
|
||||||
|
|
||||||
list: list loaded scripts (all languages)
|
list: list loaded scripts (all languages)
|
||||||
-o: send list of loaded scripts to buffer
|
-o: send list of loaded scripts to buffer (string in English)
|
||||||
-i: copy list of loaded scripts in command line (for sending to buffer)
|
-ol: send list of loaded scripts to buffer (translated string)
|
||||||
|
-i: copy list of loaded scripts in command line (for sending to buffer) (string in English)
|
||||||
|
-il: copy list of loaded scripts in command line (for sending to buffer) (translated string)
|
||||||
search: search scripts by tags, language (python, perl, ...), filename extension (py, pl, ...) or text; result is displayed on scripts buffer
|
search: search scripts by tags, language (python, perl, ...), filename extension (py, pl, ...) or text; result is displayed on scripts buffer
|
||||||
show: show detailed info about a script
|
show: show detailed info about a script
|
||||||
load: load script(s)
|
load: load script(s)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
** description: pass:none[comma separated list of commands for which spell checking is enabled (spell checking is disabled for all other commands)]
|
** description: pass:none[comma separated list of commands for which spell checking is enabled (spell checking is disabled for all other commands)]
|
||||||
** type: string
|
** type: string
|
||||||
** values: any string
|
** values: any string
|
||||||
** default value: `+"ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"+`
|
** default value: `+"away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"+`
|
||||||
|
|
||||||
* [[option_spell.check.default_dict]] *spell.check.default_dict*
|
* [[option_spell.check.default_dict]] *spell.check.default_dict*
|
||||||
** description: pass:none[default dictionary (or comma separated list of dictionaries) to use when buffer has no dictionary defined (leave blank to disable spell checker on buffers for which you didn't explicitly enabled it)]
|
** description: pass:none[default dictionary (or comma separated list of dictionaries) to use when buffer has no dictionary defined (leave blank to disable spell checker on buffers for which you didn't explicitly enabled it)]
|
||||||
|
|||||||
@@ -214,6 +214,11 @@ Default keys in cursor mode on nicklist:
|
|||||||
q open query with nick (/query)
|
q open query with nick (/query)
|
||||||
w query information about user (/whois)
|
w query information about user (/whois)
|
||||||
|
|
||||||
|
Other default keys in cursor mode:
|
||||||
|
arrow move cursor
|
||||||
|
alt+arrow move cursor to the next area
|
||||||
|
enter exit cursor mode
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
go to nicklist:
|
go to nicklist:
|
||||||
/cursor go nicklist
|
/cursor go nicklist
|
||||||
@@ -296,16 +301,19 @@ Some variables are replaced in expression, using the format ${variable}, variabl
|
|||||||
3. a string with chars to hide (format: "hide:char,string")
|
3. a string with chars to hide (format: "hide:char,string")
|
||||||
4. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
|
4. 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")
|
or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
|
||||||
5. a reversed string (format: "rev:xxx")
|
5. a reversed string (format: "rev:xxx" or "revscr:xxx")
|
||||||
6. a repeated string (format: "repeat:count,string")
|
6. a repeated string (format: "repeat:count,string")
|
||||||
7. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
7. length of a string (format: "length:xxx" or "lengthscr:xxx")
|
||||||
8. an info (format: "info:name,arguments", arguments are optional)
|
8. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
||||||
9. current date/time (format: "date" or "date:format")
|
9. a modifier (format: "modifier:name,data,string")
|
||||||
10. an environment variable (format: "env:XXX")
|
10. an info (format: "info:name,arguments", arguments are optional)
|
||||||
11. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
11. current date/time (format: "date" or "date:format")
|
||||||
12. an option (format: "file.section.option")
|
12. an environment variable (format: "env:XXX")
|
||||||
13. a local variable in buffer
|
13. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
||||||
14. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
|
14. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
|
||||||
|
15. an option (format: "file.section.option")
|
||||||
|
16. a local variable in buffer
|
||||||
|
17. 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:
|
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.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, for example:
|
hdata[list].var1.var2...: start with a hdata using a list, for example:
|
||||||
@@ -332,6 +340,8 @@ Examples (simple strings):
|
|||||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||||
/eval -n ${rev:Hello} ==> olleH
|
/eval -n ${rev:Hello} ==> olleH
|
||||||
/eval -n ${repeat:5,-} ==> -----
|
/eval -n ${repeat:5,-} ==> -----
|
||||||
|
/eval -n ${length:test} ==> 4
|
||||||
|
/eval -n ${calc:(5+2)*3} ==> 21
|
||||||
|
|
||||||
Examples (conditions):
|
Examples (conditions):
|
||||||
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
||||||
@@ -920,7 +930,7 @@ It is possible to restore WeeChat session on another machine if you copy the con
|
|||||||
* `+uptime+`: show WeeChat uptime
|
* `+uptime+`: show WeeChat uptime
|
||||||
|
|
||||||
----
|
----
|
||||||
/uptime [-o | -ol]
|
/uptime [-o|-ol]
|
||||||
|
|
||||||
-o: send uptime to current buffer as input (English string)
|
-o: send uptime to current buffer as input (English string)
|
||||||
-ol: send uptime to current buffer as input (translated string)
|
-ol: send uptime to current buffer as input (translated string)
|
||||||
@@ -930,7 +940,7 @@ It is possible to restore WeeChat session on another machine if you copy the con
|
|||||||
* `+version+`: show WeeChat version and compilation date
|
* `+version+`: show WeeChat version and compilation date
|
||||||
|
|
||||||
----
|
----
|
||||||
/version [-o | -ol]
|
/version [-o|-ol]
|
||||||
|
|
||||||
-o: send version to current buffer as input (English string)
|
-o: send version to current buffer as input (English string)
|
||||||
-ol: send version to current buffer as input (translated string)
|
-ol: send version to current buffer as input (translated string)
|
||||||
@@ -974,6 +984,7 @@ Examples:
|
|||||||
resize [-window <number>] [h|v][+|-]<pct>
|
resize [-window <number>] [h|v][+|-]<pct>
|
||||||
balance
|
balance
|
||||||
merge [-window <number>] [all]
|
merge [-window <number>] [all]
|
||||||
|
close [-window <number>]
|
||||||
page_up|page_down [-window <number>]
|
page_up|page_down [-window <number>]
|
||||||
refresh
|
refresh
|
||||||
scroll [-window <number>] [+|-]<value>[s|m|h|d|M|y]
|
scroll [-window <number>] [+|-]<value>[s|m|h|d|M|y]
|
||||||
@@ -998,6 +1009,7 @@ Examples:
|
|||||||
if "h" or "v" is specified, the resize affects the nearest parent window with a split of this type (horizontal/vertical)
|
if "h" or "v" is specified, the resize affects the nearest parent window with a split of this type (horizontal/vertical)
|
||||||
balance: balance the sizes of all windows
|
balance: balance the sizes of all windows
|
||||||
merge: merge window with another (all = keep only one window)
|
merge: merge window with another (all = keep only one window)
|
||||||
|
close: close window
|
||||||
page_up: scroll one page up
|
page_up: scroll one page up
|
||||||
page_down: scroll one page down
|
page_down: scroll one page down
|
||||||
refresh: refresh screen
|
refresh: refresh screen
|
||||||
@@ -1034,8 +1046,10 @@ Examples:
|
|||||||
/window resize 75
|
/window resize 75
|
||||||
resize vertical split, add 10% in size:
|
resize vertical split, add 10% in size:
|
||||||
/window resize v+10
|
/window resize v+10
|
||||||
remove the split:
|
remove the split, keep the current window:
|
||||||
/window merge
|
/window merge
|
||||||
|
close the current window:
|
||||||
|
/window close
|
||||||
enable bare display for 2 seconds:
|
enable bare display for 2 seconds:
|
||||||
/window bare 2
|
/window bare 2
|
||||||
----
|
----
|
||||||
|
|||||||
@@ -915,17 +915,23 @@
|
|||||||
** default value: `+100+`
|
** default value: `+100+`
|
||||||
|
|
||||||
* [[option_weechat.look.nick_color_force]] *weechat.look.nick_color_force*
|
* [[option_weechat.look.nick_color_force]] *weechat.look.nick_color_force*
|
||||||
** description: pass:none[force color for some nicks: hash computed with nickname to find color will not be used for these nicks (format is: "nick1:color1;nick2:color2"); look up for nicks is with exact case then lower case, so it's possible to use only lower case for nicks in this option]
|
** description: pass:none[force color for some nicks: hash computed with nickname to find color will not be used for these nicks (format is: "nick1:color1;nick2:color2"); look up for nicks is with exact case then lower case, so it's possible to use only lower case for nicks in this option; color can include background with the format "text,background", for example "yellow,red"]
|
||||||
** type: string
|
** type: string
|
||||||
** values: any string
|
** values: any string
|
||||||
** default value: `+""+`
|
** default value: `+""+`
|
||||||
|
|
||||||
* [[option_weechat.look.nick_color_hash]] *weechat.look.nick_color_hash*
|
* [[option_weechat.look.nick_color_hash]] *weechat.look.nick_color_hash*
|
||||||
** description: pass:none[hash algorithm used to find the color for a nick: djb2 = variant of djb2 (position of letters matters: anagrams of a nick have different color), sum = sum of letters]
|
** description: pass:none[hash algorithm used to find the color for a nick: djb2 = variant of djb2 (position of letters matters: anagrams of a nick have different color), djb2_32 = variant of djb2 using 32-bit instead of 64-bit integer, sum = sum of letters, sum_32 = sum of letters using 32-bit instead of 64-bit integer]
|
||||||
** type: integer
|
** type: integer
|
||||||
** values: djb2, sum
|
** values: djb2, sum, djb2_32, sum_32
|
||||||
** default value: `+djb2+`
|
** default value: `+djb2+`
|
||||||
|
|
||||||
|
* [[option_weechat.look.nick_color_hash_salt]] *weechat.look.nick_color_hash_salt*
|
||||||
|
** description: pass:none[salt for the hash algorithm used to find nick colors (the nickname is appended to this salt and the hash algorithm operates on this string); modifying this shuffles nick colors]
|
||||||
|
** type: string
|
||||||
|
** values: any string
|
||||||
|
** default value: `+""+`
|
||||||
|
|
||||||
* [[option_weechat.look.nick_color_stop_chars]] *weechat.look.nick_color_stop_chars*
|
* [[option_weechat.look.nick_color_stop_chars]] *weechat.look.nick_color_stop_chars*
|
||||||
** description: pass:none[chars used to stop in nick when computing color with letters of nick (at least one char outside this list must be in string before stopping) (example: nick "|nick|away" with "|" in chars will return color of nick "|nick"); this option has an impact on option weechat.look.nick_color_force, so the nick for the forced color must not contain the chars ignored by this option]
|
** description: pass:none[chars used to stop in nick when computing color with letters of nick (at least one char outside this list must be in string before stopping) (example: nick "|nick|away" with "|" in chars will return color of nick "|nick"); this option has an impact on option weechat.look.nick_color_force, so the nick for the forced color must not contain the chars ignored by this option]
|
||||||
** type: string
|
** type: string
|
||||||
|
|||||||
@@ -104,6 +104,12 @@
|
|||||||
** values: any string
|
** values: any string
|
||||||
** default value: `+"%h/xfer"+`
|
** default value: `+"%h/xfer"+`
|
||||||
|
|
||||||
|
* [[option_xfer.file.download_temporary_suffix]] *xfer.file.download_temporary_suffix*
|
||||||
|
** description: pass:none[temporary filename suffix used during the transfer for a file received, it is removed after successful transfer; if empty string, no filename suffix is used during the transfer]
|
||||||
|
** type: string
|
||||||
|
** values: any string
|
||||||
|
** default value: `+".part"+`
|
||||||
|
|
||||||
* [[option_xfer.file.upload_path]] *xfer.file.upload_path*
|
* [[option_xfer.file.upload_path]] *xfer.file.upload_path*
|
||||||
** description: pass:none[path for reading files when sending (when no path is specified by user): "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default) (note: content is evaluated, see /help eval)]
|
** description: pass:none[path for reading files when sending (when no path is specified by user): "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default) (note: content is evaluated, see /help eval)]
|
||||||
** type: string
|
** type: string
|
||||||
|
|||||||
+50
-27
@@ -120,6 +120,7 @@ WeeChat "core" is located in following directories:
|
|||||||
| core/ | Core functions: entry point, internal structures.
|
| core/ | Core functions: entry point, internal structures.
|
||||||
| wee-arraylist.c | Array lists.
|
| wee-arraylist.c | Array lists.
|
||||||
| wee-backtrace.c | Display a backtrace after a crash.
|
| wee-backtrace.c | Display a backtrace after a crash.
|
||||||
|
| wee-calc.c | Calculate result of expressions.
|
||||||
| wee-command.c | WeeChat core commands.
|
| wee-command.c | WeeChat core commands.
|
||||||
| wee-completion.c | Default completions.
|
| wee-completion.c | Default completions.
|
||||||
| wee-config-file.c | Configuration file management.
|
| wee-config-file.c | Configuration file management.
|
||||||
@@ -236,6 +237,7 @@ WeeChat "core" is located in following directories:
|
|||||||
| buflist-bar-item.c | Buflist bar items.
|
| buflist-bar-item.c | Buflist bar items.
|
||||||
| buflist-command.c | Buflist commands.
|
| buflist-command.c | Buflist commands.
|
||||||
| buflist-config.c | Buflist config options (file buflist.conf).
|
| buflist-config.c | Buflist config options (file buflist.conf).
|
||||||
|
| buflist-info.c | Buflist info/infolists/hdata.
|
||||||
| buflist-mouse.c | Buflist mouse actions.
|
| buflist-mouse.c | Buflist mouse actions.
|
||||||
| charset/ | Charset plugin.
|
| charset/ | Charset plugin.
|
||||||
| charset.c | Charset functions.
|
| charset.c | Charset functions.
|
||||||
@@ -295,6 +297,7 @@ WeeChat "core" is located in following directories:
|
|||||||
| weechat-js-v8.cpp | JavaScript v8 functions.
|
| weechat-js-v8.cpp | JavaScript v8 functions.
|
||||||
| logger/ | Logger plugin.
|
| logger/ | Logger plugin.
|
||||||
| logger.c | Main logger functions.
|
| logger.c | Main logger functions.
|
||||||
|
| logger-backlog.c | Logger backlog functions.
|
||||||
| logger-buffer.c | Logger buffer list management.
|
| logger-buffer.c | Logger buffer list management.
|
||||||
| logger-command.c | Logger commands.
|
| logger-command.c | Logger commands.
|
||||||
| logger-config.c | Logger config options (file logger.conf).
|
| logger-config.c | Logger config options (file logger.conf).
|
||||||
@@ -387,6 +390,7 @@ WeeChat "core" is located in following directories:
|
|||||||
| test-plugins.cpp | Tests: plugins.
|
| test-plugins.cpp | Tests: plugins.
|
||||||
| core/ | Root of unit tests for core.
|
| core/ | Root of unit tests for core.
|
||||||
| test-core-arraylist.cpp | Tests: arraylists.
|
| test-core-arraylist.cpp | Tests: arraylists.
|
||||||
|
| test-core-calc.cpp | Tests: calculation of expressions.
|
||||||
| test-core-eval.cpp | Tests: evaluation of expressions.
|
| test-core-eval.cpp | Tests: evaluation of expressions.
|
||||||
| test-core-hashtble.cpp | Tests: hashtables.
|
| test-core-hashtble.cpp | Tests: hashtables.
|
||||||
| test-core-hdata.cpp | Tests: hdata.
|
| test-core-hdata.cpp | Tests: hdata.
|
||||||
@@ -399,10 +403,17 @@ WeeChat "core" is located in following directories:
|
|||||||
| test-core-utf8.cpp | Tests: UTF-8.
|
| test-core-utf8.cpp | Tests: UTF-8.
|
||||||
| test-core-util.cpp | Tests: utility functions.
|
| test-core-util.cpp | Tests: utility functions.
|
||||||
| gui/ | Root of unit tests for interfaces.
|
| gui/ | Root of unit tests for interfaces.
|
||||||
|
| test-gui-color.cpp | Tests: colors.
|
||||||
| test-gui-line.cpp | Tests: lines.
|
| test-gui-line.cpp | Tests: lines.
|
||||||
|
| test-gui-nick.cpp | Tests: nicks.
|
||||||
| plugins/ | Root of unit tests for plugins.
|
| plugins/ | Root of unit tests for plugins.
|
||||||
| irc/ | Root of unit tests for IRC plugin.
|
| irc/ | Root of unit tests for IRC plugin.
|
||||||
|
| test-irc-color.cpp | Tests: IRC colors.
|
||||||
| test-irc-config.cpp | Tests: IRC configuration.
|
| 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-protocol.cpp | Tests: IRC protocol.
|
||||||
|
|
||||||
|===
|
|===
|
||||||
@@ -873,34 +884,46 @@ All combinations are summarized in this table:
|
|||||||
|
|
||||||
[width="100%",cols="4,2,2,8",options="header"]
|
[width="100%",cols="4,2,2,8",options="header"]
|
||||||
|===
|
|===
|
||||||
| Code | Example | Areas | Description
|
| Code | Example | Areas | Description
|
||||||
| [hex]#19# + STD | [hex]#19# `+01+` | chat + bars | Set attributes and color using option, see table below.
|
| [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# + 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)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# + "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" + 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# + "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)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)EXT | [hex]#19# `+*@00214+` | chat + bars | Set foreground (extended color).
|
||||||
| [hex]#19# + "*" + (A)STD + "," + STD | [hex]#19# `+*08,05+` | chat + bars | Set foreground/background (WeeChat colors).
|
| [hex]#19# + "*" + (A)STD + "," + STD ^(1)^ | [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)STD + "," + EXT ^(1)^ | [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 + "," + STD ^(1)^ | [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# + "*" + (A)EXT + "," + EXT ^(1)^ | [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# + "*" + (A)STD + "~" + STD | [hex]#19# `+*08~05+` | chat + bars | Set foreground/background (WeeChat colors).
|
||||||
| [hex]#19# + "b" + "D" | [hex]#19# `+bD+` | bars | Set bar delimiter color.
|
| [hex]#19# + "*" + (A)STD + "~" + EXT | [hex]#19# `+*01~@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
|
||||||
| [hex]#19# + "b" + "B" | [hex]#19# `+bB+` | bars | Set bar background color.
|
| [hex]#19# + "*" + (A)EXT + "~" + STD | [hex]#19# `+*@00214~05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
|
||||||
| [hex]#19# + "b" + "_" | [hex]#19# `+b_+` | input bar | Start input char (used only in item "input_text").
|
| [hex]#19# + "*" + (A)EXT + "~" + EXT | [hex]#19# `+*@00214~@00017+` | chat + bars | Set foreground/background (extended colors).
|
||||||
| [hex]#19# + "b" + "-" | [hex]#19# `+b-+` | input bar | Start input hidden char (used only in item "input_text").
|
| [hex]#19# + "b" + "F" | [hex]#19# `+bF+` | bars | Set bar foreground color.
|
||||||
| [hex]#19# + "b" + "#" | [hex]#19# `+b#+` | input bar | Move cursor char (used only in item "input_text").
|
| [hex]#19# + "b" + "D" | [hex]#19# `+bD+` | bars | Set bar delimiter color.
|
||||||
| [hex]#19# + "b" + "i" | [hex]#19# `+bi+` | bars | Start item.
|
| [hex]#19# + "b" + "B" | [hex]#19# `+bB+` | bars | Set bar background color.
|
||||||
| [hex]#19# + "b" + "l" (lower L) | [hex]#19# `+bl+` | bars | Start line item.
|
| [hex]#19# + "b" + "_" | [hex]#19# `+b_+` | input bar | Start input char (used only in item "input_text").
|
||||||
| [hex]#19# + "E" | [hex]#19# `+E+` | chat + bars | Emphasize text _(WeeChat ≥ 0.4.2)_.
|
| [hex]#19# + "b" + "-" | [hex]#19# `+b-+` | input bar | Start input hidden char (used only in item "input_text").
|
||||||
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + bars | Reset color (keep attributes).
|
| [hex]#19# + "b" + "#" | [hex]#19# `+b#+` | input bar | Move cursor char (used only in item "input_text").
|
||||||
| [hex]#1A# + ATTR | [hex]#1A# `+*+` | chat + bars | Set attribute.
|
| [hex]#19# + "b" + "i" | [hex]#19# `+bi+` | bars | Start item.
|
||||||
| [hex]#1B# + ATTR | [hex]#1B# `+*+` | chat + bars | Remove attribute.
|
| [hex]#19# + "b" + "l" (lower L) | [hex]#19# `+bl+` | bars | Start line item.
|
||||||
| [hex]#1C# | [hex]#1C# | chat + bars | Reset attributes and color.
|
| [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.
|
||||||
|===
|
|===
|
||||||
|
|
||||||
|
[NOTE]
|
||||||
|
^(1)^ The use of comma as separator was used until WeeChat 2.5. +
|
||||||
|
With WeeChat ≥ 2.6, a tilde is used to separate foreground from background
|
||||||
|
color. If you are developing a WeeChat relay client and want to be compatible
|
||||||
|
with all WeeChat versions, you should support both separators (for example if a
|
||||||
|
user with WeeChat ≤ 2.5 runs `/upgrade` to a version ≥ 2.6, both separators
|
||||||
|
could be used at same time in buffers).
|
||||||
|
|
||||||
Color codes using options (see _t_gui_color_enum_, in file
|
Color codes using options (see _t_gui_color_enum_, in file
|
||||||
_src/gui/gui-color.h_):
|
_src/gui/gui-color.h_):
|
||||||
|
|
||||||
@@ -1086,7 +1109,7 @@ Examples of commit messages:
|
|||||||
irc: add command /unquiet (closes #36)
|
irc: add command /unquiet (closes #36)
|
||||||
core: add callback "nickcmp" for nick comparison in buffers
|
core: add callback "nickcmp" for nick comparison in buffers
|
||||||
irc: fix freeze when reading on socket with SSL enabled (bug #35097)
|
irc: fix freeze when reading on socket with SSL enabled (bug #35097)
|
||||||
ruby: add detection of ruby version 1.9.3 in cmake
|
ruby: add detection of ruby version 1.9.3 in CMake
|
||||||
python: fix crash when unloading a script without pointer to interpreter
|
python: fix crash when unloading a script without pointer to interpreter
|
||||||
core: update Japanese translations (patch #7783)
|
core: update Japanese translations (patch #7783)
|
||||||
----
|
----
|
||||||
|
|||||||
@@ -47,10 +47,10 @@ https://weechat.org/about/interfaces
|
|||||||
=== I can't compile WeeChat after cloning git repository, why?
|
=== I can't compile WeeChat after cloning git repository, why?
|
||||||
|
|
||||||
The recommended way to compile WeeChat is with
|
The recommended way to compile WeeChat is with
|
||||||
link:weechat_user.en.html#compile_with_cmake[cmake].
|
link:weechat_user.en.html#compile_with_cmake[CMake].
|
||||||
|
|
||||||
If you're compiling with link:weechat_user.en.html#compile_with_autotools[autotools]
|
If you're compiling with link:weechat_user.en.html#compile_with_autotools[autotools]
|
||||||
(and not cmake), check that you have latest version of autoconf and automake.
|
(and not CMake), check that you have latest version of autoconf and automake.
|
||||||
|
|
||||||
The other way is to install the "devel package", which needs less dependencies.
|
The other way is to install the "devel package", which needs less dependencies.
|
||||||
This package is built almost every day using git repository. Note that this
|
This package is built almost every day using git repository. Note that this
|
||||||
@@ -69,7 +69,7 @@ brew info weechat
|
|||||||
You can install WeeChat with this command:
|
You can install WeeChat with this command:
|
||||||
|
|
||||||
----
|
----
|
||||||
brew install weechat --with-aspell --with-curl --with-python --with-perl --with-ruby --with-lua --with-guile
|
brew install weechat
|
||||||
----
|
----
|
||||||
|
|
||||||
[[lost]]
|
[[lost]]
|
||||||
|
|||||||
+532
-195
File diff suppressed because it is too large
Load Diff
@@ -221,12 +221,15 @@ option name):
|
|||||||
----
|
----
|
||||||
|
|
||||||
[[connect_to_irc_server]]
|
[[connect_to_irc_server]]
|
||||||
== Connect to IRC server and auto-join channels
|
== Connect to IRC server
|
||||||
|
|
||||||
----
|
----
|
||||||
/connect freenode
|
/connect freenode
|
||||||
----
|
----
|
||||||
|
|
||||||
|
With this command, WeeChat connects to the freenode server and auto-joins the
|
||||||
|
channels configured in the "autojoin" server option.
|
||||||
|
|
||||||
[NOTE]
|
[NOTE]
|
||||||
This command can be used to create and connect to a new server without using the
|
This command can be used to create and connect to a new server without using the
|
||||||
`/server` command (see `/help connect`).
|
`/server` command (see `/help connect`).
|
||||||
|
|||||||
@@ -3,8 +3,9 @@
|
|||||||
:email: flashcode@flashtux.org
|
:email: flashcode@flashtux.org
|
||||||
:lang: en
|
:lang: en
|
||||||
:toc: left
|
:toc: left
|
||||||
:toclevels: 3
|
:toclevels: 4
|
||||||
:sectnums:
|
:sectnums:
|
||||||
|
:sectnumlevels: 3
|
||||||
:docinfo1:
|
:docinfo1:
|
||||||
|
|
||||||
|
|
||||||
@@ -67,22 +68,89 @@ link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference].
|
|||||||
|
|
||||||
==== Python
|
==== Python
|
||||||
|
|
||||||
* You have to `import weechat`.
|
===== Module
|
||||||
* Functions `+print*+` are called `+prnt*+` in python (because _print_ is reserved
|
|
||||||
keyword).
|
WeeChat defines a `weechat` module which must be imported with `import weechat`.
|
||||||
* Functions are called with `weechat.xxx(arg1, arg2, ...)`.
|
|
||||||
|
===== Functions
|
||||||
|
|
||||||
|
Functions are called with `weechat.xxx(arg1, arg2, ...)`.
|
||||||
|
|
||||||
|
Functions `+print*+` are called `+prnt*+` in python (because `print` was a
|
||||||
|
reserved keyword in Python 2).
|
||||||
|
|
||||||
|
===== Strings received in callbacks
|
||||||
|
|
||||||
|
In Python 3 and with WeeChat ≥ 2.7, the strings received in callbacks have type
|
||||||
|
`str` if the string has valid UTF-8 data (which is the most common case),
|
||||||
|
or `bytes` if the string is not UTF-8 valid. So the callback should take care
|
||||||
|
about this type if some invalid UTF-8 content can be received.
|
||||||
|
|
||||||
|
Some invalid UTF-8 data may be received in these cases, so the callback can
|
||||||
|
receive a string of type `str` or `bytes` (this list is not exhaustive):
|
||||||
|
|
||||||
|
[width="100%",cols="3m,3m,3m,8",options="header"]
|
||||||
|
|===
|
||||||
|
| API function | Arguments | Examples | Description
|
||||||
|
|
||||||
|
| hook_modifier |
|
||||||
|
irc_in_yyy |
|
||||||
|
pass:[irc_in_privmsg] +
|
||||||
|
pass:[irc_in_notice] |
|
||||||
|
A message received in IRC plugin, before it is decoded to UTF-8 (used
|
||||||
|
internally). +
|
||||||
|
+
|
||||||
|
It is recommended to use modifier `irc_in2_yyy` instead, the string received
|
||||||
|
is always UTF-8 valid. +
|
||||||
|
See function `hook_modifier` in the
|
||||||
|
link:weechat_plugin_api.en.html#_hook_modifier[WeeChat plugin API reference].
|
||||||
|
|
||||||
|
| hook_signal |
|
||||||
|
xxx,irc_out_yyy +
|
||||||
|
xxx,irc_outtags_yyy |
|
||||||
|
pass:[*,irc_out_privmsg] +
|
||||||
|
pass:[*,irc_out_notice] +
|
||||||
|
pass:[*,irc_outtags_privmsg] +
|
||||||
|
pass:[*,irc_outtags_notice] |
|
||||||
|
A message sent by IRC plugin, after it is encoded to the `encode` charset
|
||||||
|
defined by the user (if different from the default `UTF-8`). +
|
||||||
|
+
|
||||||
|
It is recommended to use signal `xxx,irc_out1_yyy` instead, the string received
|
||||||
|
is always UTF-8 valid. +
|
||||||
|
See function `hook_signal` in the
|
||||||
|
link:weechat_plugin_api.en.html#_hook_signal[WeeChat plugin API reference].
|
||||||
|
|
||||||
|
| hook_process +
|
||||||
|
hook_process_hashtable |
|
||||||
|
- |
|
||||||
|
- |
|
||||||
|
Output of the command, sent to the callback, can contain invalid UTF-8 data.
|
||||||
|
|
||||||
|
|===
|
||||||
|
|
||||||
|
In Python 2, which is now deprecated and should not be used any more, the
|
||||||
|
strings sent to callbacks are always of type `str`, and may contain invalid
|
||||||
|
UTF-8 data, in the cases mentioned above.
|
||||||
|
|
||||||
==== Perl
|
==== Perl
|
||||||
|
|
||||||
* Functions are called with `weechat::xxx(arg1, arg2, ...);`.
|
===== Functions
|
||||||
|
|
||||||
|
Functions are called with `weechat::xxx(arg1, arg2, ...);`.
|
||||||
|
|
||||||
==== Ruby
|
==== Ruby
|
||||||
|
|
||||||
* You have to define _weechat_init_ and call _register_ inside.
|
===== Initialization
|
||||||
* Functions are called with `Weechat.xxx(arg1, arg2, ...)`.
|
|
||||||
* Due to a limitation of Ruby (15 arguments max by function), the function
|
You have to define _weechat_init_ and call _register_ inside.
|
||||||
`Weechat.config_new_option` receives the callbacks in an array of 6 strings
|
|
||||||
(3 callbacks + 3 data strings), so a call to this function looks like:
|
===== Functions
|
||||||
|
|
||||||
|
Functions are called with `Weechat.xxx(arg1, arg2, ...)`.
|
||||||
|
|
||||||
|
Due to a limitation of Ruby (15 arguments max by function), the function
|
||||||
|
`Weechat.config_new_option` receives the callbacks in an array of 6 strings
|
||||||
|
(3 callbacks + 3 data strings), so a call to this function looks like:
|
||||||
|
|
||||||
[source,ruby]
|
[source,ruby]
|
||||||
----
|
----
|
||||||
@@ -92,29 +160,41 @@ Weechat.config_new_option(config, section, "name", "string", "description of opt
|
|||||||
|
|
||||||
==== Lua
|
==== Lua
|
||||||
|
|
||||||
* Functions are called with `weechat.xxx(arg1, arg2, ...)`.
|
===== Functions
|
||||||
|
|
||||||
|
Functions are called with `weechat.xxx(arg1, arg2, ...)`.
|
||||||
|
|
||||||
==== Tcl
|
==== Tcl
|
||||||
|
|
||||||
* Functions are called with `weechat::xxx arg1 arg2 ...`.
|
===== Functions
|
||||||
|
|
||||||
|
Functions are called with `weechat::xxx arg1 arg2 ...`.
|
||||||
|
|
||||||
==== Guile (Scheme)
|
==== Guile (Scheme)
|
||||||
|
|
||||||
* Functions are called with `(weechat:xxx arg1 arg2 ...)`.
|
===== Functions
|
||||||
* Following functions take one list of arguments (instead of many arguments
|
|
||||||
for other functions), because number of arguments exceed number of allowed
|
Functions are called with `(weechat:xxx arg1 arg2 ...)`.
|
||||||
arguments in Guile:
|
|
||||||
** config_new_section
|
The following functions take one list of arguments (instead of many arguments
|
||||||
** config_new_option
|
for other functions), because number of arguments exceed number of allowed
|
||||||
** bar_new
|
arguments in Guile:
|
||||||
|
|
||||||
|
* config_new_section
|
||||||
|
* config_new_option
|
||||||
|
* bar_new
|
||||||
|
|
||||||
==== JavaScript
|
==== JavaScript
|
||||||
|
|
||||||
* Functions are called with `weechat.xxx(arg1, arg2, ...);`.
|
===== Functions
|
||||||
|
|
||||||
|
Functions are called with `weechat.xxx(arg1, arg2, ...);`.
|
||||||
|
|
||||||
==== PHP
|
==== PHP
|
||||||
|
|
||||||
* Functions are called with `weechat_xxx(arg1, arg2, ...);`.
|
===== Functions
|
||||||
|
|
||||||
|
Functions are called with `weechat_xxx(arg1, arg2, ...);`.
|
||||||
|
|
||||||
[[register_function]]
|
[[register_function]]
|
||||||
=== Register function
|
=== Register function
|
||||||
@@ -1081,14 +1161,20 @@ weechat.prnt("", "value of option weechat.color.chat_delimiters is: %s"
|
|||||||
[[irc_catch_messages]]
|
[[irc_catch_messages]]
|
||||||
==== Catch messages
|
==== Catch messages
|
||||||
|
|
||||||
IRC plugin sends two signals for a message received (`xxx` is IRC internal
|
IRC plugin sends four signals for a message received (`xxx` is IRC internal
|
||||||
server name, `yyy` is IRC command name like JOIN, QUIT, PRIVMSG, 301, ..):
|
server name, `yyy` is IRC command name like JOIN, QUIT, PRIVMSG, 301, ..):
|
||||||
|
|
||||||
xxxx,irc_in_yyy::
|
xxx,irc_in_yyy::
|
||||||
signal sent before processing message
|
signal sent before processing message, only if message is *not* ignored
|
||||||
|
|
||||||
xxx,irc_in2_yyy::
|
xxx,irc_in2_yyy::
|
||||||
signal sent after processing message
|
signal sent after processing message, only if message is *not* ignored
|
||||||
|
|
||||||
|
xxx,irc_raw_in_yyy::
|
||||||
|
signal sent before processing message, even if message is ignored
|
||||||
|
|
||||||
|
xxx,irc_raw_in2_yyy::
|
||||||
|
signal sent after processing message, even if message is ignored
|
||||||
|
|
||||||
[source,python]
|
[source,python]
|
||||||
----
|
----
|
||||||
@@ -1110,8 +1196,16 @@ weechat.hook_signal("*,irc_in2_join", "join_cb", "")
|
|||||||
[[irc_modify_messages]]
|
[[irc_modify_messages]]
|
||||||
==== Modify messages
|
==== Modify messages
|
||||||
|
|
||||||
IRC plugin sends a "modifier" called "irc_in_xxx" ("xxx" is IRC command) for a
|
IRC plugin sends two "modifiers" for a message received ("xxx" is IRC command),
|
||||||
message received, so that you can modify it.
|
so that you can modify it:
|
||||||
|
|
||||||
|
irc_in_xxx::
|
||||||
|
modifier sent before charset decoding: use with caution, the string may
|
||||||
|
contain invalid UTF-8 data; use only for raw operations on a message
|
||||||
|
|
||||||
|
irc_in2_xxx::
|
||||||
|
modifier sent after charset decoding, so the string received is always
|
||||||
|
UTF-8 valid (*recommended*)
|
||||||
|
|
||||||
[source,python]
|
[source,python]
|
||||||
----
|
----
|
||||||
@@ -1120,7 +1214,7 @@ def modifier_cb(data, modifier, modifier_data, string):
|
|||||||
# (OK that's not very useful, but that's just an example!)
|
# (OK that's not very useful, but that's just an example!)
|
||||||
return "%s %s" % (string, modifier_data)
|
return "%s %s" % (string, modifier_data)
|
||||||
|
|
||||||
weechat.hook_modifier("irc_in_privmsg", "modifier_cb", "")
|
weechat.hook_modifier("irc_in2_privmsg", "modifier_cb", "")
|
||||||
----
|
----
|
||||||
|
|
||||||
[WARNING]
|
[WARNING]
|
||||||
@@ -1153,6 +1247,10 @@ The result is a hashtable with following keys
|
|||||||
The origin nick. |
|
The origin nick. |
|
||||||
`nick`
|
`nick`
|
||||||
|
|
||||||
|
| user | ≥ 2.7 |
|
||||||
|
The origin user. |
|
||||||
|
`user`
|
||||||
|
|
||||||
| host | ≥ 0.3.4 |
|
| host | ≥ 0.3.4 |
|
||||||
The origin host (includes the nick). |
|
The origin host (includes the nick). |
|
||||||
`nick!user@host`
|
`nick!user@host`
|
||||||
@@ -1200,6 +1298,7 @@ dict = weechat.info_get_hashtable(
|
|||||||
# "tags": "time=2015-06-27T16:40:35.000Z",
|
# "tags": "time=2015-06-27T16:40:35.000Z",
|
||||||
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
||||||
# "nick": "nick",
|
# "nick": "nick",
|
||||||
|
# "user": "user",
|
||||||
# "host": "nick!user@host",
|
# "host": "nick!user@host",
|
||||||
# "command": "PRIVMSG",
|
# "command": "PRIVMSG",
|
||||||
# "channel": "#weechat",
|
# "channel": "#weechat",
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ $ tar xvjf weechat-devel.tar.bz2
|
|||||||
$ cd weechat-devel
|
$ cd weechat-devel
|
||||||
----
|
----
|
||||||
|
|
||||||
To build sources, cmake is recommended:
|
To build sources, CMake is recommended:
|
||||||
|
|
||||||
----
|
----
|
||||||
$ mkdir build
|
$ mkdir build
|
||||||
@@ -93,7 +93,7 @@ $ make
|
|||||||
$ make install
|
$ make install
|
||||||
----
|
----
|
||||||
|
|
||||||
If you don't have cmake, it's still possible to use autotools:
|
If you don't have CMake, it's still possible to use autotools:
|
||||||
|
|
||||||
----
|
----
|
||||||
$ ./autogen.sh
|
$ ./autogen.sh
|
||||||
|
|||||||
+80
-56
@@ -79,12 +79,11 @@ instructions.
|
|||||||
[[source_package]]
|
[[source_package]]
|
||||||
=== Source package
|
=== Source package
|
||||||
|
|
||||||
WeeChat can be compiled with cmake or autotools (cmake is recommended way).
|
WeeChat can be compiled with CMake or autotools (CMake is recommended way).
|
||||||
|
|
||||||
[NOTE]
|
[NOTE]
|
||||||
On macOS, you can use https://brew.sh/[Homebrew]:
|
On macOS, you can use https://brew.sh/[Homebrew]:
|
||||||
`brew install weechat --with-python --with-perl`
|
`brew install weechat` (for help: `brew info weechat`).
|
||||||
(for help: `brew info weechat`).
|
|
||||||
|
|
||||||
[[dependencies]]
|
[[dependencies]]
|
||||||
==== Dependencies
|
==== Dependencies
|
||||||
@@ -98,7 +97,7 @@ compile WeeChat.
|
|||||||
| C compiler
|
| C compiler
|
||||||
(gcc, clang, ...) | | *yes* | Build.
|
(gcc, clang, ...) | | *yes* | Build.
|
||||||
| C++ compiler | | | Build and run tests, JavaScript plugin.
|
| C++ compiler | | | Build and run tests, JavaScript plugin.
|
||||||
| cmake | ≥ 3.0 | *yes* | Build (autotools still possible, but cmake is recommended).
|
| cmake | ≥ 3.0 | *yes* | Build (autotools still possible, but CMake is recommended).
|
||||||
| pkg-config | | *yes* | Detect installed libraries.
|
| pkg-config | | *yes* | Detect installed libraries.
|
||||||
| libncursesw5-dev ^(2)^ | | *yes* | Ncurses interface.
|
| libncursesw5-dev ^(2)^ | | *yes* | Ncurses interface.
|
||||||
| libcurl4-gnutls-dev | | *yes* | URL transfer.
|
| libcurl4-gnutls-dev | | *yes* | URL transfer.
|
||||||
@@ -109,9 +108,9 @@ compile WeeChat.
|
|||||||
| ca-certificates | | | Certificates for SSL connections.
|
| ca-certificates | | | Certificates for SSL connections.
|
||||||
| libaspell-dev
|
| libaspell-dev
|
||||||
∥ libenchant-dev | | | Spell plugin.
|
∥ libenchant-dev | | | Spell plugin.
|
||||||
| python-dev | ≥ 2.6 ^(4)^ | | Python plugin.
|
| python3-dev | ^(4)^ | | Python plugin.
|
||||||
| libperl-dev | | | Perl plugin.
|
| libperl-dev | | | Perl plugin.
|
||||||
| ruby2.5, ruby2.5-dev | ≥ 1.8 | | Ruby plugin.
|
| ruby2.5, ruby2.5-dev | ≥ 1.9.1 | | Ruby plugin.
|
||||||
| liblua5.3-dev | | | Lua plugin.
|
| liblua5.3-dev | | | Lua plugin.
|
||||||
| tcl-dev | ≥ 8.5 | | Tcl plugin.
|
| tcl-dev | ≥ 8.5 | | Tcl plugin.
|
||||||
| guile-2.0-dev | ≥ 2.0 | | Guile (scheme) plugin.
|
| guile-2.0-dev | ≥ 2.0 | | Guile (scheme) plugin.
|
||||||
@@ -132,8 +131,8 @@ important). WeeChat can compile with libncurses5-dev, but it is *NOT* recommende
|
|||||||
you may experience display bugs with wide chars. +
|
you may experience display bugs with wide chars. +
|
||||||
^(3)^ GnuTLS ≥ 3.0.21 is required for IRC SASL authentication with mechanism
|
^(3)^ GnuTLS ≥ 3.0.21 is required for IRC SASL authentication with mechanism
|
||||||
ECDSA-NIST256P-CHALLENGE. +
|
ECDSA-NIST256P-CHALLENGE. +
|
||||||
^(4)^ Recommended Python version is 2.7 (all scripts run fine with version 2.7,
|
^(4)^ By default Python 3.x is used. If you enable option `ENABLE_PYTHON2` (see
|
||||||
but not with versions < 2.7 or ≥ 3.0).
|
below), only the version 2.7 of Python is recommended.
|
||||||
|
|
||||||
If you are using a Debian/Ubuntu based distribution, and if you have some
|
If you are using a Debian/Ubuntu based distribution, and if you have some
|
||||||
"deb-src" source entries in your file _/etc/apt/sources.list_, you can install
|
"deb-src" source entries in your file _/etc/apt/sources.list_, you can install
|
||||||
@@ -144,7 +143,7 @@ all dependencies with the command:
|
|||||||
----
|
----
|
||||||
|
|
||||||
[[compile_with_cmake]]
|
[[compile_with_cmake]]
|
||||||
==== Compile with cmake
|
==== Compile with CMake
|
||||||
|
|
||||||
* Installation in system directories (requires _root_ privileges):
|
* Installation in system directories (requires _root_ privileges):
|
||||||
|
|
||||||
@@ -166,7 +165,7 @@ $ make
|
|||||||
$ make install
|
$ make install
|
||||||
----
|
----
|
||||||
|
|
||||||
Options can be used for cmake, with format: "-DOPTION=VALUE".
|
Options can be used for CMake, with format: "-DOPTION=VALUE".
|
||||||
|
|
||||||
List of commonly used options:
|
List of commonly used options:
|
||||||
|
|
||||||
@@ -252,12 +251,8 @@ List of commonly used options:
|
|||||||
| ENABLE_PYTHON | `ON`, `OFF` | ON |
|
| ENABLE_PYTHON | `ON`, `OFF` | ON |
|
||||||
Compile <<scripts_plugins,Python plugin>>.
|
Compile <<scripts_plugins,Python plugin>>.
|
||||||
|
|
||||||
| ENABLE_PYTHON3 | `ON`, `OFF` | OFF |
|
| ENABLE_PYTHON2 | `ON`, `OFF` | OFF |
|
||||||
Compile <<scripts_plugins,Python plugin>> using Python 3. +
|
Compile <<scripts_plugins,Python plugin>> using Python 2 instead of Python 3.
|
||||||
This option is not recommended because many scripts are not yet compatible
|
|
||||||
with Python 3. +
|
|
||||||
You can follow the progress of Python 3 transition on this page:
|
|
||||||
https://weechat.org/scripts/python3/
|
|
||||||
|
|
||||||
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
||||||
Compile <<relay_plugin,Relay plugin>>.
|
Compile <<relay_plugin,Relay plugin>>.
|
||||||
@@ -308,9 +303,9 @@ $ ccmake ..
|
|||||||
==== Compile with autotools
|
==== Compile with autotools
|
||||||
|
|
||||||
[WARNING]
|
[WARNING]
|
||||||
Only cmake is officially supported to build WeeChat. You should use autotools
|
Only CMake is officially supported to build WeeChat. You should use autotools
|
||||||
only if you are not able to use cmake. +
|
only if you are not able to use CMake. +
|
||||||
Build with autotools requires more dependencies and is slower than with cmake.
|
Build with autotools requires more dependencies and is slower than with CMake.
|
||||||
|
|
||||||
* Installation in system directories (requires _root_ privileges):
|
* Installation in system directories (requires _root_ privileges):
|
||||||
|
|
||||||
@@ -349,13 +344,13 @@ Following packages are *required* to compile tests:
|
|||||||
* libcpputest-dev
|
* libcpputest-dev
|
||||||
* C++ compiler
|
* C++ compiler
|
||||||
|
|
||||||
Tests must be enabled when compiling WeeChat (with cmake):
|
Tests must be enabled when compiling WeeChat (with CMake):
|
||||||
|
|
||||||
----
|
----
|
||||||
$ cmake .. -DENABLE_TESTS=ON
|
$ cmake .. -DENABLE_TESTS=ON
|
||||||
----
|
----
|
||||||
|
|
||||||
They can be launched after compilation from the build directory (with cmake):
|
They can be launched after compilation from the build directory (with CMake):
|
||||||
|
|
||||||
----
|
----
|
||||||
$ ctest -V
|
$ ctest -V
|
||||||
@@ -389,7 +384,7 @@ you have to:
|
|||||||
[[debug_info]]
|
[[debug_info]]
|
||||||
==== Debug info
|
==== Debug info
|
||||||
|
|
||||||
If you're compiling with cmake:
|
If you're compiling with CMake:
|
||||||
|
|
||||||
----
|
----
|
||||||
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
|
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
|
||||||
@@ -795,13 +790,22 @@ include::autogen/user/irc_colors.adoc[]
|
|||||||
To show all available colors in your terminal, you can do `/color` then
|
To show all available colors in your terminal, you can do `/color` then
|
||||||
kbd:[Alt+c] in WeeChat or run this command in terminal: `weechat --colors`.
|
kbd:[Alt+c] in WeeChat or run this command in terminal: `weechat --colors`.
|
||||||
|
|
||||||
Example: display of "hello everybody!" with "hello" in light blue bold and
|
Example: display of "hello Alice!" with "hello" in light blue bold and
|
||||||
"everybody" in light red underlined:
|
"Alice" in light red underlined:
|
||||||
|
|
||||||
----
|
----
|
||||||
^Cc12^Cbhello ^Cb^Cc04^C_everybody^C_^Cc!
|
^Cc12^Cbhello ^Cb^Cc04^C_Alice^C_^Cc!
|
||||||
----
|
----
|
||||||
|
|
||||||
|
Keys:
|
||||||
|
|
||||||
|
kbd:[Ctrl+c] kbd:[c] kbd:[1] kbd:[2] kbd:[Ctrl+c] kbd:[b] +
|
||||||
|
kbd:[h] kbd:[e] kbd:[l] kbd:[l] kbd:[o] kbd:[Space] +
|
||||||
|
kbd:[Ctrl+c] kbd:[b] kbd:[Ctrl+c] kbd:[c] kbd:[0] kbd:[4] kbd:[Ctrl+c] kbd:[pass:[_]] +
|
||||||
|
kbd:[A] kbd:[l] kbd:[i] kbd:[c] kbd:[e] +
|
||||||
|
kbd:[Ctrl+c] kbd:[pass:[_]] kbd:[Ctrl+c] kbd:[c] +
|
||||||
|
kbd:[!]
|
||||||
|
|
||||||
[NOTE]
|
[NOTE]
|
||||||
In irc plugin, you can remap these colors using option
|
In irc plugin, you can remap these colors using option
|
||||||
<<option_irc.color.mirc_remap,irc.color.mirc_remap>>.
|
<<option_irc.color.mirc_remap,irc.color.mirc_remap>>.
|
||||||
@@ -809,7 +813,7 @@ In irc plugin, you can remap these colors using option
|
|||||||
[[colors]]
|
[[colors]]
|
||||||
=== Colors
|
=== Colors
|
||||||
|
|
||||||
WeeChat can use up to 256 color pairs to display text in bars and chat area
|
WeeChat can use up to 32767 color pairs to display text in bars and chat area
|
||||||
(your terminal must support 256 colors to use them in WeeChat).
|
(your terminal must support 256 colors to use them in WeeChat).
|
||||||
|
|
||||||
According to value of _TERM_ environment variable, you may have following limits
|
According to value of _TERM_ environment variable, you may have following limits
|
||||||
@@ -818,12 +822,12 @@ for colors in WeeChat:
|
|||||||
[width="50%",cols="8,>2,>2",options="header"]
|
[width="50%",cols="8,>2,>2",options="header"]
|
||||||
|===
|
|===
|
||||||
| $TERM | Colors | Pairs
|
| $TERM | Colors | Pairs
|
||||||
| "rxvt-unicode", "xterm", ... | 88 | 256
|
| "rxvt-unicode", "xterm", ... | 88 | 32767
|
||||||
| "rxvt-256color", "xterm-256color", ... | 256 | 256
|
| "rxvt-256color", "xterm-256color", ... | 256 | 32767
|
||||||
| "screen" | 8 | 64
|
| "screen" | 8 | 64
|
||||||
| "screen-256color" | 256 | 256
|
| "screen-256color" | 256 | 32767
|
||||||
| "tmux" | 8 | 64
|
| "tmux" | 8 | 64
|
||||||
| "tmux-256color" | 256 | 256
|
| "tmux-256color" | 256 | 32767
|
||||||
|===
|
|===
|
||||||
|
|
||||||
You can run `weechat --colors` or use command `/color` in WeeChat to
|
You can run `weechat --colors` or use command `/color` in WeeChat to
|
||||||
@@ -2089,8 +2093,15 @@ a _script_ is a text file loaded with a plugin like _python_ with command
|
|||||||
|
|
||||||
You can use command `/plugin` to load/unload a plugin, or list all loaded
|
You can use command `/plugin` to load/unload a plugin, or list all loaded
|
||||||
plugins.
|
plugins.
|
||||||
When a plugin is unloaded, all buffers created by this plugin are
|
|
||||||
automatically closed.
|
When a plugin is unloaded, WeeChat removes:
|
||||||
|
|
||||||
|
* buffers
|
||||||
|
* configuration options (options are written in files)
|
||||||
|
* all hooks: commands, modifiers, process, etc.
|
||||||
|
* infos and infolists
|
||||||
|
* hdata
|
||||||
|
* bar items.
|
||||||
|
|
||||||
Examples to load, unload or list plugins:
|
Examples to load, unload or list plugins:
|
||||||
|
|
||||||
@@ -2602,9 +2613,13 @@ port depend on your TOR configuration):
|
|||||||
Now, add a new server, for example:
|
Now, add a new server, for example:
|
||||||
|
|
||||||
----
|
----
|
||||||
/server add freenode-tor freenodeok2gncmy.onion
|
/server add freenode-tor ajnvpgl6prmkb7yktvue6im5wiedlz2w32uhcwaamdiecdrfpwwgnlqd.onion
|
||||||
----
|
----
|
||||||
|
|
||||||
|
[NOTE]
|
||||||
|
If you are using an old version of TOR (before 0.3.5) you should use the address
|
||||||
|
`freenodeok2gncmy.onion` instead.
|
||||||
|
|
||||||
Set proxy for TOR:
|
Set proxy for TOR:
|
||||||
|
|
||||||
----
|
----
|
||||||
@@ -2959,12 +2974,15 @@ Some examples:
|
|||||||
==== Filenames masks
|
==== Filenames masks
|
||||||
|
|
||||||
It is possible to define a filename mask for each buffer, and use local buffer
|
It is possible to define a filename mask for each buffer, and use local buffer
|
||||||
variables to build filename. To see local variables for current buffer:
|
variables to build filename. To see available local variables for current buffer:
|
||||||
|
|
||||||
----
|
----
|
||||||
/buffer localvar
|
/buffer localvar
|
||||||
----
|
----
|
||||||
|
|
||||||
|
Masks will be matched on options in descending order of specificity on
|
||||||
|
`logger.mask.$plugin.*`, with `logger.file.mask` as fallback option.
|
||||||
|
|
||||||
For example, on buffer "irc.freenode.#weechat", WeeChat will search a mask with
|
For example, on buffer "irc.freenode.#weechat", WeeChat will search a mask with
|
||||||
option name, in this order:
|
option name, in this order:
|
||||||
|
|
||||||
@@ -2991,16 +3009,21 @@ To have log files by date, you can use date/time specifiers in mask (see
|
|||||||
You'll have following files:
|
You'll have following files:
|
||||||
|
|
||||||
....
|
....
|
||||||
~/.weechat/
|
~/.weechat
|
||||||
|--- logs/
|
└── logs
|
||||||
|--- 2010/
|
├── 2010
|
||||||
|--- 11/
|
│ ├── 11
|
||||||
| irc.server.freenode.weechatlog
|
│ │ ├── irc.server.freenode.weechatlog
|
||||||
| irc.freenode.#weechat.weechatlog
|
│ │ └── irc.freenode.#weechat.weechatlog
|
||||||
|--- 2010/
|
│ └── 12
|
||||||
|--- 12/
|
│ ├── irc.server.freenode.weechatlog
|
||||||
| irc.server.freenode.weechatlog
|
│ └── irc.freenode.#weechat.weechatlog
|
||||||
| irc.freenode.#weechat.weechatlog
|
├── 2011
|
||||||
|
│ ├── 01
|
||||||
|
│ │ ├── irc.server.freenode.weechatlog
|
||||||
|
│ │ └── irc.freenode.#weechat.weechatlog
|
||||||
|
│ ├── 02
|
||||||
|
...
|
||||||
....
|
....
|
||||||
|
|
||||||
[[logger_irc_files_by_server_channel]]
|
[[logger_irc_files_by_server_channel]]
|
||||||
@@ -3015,17 +3038,18 @@ If you want one directory by IRC server and one file by channel inside:
|
|||||||
You'll have following files:
|
You'll have following files:
|
||||||
|
|
||||||
....
|
....
|
||||||
~/.weechat/
|
~/.weechat
|
||||||
|--- logs/
|
└── logs
|
||||||
|--- irc/
|
└── irc
|
||||||
|--- freenode/
|
├── freenode
|
||||||
| freenode.weechatlog
|
│ ├── freenode.weechatlog
|
||||||
| #weechat.weechatlog
|
│ ├── #weechat.weechatlog
|
||||||
| #mychan.weechatlog
|
│ └── #mychan.weechatlog
|
||||||
|--- oftc/
|
├── oftc
|
||||||
| oftc.weechatlog
|
│ ├── oftc.weechatlog
|
||||||
| #chan1.weechatlog
|
│ ├── #chan1.weechatlog
|
||||||
| #chan2.weechatlog
|
│ └── #chan2.weechatlog
|
||||||
|
...
|
||||||
....
|
....
|
||||||
|
|
||||||
[[logger_commands]]
|
[[logger_commands]]
|
||||||
@@ -4008,7 +4032,7 @@ The "line" callback sets following variables in hashtable:
|
|||||||
| str_time | string | Date for display. It may contain color codes.
|
| str_time | string | Date for display. It may contain color codes.
|
||||||
| tags | string | Tags of message (with comma added at beginning/end of string).
|
| tags | string | Tags of message (with comma added at beginning/end of string).
|
||||||
| displayed | string | "1" if displayed, "0" if line filtered.
|
| displayed | string | "1" if displayed, "0" if line filtered.
|
||||||
| notify_level | string | "0" = low level, "1" = message, "2" = private message, "3" = highlight
|
| notify_level | string | "-1" = no notify, "0" = low level, "1" = message, "2" = private message, "3" = highlight
|
||||||
| highlight | string | "1" if highlight, otherwise "0".
|
| highlight | string | "1" if highlight, otherwise "0".
|
||||||
| prefix | string | Prefix.
|
| prefix | string | Prefix.
|
||||||
| tg_prefix_nocolor | string | Prefix without color codes.
|
| tg_prefix_nocolor | string | Prefix without color codes.
|
||||||
|
|||||||
@@ -262,6 +262,10 @@ donde "xxx" es el nombre de la opción.
|
|||||||
/connect freenode
|
/connect freenode
|
||||||
----
|
----
|
||||||
|
|
||||||
|
// TRANSLATION MISSING
|
||||||
|
With this command, WeeChat connects to the freenode server and auto-joins the
|
||||||
|
channels configured in the "autojoin" server option.
|
||||||
|
|
||||||
// TRANSLATION MISSING
|
// TRANSLATION MISSING
|
||||||
[NOTE]
|
[NOTE]
|
||||||
Este comando también puede usarse para crear y conectarse a un nuevo
|
Este comando también puede usarse para crear y conectarse a un nuevo
|
||||||
|
|||||||
@@ -38,6 +38,8 @@
|
|||||||
|
|
||||||
| irc | irc_privates | privés sur tous les serveurs IRC
|
| irc | irc_privates | privés sur tous les serveurs IRC
|
||||||
|
|
||||||
|
| irc | irc_raw_filters | filtres pour le tampon de données brutes irc
|
||||||
|
|
||||||
| irc | irc_server | serveur IRC courant
|
| irc | irc_server | serveur IRC courant
|
||||||
|
|
||||||
| irc | irc_server_channels | canaux sur le serveur IRC courant
|
| irc | irc_server_channels | canaux sur le serveur IRC courant
|
||||||
@@ -142,7 +144,7 @@
|
|||||||
|
|
||||||
| weechat | env_vars | variables d'environnement
|
| weechat | env_vars | variables d'environnement
|
||||||
|
|
||||||
| weechat | filename | nom de fichier
|
| weechat | filename | nom de fichier ; paramètre optionnel : chemin par défaut (évalué, voir /help eval)
|
||||||
|
|
||||||
| weechat | filters_names | noms des filtres
|
| weechat | filters_names | noms des filtres
|
||||||
|
|
||||||
|
|||||||
@@ -252,6 +252,8 @@ _isupport_ (string) +
|
|||||||
_prefix_modes_ (string) +
|
_prefix_modes_ (string) +
|
||||||
_prefix_chars_ (string) +
|
_prefix_chars_ (string) +
|
||||||
_nick_max_length_ (integer) +
|
_nick_max_length_ (integer) +
|
||||||
|
_user_max_length_ (integer) +
|
||||||
|
_host_max_length_ (integer) +
|
||||||
_casemapping_ (integer) +
|
_casemapping_ (integer) +
|
||||||
_chantypes_ (string) +
|
_chantypes_ (string) +
|
||||||
_chanmodes_ (string) +
|
_chanmodes_ (string) +
|
||||||
@@ -970,6 +972,7 @@ _charset_ (string) +
|
|||||||
_priority_ (integer) +
|
_priority_ (integer) +
|
||||||
_initialized_ (integer) +
|
_initialized_ (integer) +
|
||||||
_debug_ (integer) +
|
_debug_ (integer) +
|
||||||
|
_upgrading_ (integer) +
|
||||||
_variables_ (hashtable) +
|
_variables_ (hashtable) +
|
||||||
_prev_plugin_ (pointer, hdata: "plugin") +
|
_prev_plugin_ (pointer, hdata: "plugin") +
|
||||||
_next_plugin_ (pointer, hdata: "plugin") +
|
_next_plugin_ (pointer, hdata: "plugin") +
|
||||||
|
|||||||
@@ -10,6 +10,8 @@
|
|||||||
|
|
||||||
| alias | alias_default | liste des alias par défaut | - | -
|
| alias | alias_default | liste des alias par défaut | - | -
|
||||||
|
|
||||||
|
| buflist | buflist | liste des tampons dans un objet de barre buflist | - | nom d'objet de barre buflist (optionnel)
|
||||||
|
|
||||||
| fset | fset_option | liste des options fset | pointeur vers l'option fset (optionnel) | nom d'option (le caractère joker "*" est autorisé) (optionnel)
|
| fset | fset_option | liste des options fset | pointeur vers l'option fset (optionnel) | nom d'option (le caractère joker "*" est autorisé) (optionnel)
|
||||||
|
|
||||||
| guile | guile_script | liste des scripts | pointeur vers le script (optionnel) | nom de script (le caractère joker "*" est autorisé) (optionnel)
|
| guile | guile_script | liste des scripts | pointeur vers le script (optionnel) | nom de script (le caractère joker "*" est autorisé) (optionnel)
|
||||||
|
|||||||
@@ -108,15 +108,19 @@
|
|||||||
|
|
||||||
| weechat | pid | PID (ID de processus) de WeeChat | -
|
| weechat | pid | PID (ID de processus) de WeeChat | -
|
||||||
|
|
||||||
|
| weechat | term_color_pairs | nombre de paires de couleurs supportées dans le terminal | -
|
||||||
|
|
||||||
|
| weechat | term_colors | nombre de couleurs supportées dans le terminal | -
|
||||||
|
|
||||||
| weechat | term_height | hauteur du terminal | -
|
| weechat | term_height | hauteur du terminal | -
|
||||||
|
|
||||||
| weechat | term_width | largeur du terminal | -
|
| weechat | term_width | largeur du terminal | -
|
||||||
|
|
||||||
| weechat | totp_generate | générer un mot de passe à usage unique basé sur le temps (TOTP) | secret (en base32), horodatage (optionnel, heure courante par défaut), nombre de chiffres (optionnal, entre 4 et 10, 6 par défaut)
|
| weechat | totp_generate | générer un mot de passe à usage unique basé sur le temps (TOTP) | secret (en base32), horodatage (optionnel, heure courante par défaut), nombre de chiffres (optionnel, entre 4 et 10, 6 par défaut)
|
||||||
|
|
||||||
| weechat | totp_validate | valider un mot de passe à usage unique basé sur le temps (TOTP) : 1 si le TOTP est correct, sinon 0 | secret (en base32), mot de passe à usage unique, horodatage (optionnel, heure courante par défaut), nombre de mots de passe avant/après à tester (optionnel, 0 par défaut)
|
| weechat | totp_validate | valider un mot de passe à usage unique basé sur le temps (TOTP) : 1 si le TOTP est correct, sinon 0 | secret (en base32), mot de passe à usage unique, horodatage (optionnel, heure courante par défaut), nombre de mots de passe avant/après à tester (optionnel, 0 par défaut)
|
||||||
|
|
||||||
| weechat | uptime | Uptime de WeeChat (format : "jours:hh:mm:ss") | "days" (nombre de jours) ou "seconds" (nombre de secondes) (optionnel)
|
| weechat | uptime | Durée de fonctionnement de WeeChat (format : "jours:hh:mm:ss") | "days" (nombre de jours) ou "seconds" (nombre de secondes) (optionnel)
|
||||||
|
|
||||||
| weechat | version | version de WeeChat | -
|
| weechat | version | version de WeeChat | -
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
|===
|
|===
|
||||||
| Extension | Nom | Description | Table de hachage (entrée) | Table de hachage (sortie)
|
| 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, "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, "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_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
|
| 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
|
||||||
|
|
||||||
|
|||||||
@@ -62,6 +62,8 @@
|
|||||||
|
|
||||||
| unix_socket_path | string |
|
| unix_socket_path | string |
|
||||||
|
|
||||||
|
| abstract_unix_socket | string |
|
||||||
|
|
||||||
| path_as_is | long |
|
| path_as_is | long |
|
||||||
|
|
||||||
| proxy_service_name | string |
|
| proxy_service_name | string |
|
||||||
@@ -72,15 +74,21 @@
|
|||||||
|
|
||||||
| tcp_fastopen | long |
|
| tcp_fastopen | long |
|
||||||
|
|
||||||
|
| socks5_auth | long |
|
||||||
|
|
||||||
|
| haproxyprotocol | long |
|
||||||
|
|
||||||
|
| doh_url | string |
|
||||||
|
|
||||||
| netrc | long | ignored, optional, required
|
| netrc | long | ignored, optional, required
|
||||||
|
|
||||||
| userpwd | string |
|
| userpwd | string |
|
||||||
|
|
||||||
| proxyuserpwd | string |
|
| proxyuserpwd | string |
|
||||||
|
|
||||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate
|
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||||
|
|
||||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate
|
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||||
|
|
||||||
| netrc_file | string |
|
| netrc_file | string |
|
||||||
|
|
||||||
@@ -104,6 +112,8 @@
|
|||||||
|
|
||||||
| login_options | string |
|
| login_options | string |
|
||||||
|
|
||||||
|
| disallow_username_in_url | long |
|
||||||
|
|
||||||
| autoreferer | long |
|
| autoreferer | long |
|
||||||
|
|
||||||
| followlocation | long |
|
| followlocation | long |
|
||||||
@@ -114,8 +124,6 @@
|
|||||||
|
|
||||||
| postfields | string |
|
| postfields | string |
|
||||||
|
|
||||||
| httppost | list |
|
|
||||||
|
|
||||||
| referer | string |
|
| referer | string |
|
||||||
|
|
||||||
| useragent | string |
|
| useragent | string |
|
||||||
@@ -170,6 +178,8 @@
|
|||||||
|
|
||||||
| stream_weight | long |
|
| stream_weight | long |
|
||||||
|
|
||||||
|
| request_target | string |
|
||||||
|
|
||||||
| mail_from | string |
|
| mail_from | string |
|
||||||
|
|
||||||
| mail_rcpt | list |
|
| mail_rcpt | list |
|
||||||
@@ -258,6 +268,10 @@
|
|||||||
|
|
||||||
| maxfilesize_large | long long |
|
| maxfilesize_large | long long |
|
||||||
|
|
||||||
|
| timevalue_large | long long |
|
||||||
|
|
||||||
|
| upload_buffersize | long |
|
||||||
|
|
||||||
| timeout | long |
|
| timeout | long |
|
||||||
|
|
||||||
| low_speed_limit | long |
|
| low_speed_limit | long |
|
||||||
@@ -300,9 +314,15 @@
|
|||||||
|
|
||||||
| connect_to | list |
|
| connect_to | list |
|
||||||
|
|
||||||
|
| happy_eyeballs_timeout_ms | long |
|
||||||
|
|
||||||
|
| dns_shuffle_addresses | long |
|
||||||
|
|
||||||
|
| upkeep_interval_ms | long |
|
||||||
|
|
||||||
| sslcert | string |
|
| sslcert | string |
|
||||||
|
|
||||||
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3
|
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||||
|
|
||||||
| ssl_verifypeer | long |
|
| ssl_verifypeer | long |
|
||||||
|
|
||||||
@@ -342,7 +362,7 @@
|
|||||||
|
|
||||||
| gssapi_delegation | long | none, policy_flag, flag
|
| gssapi_delegation | long | none, policy_flag, flag
|
||||||
|
|
||||||
| ssl_options | long | allow_beast, no_revoke
|
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||||
|
|
||||||
| ssl_enable_alpn | long |
|
| ssl_enable_alpn | long |
|
||||||
|
|
||||||
@@ -372,11 +392,11 @@
|
|||||||
|
|
||||||
| proxy_sslkeytype | string |
|
| proxy_sslkeytype | string |
|
||||||
|
|
||||||
| proxy_sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3
|
| proxy_sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||||
|
|
||||||
| proxy_ssl_cipher_list | list |
|
| proxy_ssl_cipher_list | list |
|
||||||
|
|
||||||
| proxy_ssl_options | long | allow_beast, no_revoke
|
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||||
|
|
||||||
| proxy_ssl_verifyhost | long |
|
| proxy_ssl_verifyhost | long |
|
||||||
|
|
||||||
@@ -388,6 +408,10 @@
|
|||||||
|
|
||||||
| proxy_tlsauth_username | string |
|
| proxy_tlsauth_username | string |
|
||||||
|
|
||||||
|
| tls13_ciphers | list |
|
||||||
|
|
||||||
|
| proxy_tls13_ciphers | list |
|
||||||
|
|
||||||
| ssh_auth_types | mask | none, policy_flag, flag
|
| ssh_auth_types | mask | none, policy_flag, flag
|
||||||
|
|
||||||
| ssh_public_keyfile | string |
|
| ssh_public_keyfile | string |
|
||||||
@@ -398,6 +422,8 @@
|
|||||||
|
|
||||||
| ssh_knownhosts | string |
|
| ssh_knownhosts | string |
|
||||||
|
|
||||||
|
| ssh_compression | long |
|
||||||
|
|
||||||
| new_file_perms | long |
|
| new_file_perms | long |
|
||||||
|
|
||||||
| new_directory_perms | long |
|
| new_directory_perms | long |
|
||||||
|
|||||||
@@ -7,8 +7,6 @@
|
|||||||
| Alias | Commande | Complétion
|
| Alias | Commande | Complétion
|
||||||
|
|
||||||
| /AAWAY | /allserv /away | -
|
| /AAWAY | /allserv /away | -
|
||||||
| /AME | /allchan /me | -
|
|
||||||
| /AMSG | /allchan /msg * | -
|
|
||||||
| /ANICK | /allserv /nick | -
|
| /ANICK | /allserv /nick | -
|
||||||
| /BEEP | /print -beep | -
|
| /BEEP | /print -beep | -
|
||||||
| /BYE | /quit | -
|
| /BYE | /quit | -
|
||||||
@@ -35,8 +33,9 @@
|
|||||||
| /UMODE | /mode $nick | -
|
| /UMODE | /mode $nick | -
|
||||||
| /V | /command core version | -
|
| /V | /command core version | -
|
||||||
| /W | /who | -
|
| /W | /who | -
|
||||||
| /WC | /window merge | -
|
| /WC | /window close | -
|
||||||
| /WI | /whois | -
|
| /WI | /whois | -
|
||||||
| /WII | /whois $1 $1 | -
|
| /WII | /whois $1 $1 | -
|
||||||
|
| /WM | /window merge | -
|
||||||
| /WW | /whowas | -
|
| /WW | /whowas | -
|
||||||
|===
|
|===
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ Exemples :
|
|||||||
/exec -n -norc url:https://pastebin.com/raw.php?i=xxxxxxxx
|
/exec -n -norc url:https://pastebin.com/raw.php?i=xxxxxxxx
|
||||||
/exec -nf -noln links -dump https://weechat.org/files/doc/devel/weechat_user.en.html
|
/exec -nf -noln links -dump https://weechat.org/files/doc/devel/weechat_user.en.html
|
||||||
/exec -o uptime
|
/exec -o uptime
|
||||||
/exec -pipe "/print Uptime de la machine :" uptime
|
/exec -pipe "/print Durée de fonctionnement de la machine :" uptime
|
||||||
/exec -n tail -f /var/log/messages
|
/exec -n tail -f /var/log/messages
|
||||||
/exec -kill 0
|
/exec -kill 0
|
||||||
----
|
----
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
** valeur par défaut: `+0+`
|
** valeur par défaut: `+0+`
|
||||||
|
|
||||||
* [[option_exec.command.shell]] *exec.command.shell*
|
* [[option_exec.command.shell]] *exec.command.shell*
|
||||||
** description: pass:none[shell à utiliser avec la commande "/exec -sh" ; cela peut être seulement le nom du shell s'il est dans le PATH (par exemple "bash") ou le chemin absolu vers le shell (par exemple "/bin/bash")]
|
** description: pass:none[shell à utiliser avec la commande "/exec -sh" ; cela peut être seulement le nom du shell s'il est dans le PATH (par exemple "bash") ou le chemin absolu vers le shell (par exemple "/bin/bash"); si la valeur est vide, "sh" est utilisé (note : le contenu est évalué, voir /help eval)]
|
||||||
** type: chaîne
|
** type: chaîne
|
||||||
** valeurs: toute chaîne
|
** valeurs: toute chaîne
|
||||||
** valeur par défaut: `+"sh"+`
|
** valeur par défaut: `+"${env:SHELL}"+`
|
||||||
|
|||||||
@@ -42,7 +42,7 @@
|
|||||||
-export : exporter les options et valeurs affichées dans un fichier (chaque ligne a le format : "/set nom valeur" ou "/unset nom")
|
-export : exporter les options et valeurs affichées dans un fichier (chaque ligne a le format : "/set nom valeur" ou "/unset nom")
|
||||||
-help : forcer l'écriture de l'aide sur les options dans le fichier exporté (voir /help fset.look.export_help_default)
|
-help : forcer l'écriture de l'aide sur les options dans le fichier exporté (voir /help fset.look.export_help_default)
|
||||||
-nohelp : ne pas écrire l'aide sur les options dans le fichier exporté (voir /help fset.look.export_help_default)
|
-nohelp : ne pas écrire l'aide sur les options dans le fichier exporté (voir /help fset.look.export_help_default)
|
||||||
filter : définir un nouveau filtre pour voir seulement les options correspondantes (ce filtre peut aussi être utilisé en entrée du tampon fset) ; les formats autorisés sont :
|
filtre : définir un nouveau filtre pour voir seulement les options correspondantes (ce filtre peut aussi être utilisé en entrée du tampon fset) ; les formats autorisés sont :
|
||||||
* afficher toutes les options (pas de filtre)
|
* afficher toutes les options (pas de filtre)
|
||||||
xxx afficher seulement les options avec "xxx" dans le nom
|
xxx afficher seulement les options avec "xxx" dans le nom
|
||||||
f:xxx afficher seulement le fichier de configuration "xxx"
|
f:xxx afficher seulement le fichier de configuration "xxx"
|
||||||
@@ -51,6 +51,8 @@
|
|||||||
d:xxx afficher seulement les options changées avec "xxx" dans le nom
|
d:xxx afficher seulement les options changées avec "xxx" dans le nom
|
||||||
d=xxx afficher seulement les options changées avec "xxx" dans la valeur
|
d=xxx afficher seulement les options changées avec "xxx" dans la valeur
|
||||||
d==xxx afficher seulement les options changées avec la valeur exacte "xxx"
|
d==xxx afficher seulement les options changées avec la valeur exacte "xxx"
|
||||||
|
h=xxx afficher seulement les options avec "xxx" dans la description (traduite)
|
||||||
|
he=xxx afficher seulement les options avec "xxx" dans la description (en Anglais)
|
||||||
=xxx afficher seulement les options avec "xxx" dans la valeur
|
=xxx afficher seulement les options avec "xxx" dans la valeur
|
||||||
==xxx afficher seulement les options avec la valeur exacte "xxx"
|
==xxx afficher seulement les options avec la valeur exacte "xxx"
|
||||||
c:xxx afficher seulement les options qui correspondent à la condition évaluée "xxx", en utilisant les variables suivantes : file, section, option, name, parent_name, type, type_en, type_short (bool/int/str/col), type_tiny (b/i/s/c), default_value, default_value_undef, value, quoted_value, value_undef, value_changed, parent_value, min, max, description, description2, description_en, description_en2, string_values
|
c:xxx afficher seulement les options qui correspondent à la condition évaluée "xxx", en utilisant les variables suivantes : file, section, option, name, parent_name, type, type_en, type_short (bool/int/str/col), type_tiny (b/i/s/c), default_value, default_value_undef, value, quoted_value, value_undef, value_changed, parent_value, min, max, description, description2, description_en, description_en2, string_values
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ Exemples :
|
|||||||
* `+connect+`: se connecter à un/plusieurs serveur(s) IRC
|
* `+connect+`: se connecter à un/plusieurs serveur(s) IRC
|
||||||
|
|
||||||
----
|
----
|
||||||
/connect [<serveur> [<serveur>...] [-<option>[=<valeur>]] [-no<option>] [-nojoin] [-switch]
|
/connect [<serveur> [<serveur>...]] [-<option>[=<valeur>]] [-no<option>] [-nojoin] [-switch]
|
||||||
-all|-auto|-open [-nojoin] [-switch]
|
-all|-auto|-open [-nojoin] [-switch]
|
||||||
|
|
||||||
serveur : nom du serveur, qui peut être :
|
serveur : nom du serveur, qui peut être :
|
||||||
@@ -274,8 +274,8 @@ pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
|
|||||||
del : supprimer un ignore
|
del : supprimer un ignore
|
||||||
numéro : numéro du ignore à supprimer (voir la liste des ignore pour le trouver)
|
numéro : numéro du ignore à supprimer (voir la liste des ignore pour le trouver)
|
||||||
-all : supprimer tous les ignores
|
-all : supprimer tous les ignores
|
||||||
serveur : nom de serveur interne où le ignore fonctionnera
|
serveur : nom de serveur interne où l'ignore fonctionnera
|
||||||
canal : canal où le ignore fonctionnera
|
canal : canal où l'ignore fonctionnera
|
||||||
|
|
||||||
Note : l'expression régulière peut commencer par "(?-i)" pour devenir sensible à la casse.
|
Note : l'expression régulière peut commencer par "(?-i)" pour devenir sensible à la casse.
|
||||||
|
|
||||||
@@ -726,7 +726,8 @@ raison : raison
|
|||||||
reorder <nom> [<nom>...]
|
reorder <nom> [<nom>...]
|
||||||
open <nom>|-all [<nom>...]
|
open <nom>|-all [<nom>...]
|
||||||
del|keep <nom>
|
del|keep <nom>
|
||||||
deloutq|jump|raw
|
deloutq|jump
|
||||||
|
raw [<filtre>]
|
||||||
|
|
||||||
list : afficher les serveurs (sans paramètre, cette liste est affichée)
|
list : afficher les serveurs (sans paramètre, cette liste est affichée)
|
||||||
listfull : afficher les serveurs avec de l'info détaillée pour chaque
|
listfull : afficher les serveurs avec de l'info détaillée pour chaque
|
||||||
@@ -744,7 +745,14 @@ nom_machine : nom ou adresse IP du serveur avec port en option (défaut : 6667
|
|||||||
del : supprimer un serveur
|
del : supprimer un serveur
|
||||||
deloutq : supprimer la file d'attente des messages sortants pour tous les serveurs (tous les messages que WeeChat est actuellement en train d'envoyer)
|
deloutq : supprimer la file d'attente des messages sortants pour tous les serveurs (tous les messages que WeeChat est actuellement en train d'envoyer)
|
||||||
jump : sauter au tampon du serveur
|
jump : sauter au tampon du serveur
|
||||||
raw : ouvre le tampon avec les données brutes IRC
|
raw : ouvrir le tampon avec les données brutes IRC
|
||||||
|
filtre : définir un nouveau filtre pour voir seulement les messages correspondants (ce filtre peut aussi être utilisé en entrée du tampon des données brutes) ; les formats autorisés sont :
|
||||||
|
* afficher tous les messages (pas de filtre)
|
||||||
|
xxx afficher seulement les messages contenant "xxx"
|
||||||
|
s:xxx afficher seulement les messages pour le serveur "xxx"
|
||||||
|
f:xxx afficher seulement les messages avec un drapeau : recv (message reçu), sent (message envoyé), modified (message modifié par un modificateur), redirected (message redirigé)
|
||||||
|
m:xxx afficher seulement les messages pour la commande IRC "xxx"
|
||||||
|
c:xxx afficher seulement les messages qui correspondent à la condition évaluée "xxx", en utilisant les variables suivantes : sortie de la fonction irc_message_parse (comme nick, command, channel, text, etc., voir la fonction info_get_hashtable dans la référence API extension pour la liste de toutes les variables), date (format : "yyyy-mm-dd hh:mm:ss"), server, recv, sent, modified, redirected
|
||||||
|
|
||||||
Exemples :
|
Exemples :
|
||||||
/server listfull
|
/server listfull
|
||||||
@@ -756,6 +764,9 @@ Exemples :
|
|||||||
/server reorder freenode2 freenode
|
/server reorder freenode2 freenode
|
||||||
/server del freenode
|
/server del freenode
|
||||||
/server deloutq
|
/server deloutq
|
||||||
|
/server raw
|
||||||
|
/server raw s:freenode
|
||||||
|
/server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo
|
||||||
----
|
----
|
||||||
|
|
||||||
[[command_irc_service]]
|
[[command_irc_service]]
|
||||||
|
|||||||
@@ -44,6 +44,12 @@
|
|||||||
** valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné
|
** valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné
|
||||||
** valeur par défaut: `+green+`
|
** valeur par défaut: `+green+`
|
||||||
|
|
||||||
|
* [[option_irc.color.message_kick]] *irc.color.message_kick*
|
||||||
|
** description: pass:none[couleur pour le texte dans les messages kick/kill]
|
||||||
|
** type: couleur
|
||||||
|
** valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné
|
||||||
|
** valeur par défaut: `+red+`
|
||||||
|
|
||||||
* [[option_irc.color.message_quit]] *irc.color.message_quit*
|
* [[option_irc.color.message_quit]] *irc.color.message_quit*
|
||||||
** description: pass:none[couleur pour le texte dans les messages part/quit]
|
** description: pass:none[couleur pour le texte dans les messages part/quit]
|
||||||
** type: couleur
|
** type: couleur
|
||||||
@@ -68,6 +74,12 @@
|
|||||||
** valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné
|
** valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné
|
||||||
** valeur par défaut: `+green+`
|
** valeur par défaut: `+green+`
|
||||||
|
|
||||||
|
* [[option_irc.color.reason_kick]] *irc.color.reason_kick*
|
||||||
|
** description: pass:none[couleur pour la raison dans les messages kick/kill]
|
||||||
|
** type: couleur
|
||||||
|
** valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné
|
||||||
|
** valeur par défaut: `+default+`
|
||||||
|
|
||||||
* [[option_irc.color.reason_quit]] *irc.color.reason_quit*
|
* [[option_irc.color.reason_quit]] *irc.color.reason_quit*
|
||||||
** description: pass:none[couleur pour la raison dans les messages part/quit]
|
** description: pass:none[couleur pour la raison dans les messages part/quit]
|
||||||
** type: couleur
|
** type: couleur
|
||||||
@@ -212,6 +224,12 @@
|
|||||||
** valeurs: on, off
|
** valeurs: on, off
|
||||||
** valeur par défaut: `+on+`
|
** valeur par défaut: `+on+`
|
||||||
|
|
||||||
|
* [[option_irc.look.display_pv_warning_address]] *irc.look.display_pv_warning_address*
|
||||||
|
** description: pass:none[afficher un avertissement dans le tampon privé si l'adresse du pseudo distant a changé ; cette option est désactivée par défaut car les serveurs comme bitlbee causent un affichage de cet avertissement à tort (l'adresse du pseudo distant change plusieurs fois à la connexion)]
|
||||||
|
** type: booléen
|
||||||
|
** valeurs: on, off
|
||||||
|
** valeur par défaut: `+off+`
|
||||||
|
|
||||||
* [[option_irc.look.highlight_channel]] *irc.look.highlight_channel*
|
* [[option_irc.look.highlight_channel]] *irc.look.highlight_channel*
|
||||||
** description: pass:none[liste de mots pour le highlight dans les tampons de type "canal", séparés par des virgules (insensible à la casse, utilisez "(?-i)" au début des mots pour les rendre sensibles à la casse ; les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs), ces mots sont ajoutés à la propriété du tampon "highlight_words" seulement lorsque le tampon est créé (cela n'affecte pas les tampons courants), une chaîne vide désactive le highlight par défaut sur le pseudo, exemples : "$nick", "(?-i)$nick"]
|
** description: pass:none[liste de mots pour le highlight dans les tampons de type "canal", séparés par des virgules (insensible à la casse, utilisez "(?-i)" au début des mots pour les rendre sensibles à la casse ; les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs), ces mots sont ajoutés à la propriété du tampon "highlight_words" seulement lorsque le tampon est créé (cela n'affecte pas les tampons courants), une chaîne vide désactive le highlight par défaut sur le pseudo, exemples : "$nick", "(?-i)$nick"]
|
||||||
** type: chaîne
|
** type: chaîne
|
||||||
@@ -303,7 +321,7 @@
|
|||||||
** valeur par défaut: `+off+`
|
** valeur par défaut: `+off+`
|
||||||
|
|
||||||
* [[option_irc.look.nicks_hide_password]] *irc.look.nicks_hide_password*
|
* [[option_irc.look.nicks_hide_password]] *irc.look.nicks_hide_password*
|
||||||
** description: pass:none[liste des pseudos (séparés par des virgules) pour lesquels les mots de passe seront masqués quand un message est envoyé, par exemple pour cacher le mot de passe dans le message affiché par "/msg nickserv identify motedepasse", exemple : "nickserv|nickbot"]
|
** description: pass:none[liste des pseudos (séparés par des virgules) pour lesquels les mots de passe seront masqués quand un message est envoyé, par exemple pour cacher le mot de passe dans le message affiché par "/msg nickserv identify motdepasse", exemple : "nickserv|nickbot"]
|
||||||
** type: chaîne
|
** type: chaîne
|
||||||
** valeurs: toute chaîne
|
** valeurs: toute chaîne
|
||||||
** valeur par défaut: `+"nickserv"+`
|
** valeur par défaut: `+"nickserv"+`
|
||||||
@@ -369,7 +387,7 @@
|
|||||||
** valeur par défaut: `+merge_with_core+`
|
** valeur par défaut: `+merge_with_core+`
|
||||||
|
|
||||||
* [[option_irc.look.smart_filter]] *irc.look.smart_filter*
|
* [[option_irc.look.smart_filter]] *irc.look.smart_filter*
|
||||||
** description: pass:none[filtrer les messages join/part/quit/nick pour un pseudo s'il n'a pas parlé pendant quelques minutes sur le canal (vous devez créer un filtre sur l'étiquette "irc_smart_filter")]
|
** description: pass:none[filtrer les messages join/part/quit/nick pour un pseudo s'il n'a pas parlé pendant quelques minutes sur le canal (vous devez créer un filtre sur l'étiquette "irc_smart_filter", voir /help filter)]
|
||||||
** type: booléen
|
** type: booléen
|
||||||
** valeurs: on, off
|
** valeurs: on, off
|
||||||
** valeur par défaut: `+on+`
|
** valeur par défaut: `+on+`
|
||||||
@@ -446,12 +464,6 @@
|
|||||||
** valeurs: toute chaîne
|
** valeurs: toute chaîne
|
||||||
** valeur par défaut: `+"*!$ident@$host"+`
|
** valeur par défaut: `+"*!$ident@$host"+`
|
||||||
|
|
||||||
* [[option_irc.network.channel_encode]] *irc.network.channel_encode*
|
|
||||||
** description: pass:none[décoder/encoder le nom du canal dans les messages en utilisant les options de charset ; il est recommandé de garder cette option désactivée si vous utilisez seulement UTF-8 dans les noms de canaux ; vous pouvez activer cette option si vous utilisez un charset exotique comme ISO dans les noms de canaux]
|
|
||||||
** type: booléen
|
|
||||||
** valeurs: on, off
|
|
||||||
** valeur par défaut: `+off+`
|
|
||||||
|
|
||||||
* [[option_irc.network.colors_receive]] *irc.network.colors_receive*
|
* [[option_irc.network.colors_receive]] *irc.network.colors_receive*
|
||||||
** description: pass:none[si désactivé, les codes couleurs des messages entrants sont ignorés]
|
** description: pass:none[si désactivé, les codes couleurs des messages entrants sont ignorés]
|
||||||
** type: booléen
|
** type: booléen
|
||||||
@@ -596,6 +608,12 @@
|
|||||||
** valeurs: toute 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)]
|
||||||
|
** type: entier
|
||||||
|
** valeurs: message, channel, text
|
||||||
|
** valeur par défaut: `+message+`
|
||||||
|
|
||||||
* [[option_irc.server_default.command]] *irc.server_default.command*
|
* [[option_irc.server_default.command]] *irc.server_default.command*
|
||||||
** description: pass:none[commande(s) à exécuter après la connexion au serveur et avant le "join" automatique des canaux (plusieurs commandes peuvent être séparées par ";", utilisez "\;" pour un point-virgule, les variables spéciales $nick, $channel et $server sont remplacées par leur valeur) (note : 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)]
|
** description: pass:none[commande(s) à exécuter après la connexion au serveur et avant le "join" automatique des canaux (plusieurs commandes peuvent être séparées par ";", utilisez "\;" pour un point-virgule, les variables spéciales $nick, $channel et $server sont remplacées par leur valeur) (note : 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)]
|
||||||
** type: chaîne
|
** type: chaîne
|
||||||
@@ -746,6 +764,12 @@
|
|||||||
** valeurs: toute chaîne
|
** valeurs: toute chaîne
|
||||||
** valeur par défaut: `+""+`
|
** valeur par défaut: `+""+`
|
||||||
|
|
||||||
|
* [[option_irc.server_default.ssl_password]] *irc.server_default.ssl_password*
|
||||||
|
** description: pass:none[mot de passe pour la clé privée du certificat SSL (note : 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)]
|
||||||
|
** type: chaîne
|
||||||
|
** valeurs: toute chaîne
|
||||||
|
** valeur par défaut: `+""+`
|
||||||
|
|
||||||
* [[option_irc.server_default.ssl_priorities]] *irc.server_default.ssl_priorities*
|
* [[option_irc.server_default.ssl_priorities]] *irc.server_default.ssl_priorities*
|
||||||
** description: pass:none[chaîne avec les priorités pour gnutls (pour la syntaxe, voir la documentation de la fonction gnutls_priority_init du manuel gnutls, les chaînes courantes sont : "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
|
** description: pass:none[chaîne avec les priorités pour gnutls (pour la syntaxe, voir la documentation de la fonction gnutls_priority_init du manuel gnutls, les chaînes courantes sont : "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
|
||||||
** type: chaîne
|
** type: chaîne
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user