mirror of
https://github.com/weechat/weechat.git
synced 2026-06-12 22:24:47 +02:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4dfc137191 | |||
| 3e180a3c90 | |||
| 8b1331f98d |
+2
-1
@@ -3,5 +3,6 @@
|
||||
.git* export-ignore
|
||||
debian-devel export-ignore
|
||||
debian-stable export-ignore
|
||||
weechat.spec export-ignore
|
||||
.mailmap export-ignore
|
||||
tools/build_debian.sh export-ignore
|
||||
tools/build-debian.sh export-ignore
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a bug report (please do not report security issues here)
|
||||
labels: bug
|
||||
|
||||
---
|
||||
|
||||
<!-- Please do not report any security issue here, see file Contributing.adoc -->
|
||||
|
||||
## Bug summary
|
||||
|
||||
|
||||
|
||||
## Steps to reproduce
|
||||
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
|
||||
## Current behavior
|
||||
|
||||
|
||||
|
||||
## Expected behavior
|
||||
|
||||
|
||||
|
||||
## Suggested solutions
|
||||
|
||||
|
||||
|
||||
## Additional information
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
<!-- MANDATORY INFO: -->
|
||||
|
||||
- WeeChat version:
|
||||
- OS, distribution and version:
|
||||
- Terminal:
|
||||
- Terminal multiplexer (screen/tmux/…/none):
|
||||
@@ -1,110 +0,0 @@
|
||||
name: Bug report
|
||||
description: Create a bug report
|
||||
labels: ["bug"]
|
||||
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Before submitting a bug, please check that it has not already been reported by searching in [open and closed bugs](https://github.com/weechat/weechat/issues?q=is%3Aissue+label%3Abug).
|
||||
If you don't use the latest version, please try if possible with the latest stable release to be sure the issue is still present and report the issue on this version.
|
||||
|
||||
**IMPORTANT**: please do not report any security issue here, see [Contributing.adoc](https://github.com/weechat/weechat/blob/master/Contributing.adoc#security-reports).
|
||||
|
||||
- type: textarea
|
||||
id: bug-description
|
||||
attributes:
|
||||
label: Describe the bug
|
||||
description: A clear and concise description of what the bug is.
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: steps-to-reproduce
|
||||
attributes:
|
||||
label: Steps to reproduce
|
||||
description: |
|
||||
Steps to reproduce the issue.
|
||||
If possible, please try to reproduce with a default configuration and no scripts loaded (`weechat -t`). If the issue is related to a script, please mention the list of all scripts loaded.
|
||||
placeholder: |
|
||||
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: current-behavior
|
||||
attributes:
|
||||
label: Current behavior
|
||||
description: |
|
||||
What currently happens.
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: expected-behavior
|
||||
attributes:
|
||||
label: Expected behavior
|
||||
description: What is actually supposed to happen.
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: suggested-solutions
|
||||
attributes:
|
||||
label: Suggested solutions
|
||||
description: How you think this issue can be resolved.
|
||||
validations:
|
||||
required: false
|
||||
|
||||
- type: textarea
|
||||
id: additional-information
|
||||
attributes:
|
||||
label: Additional information
|
||||
description: |
|
||||
For a crash, please include a backtrace from gdb, see the [User's guide](https://weechat.org/doc/weechat/user/#report_crashes).
|
||||
For a display issue, please add a screenshot if it makes sense.
|
||||
Please mention if other versions are affected as well and if some versions are not affected (regression?).
|
||||
And any additional information you deem relevant.
|
||||
validations:
|
||||
required: false
|
||||
|
||||
- type: input
|
||||
id: weechat-version
|
||||
attributes:
|
||||
label: WeeChat version
|
||||
description: |
|
||||
For a stable release: output of `weechat --version`.
|
||||
For the development version: output of command `/v` in WeeChat.
|
||||
placeholder: "4.1.1"
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: input
|
||||
id: os-version
|
||||
attributes:
|
||||
label: What OS are you using?
|
||||
description: Name of the operating system and its version.
|
||||
placeholder: Debian 12, Ubuntu 23.10, MacOS 14, ...
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: input
|
||||
id: terminal
|
||||
attributes:
|
||||
label: On which terminal are you running WeeChat?
|
||||
description: The name of terminal if you think it can be related to the issue (mainly for display issues).
|
||||
placeholder: Terminator, Xterm, GNOME Terminal, Urxvt, ...
|
||||
validations:
|
||||
required: false
|
||||
|
||||
- type: input
|
||||
id: terminal-multiplexer
|
||||
attributes:
|
||||
label: Which terminal multiplexer are you using?
|
||||
description: The name of the terminal multiplexer if you think it can be related to the issue (mainly for display issues).
|
||||
placeholder: none, tmux, screen, ...
|
||||
validations:
|
||||
required: false
|
||||
@@ -0,0 +1,8 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Request a new feature / enhancement
|
||||
labels: feature
|
||||
|
||||
---
|
||||
|
||||
## Feature description
|
||||
@@ -1,17 +0,0 @@
|
||||
name: Feature request
|
||||
description: Request a new feature / enhancement
|
||||
labels: ["feature"]
|
||||
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Before submitting a feature request, please check that it has not already been reported by searching in [open and closed feature requests](https://github.com/weechat/weechat/issues?q=is%3Aissue+label%3Afeature).
|
||||
|
||||
- type: textarea
|
||||
id: feature
|
||||
attributes:
|
||||
label: Feature description
|
||||
description: A description of the feature you would like.
|
||||
validations:
|
||||
required: true
|
||||
@@ -0,0 +1,15 @@
|
||||
---
|
||||
name: Question
|
||||
about: Ask a question (please read first FAQ and docs)
|
||||
labels: question
|
||||
|
||||
---
|
||||
|
||||
## Question
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
- WeeChat version:
|
||||
- OS, distribution and version:
|
||||
@@ -1,19 +0,0 @@
|
||||
name: Question
|
||||
description: Ask a question
|
||||
labels: ["question"]
|
||||
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Before opening an issue with a question:
|
||||
- please read the [FAQ](https://weechat.org/doc/weechat/faq) and [documentation](https://weechat.org/doc/weechat/)
|
||||
- please ask on #weechat channel (on server irc.libera.chat).
|
||||
|
||||
- type: textarea
|
||||
id: question
|
||||
attributes:
|
||||
label: Question
|
||||
description: Your question.
|
||||
validations:
|
||||
required: true
|
||||
+28
-127
@@ -4,27 +4,23 @@ on:
|
||||
- push
|
||||
- pull_request
|
||||
|
||||
env:
|
||||
WEECHAT_DEPENDENCIES: devscripts equivs python3-pip cmake ninja-build lcov pkg-config libncurses-dev gem2deb libperl-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-3.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev libzstd-dev zlib1g-dev curl libcpputest-dev php-dev libphp-embed libargon2-dev libsodium-dev flake8 pylint python3-bandit asciidoctor ruby-pygments.rb shellcheck
|
||||
|
||||
jobs:
|
||||
|
||||
tests_linux:
|
||||
build:
|
||||
|
||||
name: ${{ matrix.config.name }}
|
||||
runs-on: ubuntu-20.04
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os:
|
||||
- ubuntu-22.04
|
||||
config:
|
||||
- { name: "gcc", cc: "gcc", cxx: "g++", buildargs: "" }
|
||||
- { name: "gcc_ninja", cc: "gcc", cxx: "g++", buildargs: "-G Ninja" }
|
||||
- { name: "gcc_no_nls", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_NLS=OFF -DENABLE_DOC=OFF" }
|
||||
- { name: "gcc_no_zstd", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_ZSTD=OFF -DENABLE_DOC=OFF" }
|
||||
- { name: "gcc_coverage", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_CODE_COVERAGE=ON" }
|
||||
- { name: "clang", cc: "clang", cxx: "clang++", buildargs: "" }
|
||||
|
||||
name: "Tests: ${{ matrix.config.name }} on ${{ matrix.os }}"
|
||||
runs-on: ${{ matrix.os }}
|
||||
- { name: "cmake_gcc", cc: "gcc", cxx: "g++", tool: "cmake", args: "" }
|
||||
- { name: "cmake_gcc_no_nls", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_NLS=OFF" }
|
||||
- { name: "cmake_gcc_py2", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_PYTHON2=ON" }
|
||||
- { name: "cmake_gcc_coverage", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_CODE_COVERAGE=ON" }
|
||||
- { name: "cmake_clang", cc: "clang", cxx: "clang++", tool: "cmake", args: "" }
|
||||
- { name: "autotools_gcc", cc: "gcc", cxx: "g++", tool: "autotools", args: "" }
|
||||
- { name: "autotools_clang", cc: "clang", cxx: "clang++", tool: "autotools", args: "" }
|
||||
|
||||
steps:
|
||||
|
||||
@@ -32,30 +28,32 @@ jobs:
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-add-repository --yes ppa:ondrej/php
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }}
|
||||
# uninstall php imagick as is causes a crash when loading php plugin (see #2009)
|
||||
sudo apt-get --yes purge php8.1-imagick
|
||||
sudo apt-get --yes --no-install-recommends install devscripts equivs python3-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python2-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev zlib1g-dev curl libcpputest-dev php7.4-dev libphp7.4-embed libargon2-0-dev libsodium-dev pylint asciidoctor
|
||||
sudo -H pip3 install --ignore-installed msgcheck
|
||||
|
||||
- name: Test patches
|
||||
run: ./tools/build-debian.sh test-patches
|
||||
|
||||
- name: Check gettext files
|
||||
run: msgcheck po/*.po
|
||||
|
||||
- name: Check shell and Python scripts
|
||||
run: ./tools/check_scripts.sh
|
||||
|
||||
- name: Check Python stub file
|
||||
run: ./doc/python_stub.py | diff src/plugins/python/weechat.pyi -
|
||||
|
||||
- name: Check Curl symbols
|
||||
run: curl --silent --show-error --fail --retry 10 https://raw.githubusercontent.com/curl/curl/master/docs/libcurl/symbols-in-versions | ./tools/check_curl_symbols.py
|
||||
- name: Check Python scripts
|
||||
run: |
|
||||
pylint --additional-builtins=_ doc/docgen.py
|
||||
pylint doc/python_stub.py
|
||||
pylint tests/scripts/python/testapigen.py
|
||||
pylint tests/scripts/python/testapi.py
|
||||
pylint tests/scripts/python/unparse.py
|
||||
|
||||
- name: Build and run tests
|
||||
env:
|
||||
CC: ${{ matrix.config.cc }}
|
||||
CXX: ${{ matrix.config.cxx }}
|
||||
BUILDARGS: ${{ matrix.config.buildargs }}
|
||||
run: ./tools/build_test.sh
|
||||
BUILDTOOL: ${{ matrix.config.tool }}
|
||||
BUILDARGS: ${{ matrix.config.args }}
|
||||
run: ./tools/build-test.sh
|
||||
|
||||
- name: Run WeeChat
|
||||
env:
|
||||
@@ -66,10 +64,10 @@ jobs:
|
||||
weechat --colors
|
||||
weechat --license
|
||||
weechat --version
|
||||
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
weechat --temp-dir --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
|
||||
- name: Code coverage
|
||||
if: ${{ matrix.config.name == 'gcc_coverage' }}
|
||||
if: ${{ matrix.config.name == 'cmake_gcc_coverage' }}
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
run: |
|
||||
@@ -78,100 +76,3 @@ jobs:
|
||||
lcov --remove coverage.info '/usr/*' --output-file coverage.info
|
||||
lcov --list coverage.info
|
||||
bash <(curl -s https://codecov.io/bash) -f coverage.info || echo 'Codecov error'
|
||||
|
||||
tests_macos:
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
os:
|
||||
- macos-12
|
||||
config:
|
||||
- { name: "gcc", cc: "gcc", cxx: "g++" }
|
||||
- { name: "clang", cc: "clang", cxx: "clang++" }
|
||||
|
||||
name: "Tests: ${{ matrix.config.name }} on ${{ matrix.os }}"
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
|
||||
- name: Setup Homebrew
|
||||
id: setup-homebrew
|
||||
uses: Homebrew/actions/setup-homebrew@master
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
brew update
|
||||
# temporary fix, see: https://github.com/actions/setup-python/issues/577
|
||||
rm -f \
|
||||
/usr/local/bin/2to3 \
|
||||
/usr/local/bin/idle3 \
|
||||
/usr/local/bin/pydoc3 \
|
||||
/usr/local/bin/python3 \
|
||||
/usr/local/bin/python3-config \
|
||||
/usr/local/bin/2to3-3.11 \
|
||||
/usr/local/bin/idle3.11 \
|
||||
/usr/local/bin/pydoc3.11 \
|
||||
/usr/local/bin/python3.11 \
|
||||
/usr/local/bin/python3.11-config \
|
||||
;
|
||||
brew install asciidoctor guile lua pkg-config ruby
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Build
|
||||
env:
|
||||
CC: ${{ matrix.config.cc }}
|
||||
CXX: ${{ matrix.config.cxx }}
|
||||
run: |
|
||||
mkdir build-tmp && cd build-tmp
|
||||
cmake .. -DENABLE_MAN=ON -DENABLE_DOC=ON -DENABLE_DOC_INCOMPLETE=ON -DENABLE_PHP=OFF
|
||||
make VERBOSE=1 -j2
|
||||
sudo make install
|
||||
|
||||
- name: Run WeeChat
|
||||
env:
|
||||
TERM: xterm-256color
|
||||
run: |
|
||||
weechat --help
|
||||
weechat-curses --help
|
||||
weechat --colors
|
||||
weechat --license
|
||||
weechat --version
|
||||
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
|
||||
build_debian:
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
os:
|
||||
- ubuntu-22.04
|
||||
|
||||
name: "Build Debian on ${{ matrix.os }}"
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }}
|
||||
|
||||
- name: Test Debian patches
|
||||
run: ./tools/build_debian.sh test-patches
|
||||
|
||||
- name: Build Debian packages
|
||||
run: ./tools/build_debian.sh devel ubuntu/jammy
|
||||
|
||||
- name: Install Debian packages
|
||||
run: sudo dpkg -i ../weechat-devel*.deb
|
||||
|
||||
- name: Run WeeChat
|
||||
env:
|
||||
TERM: xterm-256color
|
||||
run: |
|
||||
weechat --help
|
||||
weechat-curses --help
|
||||
weechat --version
|
||||
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
|
||||
+55
-9
@@ -1,11 +1,57 @@
|
||||
# ignored files for Git
|
||||
|
||||
/build
|
||||
/builddir
|
||||
/debian
|
||||
/debian-devel/changelog
|
||||
/debian-devel/*.log
|
||||
/debian-devel/*-stamp
|
||||
/debian-stable/*.log
|
||||
/debian-stable/*-stamp
|
||||
/release
|
||||
*.a
|
||||
*.gmo
|
||||
*.la
|
||||
*.lai
|
||||
*.lo
|
||||
*.m4
|
||||
*.o
|
||||
*.Plo
|
||||
*.Po
|
||||
*.so
|
||||
*.so.0
|
||||
*.so.0.0.0
|
||||
*.1
|
||||
|
||||
ABOUT-NLS
|
||||
autom4te*
|
||||
build/*
|
||||
builddir/*
|
||||
compile
|
||||
config.guess
|
||||
config.h
|
||||
config.h.in*
|
||||
config-git.h
|
||||
config.log
|
||||
config.rpath
|
||||
config.status
|
||||
config.sub
|
||||
configure
|
||||
debian
|
||||
!tools/debian
|
||||
debian-devel/changelog
|
||||
debian-devel/*.log
|
||||
debian-stable/*.log
|
||||
depcomp
|
||||
insert-header.sin
|
||||
install-sh
|
||||
intl/*
|
||||
libtool
|
||||
ltmain.sh
|
||||
Makefile
|
||||
Makefile.in*
|
||||
Makevars.template
|
||||
missing
|
||||
po/*quot*
|
||||
POTFILES
|
||||
remove-potcdate.sed
|
||||
Rules-quot
|
||||
weechat.pc
|
||||
weechat-*.cygport
|
||||
|
||||
*stamp
|
||||
stamp*
|
||||
|
||||
src/gui/curses/weechat
|
||||
src/gui/curses/weechat-curses
|
||||
|
||||
@@ -11,9 +11,7 @@ Sébastien Helleu <flashcode@flashtux.org> <flashcode>
|
||||
Sébastien Helleu <flashcode@flashtux.org> <uid67137>
|
||||
Nils Görs <weechatter@arcor.de>
|
||||
Ryuunosuke Ayanokouzi <i38w7i3@yahoo.co.jp>
|
||||
Krzysztof Korościk <soltys@soltys.info>
|
||||
Krzysztof Korościk <soltys@soltys.info> <soltys1@gmail.com>
|
||||
Krzysztof Korościk <soltys@soltys.info> <soltys@szluug.org>
|
||||
Krzysztof Korościk <soltys1@gmail.com> <soltys@szluug.org> <soltys@soltys.info>
|
||||
Marco Paolone <marcopaolone@gmail.com>
|
||||
<marcopaolone@gmail.com> <marco@DrB4tch.sitecomwl601>
|
||||
<mikaela.suomalainen@outlook.com> <mkaysi@outlook.com>
|
||||
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
dist: bionic
|
||||
sudo: required
|
||||
language: c
|
||||
|
||||
env:
|
||||
- CC="gcc" CXX="g++" BUILDTOOL="cmake" BUILDARGS=""
|
||||
- CC="gcc" CXX="g++" BUILDTOOL="cmake" BUILDARGS="-DENABLE_PYTHON2=ON"
|
||||
# - CC="gcc" CXX="g++" BUILDTOOL="cmake" BUILDARGS="-DENABLE_CODE_COVERAGE=ON" CODECOVERAGE="1"
|
||||
- CC="gcc" CXX="g++" BUILDTOOL="autotools" BUILDARGS=""
|
||||
- CC="gcc" CXX="g++" BUILDTOOL="autotools" BUILDARGS="--enable-python2"
|
||||
- CC="clang" CXX="clang++" BUILDTOOL="cmake" BUILDARGS=""
|
||||
- CC="clang" CXX="clang++" BUILDTOOL="cmake" BUILDARGS="-DENABLE_PYTHON2=ON"
|
||||
- CC="clang" CXX="clang++" BUILDTOOL="autotools" BUILDARGS=""
|
||||
- CC="clang" CXX="clang++" BUILDTOOL="autotools" BUILDARGS="--enable-python2"
|
||||
|
||||
matrix:
|
||||
fast_finish: true
|
||||
|
||||
before_script:
|
||||
- echo 'APT::Install-Recommends "false";' | sudo tee -a /etc/apt/apt.conf
|
||||
- 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 libgnutls28-dev zlib1g-dev curl libcpputest-dev php7.2-dev libphp7.2-embed libargon2-0-dev libsodium-dev pylint3
|
||||
- travis_retry sudo gem install asciidoctor
|
||||
- travis_retry sudo -H pip install --ignore-installed msgcheck
|
||||
- phpenv local system
|
||||
# work around broken travis environment variables, see https://github.com/travis-ci/travis-ci/issues/5301
|
||||
- unset PYTHON_CFLAGS
|
||||
|
||||
script:
|
||||
- ./tools/build-test.sh
|
||||
- msgcheck po/*.po
|
||||
- pylint3 --version
|
||||
- pylint3 --additional-builtins=_ doc/docgen.py
|
||||
- pylint3 tests/scripts/python/testapigen.py
|
||||
- pylint3 tests/scripts/python/testapi.py
|
||||
- pylint3 tests/scripts/python/unparse.py
|
||||
- ./tools/build-debian.sh test-patches
|
||||
|
||||
after_success:
|
||||
- weechat --help
|
||||
- weechat-curses --help
|
||||
- weechat --colors
|
||||
- weechat --license
|
||||
- weechat --version
|
||||
- weechat --temp-dir --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
# - if [ "$CODECOVERAGE" = "1" ]; then bash <(curl -s https://codecov.io/bash) -f coverage.info || echo "Codecov error"; fi
|
||||
+3
-10
@@ -56,7 +56,6 @@ Alphabetically:
|
||||
* Guido Berhoerster
|
||||
* Gwenn
|
||||
* Hasan Kiran (turgay)
|
||||
* Ivan Pešić
|
||||
* Ivan Sichmann Freitas
|
||||
* Jakub Jirutka
|
||||
* Jan Palus
|
||||
@@ -77,16 +76,13 @@ Alphabetically:
|
||||
* Krzysztof Koroscik (soltys)
|
||||
* Kyle Fuller (kylef)
|
||||
* Kyle Sabo
|
||||
* Latchezar Tzvetkoff
|
||||
* Lázaro A.
|
||||
* Leonid Evdokimov
|
||||
* Lázaro A.
|
||||
* Linus Heckemann
|
||||
* LuK1337
|
||||
* Maarten de Vries
|
||||
* Mantas Mikulėnas (grawity)
|
||||
* Marco Paolone
|
||||
* Marco Sirabella
|
||||
* Mario Campos
|
||||
* Mateusz Poszwa
|
||||
* Matt Robinson
|
||||
* Matthew Horan
|
||||
@@ -125,7 +121,6 @@ Alphabetically:
|
||||
* Rudolf Polzer (divVerent)
|
||||
* Ruslan Bekenev
|
||||
* Ryan Farley
|
||||
* Ryan Qian
|
||||
* Ryuunosuke Ayanokouzi
|
||||
* scumjr
|
||||
* Sergio Durigan Junior
|
||||
@@ -135,7 +130,6 @@ Alphabetically:
|
||||
* Simmo Saan (sim642)
|
||||
* Simon Arlott
|
||||
* Simon Kuhnle
|
||||
* Simon Ser
|
||||
* Stefano Pigozzi
|
||||
* Stfn
|
||||
* Sven Knurr (Cthulhux)
|
||||
@@ -149,9 +143,7 @@ Alphabetically:
|
||||
* Trevor Bergeron
|
||||
* Valentin Lorentz (progval)
|
||||
* Vasco Almeida
|
||||
* Victorhck
|
||||
* Voroskoi
|
||||
* wfrsk
|
||||
* Wojciech Kwolek
|
||||
* W. Trevor King
|
||||
* Yannick Palanque
|
||||
@@ -160,4 +152,5 @@ Alphabetically:
|
||||
|
||||
== Contact
|
||||
|
||||
See the https://weechat.org/about/support/[support page].
|
||||
See https://weechat.org/files/doc/devel/weechat_user.en.html#support[user's guide]
|
||||
or https://weechat.org/about/support
|
||||
|
||||
+106
-111
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2007-2008 Julien Louis <ptitlouis@sysif.net>
|
||||
# Copyright (C) 2008-2009 Emmanuel Bouthenot <kolter@openics.org>
|
||||
#
|
||||
@@ -19,35 +19,28 @@
|
||||
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
|
||||
project(weechat C)
|
||||
|
||||
# CMake options
|
||||
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)
|
||||
|
||||
# compiler options
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra -Werror-implicit-function-declaration -Wformat -Werror=format-security")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra")
|
||||
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
|
||||
# extra options specific to gcc/g++
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wformat-overflow=2 -Wformat-truncation=2")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wformat-overflow=2 -Wformat-truncation=2")
|
||||
endif()
|
||||
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")
|
||||
|
||||
# version
|
||||
execute_process(COMMAND "${CMAKE_SOURCE_DIR}/version.sh" devel-major OUTPUT_VARIABLE VERSION_MAJOR)
|
||||
execute_process(COMMAND "${CMAKE_SOURCE_DIR}/version.sh" devel-minor OUTPUT_VARIABLE VERSION_MINOR)
|
||||
execute_process(COMMAND "${CMAKE_SOURCE_DIR}/version.sh" devel-patch OUTPUT_VARIABLE VERSION_PATCH)
|
||||
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-major OUTPUT_VARIABLE VERSION_MAJOR)
|
||||
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-minor OUTPUT_VARIABLE VERSION_MINOR)
|
||||
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-patch OUTPUT_VARIABLE VERSION_PATCH)
|
||||
string(REGEX REPLACE "\n" "" VERSION_MAJOR "${VERSION_MAJOR}")
|
||||
string(REGEX REPLACE "\n" "" VERSION_MINOR "${VERSION_MINOR}")
|
||||
string(REGEX REPLACE "\n" "" VERSION_PATCH "${VERSION_PATCH}")
|
||||
if(VERSION_PATCH STREQUAL "")
|
||||
set(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}")
|
||||
set(VERSION ${VERSION_MAJOR}.${VERSION_MINOR})
|
||||
else()
|
||||
set(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
|
||||
set(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
|
||||
endif()
|
||||
|
||||
# license
|
||||
@@ -66,69 +59,67 @@ set(PKG_STRING "${PROJECT_NAME} ${VERSION}")
|
||||
string(REPLACE "\";\"" "\ " PKG_STRING ${PKG_STRING})
|
||||
|
||||
if(NOT DEFINED LIBDIR)
|
||||
set(LIBDIR "${CMAKE_INSTALL_PREFIX}/lib")
|
||||
set(LIBDIR ${CMAKE_INSTALL_PREFIX}/lib)
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED WEECHAT_LIBDIR)
|
||||
set(WEECHAT_LIBDIR "${LIBDIR}/${PROJECT_NAME}")
|
||||
set(WEECHAT_LIBDIR ${LIBDIR}/${PROJECT_NAME})
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED DATAROOTDIR)
|
||||
set(DATAROOTDIR "${CMAKE_INSTALL_PREFIX}/share")
|
||||
set(DATAROOTDIR ${CMAKE_INSTALL_PREFIX}/share)
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED WEECHAT_SHAREDIR)
|
||||
set(WEECHAT_SHAREDIR "${DATAROOTDIR}/weechat")
|
||||
set(WEECHAT_SHAREDIR ${DATAROOTDIR}/weechat)
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED MANDIR)
|
||||
set(MANDIR "${DATAROOTDIR}/man")
|
||||
set(MANDIR ${DATAROOTDIR}/man)
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED LOCALEDIR)
|
||||
set(LOCALEDIR "${DATAROOTDIR}/locale")
|
||||
set(LOCALEDIR ${DATAROOTDIR}/locale)
|
||||
endif()
|
||||
|
||||
if(DEFINED INCLUDEDIR)
|
||||
set(INCLUDEDIR "${INCLUDEDIR}/${PROJECT_NAME}")
|
||||
set(INCLUDEDIR ${INCLUDEDIR}/${PROJECT_NAME})
|
||||
else()
|
||||
set(INCLUDEDIR "${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME}")
|
||||
set(INCLUDEDIR ${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME})
|
||||
endif()
|
||||
|
||||
option(ENABLE_NCURSES "Compile the Ncurses interface" ON)
|
||||
option(ENABLE_HEADLESS "Compile the headless binary" ON)
|
||||
option(ENABLE_NLS "Enable Native Language Support" ON)
|
||||
option(ENABLE_LARGEFILE "Enable Large File Support" ON)
|
||||
option(ENABLE_ZSTD "Enable Zstandard compression" ON)
|
||||
option(ENABLE_ALIAS "Enable Alias plugin" ON)
|
||||
option(ENABLE_BUFLIST "Enable Buflist plugin" ON)
|
||||
option(ENABLE_CHARSET "Enable Charset plugin" ON)
|
||||
option(ENABLE_EXEC "Enable Exec plugin" ON)
|
||||
option(ENABLE_FIFO "Enable FIFO plugin" ON)
|
||||
option(ENABLE_FSET "Enable Fast Set plugin" ON)
|
||||
option(ENABLE_IRC "Enable IRC plugin" ON)
|
||||
option(ENABLE_LOGGER "Enable Logger plugin" ON)
|
||||
option(ENABLE_RELAY "Enable Relay plugin" ON)
|
||||
option(ENABLE_SCRIPT "Enable Script plugin (script manager)" ON)
|
||||
option(ENABLE_SCRIPTS "Enable script plugins (perl, python, …)" ON)
|
||||
option(ENABLE_PERL "Enable Perl scripting language" ON)
|
||||
option(ENABLE_PYTHON "Enable Python scripting language" ON)
|
||||
option(ENABLE_RUBY "Enable Ruby scripting language" ON)
|
||||
option(ENABLE_LUA "Enable Lua scripting language" ON)
|
||||
option(ENABLE_TCL "Enable Tcl scripting language" ON)
|
||||
option(ENABLE_GUILE "Enable Scheme (guile) scripting language" ON)
|
||||
option(ENABLE_JAVASCRIPT "Enable JavaScript scripting language" OFF)
|
||||
option(ENABLE_PHP "Enable PHP scripting language" ON)
|
||||
option(ENABLE_SPELL "Enable Spell checker plugin" ON)
|
||||
option(ENABLE_ENCHANT "Use Enchant lib in Spell checker plugin" OFF)
|
||||
option(ENABLE_TRIGGER "Enable Trigger plugin" ON)
|
||||
option(ENABLE_TYPING "Enable Typing plugin" ON)
|
||||
option(ENABLE_XFER "Enable Xfer plugin" ON)
|
||||
option(ENABLE_MAN "Enable build of man page" OFF)
|
||||
option(ENABLE_DOC "Enable build of documentation" OFF)
|
||||
option(ENABLE_DOC_INCOMPLETE "Enable incomplete doc" OFF)
|
||||
option(ENABLE_TESTS "Enable tests" OFF)
|
||||
option(ENABLE_CODE_COVERAGE "Enable code coverage" OFF)
|
||||
option(ENABLE_NCURSES "Compile the Ncurses interface" ON)
|
||||
option(ENABLE_HEADLESS "Compile the headless binary (required for tests)" ON)
|
||||
option(ENABLE_NLS "Enable Native Language Support" ON)
|
||||
option(ENABLE_LARGEFILE "Enable Large File Support" ON)
|
||||
option(ENABLE_ALIAS "Enable Alias plugin" ON)
|
||||
option(ENABLE_BUFLIST "Enable Buflist plugin" ON)
|
||||
option(ENABLE_CHARSET "Enable Charset plugin" ON)
|
||||
option(ENABLE_EXEC "Enable Exec plugin" ON)
|
||||
option(ENABLE_FIFO "Enable FIFO plugin" ON)
|
||||
option(ENABLE_FSET "Enable Fast Set plugin" ON)
|
||||
option(ENABLE_IRC "Enable IRC plugin" ON)
|
||||
option(ENABLE_LOGGER "Enable Logger plugin" ON)
|
||||
option(ENABLE_RELAY "Enable Relay plugin" ON)
|
||||
option(ENABLE_SCRIPT "Enable Script plugin (script manager)" ON)
|
||||
option(ENABLE_SCRIPTS "Enable script plugins (perl, python, ...)" ON)
|
||||
option(ENABLE_PERL "Enable Perl scripting language" ON)
|
||||
option(ENABLE_PYTHON "Enable Python scripting language" ON)
|
||||
option(ENABLE_PYTHON2 "Use Python 2 instead of Python 3" OFF)
|
||||
option(ENABLE_RUBY "Enable Ruby scripting language" ON)
|
||||
option(ENABLE_LUA "Enable Lua scripting language" ON)
|
||||
option(ENABLE_TCL "Enable Tcl scripting language" ON)
|
||||
option(ENABLE_GUILE "Enable Scheme (guile) scripting language" ON)
|
||||
option(ENABLE_JAVASCRIPT "Enable JavaScript scripting language" OFF)
|
||||
option(ENABLE_PHP "Enable PHP scripting language" ON)
|
||||
option(ENABLE_SPELL "Enable Spell checker plugin" ON)
|
||||
option(ENABLE_ENCHANT "Enable Enchant lib for Spell checker plugin" OFF)
|
||||
option(ENABLE_TRIGGER "Enable Trigger plugin" ON)
|
||||
option(ENABLE_XFER "Enable Xfer plugin" ON)
|
||||
option(ENABLE_MAN "Enable build of man page" OFF)
|
||||
option(ENABLE_DOC "Enable build of documentation" OFF)
|
||||
option(ENABLE_TESTS "Enable tests" OFF)
|
||||
option(ENABLE_CODE_COVERAGE "Enable code coverage" OFF)
|
||||
|
||||
# code coverage
|
||||
add_library(coverage_config INTERFACE)
|
||||
@@ -137,29 +128,6 @@ if(ENABLE_CODE_COVERAGE)
|
||||
target_link_libraries(coverage_config INTERFACE --coverage)
|
||||
endif()
|
||||
|
||||
# headless mode is required for documentation
|
||||
if(ENABLE_DOC AND NOT ENABLE_HEADLESS)
|
||||
message(FATAL_ERROR "Headless mode is required to build documentation.")
|
||||
endif()
|
||||
|
||||
# all plugins (except javascript) are required for documentation
|
||||
if(ENABLE_DOC AND NOT ENABLE_DOC_INCOMPLETE
|
||||
AND (NOT ENABLE_NLS OR NOT ENABLE_ALIAS OR NOT ENABLE_BUFLIST
|
||||
OR NOT ENABLE_CHARSET OR NOT ENABLE_EXEC OR NOT ENABLE_FIFO
|
||||
OR NOT ENABLE_FSET OR NOT ENABLE_IRC OR NOT ENABLE_LOGGER
|
||||
OR NOT ENABLE_RELAY OR NOT ENABLE_SCRIPT OR NOT ENABLE_SCRIPTS
|
||||
OR NOT ENABLE_PERL OR NOT ENABLE_PYTHON OR NOT ENABLE_RUBY
|
||||
OR NOT ENABLE_LUA OR NOT ENABLE_TCL OR NOT ENABLE_GUILE
|
||||
OR NOT ENABLE_PHP OR NOT ENABLE_SPELL OR NOT ENABLE_TRIGGER
|
||||
OR NOT ENABLE_TYPING OR NOT ENABLE_XFER))
|
||||
message(
|
||||
FATAL_ERROR
|
||||
" All plugins are required to build documentation.\n"
|
||||
" If you really want to build incomplete docs, enable this option:\n"
|
||||
" -DENABLE_DOC_INCOMPLETE=ON"
|
||||
)
|
||||
endif()
|
||||
|
||||
# headless mode is required for tests
|
||||
if(ENABLE_TESTS AND NOT ENABLE_HEADLESS)
|
||||
message(FATAL_ERROR "Headless mode is required for tests.")
|
||||
@@ -182,8 +150,6 @@ endif()
|
||||
|
||||
add_definitions(-DHAVE_CONFIG_H)
|
||||
|
||||
include(FindPkgConfig)
|
||||
|
||||
include(CheckIncludeFiles)
|
||||
include(CheckFunctionExists)
|
||||
include(CheckSymbolExists)
|
||||
@@ -201,6 +167,20 @@ if(ENABLE_LARGEFILE)
|
||||
add_definitions(-D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D_LARGE_FILES)
|
||||
endif()
|
||||
|
||||
# Check for Gettext
|
||||
if(ENABLE_NLS)
|
||||
find_package(Gettext)
|
||||
if(GETTEXT_FOUND)
|
||||
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()
|
||||
|
||||
# Check for libgcrypt
|
||||
find_package(GCRYPT REQUIRED)
|
||||
add_definitions(-DHAVE_GCRYPT)
|
||||
@@ -215,12 +195,7 @@ list(APPEND EXTRA_LIBS gnutls)
|
||||
|
||||
# Check for zlib
|
||||
find_package(ZLIB REQUIRED)
|
||||
|
||||
# Check for zstd
|
||||
if(ENABLE_ZSTD)
|
||||
pkg_check_modules(LIBZSTD REQUIRED libzstd)
|
||||
add_definitions(-DHAVE_ZSTD)
|
||||
endif()
|
||||
add_definitions(-DHAVE_ZLIB)
|
||||
|
||||
# Check for iconv
|
||||
find_package(Iconv)
|
||||
@@ -248,13 +223,7 @@ endif()
|
||||
add_subdirectory(icons)
|
||||
|
||||
if(ENABLE_NLS)
|
||||
find_package(Gettext REQUIRED)
|
||||
add_definitions(-DENABLE_NLS)
|
||||
find_package(Intl REQUIRED)
|
||||
list(APPEND EXTRA_LIBS "${Intl_LIBRARIES}")
|
||||
add_subdirectory(po)
|
||||
else()
|
||||
add_custom_target(translations COMMAND true)
|
||||
endif()
|
||||
|
||||
add_subdirectory(src)
|
||||
@@ -268,16 +237,13 @@ if(ENABLE_TESTS)
|
||||
else()
|
||||
message(SEND_ERROR "CppUTest not found")
|
||||
endif()
|
||||
else()
|
||||
enable_testing()
|
||||
add_test(NAME notests COMMAND true)
|
||||
endif()
|
||||
|
||||
configure_file(config.h.cmake config.h @ONLY)
|
||||
|
||||
# set the git version in "config-git.h"
|
||||
add_custom_target(version_git ALL
|
||||
COMMAND "${CMAKE_CURRENT_SOURCE_DIR}/tools/set_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}"
|
||||
)
|
||||
|
||||
@@ -293,7 +259,7 @@ add_custom_target(uninstall
|
||||
|
||||
add_custom_target(dist
|
||||
"${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
|
||||
@@ -302,23 +268,52 @@ set(prefix "${CMAKE_INSTALL_PREFIX}")
|
||||
set(exec_prefix "\${prefix}")
|
||||
string(REPLACE "${CMAKE_INSTALL_PREFIX}" "\${prefix}" libdir "${LIBDIR}")
|
||||
set(includedir "\${prefix}/include")
|
||||
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/weechat.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/weechat.pc" @ONLY)
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat.pc" DESTINATION "${LIBDIR}/pkgconfig")
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/weechat.pc.in ${CMAKE_CURRENT_BINARY_DIR}/weechat.pc @ONLY)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.pc DESTINATION ${LIBDIR}/pkgconfig)
|
||||
|
||||
# cygport file (used to build Cygwin packages)
|
||||
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/weechat.cygport.in" "${CMAKE_CURRENT_BINARY_DIR}/weechat-${VERSION}-1.cygport" @ONLY)
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/weechat.cygport.in ${CMAKE_CURRENT_BINARY_DIR}/weechat-${VERSION}-1.cygport @ONLY)
|
||||
|
||||
# install some files (only on Cygwin)
|
||||
if(CYGWIN)
|
||||
install(FILES
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/AUTHORS.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/ChangeLog.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/Contributing.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/README.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/ReleaseNotes.adoc"
|
||||
DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}"
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/AUTHORS.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/ChangeLog.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/Contributing.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/README.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/ReleaseNotes.adoc
|
||||
DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME}
|
||||
)
|
||||
endif()
|
||||
|
||||
# desktop file
|
||||
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/weechat.desktop" DESTINATION "${DATAROOTDIR}/applications")
|
||||
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/weechat.desktop DESTINATION ${DATAROOTDIR}/applications)
|
||||
|
||||
# packages
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Fast, light and extensible chat client")
|
||||
set(CPACK_PACKAGE_VENDOR "Sébastien Helleu")
|
||||
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README.adoc")
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
|
||||
set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
|
||||
set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH})
|
||||
|
||||
# binary package
|
||||
set(CPACK_GENERATOR "STGZ;TGZ;TBZ2")
|
||||
set(CPACK_PACKAGE_FILE_NAME weechat-binary-${VERSION})
|
||||
|
||||
# source package
|
||||
set(CPACK_SOURCE_GENERATOR "TGZ;TBZ2")
|
||||
set(CPACK_SOURCE_PACKAGE_FILE_NAME weechat-${VERSION})
|
||||
set(CPACK_SOURCE_IGNORE_FILES
|
||||
"/\\\\.git" "/build/" "/m4/"
|
||||
"/autom4te\\\\.cache/" "/ABOUT-NLS$" "/config\\\\.guess$" "/config\\\\.h$"
|
||||
"/config\\\\.h.in$" "/config\\\\.log$" "/config\\\\.rpath$"
|
||||
"/config\\\\.status$" "/config\\\\.sub$" "/configure$" "/depcomp$"
|
||||
"/install-sh$" "/missing$" "/intl/" "/libtool$" "/\\\\.libs/"
|
||||
"/ltmain\\\\.sh$" "/\\\\.deps/" "/html/" "/html1/" "/Makefile$"
|
||||
"/Makefile\\\\.in$" "stamp" "/po/.*\\\\.header$" "\\\\.gmo$" "~$" "\\\\.o$"
|
||||
"\\\\.lo$" "\\\\.a$" "\\\\.la$" "\\\\.lai$" "\\\\.Plo$" "/weechat$"
|
||||
)
|
||||
|
||||
include(CPack)
|
||||
|
||||
@@ -671,4 +671,4 @@ into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications with
|
||||
the library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License. But first, please read
|
||||
<https://www.gnu.org/licenses/why-not-lgpl.html>.
|
||||
<https://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
|
||||
+458
-1234
File diff suppressed because it is too large
Load Diff
+7
-26
@@ -29,8 +29,8 @@ please include:
|
||||
_WeeChat 1.7-dev (git: v1.6-6-g997f47f)_. +
|
||||
If WeeChat does not start at all, please include the version displayed by
|
||||
`weechat --help` (or the version installed with your package manager).
|
||||
* Your *operating system*: its name and version (examples: Linux Debian Bookworm,
|
||||
FreeBSD 13.0, Windows/Cygwin 64-bit, Windows/Ubuntu 64-bit...).
|
||||
* Your *operating system*: its name and version (examples: Linux Debian Wheezy,
|
||||
FreeBSD 10.0, Windows/Cygwin 64-bit, Windows/Ubuntu 64-bit...).
|
||||
* The *steps to reproduce*: if possible, please include a reproducible example:
|
||||
explain the steps which led you to the problem. +
|
||||
It's even better if you can reproduce the problem with a new config (and no
|
||||
@@ -38,7 +38,8 @@ please include:
|
||||
problem here.
|
||||
* The *gdb's backtrace* (only for a crash): if you can reproduce the crash
|
||||
(or if you have a core file), please include the backtrace from gdb (look at
|
||||
https://weechat.org/doc/weechat/user/#report_crashes[User's guide] for more info).
|
||||
https://weechat.org/files/doc/devel/weechat_user.en.html#report_crashes[User's guide]
|
||||
for more info).
|
||||
* The *actual result*.
|
||||
* The *expected result*: the correct result you are expecting.
|
||||
|
||||
@@ -68,14 +69,14 @@ time, for https://github.com/weechat/weechat[WeeChat] and the website
|
||||
https://github.com/weechat/weechat.org[weechat.org].
|
||||
|
||||
To start a translation in a new language (not yet supported), please look at
|
||||
https://weechat.org/doc/weechat/dev/#translations[translations]
|
||||
https://weechat.org/files/doc/devel/weechat_dev.en.html#translations[translations]
|
||||
in Developer's guide.
|
||||
|
||||
== Feature requests
|
||||
|
||||
WeeChat is under active development, so your idea may already have been
|
||||
implemented, or scheduled for a future version (you can check in
|
||||
https://weechat.org/dev/[roadmap] or
|
||||
https://weechat.org/dev[roadmap] or
|
||||
https://github.com/weechat/weechat/milestones[milestones] on GitHub.
|
||||
|
||||
Pull requests on GitHub are welcome for minor new features.
|
||||
@@ -84,26 +85,6 @@ For major new features, it's better to discuss about it in IRC
|
||||
(server: _irc.libera.chat_, channel _#weechat_).
|
||||
|
||||
Before submitting any pull request, be sure you have read the
|
||||
https://weechat.org/doc/weechat/dev/#coding_rules[coding rules]
|
||||
https://weechat.org/files/doc/devel/weechat_dev.en.html#coding_rules[coding rules]
|
||||
in Developer's guide, which contains info about styles used, naming convention
|
||||
and other useful info.
|
||||
|
||||
== Semantic versioning
|
||||
|
||||
Since version 4.0.0, WeeChat is following a "practical" semantic versioning.
|
||||
|
||||
It is based on https://semver.org/[Semantic Versioning] but in a less strict way: breaking changes in API with low user impact don't bump the major version.
|
||||
|
||||
The version number is on three digits `X.Y.Z`, where:
|
||||
|
||||
* `X` is the major version
|
||||
* `Y` is the minor version
|
||||
* `Z` is the patch version.
|
||||
|
||||
Rules to increment the version number:
|
||||
|
||||
* the *major version* number (`X`) is incremented only when intentional breaking changes target feature areas that are actively consumed by users, scripts or C plugin API
|
||||
* the *minor version* number (`Y`) is incremented for any new release of WeeChat that includes new features and bug fixes, possibly breaking API with low impact on users
|
||||
* the *patch version* number (`Z`) is reserved for releases that address severe bugs or security issues found after the release.
|
||||
|
||||
For more information, see the https://specs.weechat.org/specs/2023-003-practical-semantic-versioning.html[specification].
|
||||
|
||||
+80
@@ -0,0 +1,80 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2005 Julien Louis <ptitlouis@sysif.net>
|
||||
# Copyright (C) 2006-2009 Emmanuel Bouthenot <kolter@openics.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/>.
|
||||
#
|
||||
|
||||
# This target will update file config-git.h with output of command "git describe"
|
||||
# (if needed, and only for a devel/rc version).
|
||||
BUILT_SOURCES = build-config-git.h
|
||||
build-config-git.h:
|
||||
-$(abs_top_srcdir)/tools/git-version.sh "$(abs_top_srcdir)" "$(VERSION)" config-git.h
|
||||
|
||||
if TESTS
|
||||
tests_dir = tests
|
||||
endif
|
||||
|
||||
SUBDIRS = icons po doc intl src $(tests_dir)
|
||||
|
||||
EXTRA_DIST = AUTHORS.adoc \
|
||||
ChangeLog.adoc \
|
||||
Contributing.adoc \
|
||||
README.adoc \
|
||||
ReleaseNotes.adoc \
|
||||
CMakeLists.txt \
|
||||
config.rpath \
|
||||
config.h.cmake \
|
||||
cmake/CMakeParseArguments.cmake \
|
||||
cmake/FindAsciidoctor.cmake \
|
||||
cmake/FindAspell.cmake \
|
||||
cmake/FindCppUTest.cmake \
|
||||
cmake/FindENCHANT.cmake \
|
||||
cmake/FindGCRYPT.cmake \
|
||||
cmake/FindGettext.cmake \
|
||||
cmake/FindGnuTLS.cmake \
|
||||
cmake/FindGuile.cmake \
|
||||
cmake/FindIconv.cmake \
|
||||
cmake/FindLua.cmake \
|
||||
cmake/FindNcurses.cmake \
|
||||
cmake/FindPerl.cmake \
|
||||
cmake/FindPkgConfig.cmake \
|
||||
cmake/FindPython.cmake \
|
||||
cmake/FindRuby.cmake \
|
||||
cmake/FindV8.cmake \
|
||||
cmake/FindZLIB.cmake \
|
||||
cmake/cmake_uninstall.cmake.in \
|
||||
po/CMakeLists.txt \
|
||||
po/srcfiles.cmake \
|
||||
tools/build-test.sh \
|
||||
tools/git-version.sh \
|
||||
tools/makedist.sh \
|
||||
version.sh \
|
||||
weechat.desktop \
|
||||
weechat.pc.in \
|
||||
weechat.cygport.in
|
||||
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = weechat.pc
|
||||
|
||||
desktopdir = $(datadir)/applications
|
||||
desktop_DATA = weechat.desktop
|
||||
|
||||
clean-local:
|
||||
$(RM) config-git.h
|
||||
+77
-12
@@ -5,8 +5,8 @@
|
||||
|
||||
pass:[<p align="center">] image:https://weechat.org/media/images/weechat_logo_large.png[align="center"] pass:[</p>]
|
||||
|
||||
image:https://img.shields.io/badge/mastodon-follow-blue.svg["Mastodon", link="https://hostux.social/@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/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://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"]
|
||||
@@ -23,13 +23,13 @@ Homepage: https://weechat.org/
|
||||
|
||||
== Features
|
||||
|
||||
* *Modular chat client*: WeeChat has a lightweight core and optional https://weechat.org/doc/weechat/user/#plugins[plugins]. All plugins (including https://weechat.org/doc/weechat/user/#irc[IRC]) are independent and can be unloaded.
|
||||
* *Modular chat client*: WeeChat has a lightweight core and optional https://weechat.org/files/doc/stable/weechat_user.en.html#plugins[plugins]. All plugins (including https://weechat.org/files/doc/stable/weechat_user.en.html#irc_plugin[IRC]) are independent and can be unloaded.
|
||||
* *Multi-platform*: WeeChat runs on GNU/Linux, *BSD, GNU/Hurd, Haiku, macOS and Windows (Bash/Ubuntu and Cygwin).
|
||||
* *Multi-protocols*: WeeChat is designed to support multiple protocols by plugins, like IRC.
|
||||
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://datatracker.ietf.org/doc/html/rfc1459[1459], https://datatracker.ietf.org/doc/html/rfc2810[2810], https://datatracker.ietf.org/doc/html/rfc2811[2811], https://datatracker.ietf.org/doc/html/rfc2812[2812], https://datatracker.ietf.org/doc/html/rfc2813[2813] and https://datatracker.ietf.org/doc/html/rfc7194[7194].
|
||||
* *Small, fast, and very light*: the core is and should stay as light and fast as possible.
|
||||
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/language/perl/[Perl], https://weechat.org/scripts/language/python/[Python], https://weechat.org/scripts/language/ruby[Ruby], https://weechat.org/scripts/language/lua/[Lua], https://weechat.org/scripts/language/tcl/[Tcl], https://weechat.org/scripts/language/guile/[Scheme], https://weechat.org/scripts/language/javascript/[JavaScript] and https://weechat.org/scripts/language/php/[PHP]).
|
||||
* *Fully documented*: there is comprehensive https://weechat.org/doc/weechat/[documentation], which is https://weechat.org/doc/weechat/dev/#translations[translated] into several languages.
|
||||
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://tools.ietf.org/html/rfc1459[1459], https://tools.ietf.org/html/rfc2810[2810], https://tools.ietf.org/html/rfc2811[2811], https://tools.ietf.org/html/rfc2812[2812] and https://tools.ietf.org/html/rfc2813[2813].
|
||||
* *Small, fast and very light*: the core is and should stay as light and fast as possible.
|
||||
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/stable/language/perl/[Perl], https://weechat.org/scripts/stable/language/python/[Python], https://weechat.org/scripts/stable/language/ruby[Ruby], https://weechat.org/scripts/stable/language/lua/[Lua], https://weechat.org/scripts/stable/language/tcl/[Tcl], https://weechat.org/scripts/stable/language/guile/[Scheme], https://weechat.org/scripts/stable/language/javascript/[JavaScript] and https://weechat.org/scripts/stable/language/php/[PHP]).
|
||||
* *Fully documented*: there is comprehensive https://weechat.org/doc/[documentation], which is https://weechat.org/files/doc/stable/weechat_dev.en.html#translations[translated] into several languages.
|
||||
* *Developed from scratch*: WeeChat was built from scratch and is not based on any other client.
|
||||
* *Free software*: WeeChat is released under https://www.gnu.org/licenses/gpl-3.0.html[GPLv3].
|
||||
|
||||
@@ -37,19 +37,84 @@ pass:[<p align="center">] image:https://weechat.org/media/images/screenshots/wee
|
||||
|
||||
On WeeChat's website you can find https://weechat.org/about/screenshots/[more screenshots].
|
||||
|
||||
== Installation
|
||||
== Install
|
||||
|
||||
WeeChat can be installed using your favorite package manager (recommended) or by compiling it yourself.
|
||||
=== Dependencies
|
||||
|
||||
For detailed instructions, please check the https://weechat.org/doc/weechat/user/#install[WeeChat user's guide].
|
||||
Following packages are *required*:
|
||||
|
||||
== Semantic versioning
|
||||
* CMake
|
||||
* libncurses
|
||||
* libcurl
|
||||
* zlib
|
||||
* libgcrypt
|
||||
|
||||
WeeChat is following a "practical" semantic versioning, see file link:Contributing.adoc#semantic-versioning[Contributing.adoc].
|
||||
Following packages are optional:
|
||||
|
||||
* for i18n: gettext
|
||||
* for SSL: gnutls, ca-certificates
|
||||
* for spell checking: aspell or enchant
|
||||
* for scripting: python, perl, ruby, lua, tcl, guile, libv8 (javascript), php
|
||||
* for building doc and man page: asciidoctor
|
||||
* for building tests: C++ compiler, CppUTest
|
||||
|
||||
For a complete list of dependencies and versions recommended, please look at
|
||||
https://weechat.org/files/doc/devel/weechat_user.en.html#dependencies[user's guide].
|
||||
|
||||
=== Compile
|
||||
|
||||
WeeChat can be built with https://cmake.org/[CMake] (recommended) or autotools.
|
||||
|
||||
[NOTE]
|
||||
Only CMake is officially supported to build WeeChat. You should only use
|
||||
autotools if you are not able to use CMake. +
|
||||
Building with autotools requires more dependencies and is slower than with CMake.
|
||||
|
||||
* Installation in system directories (requires _root_ privileges):
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake ..
|
||||
$ make
|
||||
$ sudo make install
|
||||
----
|
||||
|
||||
* Installation in custom directory (for example your home):
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/directory
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
For more information or installation with autotools, please look at
|
||||
https://weechat.org/files/doc/devel/weechat_user.en.html#compile_with_autotools[user's guide].
|
||||
|
||||
=== Run tests
|
||||
|
||||
Following packages are *required* to compile tests:
|
||||
|
||||
* libcpputest-dev
|
||||
* C++ compiler
|
||||
|
||||
Tests must be enabled when compiling WeeChat:
|
||||
|
||||
----
|
||||
$ cmake .. -DENABLE_TESTS=ON
|
||||
----
|
||||
|
||||
They can be launched after compilation from the build directory:
|
||||
|
||||
----
|
||||
$ ctest -V
|
||||
----
|
||||
|
||||
== Copyright
|
||||
|
||||
Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
|
||||
This file is part of WeeChat, the extensible chat client.
|
||||
|
||||
|
||||
+297
-1311
File diff suppressed because it is too large
Load Diff
Executable
+69
@@ -0,0 +1,69 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2005 Julien Louis <ptitlouis@sysif.net>
|
||||
# Copyright (C) 2005-2006 Emmanuel Bouthenot <kolter@openics.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/>.
|
||||
#
|
||||
|
||||
###
|
||||
### common stuff
|
||||
###
|
||||
|
||||
DIR=$(cd "$(dirname "$0")" || exit 1; pwd)
|
||||
cd "$DIR" || exit 1
|
||||
|
||||
AUTOGEN_LOG=autogen.log
|
||||
|
||||
err ()
|
||||
{
|
||||
echo "-------"
|
||||
echo "Error :"
|
||||
echo "---8<-----------------------------------"
|
||||
cat $AUTOGEN_LOG
|
||||
echo "----------------------------------->8---"
|
||||
exit 1
|
||||
}
|
||||
|
||||
run ()
|
||||
{
|
||||
printf "Running \"%s\"..." "$@"
|
||||
if eval "$@" >$AUTOGEN_LOG 2>&1 ; then
|
||||
echo " OK"
|
||||
else
|
||||
echo " FAILED"
|
||||
err
|
||||
fi
|
||||
}
|
||||
|
||||
# remove autotools stuff
|
||||
run "rm -f config.h.in"
|
||||
run "rm -f aclocal.m4 configure config.log config.status"
|
||||
run "rm -rf autom4te*.cache"
|
||||
|
||||
# remove libtool stuff
|
||||
run "rm -f libtool"
|
||||
|
||||
# remove gettext stuff
|
||||
run "rm -f ABOUT-NLS"
|
||||
run "rm -rf intl"
|
||||
|
||||
# execute autoreconf cmds
|
||||
run "autoreconf -vi"
|
||||
|
||||
# ending
|
||||
rm -f $AUTOGEN_LOG
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2014-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2014-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -27,11 +27,11 @@ else()
|
||||
find_path(ENCHANT_INCLUDE_DIR
|
||||
NAMES enchant++.h
|
||||
HINTS ${PC_ENCHANT_INCLUDEDIR} ${PC_ENCHANT_INCLUDE_DIRS}
|
||||
PATH_SUFFIXES enchant-2 enchant
|
||||
PATH_SUFFIXES enchant
|
||||
)
|
||||
|
||||
find_library(ENCHANT_LIBRARIES
|
||||
NAMES enchant-2 enchant
|
||||
NAMES enchant
|
||||
HINTS ${PC_ENCHANT_LIBDIR}
|
||||
${PC_ENCHANT_LIBRARY_DIRS}
|
||||
)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -34,12 +34,12 @@ set(GCRYPT_CFLAGS)
|
||||
|
||||
if(LIBGCRYPT_CONFIG_EXECUTABLE)
|
||||
|
||||
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --libs RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
|
||||
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --cflags RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
|
||||
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS)
|
||||
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS)
|
||||
|
||||
if(NOT DEFINED ${GCRYPT_CFLAGS})
|
||||
set(GCRYPT_CFLAGS " ")
|
||||
endif()
|
||||
if(${GCRYPT_CFLAGS} MATCHES "\n")
|
||||
set(GCRYPT_CFLAGS " ")
|
||||
endif()
|
||||
|
||||
endif()
|
||||
|
||||
|
||||
+21
-23
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2007 Julien Louis <ptitlouis@sysif.net>
|
||||
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
|
||||
#
|
||||
@@ -45,28 +45,26 @@ set(CMAKE_REQUIRED_INCLUDES ${LIBINTL_INCLUDE})
|
||||
|
||||
check_include_files(libintl.h HAVE_LIBINTL_H)
|
||||
|
||||
if(NOT HAVE_LIBINTL_H)
|
||||
message(SEND_ERROR "Header libintl.h not found, required if ENABLE_NLS is enabled")
|
||||
endif()
|
||||
|
||||
check_function_exists(dgettext LIBC_HAS_DGETTEXT)
|
||||
if(LIBC_HAS_DGETTEXT)
|
||||
set(GETTEXT_FOUND TRUE)
|
||||
else()
|
||||
find_library(LIBINTL_LIBRARY NAMES intl
|
||||
PATHS
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
)
|
||||
if(LIBINTL_LIBRARY)
|
||||
if(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
|
||||
set(CMAKE_REQUIRED_LIBRARIES "iconv")
|
||||
check_library_exists(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT)
|
||||
else()
|
||||
check_library_exists(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT)
|
||||
endif()
|
||||
if(LIBINTL_HAS_DGETTEXT)
|
||||
set(GETTEXT_FOUND TRUE)
|
||||
if(HAVE_LIBINTL_H)
|
||||
check_function_exists(dgettext LIBC_HAS_DGETTEXT)
|
||||
if(LIBC_HAS_DGETTEXT)
|
||||
set(GETTEXT_FOUND TRUE)
|
||||
else()
|
||||
find_library(LIBINTL_LIBRARY NAMES intl
|
||||
PATHS
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
)
|
||||
if(LIBINTL_LIBRARY)
|
||||
if(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
|
||||
set(CMAKE_REQUIRED_LIBRARIES "iconv")
|
||||
check_library_exists(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT)
|
||||
else()
|
||||
check_library_exists(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT)
|
||||
endif()
|
||||
if(LIBINTL_HAS_DGETTEXT)
|
||||
set(GETTEXT_FOUND TRUE)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2011-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2011-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -35,5 +35,5 @@ endif()
|
||||
|
||||
find_package(PkgConfig)
|
||||
if(PKG_CONFIG_FOUND)
|
||||
pkg_search_module(LUA lua5.4 lua-5.4 lua54 lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
|
||||
pkg_search_module(LUA lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
|
||||
endif()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
+7
-12
@@ -1,6 +1,6 @@
|
||||
#
|
||||
# Copyright (C) 2017 Adam Saponara <as@php.net>
|
||||
# Copyright (C) 2017-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2017-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -24,31 +24,26 @@ endif()
|
||||
|
||||
find_package(PkgConfig)
|
||||
if(PKG_CONFIG_FOUND)
|
||||
pkg_search_module(PHP php8 php7)
|
||||
pkg_search_module(PHP php7)
|
||||
endif()
|
||||
|
||||
if(NOT PHP_FOUND)
|
||||
find_program(PHP_CONFIG_EXECUTABLE NAMES
|
||||
php-config8.2 php-config82
|
||||
php-config8.1 php-config81
|
||||
php-config8.0 php-config80
|
||||
php-config8
|
||||
php-config7.4 php-config74
|
||||
php-config7.3 php-config73
|
||||
php-config7.2 php-config72
|
||||
php-config7.1 php-config71
|
||||
php-config7.0 php-config70
|
||||
php-config7
|
||||
php-config
|
||||
php-config php-config7
|
||||
)
|
||||
if (PHP_CONFIG_EXECUTABLE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --prefix OUTPUT_VARIABLE PHP_LIB_PREFIX OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --includes OUTPUT_VARIABLE PHP_INCLUDE_DIRS OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE PHP_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --version OUTPUT_VARIABLE PHP_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if(${PHP_VERSION} MATCHES "^[78]")
|
||||
if(${PHP_VERSION} MATCHES "^7")
|
||||
find_library(PHP_LIB
|
||||
NAMES php8.2 php82 php8.1 php81 php8.0 php80 php8 php7.4 php74 php7.3 php73 php7.2 php72 php7.1 php71 php7.0 php70 php7 php
|
||||
NAMES php7.4 php7.3 php7.2 php7.1 php7.0 php7
|
||||
HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64
|
||||
)
|
||||
if(PHP_LIB)
|
||||
@@ -63,9 +58,9 @@ if(NOT PHP_FOUND)
|
||||
endif()
|
||||
|
||||
if(NOT PHP_FOUND)
|
||||
message(WARNING "Could not find libphp. "
|
||||
message(WARNING "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 libphp."
|
||||
"You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp7."
|
||||
)
|
||||
endif()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
+10
-4
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2009 Julien Louis <ptitlouis@sysif.net>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
@@ -28,7 +28,13 @@
|
||||
# PYTHON_LIBRARIES = path to where libpython.so* can be found
|
||||
# PYTHON_LDFLAGS = python compiler options for linking
|
||||
|
||||
pkg_check_modules(PYTHON python3-embed IMPORTED_TARGET GLOBAL)
|
||||
if(NOT PYTHON_FOUND)
|
||||
pkg_check_modules(PYTHON python3 IMPORTED_TARGET GLOBAL)
|
||||
include(FindPkgConfig)
|
||||
|
||||
if(ENABLE_PYTHON2)
|
||||
pkg_check_modules(PYTHON python2 IMPORTED_TARGET GLOBAL)
|
||||
else()
|
||||
pkg_check_modules(PYTHON python3-embed IMPORTED_TARGET GLOBAL)
|
||||
if(NOT PYTHON_FOUND)
|
||||
pkg_check_modules(PYTHON python3 IMPORTED_TARGET GLOBAL)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
+47
-9
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -33,13 +33,51 @@ endif()
|
||||
|
||||
find_package(PkgConfig)
|
||||
if(PKG_CONFIG_FOUND)
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# set specific search path for macOS
|
||||
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:/usr/local/opt/ruby/lib/pkgconfig")
|
||||
endif()
|
||||
pkg_search_module(RUBY ruby-3.3 ruby-3.2 ruby-3.1 ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
|
||||
if(RUBY_FOUND AND ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# FIXME: weird hack: hardcoding the Ruby lib location on macOS
|
||||
set(RUBY_LDFLAGS "${RUBY_LDFLAGS} -L/usr/local/opt/ruby/lib")
|
||||
pkg_search_module(RUBY ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9)
|
||||
endif()
|
||||
|
||||
if(RUBY_FOUND)
|
||||
set(RUBY_LIB "")
|
||||
mark_as_advanced(RUBY_LIB)
|
||||
else()
|
||||
find_program(RUBY_EXECUTABLE
|
||||
NAMES ruby2.7.0 ruby270 ruby2.7 ruby2.6.0 ruby260 ruby2.6 ruby2.5.0 ruby250 ruby2.5 ruby2.4.0 ruby240 ruby2.4 ruby2.3.0 ruby230 ruby2.3 ruby23 ruby2.2.3 ruby223 ruby2.2.2 ruby222 ruby2.2.1 ruby221 ruby2.2.0 ruby220 ruby2.2 ruby22 ruby2.1.7 ruby217 ruby2.1.6 ruby216 ruby2.1.5 ruby215 ruby2.1.4 ruby214 ruby2.1.3 ruby213 ruby2.1.2 ruby212 ruby2.1.1 ruby211 ruby2.1.0 ruby210 ruby2.1 ruby21 ruby2.0 ruby20 ruby1.9.3 ruby193 ruby1.9.2 ruby192 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby
|
||||
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
|
||||
)
|
||||
if(RUBY_EXECUTABLE)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubyhdrdir'] || RbConfig::CONFIG['archdir']"
|
||||
OUTPUT_VARIABLE RUBY_ARCH_DIR
|
||||
)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['arch']"
|
||||
OUTPUT_VARIABLE RUBY_ARCH
|
||||
)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['libdir']"
|
||||
OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH
|
||||
)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubylibdir']"
|
||||
OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH
|
||||
)
|
||||
find_path(RUBY_INCLUDE_DIRS
|
||||
NAMES ruby.h
|
||||
PATHS ${RUBY_ARCH_DIR}
|
||||
)
|
||||
set(RUBY_INCLUDE_ARCH "${RUBY_INCLUDE_DIRS}/${RUBY_ARCH}")
|
||||
find_library(RUBY_LIB
|
||||
NAMES ruby-1.9.3 ruby1.9.3 ruby193 ruby-1.9.2 ruby1.9.2 ruby192 ruby-1.9.1 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby
|
||||
PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH}
|
||||
)
|
||||
if(RUBY_LIB AND RUBY_INCLUDE_DIRS)
|
||||
set(RUBY_FOUND TRUE)
|
||||
endif()
|
||||
set(RUBY_INCLUDE_DIRS "${RUBY_INCLUDE_DIRS};${RUBY_INCLUDE_ARCH}")
|
||||
mark_as_advanced(
|
||||
RUBY_INCLUDE_DIRS
|
||||
RUBY_LIBRARY_DIRS
|
||||
RUBY_LIB
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2015-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2015-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -28,7 +28,9 @@ list(REVERSE files)
|
||||
foreach(file ${files})
|
||||
message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
|
||||
if(EXISTS "$ENV{DESTDIR}${file}")
|
||||
execute_process(COMMAND "@CMAKE_COMMAND@" -E remove "$ENV{DESTDIR}${file}" OUTPUT_VARIABLE rm_out RESULT_VARIABLE rm_retval)
|
||||
exec_program("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
|
||||
OUTPUT_VARIABLE rm_out
|
||||
RETURN_VARIABLE rm_retval)
|
||||
if("${rm_retval}" GREATER 0)
|
||||
message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
|
||||
endif()
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#cmakedefine HAVE_LIBINTL_H
|
||||
#cmakedefine HAVE_SYS_RESOURCE_H
|
||||
#cmakedefine HAVE_FLOCK
|
||||
#cmakedefine HAVE_LANGINFO_CODESET
|
||||
|
||||
+1561
File diff suppressed because it is too large
Load Diff
@@ -4,25 +4,23 @@ Priority: optional
|
||||
Maintainer: Sébastien Helleu <flashcode@flashtux.org>
|
||||
Build-Depends:
|
||||
asciidoctor (>= 1.5.4),
|
||||
ruby-pygments.rb,
|
||||
debhelper (>= 12),
|
||||
cmake, pkg-config,
|
||||
libncurses-dev,
|
||||
libncursesw5-dev,
|
||||
gem2deb,
|
||||
libperl-dev,
|
||||
python3-dev,
|
||||
libaspell-dev,
|
||||
liblua5.3-dev,
|
||||
tcl8.6-dev,
|
||||
guile-3.0-dev,
|
||||
php-dev, libphp-embed, libargon2-dev, libsodium-dev,
|
||||
guile-2.2-dev,
|
||||
php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
|
||||
libxml2-dev,
|
||||
libcurl4-gnutls-dev,
|
||||
libgcrypt20-dev,
|
||||
libgnutls28-dev,
|
||||
libzstd-dev,
|
||||
zlib1g-dev
|
||||
Standards-Version: 4.6.2
|
||||
Standards-Version: 4.5.1
|
||||
Homepage: https://weechat.org/
|
||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||
@@ -155,7 +153,6 @@ Description: Fast, light and extensible chat client - plugins
|
||||
- FIFO pipe for remote control
|
||||
- Relay (IRC proxy and WeeChat protocol)
|
||||
- Trigger
|
||||
- Typing
|
||||
|
||||
Package: weechat-devel-python
|
||||
Architecture: any
|
||||
|
||||
+13
-3
@@ -4,8 +4,10 @@ export DEB_BUILD_MAINT_OPTIONS=hardening=+all
|
||||
|
||||
BUILDDIR = builddir
|
||||
|
||||
override_dh_auto_configure:
|
||||
dh_auto_configure --buildsystem=cmake -- \
|
||||
$(BUILDDIR)/Makefile:
|
||||
mkdir -p $(BUILDDIR)
|
||||
cd $(BUILDDIR) && \
|
||||
cmake .. \
|
||||
-DCMAKE_INSTALL_PREFIX:FILEPATH=/usr \
|
||||
-DLIBDIR=/usr/lib/${DEB_HOST_MULTIARCH} \
|
||||
-DENABLE_DOC:BOOL=ON \
|
||||
@@ -16,8 +18,16 @@ override_dh_auto_configure:
|
||||
-DCMAKE_SKIP_RPATH:BOOL=ON \
|
||||
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
|
||||
|
||||
override_dh_auto_configure:
|
||||
# the package also has autotools buildsys and
|
||||
# debhelper try to use it but that's not needed
|
||||
echo
|
||||
|
||||
override_dh_auto_build: $(BUILDDIR)/Makefile
|
||||
dh_auto_build
|
||||
|
||||
override_dh_installchangelogs:
|
||||
dh_installchangelogs ChangeLog.adoc
|
||||
|
||||
%:
|
||||
dh $@ --builddirectory=$(BUILDDIR)
|
||||
dh $@ --builddirectory=$(BUILDDIR) --without autoreconf
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
tar-ignore = ".git"
|
||||
tar-ignore = "build"
|
||||
tar-ignore = "release"
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-faq-es
|
||||
Title: WeeChat FAQ (Spanish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document answers frequently asked questions
|
||||
about the WeeChat IRC client (Spanish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_faq.es.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_faq.es.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-de
|
||||
Title: WeeChat tester's guide (German)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (German version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.de.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.de.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-en
|
||||
Title: WeeChat tester's guide (English)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (English version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.en.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.en.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-fr
|
||||
Title: WeeChat tester's guide (French)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (French version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.fr.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.fr.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-it
|
||||
Title: WeeChat tester's guide (Italian)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Italian version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.it.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.it.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-ja
|
||||
Title: WeeChat tester's guide (Japanese)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Japanese version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.ja.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.ja.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-pl
|
||||
Title: WeeChat tester's guide (Polish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Polish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.pl.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.pl.html
|
||||
@@ -0,0 +1,41 @@
|
||||
weechat (2.1-1) unstable; urgency=medium
|
||||
|
||||
This release introduces a new headless client and a new PHP plugin for
|
||||
scripting (respectively weechat-headless and weechat-php binary
|
||||
packages).
|
||||
To avoid at least unnecessary dependencies, each plugin has its own
|
||||
separate binary package:
|
||||
weechat-{perl,python,ruby,lua,guile,javascript,php}
|
||||
Depending on your needs about scripting with weechat you should consider
|
||||
to install the missing packages.
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Wed, 21 Mar 2018 07:53:40 +0100
|
||||
|
||||
weechat (1.1.1-1) unstable; urgency=medium
|
||||
|
||||
Since version 1.1, there is a new format for regexp replacement in
|
||||
triggers. This format is incompatible with version 1.0. The existing
|
||||
triggers will not be automatically updated.
|
||||
See https://weechat.org/files/releasenotes/ReleaseNotes-1.1.html
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sun, 25 Jan 2015 20:41:50 +0100
|
||||
|
||||
weechat (0.3.1-1) unstable; urgency=low
|
||||
|
||||
This release introduces important changes with the usage of SSL. There
|
||||
are stronger checks while connecting with SSL. By default, if a connection
|
||||
is not fully trusted it will fail.
|
||||
You can find more information on how to handle this new behaviour here:
|
||||
https://blog.weechat.org/post/2009/12/01/SSL-certificates
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 25 Jan 2010 12:35:11 +0100
|
||||
|
||||
weechat (0.3.0-1) unstable; urgency=low
|
||||
|
||||
This release introduces major changes. Large part of code was
|
||||
rewritten without keeping compatibility with older versions.
|
||||
|
||||
Please refer to the file /usr/share/doc/weechat-core/UPGRADE_0.3
|
||||
for more information on upgrade from a version 0.2.x to 0.3.x.
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@openics.org> Tue, 15 Sep 2009 20:59:42 +0000
|
||||
@@ -1,107 +1,3 @@
|
||||
weechat (4.0.5-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sun, 24 Sep 2023 07:49:41 +0000
|
||||
|
||||
weechat (4.0.2-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release (Closes: #1040248)
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 22 Jul 2023 05:48:35 +0000
|
||||
|
||||
weechat (4.0.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
* Remove NEWS file, no longer required
|
||||
* Update build dependency from libncursesw5-dev to libncurses-dev
|
||||
* Bump Standards-Version to 4.6.2
|
||||
* Remove all patches (no longer required)
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 04 Jul 2023 19:02:41 +0000
|
||||
|
||||
weechat (3.8-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
* Add a patch remove some autotools leftovers
|
||||
* Update debian/copyright (new year)
|
||||
* Update debian/rules to remove workarounds which avoid issues with
|
||||
autotools build system
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sun, 15 Jan 2023 08:34:04 +0000
|
||||
|
||||
weechat (3.7.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 22 Oct 2022 12:55:10 +0000
|
||||
|
||||
weechat (3.7-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 18 Oct 2022 12:44:29 +0000
|
||||
|
||||
weechat (3.6-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
* Bump Standards-Version to 4.6.1.0
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 23 Jul 2022 09:56:24 +0000
|
||||
|
||||
weechat (3.5-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
* Add build dependency on libzstd-dev
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Thu, 31 Mar 2022 11:36:01 +0000
|
||||
|
||||
weechat (3.4.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
- Fix a possible man-in-the-middle attack in TLS connection to servers
|
||||
* Update build dependency from libargon2-0-dev to libargon2-dev
|
||||
(libargon2-0-dev is now virtual package) (Closes: #1005703)
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 22 Mar 2022 05:55:14 +0000
|
||||
|
||||
weechat (3.4-2) unstable; urgency=medium
|
||||
|
||||
* Remove build dependency on ruby-pygments.rb (no longer required)
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 08 Jan 2022 06:00:17 +0000
|
||||
|
||||
weechat (3.4-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release (Closes: #1001654, #1001245)
|
||||
* Remove tester's guide from weechat-doc (according to upstream changes)
|
||||
* Refresh ASCII Doctor options patch
|
||||
* Update lintian override on weechat-plugins
|
||||
* Update copyright (new year)
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Fri, 07 Jan 2022 23:03:49 +0000
|
||||
|
||||
weechat (3.3-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
* Remove patch merged upstream (which command detection in libgcrypt)
|
||||
* Minor updates in debian/copyright
|
||||
* Enable Typing plugin
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 20 Sep 2021 10:05:56 +0000
|
||||
|
||||
weechat (3.2.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
- fix CVE-2021-40516: possible denial of service (crash) via a crafted
|
||||
WebSocket in relay plugin (Closes: #993803)
|
||||
* Add a patch to fix a FTBFS (related to recent changes on which command
|
||||
output) (Closes: #993333)
|
||||
* Bump Standards-Version to 4.6.0.1
|
||||
* Remove useless HomePage field in upstream/metadata
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 07 Sep 2021 20:25:39 +0000
|
||||
|
||||
weechat (3.0.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
|
||||
@@ -4,25 +4,23 @@ Priority: optional
|
||||
Maintainer: Emmanuel Bouthenot <kolter@debian.org>
|
||||
Build-Depends:
|
||||
asciidoctor (>= 1.5.4),
|
||||
ruby-pygments.rb,
|
||||
debhelper (>= 12),
|
||||
cmake, pkg-config,
|
||||
libncurses-dev,
|
||||
libncursesw5-dev,
|
||||
gem2deb,
|
||||
libperl-dev,
|
||||
python3-dev,
|
||||
libaspell-dev,
|
||||
liblua5.3-dev,
|
||||
tcl8.6-dev,
|
||||
guile-3.0-dev,
|
||||
php-dev, libphp-embed, libargon2-dev, libsodium-dev,
|
||||
guile-2.2-dev,
|
||||
php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
|
||||
libxml2-dev,
|
||||
libcurl4-gnutls-dev,
|
||||
libgcrypt20-dev,
|
||||
libgnutls28-dev,
|
||||
libzstd-dev,
|
||||
zlib1g-dev
|
||||
Standards-Version: 4.6.2
|
||||
Standards-Version: 4.5.1
|
||||
Homepage: https://weechat.org/
|
||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||
@@ -150,7 +148,6 @@ Description: Fast, light and extensible chat client - plugins
|
||||
- FIFO pipe for remote control
|
||||
- Relay (IRC proxy and WeeChat protocol)
|
||||
- Trigger
|
||||
- Typing
|
||||
|
||||
Package: weechat-python
|
||||
Architecture: any
|
||||
|
||||
@@ -4,7 +4,7 @@ Upstream-Contact: Sébastien Helleu <flashcode@flashtux.org>
|
||||
Source: https://weechat.org/
|
||||
|
||||
Files: *
|
||||
Copyright: 2003-2024, Sébastien Helleu <flashcode@flashtux.org>
|
||||
Copyright: 2003-2021, Sébastien Helleu <flashcode@flashtux.org>
|
||||
License: GPL-3+
|
||||
|
||||
Files: src/core/wee-command.c
|
||||
|
||||
+13
-3
@@ -4,8 +4,10 @@ export DEB_BUILD_MAINT_OPTIONS=hardening=+all
|
||||
|
||||
BUILDDIR = builddir
|
||||
|
||||
override_dh_auto_configure:
|
||||
dh_auto_configure --buildsystem=cmake -- \
|
||||
$(BUILDDIR)/Makefile:
|
||||
mkdir -p $(BUILDDIR)
|
||||
cd $(BUILDDIR) && \
|
||||
cmake .. \
|
||||
-DCMAKE_INSTALL_PREFIX:FILEPATH=/usr \
|
||||
-DLIBDIR=/usr/lib/${DEB_HOST_MULTIARCH} \
|
||||
-DENABLE_DOC:BOOL=ON \
|
||||
@@ -16,8 +18,16 @@ override_dh_auto_configure:
|
||||
-DCMAKE_SKIP_RPATH:BOOL=ON \
|
||||
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
|
||||
|
||||
override_dh_auto_configure:
|
||||
# the package also has autotools buildsys and
|
||||
# debhelper try to use it but that's not needed
|
||||
echo
|
||||
|
||||
override_dh_auto_build: $(BUILDDIR)/Makefile
|
||||
dh_auto_build
|
||||
|
||||
override_dh_installchangelogs:
|
||||
dh_installchangelogs ChangeLog.adoc
|
||||
|
||||
%:
|
||||
dh $@ --builddirectory=$(BUILDDIR)
|
||||
dh $@ --builddirectory=$(BUILDDIR) --without autoreconf
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
tar-ignore = ".git"
|
||||
tar-ignore = "build"
|
||||
tar-ignore = "release"
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-faq-es
|
||||
Title: WeeChat FAQ (Spanish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document answers frequently asked questions
|
||||
about the WeeChat IRC client (Spanish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-de
|
||||
Title: WeeChat tester's guide (German)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (German version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.de.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.de.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-en
|
||||
Title: WeeChat tester's guide (English)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (English version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.en.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.en.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-fr
|
||||
Title: WeeChat tester's guide (French)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (French version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.fr.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.fr.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-it
|
||||
Title: WeeChat tester's guide (Italian)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Italian version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.it.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.it.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-ja
|
||||
Title: WeeChat tester's guide (Japanese)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Japanese version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.ja.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.ja.html
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-tester-pl
|
||||
Title: WeeChat tester's guide (Polish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Polish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.pl.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.pl.html
|
||||
@@ -4,4 +4,3 @@ usr/lib/*/weechat/plugins/relay.so
|
||||
usr/lib/*/weechat/plugins/script.so
|
||||
usr/lib/*/weechat/plugins/spell.so
|
||||
usr/lib/*/weechat/plugins/trigger.so
|
||||
usr/lib/*/weechat/plugins/typing.so
|
||||
|
||||
+11
-328
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
@@ -19,336 +19,19 @@
|
||||
#
|
||||
|
||||
if(ENABLE_MAN OR ENABLE_DOC)
|
||||
|
||||
# docs languages
|
||||
set(AUTOGEN_LANG de en fr it ja pl sr)
|
||||
set(MAN_LANG cs de en fr it ja pl ru sr)
|
||||
set(USER_LANG de en fr it ja pl sr)
|
||||
set(PLUGIN_API_LANG en fr it ja sr)
|
||||
set(SCRIPTING_LANG de en fr it ja pl sr)
|
||||
set(FAQ_LANG de en es fr it ja pl sr)
|
||||
set(QUICKSTART_LANG cs de en es fr it ja pl ru sr)
|
||||
set(RELAY_LANG en fr ja sr)
|
||||
set(DEV_LANG en fr ja sr)
|
||||
|
||||
find_package(Asciidoctor)
|
||||
if(ASCIIDOCTOR_FOUND)
|
||||
# common asciidoctor arguments
|
||||
set(ASCIIDOCTOR_ARGS
|
||||
-a experimental
|
||||
-a reproducible
|
||||
-a "prewrap!"
|
||||
-a "webfonts!"
|
||||
-a icons=font
|
||||
-a revnumber="${VERSION}"
|
||||
-a sectanchors
|
||||
-a source-highlighter=pygments
|
||||
-a pygments-style=native
|
||||
-a docinfodir="${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
-a autogendir="${CMAKE_CURRENT_BINARY_DIR}/autogen"
|
||||
)
|
||||
|
||||
# asciidoctor arguments for user's guide
|
||||
set(ASCIIDOCTOR_USER_ARGS
|
||||
-a toc=left
|
||||
-a toclevels=3
|
||||
-a sectnums
|
||||
-a sectnumlevels=2
|
||||
-a docinfo1
|
||||
)
|
||||
|
||||
# asciidoctor arguments for plugin API reference
|
||||
set(ASCIIDOCTOR_PLUGIN_API_ARGS
|
||||
-a toc=left
|
||||
-a toclevels=3
|
||||
-a sectnums
|
||||
-a sectnumlevels=2
|
||||
-a docinfo1
|
||||
)
|
||||
|
||||
# asciidoctor arguments for scripting guide
|
||||
set(ASCIIDOCTOR_SCRIPTING_ARGS
|
||||
-a toc=left
|
||||
-a toclevels=3
|
||||
-a sectnums
|
||||
-a sectnumlevels=2
|
||||
-a docinfo1
|
||||
)
|
||||
|
||||
# asciidoctor arguments for FAQ
|
||||
set(ASCIIDOCTOR_FAQ_ARGS
|
||||
-a toc=left
|
||||
-a toclevels=2
|
||||
-a sectnums
|
||||
-a sectnumlevels=2
|
||||
-a docinfo1
|
||||
)
|
||||
|
||||
# asciidoctor arguments for quickstart
|
||||
set(ASCIIDOCTOR_QUICKSTART_ARGS
|
||||
-a toc=left
|
||||
-a toclevels=2
|
||||
-a sectnums
|
||||
-a sectnumlevels=2
|
||||
-a docinfo1
|
||||
)
|
||||
|
||||
# asciidoctor arguments for relay protocol
|
||||
set(ASCIIDOCTOR_RELAY_ARGS
|
||||
-a toc=left
|
||||
-a toclevels=3
|
||||
-a sectnums
|
||||
-a sectnumlevels=2
|
||||
-a docinfo1
|
||||
)
|
||||
|
||||
# asciidoctor arguments for developer's guide
|
||||
set(ASCIIDOCTOR_DEV_ARGS
|
||||
-a toc=left
|
||||
-a toclevels=3
|
||||
-a sectnums
|
||||
-a sectnumlevels=2
|
||||
-a docinfo1
|
||||
)
|
||||
|
||||
# sed arguments used to replace links in ChangeLog and release notes
|
||||
set(SED_LINKS_ARGS
|
||||
-e "'s/issue #\\([0-9][0-9]*\\)/https:\\/\\/github.com\\/weechat\\/weechat\\/issues\\/\\1[issue #\\1^]/g'"
|
||||
-e "'s/bug #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/bugs\\/?\\1[bug #\\1^]/g'"
|
||||
-e "'s/task #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/task\\/?\\1[task #\\1^]/g'"
|
||||
-e "'s/patch #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/patch\\/?\\1[patch #\\1^]/g'"
|
||||
-e "'s/debian #\\([0-9][0-9]*\\)/http:\\/\\/bugs.debian.org\\/cgi-bin\\/bugreport.cgi?bug=\\1[debian bug #\\1^]/g'"
|
||||
-e "'s/\\(CVE-[0-9][0-9]*-[0-9][0-9]*\\)/https:\\/\\/cve.mitre.org\\/cgi-bin\\/cvename.cgi?name=\\1[\\1^]/g'"
|
||||
)
|
||||
|
||||
# ChangeLog
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc"
|
||||
COMMAND sed ARGS ${SED_LINKS_ARGS} "${CMAKE_CURRENT_SOURCE_DIR}/../ChangeLog.adoc" > "${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/../ChangeLog.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
)
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} -o ChangeLog.html "${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building ChangeLog.html"
|
||||
)
|
||||
add_custom_target(changelog DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html")
|
||||
|
||||
# Release notes
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc"
|
||||
COMMAND sed ARGS ${SED_LINKS_ARGS} "${CMAKE_CURRENT_SOURCE_DIR}/../ReleaseNotes.adoc" > "${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/../ReleaseNotes.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
)
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} -o ReleaseNotes.html "${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building ReleaseNotes.html"
|
||||
)
|
||||
add_custom_target(rn DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html")
|
||||
|
||||
if(ENABLE_DOC)
|
||||
set(AUTOGEN_FILES "")
|
||||
foreach(lang ${AUTOGEN_LANG})
|
||||
LIST(APPEND AUTOGEN_FILES
|
||||
# plugin API reference
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_completions.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_config_priority.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_hdata.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infolists.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infos.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infos_hashtable.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_plugins_priority.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_url_options.${lang}.adoc"
|
||||
# user's guide
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_commands.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_default_aliases.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_irc_colors.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_options.${lang}.adoc"
|
||||
)
|
||||
endforeach()
|
||||
add_custom_target(doc-autogen ALL
|
||||
COMMAND "${CMAKE_COMMAND}" -E env "WEECHAT_EXTRA_LIBDIR=${PROJECT_BINARY_DIR}/src" "WEECHAT_DOCGEN_LOCALEDIR=${PROJECT_BINARY_DIR}/po" "${CMAKE_BINARY_DIR}/src/gui/curses/headless/weechat-headless" --temp-dir --doc-gen "${CMAKE_CURRENT_BINARY_DIR}/autogen"
|
||||
DEPENDS
|
||||
# the headless binary is required
|
||||
weechat-headless
|
||||
# translations must be compiled
|
||||
translations
|
||||
# all plugins must be loaded during doc generation
|
||||
alias buflist charset exec fifo fset guile irc logger lua perl php python relay ruby script spell tcl trigger typing xfer
|
||||
BYPRODUCTS ${AUTOGEN_FILES}
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(ENABLE_MAN)
|
||||
foreach(lang ${MAN_LANG})
|
||||
if(${lang} STREQUAL "en")
|
||||
set(MANDIR_LANG "${MANDIR}/man1")
|
||||
else()
|
||||
set(MANDIR_LANG "${MANDIR}/${lang}/man1")
|
||||
endif()
|
||||
# man page: weechat
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat.${lang}.1"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o "weechat.${lang}.1" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat.1.${lang}.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat.1.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/cmdline_options.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/man.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat.1 (${lang})"
|
||||
)
|
||||
add_custom_target(doc-man-weechat-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat.${lang}.1")
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat.${lang}.1" DESTINATION "${MANDIR_LANG}" RENAME "weechat.1")
|
||||
# man page: weechat-headless
|
||||
if(ENABLE_HEADLESS)
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.${lang}.1"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o "weechat-headless.${lang}.1" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat-headless.1.${lang}.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat-headless.1.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/cmdline_options.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/man.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat-headless.1 (${lang})"
|
||||
)
|
||||
add_custom_target(doc-man-weechat-headless-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.${lang}.1")
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.${lang}.1" DESTINATION "${MANDIR_LANG}" RENAME "weechat-headless.1")
|
||||
endif()
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
if(ENABLE_DOC)
|
||||
# user's guide
|
||||
foreach(lang ${USER_LANG})
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_user.${lang}.html"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_USER_ARGS} -o "weechat_user.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_user.${lang}.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_user.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/cmdline_options.${lang}.adoc"
|
||||
doc-autogen
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_commands.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_default_aliases.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_irc_colors.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_options.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_user.${lang}.html"
|
||||
)
|
||||
add_custom_target(doc-user-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_user.${lang}.html")
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_user.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
|
||||
endforeach()
|
||||
# plugin API reference
|
||||
foreach(lang ${PLUGIN_API_LANG})
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.${lang}.html"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_PLUGIN_API_ARGS} -o "weechat_plugin_api.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_plugin_api.${lang}.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_plugin_api.${lang}.adoc"
|
||||
doc-autogen
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_completions.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_config_priority.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_hdata.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infolists.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infos.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infos_hashtable.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_plugins_priority.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_url_options.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_plugin_api.${lang}.html"
|
||||
)
|
||||
add_custom_target(doc-plugin-api-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.${lang}.html")
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
|
||||
endforeach()
|
||||
# scripting guide
|
||||
foreach(lang ${SCRIPTING_LANG})
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.${lang}.html"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_SCRIPTING_ARGS} -o "weechat_scripting.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_scripting.${lang}.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_scripting.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_scripting.${lang}.html"
|
||||
)
|
||||
add_custom_target(doc-scripting-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.${lang}.html")
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
|
||||
endforeach()
|
||||
# FAQ
|
||||
foreach(lang ${FAQ_LANG})
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.${lang}.html"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_FAQ_ARGS} -o "weechat_faq.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_faq.${lang}.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_faq.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_faq.${lang}.html"
|
||||
)
|
||||
add_custom_target(doc-faq-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.${lang}.html")
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
|
||||
endforeach()
|
||||
# quickstart
|
||||
foreach(lang ${QUICKSTART_LANG})
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.${lang}.html"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_QUICKSTART_ARGS} -o "weechat_quickstart.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_quickstart.${lang}.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_quickstart.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_quickstart.${lang}.html"
|
||||
)
|
||||
add_custom_target(doc-quickstart-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.${lang}.html")
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
|
||||
endforeach()
|
||||
# relay protocol
|
||||
foreach(lang ${RELAY_LANG})
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.${lang}.html"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_RELAY_ARGS} -o "weechat_relay_protocol.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_relay_protocol.${lang}.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_relay_protocol.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_relay_protocol.${lang}.html"
|
||||
)
|
||||
add_custom_target(doc-relay-protocol-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.${lang}.html")
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
|
||||
endforeach()
|
||||
# developer's guide
|
||||
foreach(lang ${DEV_LANG})
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.${lang}.html"
|
||||
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_DEV_ARGS} -o "weechat_dev.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_dev.${lang}.adoc"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_dev.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_dev.${lang}.html"
|
||||
)
|
||||
add_custom_target(doc-dev-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.${lang}.html")
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
set(ASCIIDOCTOR_ARGS -a experimental -a "prewrap!" -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=prettify)
|
||||
add_subdirectory(cs)
|
||||
add_subdirectory(de)
|
||||
add_subdirectory(en)
|
||||
add_subdirectory(es)
|
||||
add_subdirectory(fr)
|
||||
add_subdirectory(it)
|
||||
add_subdirectory(ja)
|
||||
add_subdirectory(pl)
|
||||
add_subdirectory(ru)
|
||||
else()
|
||||
message(SEND_ERROR "Asciidoctor not found")
|
||||
endif()
|
||||
|
||||
endif()
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2006 Julien Louis <ptitlouis@sysif.net>
|
||||
#
|
||||
# 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/>.
|
||||
#
|
||||
|
||||
SUBDIRS = . cs de en es fr it ja pl ru
|
||||
|
||||
EXTRA_DIST = docgen.py \
|
||||
docinfo.html \
|
||||
CMakeLists.txt
|
||||
|
||||
uninstall-hook:
|
||||
-rmdir $(DESTDIR)$(datadir)/doc/$(PACKAGE)
|
||||
@@ -0,0 +1,67 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 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/>.
|
||||
#
|
||||
|
||||
if(ENABLE_MAN)
|
||||
# man page: weechat
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat.1
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.cs.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.cs.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.cs.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/man.cs.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat.1 (cs)"
|
||||
)
|
||||
add_custom_target(doc-man-weechat-cs ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat.1)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.1 DESTINATION ${MANDIR}/cs/man1)
|
||||
|
||||
if(ENABLE_HEADLESS)
|
||||
# man page: weechat-headless
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat-headless.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.cs.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.cs.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.cs.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/man.cs.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat-headless.1 (cs)"
|
||||
)
|
||||
add_custom_target(doc-man-weechat-headless-cs ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1 DESTINATION ${MANDIR}/cs/man1)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(ENABLE_DOC)
|
||||
|
||||
# quickstart
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.cs.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_quickstart.cs.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.cs.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.cs.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_quickstart.cs.html"
|
||||
)
|
||||
add_custom_target(doc-quickstart-cs ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.cs.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.cs.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
endif()
|
||||
@@ -0,0 +1,81 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 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/>.
|
||||
#
|
||||
|
||||
docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
docinfo.html \
|
||||
weechat.1.cs.adoc \
|
||||
weechat-headless.1.cs.adoc \
|
||||
weechat_quickstart.cs.adoc \
|
||||
includes/cmdline_options.cs.adoc \
|
||||
includes/man.cs.adoc
|
||||
|
||||
if MAN
|
||||
man_targets = weechat.1 \
|
||||
weechat-headless.1
|
||||
man_install = install-man
|
||||
man_uninstall = uninstall-man
|
||||
endif
|
||||
if DOC
|
||||
doc_targets = weechat_quickstart.cs.html
|
||||
doc_install = install-doc
|
||||
doc_uninstall = uninstall-doc
|
||||
endif
|
||||
all-local: $(man_targets) $(doc_targets)
|
||||
|
||||
# man pages
|
||||
weechat.1: weechat.1.cs.adoc includes/cmdline_options.cs.adoc includes/man.cs.adoc
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -b manpage -o weechat.1 $(abs_top_srcdir)/doc/cs/weechat.1.cs.adoc
|
||||
weechat-headless.1: weechat-headless.1.cs.adoc includes/cmdline_options.cs.adoc includes/man.cs.adoc
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -b manpage -o weechat-headless.1 $(abs_top_srcdir)/doc/cs/weechat-headless.1.cs.adoc
|
||||
|
||||
# quickstart
|
||||
weechat_quickstart.cs.html: weechat_quickstart.cs.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.cs.html $(abs_top_srcdir)/doc/cs/weechat_quickstart.cs.adoc
|
||||
|
||||
# install man/docs
|
||||
|
||||
install-data-hook: $(man_install) $(doc_install)
|
||||
|
||||
install-man:
|
||||
$(mkinstalldirs) $(DESTDIR)$(mandir)/cs/man1/
|
||||
$(INSTALL_DATA) *.1 $(DESTDIR)$(mandir)/cs/man1/
|
||||
|
||||
install-doc:
|
||||
$(mkinstalldirs) $(DESTDIR)$(docdir)/
|
||||
$(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
|
||||
|
||||
# uninstall man/docs
|
||||
|
||||
uninstall-hook: $(man_uninstall) $(doc_uninstall)
|
||||
|
||||
uninstall-man:
|
||||
$(RM) $(DESTDIR)$(mandir)/cs/man1/weechat.1
|
||||
$(RM) $(DESTDIR)$(mandir)/cs/man1/weechat-headless.1
|
||||
-rmdir $(DESTDIR)$(mandir)/cs/man1
|
||||
|
||||
uninstall-doc:
|
||||
$(RM) $(DESTDIR)$(docdir)/*.cs.html
|
||||
-rmdir $(DESTDIR)$(docdir)
|
||||
|
||||
# clean
|
||||
|
||||
clean-local:
|
||||
-$(RM) weechat.1 weechat-headless.1 weechat_*.html
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
../docinfo.html
|
||||
@@ -1,6 +1,6 @@
|
||||
// tag::plugin_options[]
|
||||
Pro kompletní dokumentaci nastavení pluginů a jejich volby podívejte se na
|
||||
https://weechat.org/doc/[WeeChat user's guide].
|
||||
https://weechat.org/doc[WeeChat user's guide].
|
||||
|
||||
S irc pluginem se můžete doččasně připojit na server s URL jako:
|
||||
|
||||
@@ -85,9 +85,6 @@ $HOME/.config/weechat/tcl.conf::
|
||||
$HOME/.config/weechat/trigger.conf::
|
||||
konfigurační soubor pro _trigger_ plugin
|
||||
|
||||
$HOME/.config/weechat/typing.conf::
|
||||
konfigurační soubor pro _typing_ plugin
|
||||
|
||||
$HOME/.config/weechat/xfer.conf::
|
||||
konfigurační soubor pro _xfer_ plugin
|
||||
|
||||
@@ -99,7 +96,7 @@ $HOME/.local/share/weechat/weechat.log::
|
||||
WeeChat je napsán Sébastienem Helleu a přispěvovateli (kompletní seznam je v
|
||||
souboru AUTHORS.adoc).
|
||||
|
||||
Copyright (C) 2003-2024 {author}
|
||||
Copyright (C) 2003-2021 {author}
|
||||
|
||||
WeeChat is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -67,4 +67,4 @@ include::includes/man.cs.adoc[tag=copyright]
|
||||
|
||||
== PODPORA / HLÁŠENÍ CHYB
|
||||
|
||||
Pro pomoc nebo hlášení chyb https://weechat.org/about/support/
|
||||
Pro pomoc nebo hlášení chyb https://weechat.org/about/support
|
||||
|
||||
@@ -62,4 +62,4 @@ include::includes/man.cs.adoc[tag=copyright]
|
||||
|
||||
== PODPORA / HLÁŠENÍ CHYB
|
||||
|
||||
Pro pomoc nebo hlášení chyb https://weechat.org/about/support/
|
||||
Pro pomoc nebo hlášení chyb https://weechat.org/about/support
|
||||
|
||||
@@ -2,6 +2,10 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: cs
|
||||
:toc: left
|
||||
:sectnums:
|
||||
:docinfo1:
|
||||
|
||||
|
||||
[[start]]
|
||||
== Spuštění WeeChatu
|
||||
@@ -109,7 +113,7 @@ Použijte příkaz `/plugin` k zobrazení nahraných pluginů, pravděpodobně u
|
||||
Můžete přidat irc server příkazem `/server`, například:
|
||||
|
||||
----
|
||||
/server add libera irc.libera.chat/6697 -tls
|
||||
/server add libera irc.libera.chat/6697 -ssl
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
@@ -204,16 +208,10 @@ K automatickému připojení některých kanálů při připojování k serveru:
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
The `/autojoin` command lets you configure the _autojoin_ option easily
|
||||
(see `/help autojoin`).
|
||||
|
||||
// TRANSLATION MISSING
|
||||
You can also configure WeeChat to automatically update the _autojoin_ option
|
||||
when you join or leave channels:
|
||||
|
||||
----
|
||||
/set irc.server_default.autojoin_dynamic on
|
||||
----
|
||||
[TIP]
|
||||
You can complete name and value of options with the kbd:[Tab] key
|
||||
and kbd:[Shift+Tab] for a partial completion (useful for long words like
|
||||
the name of option).
|
||||
|
||||
K smazání hodnoty serverové volby a k použití výchozí hodnoty místo ní,
|
||||
například k požití výchozích přezdívek (irc.server_default.nicks):
|
||||
@@ -229,12 +227,6 @@ název volby):
|
||||
/set irc.server.libera.xxx value
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
[TIP]
|
||||
You can complete name and value of options with the kbd:[Tab] key
|
||||
and kbd:[Shift+Tab] for a partial completion (useful for long words like
|
||||
the name of option).
|
||||
|
||||
[[connect_to_irc_server]]
|
||||
== Připojení k IRC serveru
|
||||
|
||||
@@ -397,16 +389,14 @@ například:
|
||||
|
||||
Zkuste `/help script` pro více informací.
|
||||
|
||||
// TRANSLATION MISSING
|
||||
A list of scripts is available in WeeChat with `/script` or on
|
||||
https://weechat.org/scripts/[this page ^↗^^].
|
||||
|
||||
A seznam skriptů je dostupný v WeeChatu s příkazem `/script` nebo na této
|
||||
adrese https://weechat.org/scripts
|
||||
|
||||
[[more_doc]]
|
||||
== Další dokumentace
|
||||
|
||||
// TRANSLATION MISSING
|
||||
You can now use WeeChat and read
|
||||
https://weechat.org/doc/[FAQ/documentation ^↗^^]
|
||||
for any other questions.
|
||||
Nyní jste schopni používat WeeChat a můžete si přečíst FAQ/dokumentaci pro
|
||||
jakékoliv další otázky: https://weechat.org/doc
|
||||
|
||||
Ať máte radost z použití WeeChatu!
|
||||
|
||||
@@ -0,0 +1,123 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 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/>.
|
||||
#
|
||||
|
||||
if(ENABLE_MAN)
|
||||
# man page: weechat
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat.1
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.de.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.de.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.de.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/man.de.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat.1 (de)"
|
||||
)
|
||||
add_custom_target(doc-man-weechat-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat.1)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.1 DESTINATION ${MANDIR}/de/man1)
|
||||
|
||||
if(ENABLE_HEADLESS)
|
||||
# man page: weechat-headless
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat-headless.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.de.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.de.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.de.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/man.de.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat-headless.1 (de)"
|
||||
)
|
||||
add_custom_target(doc-man-weechat-headless-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1 DESTINATION ${MANDIR}/de/man1)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(ENABLE_DOC)
|
||||
|
||||
file(GLOB AUTOGEN_USER "${CMAKE_CURRENT_SOURCE_DIR}/includes/autogen_user_*.adoc")
|
||||
|
||||
# user's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.de.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_user.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.de.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.de.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.de.adoc
|
||||
${AUTOGEN_USER}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_user.de.html"
|
||||
)
|
||||
add_custom_target(doc-user-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.de.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# scripting guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.de.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_scripting.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.de.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.de.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_scripting.de.html"
|
||||
)
|
||||
add_custom_target(doc-scripting-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.de.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# FAQ
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.de.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_faq.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.de.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.de.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_faq.de.html"
|
||||
)
|
||||
add_custom_target(doc-faq-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.de.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# quickstart
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_quickstart.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.de.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.de.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_quickstart.de.html"
|
||||
)
|
||||
add_custom_target(doc-quickstart-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# tester's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_tester.de.html"
|
||||
)
|
||||
add_custom_target(doc-tester-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
endif()
|
||||
@@ -0,0 +1,117 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2006 Julien Louis <ptitlouis@sysif.net>
|
||||
#
|
||||
# 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/>.
|
||||
#
|
||||
|
||||
docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
docinfo.html \
|
||||
weechat.1.de.adoc \
|
||||
weechat-headless.1.de.adoc \
|
||||
weechat_user.de.adoc \
|
||||
weechat_scripting.de.adoc \
|
||||
weechat_faq.de.adoc \
|
||||
weechat_quickstart.de.adoc \
|
||||
weechat_tester.de.adoc \
|
||||
includes/autogen_api_completions.de.adoc \
|
||||
includes/autogen_api_hdata.de.adoc \
|
||||
includes/autogen_api_infolists.de.adoc \
|
||||
includes/autogen_api_infos.de.adoc \
|
||||
includes/autogen_api_infos_hashtable.de.adoc \
|
||||
includes/autogen_api_plugins_priority.de.adoc \
|
||||
includes/autogen_api_url_options.de.adoc \
|
||||
includes/autogen_user_commands.de.adoc \
|
||||
includes/autogen_user_default_aliases.de.adoc \
|
||||
includes/autogen_user_irc_colors.de.adoc \
|
||||
includes/autogen_user_options.de.adoc \
|
||||
includes/cmdline_options.de.adoc \
|
||||
includes/man.de.adoc
|
||||
|
||||
if MAN
|
||||
man_targets = weechat.1 \
|
||||
weechat-headless.1
|
||||
man_install = install-man
|
||||
man_uninstall = uninstall-man
|
||||
endif
|
||||
if DOC
|
||||
doc_targets = weechat_user.de.html \
|
||||
weechat_scripting.de.html \
|
||||
weechat_faq.de.html \
|
||||
weechat_quickstart.de.html \
|
||||
weechat_tester.de.html
|
||||
doc_install = install-doc
|
||||
doc_uninstall = uninstall-doc
|
||||
endif
|
||||
all-local: $(man_targets) $(doc_targets)
|
||||
|
||||
# man pages
|
||||
weechat.1: weechat.1.de.adoc includes/cmdline_options.de.adoc includes/man.de.adoc
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -b manpage -o weechat.1 $(abs_top_srcdir)/doc/de/weechat.1.de.adoc
|
||||
weechat-headless.1: weechat-headless.1.de.adoc includes/cmdline_options.de.adoc includes/man.de.adoc
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -b manpage -o weechat-headless.1 $(abs_top_srcdir)/doc/de/weechat-headless.1.de.adoc
|
||||
|
||||
# user's guide
|
||||
weechat_user.de.html: weechat_user.de.adoc includes/cmdline_options.de.adoc $(wildcard includes/autogen_user_*.adoc) $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_user.de.html $(abs_top_srcdir)/doc/de/weechat_user.de.adoc
|
||||
|
||||
# scripting guide
|
||||
weechat_scripting.de.html: weechat_scripting.de.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_scripting.de.html $(abs_top_srcdir)/doc/de/weechat_scripting.de.adoc
|
||||
|
||||
# FAQ
|
||||
weechat_faq.de.html: weechat_faq.de.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_faq.de.html $(abs_top_srcdir)/doc/de/weechat_faq.de.adoc
|
||||
|
||||
# quickstart
|
||||
weechat_quickstart.de.html: weechat_quickstart.de.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.de.html $(abs_top_srcdir)/doc/de/weechat_quickstart.de.adoc
|
||||
|
||||
# tester's guide
|
||||
weechat_tester.de.html: weechat_tester.de.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.de.html $(abs_top_srcdir)/doc/de/weechat_tester.de.adoc
|
||||
|
||||
# install man/docs
|
||||
|
||||
install-data-hook: $(man_install) $(doc_install)
|
||||
|
||||
install-man:
|
||||
$(mkinstalldirs) $(DESTDIR)$(mandir)/de/man1/
|
||||
$(INSTALL_DATA) *.1 $(DESTDIR)$(mandir)/de/man1/
|
||||
|
||||
install-doc:
|
||||
$(mkinstalldirs) $(DESTDIR)$(docdir)/
|
||||
$(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
|
||||
|
||||
# uninstall man/docs
|
||||
|
||||
uninstall-hook: $(man_uninstall) $(doc_uninstall)
|
||||
|
||||
uninstall-man:
|
||||
$(RM) $(DESTDIR)$(mandir)/de/man1/weechat.1
|
||||
$(RM) $(DESTDIR)$(mandir)/de/man1/weechat-headless.1
|
||||
-rmdir $(DESTDIR)$(mandir)/de/man1
|
||||
|
||||
uninstall-doc:
|
||||
$(RM) $(DESTDIR)$(docdir)/*.de.html
|
||||
-rmdir $(DESTDIR)$(docdir)
|
||||
|
||||
# clean
|
||||
|
||||
clean-local:
|
||||
-$(RM) weechat.1 weechat-headless.1 weechat_*.html
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
../docinfo.html
|
||||
@@ -0,0 +1,192 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::completions[]
|
||||
[width="100%",cols="^1,^2,7",options="header"]
|
||||
|===
|
||||
| Erweiterung | Name | Beschreibung
|
||||
|
||||
| alias | alias | Liste der Alias
|
||||
|
||||
| alias | alias_value | Wert von Alias
|
||||
|
||||
| exec | exec_commands_ids | IDs (Nummern und Namen) von ausgeführten Befehlen
|
||||
|
||||
| fset | fset_options | Konfigurationsdateien, Sektionen, Optionen und Worte von Optionen
|
||||
|
||||
| guile | guile_script | Liste der Skripten
|
||||
|
||||
| irc | irc_channel | aktueller IRC-Kanal
|
||||
|
||||
| irc | irc_channel_nicks_hosts | Liste der Nicks und Hostnamen des aktuellen Kanals
|
||||
|
||||
| irc | irc_channel_topic | Thema des aktuellen IRC-Kanals
|
||||
|
||||
| irc | irc_channels | Kanäle auf allen IRC Servern
|
||||
|
||||
| irc | irc_ignores_numbers | Anzahl für festgelegte Ignorierungen
|
||||
|
||||
| irc | irc_modelist_masks | Modelist Maske für aktuellen IRC Kanal; benötigtes Argument: modelist mode
|
||||
|
||||
| irc | irc_modelist_numbers | Modelist Nummern für aktuellen IRC Kanal; benötigtes Argument: modelist mode
|
||||
|
||||
| irc | irc_msg_kick | Standardmitteilung wenn man jemanden aus einem Kanal wirftchannel
|
||||
|
||||
| irc | irc_msg_part | Standardmitteilung beim Verlassen (/part) eines IRC-Kanals
|
||||
|
||||
| irc | irc_notify_nicks | Nicks für die eine Benachrichtigung existiert
|
||||
|
||||
| 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_channels | Kanäle des derzeitigen IRC-Server
|
||||
|
||||
| irc | irc_server_nick | Nick beim derzeitigen IRC-Server
|
||||
|
||||
| irc | irc_server_nicks | Nicks für alle Kanäle auf dem aktuellen IRC-Server
|
||||
|
||||
| irc | irc_server_privates | Privat auf aktuellem IRC Server
|
||||
|
||||
| irc | irc_servers | IRC-Server (interne Namen)
|
||||
|
||||
| irc | nick | Liste der Nicks im aktuellen Kanal
|
||||
|
||||
| javascript | javascript_script | Liste der Skripten
|
||||
|
||||
| lua | lua_script | Liste der Skripten
|
||||
|
||||
| perl | perl_script | Liste der Skripten
|
||||
|
||||
| php | php_script | Liste der Skripten
|
||||
|
||||
| python | python_script | Liste der Skripten
|
||||
|
||||
| relay | relay_free_port | erster freier Port für Relay-Erweiterung
|
||||
|
||||
| relay | relay_protocol_name | alle möglichen Protokoll.Name der Relay-Erweiterung
|
||||
|
||||
| relay | relay_relays | Protokoll.Name des aktuellen Relays von der Relay-Erweiterung
|
||||
|
||||
| ruby | ruby_script | Liste der Skripten
|
||||
|
||||
| script | script_extensions | Liste der Skripterweiterungen
|
||||
|
||||
| script | script_files | Dateien die sich in den Skript-Verzeichnissen befinden
|
||||
|
||||
| script | script_languages | Liste der Skriptsprache
|
||||
|
||||
| script | script_scripts | Liste der Skripten im Repositorium
|
||||
|
||||
| script | script_scripts_installed | Auflistung der installierten Skripten (vom Repositorium)
|
||||
|
||||
| script | script_tags | Schlagwortliste für Skripten im Repositorium
|
||||
|
||||
| spell | spell_dicts | Auflistung der installierten Wörterbücher
|
||||
|
||||
| spell | spell_langs | Liste aller Sprachen die unterstützt werden
|
||||
|
||||
| tcl | tcl_script | Liste der Skripten
|
||||
|
||||
| trigger | trigger_hook_arguments | Standardargumente für einen Hook
|
||||
|
||||
| trigger | trigger_hook_command | Standardbefehl für einen Hook
|
||||
|
||||
| trigger | trigger_hook_conditions | Standardbedingungen für einen Hook
|
||||
|
||||
| trigger | trigger_hook_rc | Standardrückgabewerte für einen Hook-Callback
|
||||
|
||||
| trigger | trigger_hook_regex | standardmäßiger regulärer Ausdruck für einen Hook
|
||||
|
||||
| trigger | trigger_hooks | Hooks für Trigger
|
||||
|
||||
| trigger | trigger_hooks_filter | Hooks für Trigger (definiert den Filter für den Monitor-Buffer)
|
||||
|
||||
| trigger | trigger_names | trigger
|
||||
|
||||
| trigger | trigger_names_default | voreingestellte Trigger
|
||||
|
||||
| trigger | trigger_option_value | Werte für Trigger-Einstellung
|
||||
|
||||
| trigger | trigger_options | Einstellungen für Trigger
|
||||
|
||||
| trigger | trigger_post_action | nachfolgende Aktion für Trigger
|
||||
|
||||
| weechat | bars_names | Namen der Infobars
|
||||
|
||||
| weechat | bars_options | Einstellungen für Infobars
|
||||
|
||||
| weechat | buffer_local_variable_value | Wert einer lokalen Buffervariablen
|
||||
|
||||
| weechat | buffer_local_variables | lokale Buffervariablen
|
||||
|
||||
| weechat | buffer_properties_get | Eigenschaften die für den Buffer gelesen werden können
|
||||
|
||||
| weechat | buffer_properties_set | Eigenschaften die für den Buffer gesetzt werden können
|
||||
|
||||
| weechat | buffers_names | Auflistung der vorhandenen Buffer
|
||||
|
||||
| weechat | buffers_numbers | Anzahl der Buffer
|
||||
|
||||
| weechat | buffers_plugins_names | Liste der Buffer (inklusive der Erweiterungen)
|
||||
|
||||
| weechat | colors | Farbnamen
|
||||
|
||||
| weechat | commands | Befehle (weechat und Erweiterungen); optionales Argument: Präfix welcher vor den Befehlen hinzugefügt wird
|
||||
|
||||
| weechat | config_files | Konfigurationsdateien
|
||||
|
||||
| weechat | config_option_values | Werte für eine Konfigurationsoption
|
||||
|
||||
| weechat | config_options | Konfigurationsoptionen
|
||||
|
||||
| weechat | cursor_areas | Bereiche in denen der Cursor frei bewegt werden kann ("chat" oder Name einer Bar)
|
||||
|
||||
| weechat | env_value | Wert einer Umgebungsvariable
|
||||
|
||||
| weechat | env_vars | Umgebungsvariablen
|
||||
|
||||
| weechat | filename | Dateiname; optionales Argument: default path (Hinweis: Inhalt wird evaluiert, siehe /help eval)
|
||||
|
||||
| weechat | filters_names | Liste der Filter
|
||||
|
||||
| weechat | infolists | Namen der gehookten Infolisten
|
||||
|
||||
| weechat | infos | Namen der gehookten Infos
|
||||
|
||||
| weechat | keys_codes | Tastaturcodes
|
||||
|
||||
| weechat | keys_codes_for_reset | Tastenbelegungen die zurückgesetzt werden können (hinzugefügte/verändert/gelöschte Tastenbelegungen)
|
||||
|
||||
| weechat | keys_contexts | Tastaturkontext
|
||||
|
||||
| weechat | layouts_names | Namen der Layouts
|
||||
|
||||
| weechat | nicks | Nicks in Benutzerliste für aktuellen Buffer
|
||||
|
||||
| weechat | palette_colors | Farbpalette
|
||||
|
||||
| weechat | plugins_commands | Befehle definiert durch Erweiterungen; optionales Argument: Präfix welcher vor den Befehlen hinzugefügt wird
|
||||
|
||||
| weechat | plugins_installed | Namen der installierten Erweiterungen
|
||||
|
||||
| weechat | plugins_names | Liste der Erweiterungen
|
||||
|
||||
| weechat | proxies_names | Namen aller Proxys
|
||||
|
||||
| weechat | proxies_options | Einstellungen für Proxys
|
||||
|
||||
| weechat | secured_data | Namen der geschützten Daten (Datei sec.conf, section data)
|
||||
|
||||
| weechat | weechat_commands | weechat Befehle; optionales Argument: Präfix welcher vor den Befehlen hinzugefügt wird
|
||||
|
||||
| weechat | windows_numbers | Nummern der Fenster
|
||||
|
||||
| xfer | nick | Nicks vom DCC Chat
|
||||
|
||||
|===
|
||||
// end::completions[]
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,94 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::infolists[]
|
||||
[width="100%",cols="^1,^2,5,5,5",options="header"]
|
||||
|===
|
||||
| Erweiterung | Name | Beschreibung | Pointer | Argumente
|
||||
|
||||
| alias | alias | Liste der Alias | Alias Pointer (optional) | Name des Alias (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| alias | alias_default | Liste der standardmäßigen Aliase | - | -
|
||||
|
||||
| buflist | buflist | Liste der Buffer in buflist Bar-Item | - | buflist Bar-Item Name (optional)
|
||||
|
||||
| fset | fset_option | Auflistung der fset Optionen | fset Option-Pointer (optional) | Name einer Einstellung (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| guile | guile_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| irc | irc_channel | Liste der Kanäle eines IRC-Servers | Pointer vom Kanal (optional) | Server,Kanal (Kanal ist optional)
|
||||
|
||||
| irc | irc_color_weechat | Zuordnung der IRC Farbkodierung und der WeeChat Farbnamen | - | -
|
||||
|
||||
| irc | irc_ignore | Liste von ignorierten IRCs | Ignore Pointer (optional) | -
|
||||
|
||||
| irc | irc_modelist | Liste der Kanalmoduslisten für einen IRC-Kanal | Modelist Pointer (optional) | Server,Channel,Type (Type ist optional)
|
||||
|
||||
| irc | irc_modelist_item | Liste der Items in der Kanal-Modeliste | Modelist Item Pointer (optional) | Server,Channel,Type,Nummer (Nummer ist optional)
|
||||
|
||||
| irc | irc_nick | Liste der Nicks im IRC-Kanal | Nick Pointer (optional) | server,channel,nick (nick ist optional)
|
||||
|
||||
| irc | irc_notify | Liste mit Benachrichtigungen | Benachrichtigungspointer (optional) | Servername (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| irc | irc_server | Liste der IRC-Server | Server Pointer (optional) | Servername (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| javascript | javascript_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| logger | logger_buffer | Auflistung der protokollierten Buffer | Logger-Pointer (optional) | -
|
||||
|
||||
| lua | lua_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| perl | perl_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| php | php_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| python | python_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| relay | relay | Liste der Relay-Clients | Relay Pointer (optional) | -
|
||||
|
||||
| ruby | ruby_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| script | script_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes, mit Dateierweiterung (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| tcl | tcl_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| weechat | bar | Auflistung der Bars | Bar Pointer (optional) | Name der Bar (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| weechat | bar_item | Auflistung der Bar-Items | Bar Item Pointer (optional) | Name des Bar-Item (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| weechat | bar_window | Auflistung der Bar-Fenster | Bar-Fenster Pointer (optional) | -
|
||||
|
||||
| weechat | buffer | Auflistung der Buffer | Buffer Pointer (optional) | Name des Buffers (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| weechat | buffer_lines | Zeilen des Buffers | Buffer Pointer | -
|
||||
|
||||
| weechat | filter | Auflistung der Filter | - | Name des Filters (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| weechat | history | Verlaufspeicher der Befehle | Buffer Pointer (falls nicht gesetzt, wird der globale Verlauf zurückgegeben) (optional) | -
|
||||
|
||||
| weechat | hook | Auflistung der Hooks | Hook-Pointer (optional) | type,arguments (type ist ein command/timer/.., arguments dient dazu nur einige hooks abzufragen (Platzhalter "*" kann verwendet werden), beide Einstellungen sind optional)
|
||||
|
||||
| weechat | hotlist | Liste der Buffer in Hotlist | - | -
|
||||
|
||||
| weechat | key | Auflistung der Tastenzuweisungen | - | Kontext ("default", "search", "cursor" oder "mouse") (optional)
|
||||
|
||||
| weechat | layout | Auflistung der Layouts | - | -
|
||||
|
||||
| weechat | nicklist | Nicks in Benutzerliste für einen Buffer | Buffer Pointer | nick_xxx oder group_xxx um nur den Nick/Group xxx abzufragen (optional)
|
||||
|
||||
| weechat | option | Auflistung der Einstellungen | - | Name einer Einstellung (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| weechat | plugin | Auflistung der Erweiterungen | Pointer der Erweiterung (optional) | Name einer Erweiterung (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| weechat | proxy | Liste der Proxys | Proxy Pointer (optional) | Name des Proxy (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| weechat | url_options | Einstellungen für URL | - | -
|
||||
|
||||
| weechat | window | Auflistung der Fenster | Fenster Pointer (optional) | "current" für aktuelles Fenster oder die Nummer eines Fensters (optional)
|
||||
|
||||
| xfer | xfer | Transferliste | Transferpointer (optional) | -
|
||||
|
||||
|===
|
||||
// end::infolists[]
|
||||
@@ -0,0 +1,164 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::infos[]
|
||||
[width="100%",cols="^1,^2,6,6",options="header"]
|
||||
|===
|
||||
| Erweiterung | Name | Beschreibung | Argumente
|
||||
|
||||
| fifo | fifo_filename | Name der FIFO-Pipe | -
|
||||
|
||||
| guile | guile_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
|
||||
|
||||
| guile | guile_interpreter | Name des verwendeten Interpreters | -
|
||||
|
||||
| guile | guile_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| irc | irc_buffer | holt Buffer Pointer für einen IRC Server/Kanal/Nick | server,channel,nick (Kanal und Nicks sind optional)
|
||||
|
||||
| irc | irc_is_channel | 1, falls die Zeichenkette ein gültiger IRC-Kanalname für den Server ist | Server,Kanal (Server ist optional)
|
||||
|
||||
| irc | irc_is_message_ignored | 1, wenn der Nick ignoriert wird (Meldung wird nicht angezeigt) | Server,Nachricht (Nachricht ist die unverarbeitete IRC Nachricht)
|
||||
|
||||
| irc | irc_is_nick | 1, falls die Zeichenkette ein gültiger IRC Nickname ist | Server,Nickname (Server ist optional)
|
||||
|
||||
| irc | irc_nick | aktuellen Nicknamen für den Server erhalten | Servername
|
||||
|
||||
| irc | irc_nick_color | erhalte nick color code (*veraltet* ab Version 1.5, wird ersetzt durch "nick_color") | Nickname
|
||||
|
||||
| irc | irc_nick_color_name | erhalte nick color name (*veraltet* ab Version 1.5, wird ersetzt durch "nick_color_name") | Nickname
|
||||
|
||||
| irc | irc_nick_from_host | Nicknamen des IRC-Hosts erhalten | IRC host (in der Form `:nick!name@server.com`)
|
||||
|
||||
| irc | irc_server_isupport | 1 falls der Server die Funktion unterstützen sollte (durch IRC Message 005) | Server,Funktion
|
||||
|
||||
| irc | irc_server_isupport_value | Wert der Funktion, sofern es vom Server unterstützt wird (durch IRC Message 005) | Server,Funktion
|
||||
|
||||
| javascript | javascript_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
|
||||
|
||||
| javascript | javascript_interpreter | Name des verwendeten Interpreters | -
|
||||
|
||||
| javascript | javascript_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| lua | lua_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
|
||||
|
||||
| lua | lua_interpreter | Name des verwendeten Interpreters | -
|
||||
|
||||
| lua | lua_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| perl | perl_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
|
||||
|
||||
| perl | perl_interpreter | Name des verwendeten Interpreters | -
|
||||
|
||||
| perl | perl_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| php | php_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
|
||||
|
||||
| php | php_interpreter | Name des verwendeten Interpreters | -
|
||||
|
||||
| php | php_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| python | python2_bin | Pfad zum Python 2.x Interpreter (*veraltet*, seit WeeChat Version 2.6 müssen Skripten Python3 verwenden) | -
|
||||
|
||||
| python | python_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
|
||||
|
||||
| python | python_interpreter | Name des verwendeten Interpreters | -
|
||||
|
||||
| python | python_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| relay | relay_client_count | Anzahl an Clients für Relay | Protokoll,Status (beide sind Optional, bei beiden Argumenten bedeutet "*", alle; Protokolle: irc, weechat; Status: connecting, waiting_auth, connected, auth_failed, disconnected)
|
||||
|
||||
| ruby | ruby_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
|
||||
|
||||
| ruby | ruby_interpreter | Name des verwendeten Interpreters | -
|
||||
|
||||
| ruby | ruby_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| spell | spell_dict | durch Kommata getrennte Liste von Wörterbüchern, die in diesem Buffer genutzt werden sollen | Buffer-Pointer ("0x12345678") oder der vollständige Buffername ("irc.libera.#weechat")
|
||||
|
||||
| tcl | tcl_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
|
||||
|
||||
| tcl | tcl_interpreter | Name des verwendeten Interpreters | -
|
||||
|
||||
| tcl | tcl_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| weechat | auto_connect | 1, falls die automatische Verbindung zu Servern aktiviert ist, 0, wenn sie vom Benutzer deaktiviert wurde (Option "-a" oder "--no-connect") | -
|
||||
|
||||
| weechat | charset_internal | Interner WeeChat Zeichensatz | -
|
||||
|
||||
| weechat | charset_terminal | Terminal Zeichensatz | -
|
||||
|
||||
| weechat | color_ansi_regex | Erweiterte reguläre POSIX Ausdrücke um ANSI Escapesequenz zu suchen | -
|
||||
|
||||
| weechat | color_rgb2term | RGB Farbe wurde umgewandelt in Terminalfarbe (0-255) | RGB,limit (Obergrenze ist optional und ist Standardmäßig 256)
|
||||
|
||||
| weechat | color_term2rgb | Terminalfarbe (0-255) wurde umgewandelt in RGB Farbe | Farben (Terminalfarben: 0-255)
|
||||
|
||||
| weechat | cursor_mode | 1, falls Cursor-Modus aktiviert ist | -
|
||||
|
||||
| weechat | date | Datum/Zeit der WeeChat Kompilierung | -
|
||||
|
||||
| weechat | dir_separator | Trennzeichen für Verzeichnis | -
|
||||
|
||||
| weechat | filters_enabled | 1, falls Filter aktiviert sind | -
|
||||
|
||||
| weechat | inactivity | Inaktivität der Tastatur (Sekunden) | -
|
||||
|
||||
| weechat | locale | Spracheinstellung die für die übersetzten Nachrichten verwendet werden soll | -
|
||||
|
||||
| weechat | nick_color | zeigt Farbecode des Nick | Nickname;Farben (Farben ist eine optionale Kommata getrennte Liste von Farben die genutzt werden sollen; wenn eine Hintergrundfarbe genutzt werden muss das Format wie folgt aussehen Text:Hintergrund; sind die Farben schon vorhanden, werden die WeeChat Optionen für Nickfarben und erzwungene Nickfarben ignoriert)
|
||||
|
||||
| weechat | nick_color_name | zeigt Farbnamen des Nick | Nickname;Farben (Farben ist eine optionale Kommata getrennte Liste von Farben die genutzt werden sollen; wenn eine Hintergrundfarbe genutzt werden muss das Format wie folgt aussehen Text:Hintergrund; sind die Farben schon vorhanden, werden die WeeChat Optionen für Nickfarben und erzwungene Nickfarben ignoriert)
|
||||
|
||||
| weechat | pid | WeeChat PID (Prozess-ID) | -
|
||||
|
||||
| weechat | term_color_pairs | Anzahl der Farbpaare die durch das Terminal unterstützt werden | -
|
||||
|
||||
| weechat | term_colors | Anzahl der Farben die durch das Terminal unterstützt werden | -
|
||||
|
||||
| weechat | term_height | Höhe des Terminals | -
|
||||
|
||||
| weechat | term_width | Breite des Terminals | -
|
||||
|
||||
| weechat | totp_generate | generiert ein Time-based One-Time Passwort (TOTP) | geheime Zeichenkette (in base32), Zeitstempel (optional, standardmäßig aktuelle Zeit), Anzahl an Zeichen (optional, zwischen 4 und 10, standardmäßig 6)
|
||||
|
||||
| weechat | totp_validate | validiert ein Time-based One-Time Passwort (TOTP): 1 falls TOTP korrekt ist, ansonsten 0 | geheim (in base32), einmaliges Passwort, Zeitstempel (optional, standardmäßig aktuelle Zeit), Anzahl der zu testenden Passwörtern vorher/nachher (optional, standardmäßig 0)
|
||||
|
||||
| weechat | uptime | Laufzeit von WeeChat (Format: "days:hh:mm:ss") | "days" (Anzahl der Tage) oder "seconds" (Anzahl der Sekunden) (optional)
|
||||
|
||||
| weechat | version | WeeChat-Version | -
|
||||
|
||||
| weechat | version_git | WeeChat Git Version (Ausgabe des Befehls "git describe", ausschließlich für eine Entwicklerversion. Eine stabile Version gibt keine Information zurück) | -
|
||||
|
||||
| weechat | version_number | WeeChat-Version (als Zahl) | -
|
||||
|
||||
| weechat | weechat_cache_dir | WeeChat Cache-Verzeichnis | -
|
||||
|
||||
| weechat | weechat_config_dir | WeeChat Konfigurationsverzeichnis | -
|
||||
|
||||
| weechat | weechat_daemon | 1, falls WeeChat im Daemon-Modus ausgeführt wird (ohne Oberfläche, im Hintergrund) | -
|
||||
|
||||
| weechat | weechat_data_dir | WeeChat-Datenverzeichnis | -
|
||||
|
||||
| weechat | weechat_dir | WeeChat-Verzeichnis (*veraltet* seit Version 3.2, ersetzt durch "weechat_config_dir", "weechat_data_dir", "weechat_cache_dir" und "weechat_runtime_dir") | -
|
||||
|
||||
| weechat | weechat_headless | 1, falls WeeChat im Hintergrundmodus ausgeführt wird | -
|
||||
|
||||
| weechat | weechat_libdir | WeeChat "lib" Verzeichnis | -
|
||||
|
||||
| weechat | weechat_localedir | "lokales" Verzeichnis von WeeChat | -
|
||||
|
||||
| weechat | weechat_runtime_dir | WeeChat-Laufzeitverzeichnis | -
|
||||
|
||||
| weechat | weechat_sharedir | WeeChat "share" Verzeichnis | -
|
||||
|
||||
| weechat | weechat_site | WeeChat Seite | -
|
||||
|
||||
| weechat | weechat_site_download | Download-Seite von WeeChat | -
|
||||
|
||||
| weechat | weechat_upgrading | 1 falls WeeChat ein Upgrade durchführt (Befehl `/upgrade`) | -
|
||||
|
||||
|===
|
||||
// end::infos[]
|
||||
@@ -0,0 +1,20 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::infos_hashtable[]
|
||||
[width="100%",cols="^1,^2,6,6,8",options="header"]
|
||||
|===
|
||||
| Erweiterung | Name | Beschreibung | Hashtable (Eingabe) | Hashtable (Ausgabe)
|
||||
|
||||
| irc | irc_message_parse | Parse eine IRC Nachricht | "message": IRC Nachricht, "server": Servername (optional) | "tags": Tags, "message_without_tags": Nachrichten ohne Tags, "nick": Nick, "user": Benutzername, "host": Host, "command": Befehl, "channel": Kanal, "arguments": Argumente (schließt Kanal ein), "text": Text (zum Beispiel eine Nachricht von einem User), "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird)
|
||||
|
||||
| irc | irc_message_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
|
||||
|
||||
| weechat | focus_info | Fokusinformationen abrufen | "x": x-Koordinate (Zeichenfolge mit Ganzzahl >= 0), "y": y-Koordinate (Zeichenfolge mit Ganzzahl >= 0) | siehe Funktion "hook_focus" in API Dokumentation
|
||||
|
||||
| weechat | secured_data | schutzwürdige Daten | - | schutzwürdige Daten: Namen und Werte (Vorsicht: Dies sind vertrauliche Daten: drucken oder protokollieren Sie diese NICHT)
|
||||
|
||||
|===
|
||||
// end::infos_hashtable[]
|
||||
@@ -0,0 +1,21 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::plugins_priority[]
|
||||
. charset (15000)
|
||||
. logger (14000)
|
||||
. exec (13000)
|
||||
. trigger (12000)
|
||||
. spell (11000)
|
||||
. alias (10000)
|
||||
. buflist (9000)
|
||||
. fifo (8000)
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile, javascript, lua, perl, php, python, ruby, tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
// end::plugins_priority[]
|
||||
@@ -0,0 +1,436 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::url_options[]
|
||||
[width="100%",cols="2,^1,7",options="header"]
|
||||
|===
|
||||
| Einstellung | Type ^(1)^ | Konstanten ^(2)^
|
||||
|
||||
| verbose | long |
|
||||
|
||||
| header | long |
|
||||
|
||||
| noprogress | long |
|
||||
|
||||
| nosignal | long |
|
||||
|
||||
| wildcardmatch | long |
|
||||
|
||||
| failonerror | long |
|
||||
|
||||
| keep_sending_on_error | long |
|
||||
|
||||
| proxy | string |
|
||||
|
||||
| proxyport | long |
|
||||
|
||||
| port | long |
|
||||
|
||||
| pre_proxy | string |
|
||||
|
||||
| httpproxytunnel | long |
|
||||
|
||||
| interface | string |
|
||||
|
||||
| dns_cache_timeout | long |
|
||||
|
||||
| proxytype | long | http, socks4, socks5, socks4a, socks5_hostname, http_1_0, https
|
||||
|
||||
| buffersize | long |
|
||||
|
||||
| tcp_nodelay | long |
|
||||
|
||||
| localport | long |
|
||||
|
||||
| localportrange | long |
|
||||
|
||||
| address_scope | long |
|
||||
|
||||
| protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| redir_protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| noproxy | string |
|
||||
|
||||
| socks5_gssapi_nec | long |
|
||||
|
||||
| tcp_keepalive | long |
|
||||
|
||||
| tcp_keepidle | long |
|
||||
|
||||
| tcp_keepintvl | long |
|
||||
|
||||
| unix_socket_path | string |
|
||||
|
||||
| abstract_unix_socket | string |
|
||||
|
||||
| path_as_is | long |
|
||||
|
||||
| proxy_service_name | string |
|
||||
|
||||
| service_name | string |
|
||||
|
||||
| default_protocol | string |
|
||||
|
||||
| tcp_fastopen | long |
|
||||
|
||||
| socks5_auth | long |
|
||||
|
||||
| haproxyprotocol | long |
|
||||
|
||||
| doh_url | string |
|
||||
|
||||
| netrc | long | ignored, optional, required
|
||||
|
||||
| userpwd | string |
|
||||
|
||||
| proxyuserpwd | string |
|
||||
|
||||
| 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, gssapi, bearer
|
||||
|
||||
| netrc_file | string |
|
||||
|
||||
| username | string |
|
||||
|
||||
| password | string |
|
||||
|
||||
| proxyusername | string |
|
||||
|
||||
| proxypassword | string |
|
||||
|
||||
| tlsauth_type | mask | none, srp
|
||||
|
||||
| tlsauth_username | string |
|
||||
|
||||
| tlsauth_password | string |
|
||||
|
||||
| sasl_ir | long |
|
||||
|
||||
| xoauth2_bearer | string |
|
||||
|
||||
| login_options | string |
|
||||
|
||||
| disallow_username_in_url | long |
|
||||
|
||||
| autoreferer | long |
|
||||
|
||||
| followlocation | long |
|
||||
|
||||
| put | long |
|
||||
|
||||
| post | long |
|
||||
|
||||
| postfields | string |
|
||||
|
||||
| referer | string |
|
||||
|
||||
| useragent | string |
|
||||
|
||||
| httpheader | list |
|
||||
|
||||
| cookie | string |
|
||||
|
||||
| cookiefile | string |
|
||||
|
||||
| postfieldsize | long |
|
||||
|
||||
| maxredirs | long |
|
||||
|
||||
| httpget | long |
|
||||
|
||||
| cookiejar | string |
|
||||
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge
|
||||
|
||||
| cookiesession | long |
|
||||
|
||||
| http200aliases | list |
|
||||
|
||||
| unrestricted_auth | long |
|
||||
|
||||
| postfieldsize_large | long long |
|
||||
|
||||
| cookielist | string |
|
||||
|
||||
| ignore_content_length | long |
|
||||
|
||||
| accept_encoding | string |
|
||||
|
||||
| transfer_encoding | long |
|
||||
|
||||
| http_content_decoding | long |
|
||||
|
||||
| http_transfer_decoding | long |
|
||||
|
||||
| copypostfields | string |
|
||||
|
||||
| postredir | mask | post_301, post_302
|
||||
|
||||
| expect_100_timeout_ms | long |
|
||||
|
||||
| headeropt | mask | unified, separate
|
||||
|
||||
| proxyheader | list |
|
||||
|
||||
| pipewait | long |
|
||||
|
||||
| stream_weight | long |
|
||||
|
||||
| request_target | string |
|
||||
|
||||
| mail_from | string |
|
||||
|
||||
| mail_rcpt | list |
|
||||
|
||||
| mail_auth | string |
|
||||
|
||||
| tftp_blksize | long |
|
||||
|
||||
| tftp_no_options | long |
|
||||
|
||||
| ftpport | string |
|
||||
|
||||
| quote | list |
|
||||
|
||||
| postquote | list |
|
||||
|
||||
| ftp_use_epsv | long |
|
||||
|
||||
| prequote | list |
|
||||
|
||||
| ftp_use_eprt | long |
|
||||
|
||||
| ftp_create_missing_dirs | long |
|
||||
|
||||
| ftp_response_timeout | long |
|
||||
|
||||
| ftpsslauth | long | default, ssl, tls
|
||||
|
||||
| ftp_account | string |
|
||||
|
||||
| ftp_skip_pasv_ip | long |
|
||||
|
||||
| ftp_filemethod | long | multicwd, nocwd, singlecwd
|
||||
|
||||
| ftp_alternative_to_user | string |
|
||||
|
||||
| ftp_ssl_ccc | long | ccc_none, ccc_active, ccc_passive
|
||||
|
||||
| dirlistonly | long |
|
||||
|
||||
| append | long |
|
||||
|
||||
| ftp_use_pret | long |
|
||||
|
||||
| rtsp_request | long | options, describe, announce, setup, play, pause, teardown, get_parameter, set_parameter, record, receive
|
||||
|
||||
| rtsp_session_id | string |
|
||||
|
||||
| rtsp_stream_uri | string |
|
||||
|
||||
| rtsp_transport | string |
|
||||
|
||||
| rtsp_client_cseq | long |
|
||||
|
||||
| rtsp_server_cseq | long |
|
||||
|
||||
| crlf | long |
|
||||
|
||||
| range | string |
|
||||
|
||||
| resume_from | long |
|
||||
|
||||
| customrequest | string |
|
||||
|
||||
| nobody | long |
|
||||
|
||||
| infilesize | long |
|
||||
|
||||
| upload | long |
|
||||
|
||||
| timecondition | long | none, ifmodsince, ifunmodsince, lastmod
|
||||
|
||||
| timevalue | long |
|
||||
|
||||
| transfertext | long |
|
||||
|
||||
| filetime | long |
|
||||
|
||||
| maxfilesize | long |
|
||||
|
||||
| proxy_transfer_mode | long |
|
||||
|
||||
| resume_from_large | long long |
|
||||
|
||||
| infilesize_large | long long |
|
||||
|
||||
| maxfilesize_large | long long |
|
||||
|
||||
| timevalue_large | long long |
|
||||
|
||||
| upload_buffersize | long |
|
||||
|
||||
| timeout | long |
|
||||
|
||||
| low_speed_limit | long |
|
||||
|
||||
| low_speed_time | long |
|
||||
|
||||
| fresh_connect | long |
|
||||
|
||||
| forbid_reuse | long |
|
||||
|
||||
| connecttimeout | long |
|
||||
|
||||
| ipresolve | long | whatever, v4, v6
|
||||
|
||||
| connect_only | long |
|
||||
|
||||
| max_send_speed_large | long long |
|
||||
|
||||
| max_recv_speed_large | long long |
|
||||
|
||||
| timeout_ms | long |
|
||||
|
||||
| connecttimeout_ms | long |
|
||||
|
||||
| maxconnects | long |
|
||||
|
||||
| use_ssl | long | none, try, control, all
|
||||
|
||||
| resolve | list |
|
||||
|
||||
| dns_servers | string |
|
||||
|
||||
| accepttimeout_ms | long |
|
||||
|
||||
| dns_interface | string |
|
||||
|
||||
| dns_local_ip4 | string |
|
||||
|
||||
| dns_local_ip6 | string |
|
||||
|
||||
| connect_to | list |
|
||||
|
||||
| happy_eyeballs_timeout_ms | long |
|
||||
|
||||
| dns_shuffle_addresses | long |
|
||||
|
||||
| upkeep_interval_ms | long |
|
||||
|
||||
| sslcert | string |
|
||||
|
||||
| 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 |
|
||||
|
||||
| cainfo | string |
|
||||
|
||||
| random_file | string |
|
||||
|
||||
| egdsocket | string |
|
||||
|
||||
| ssl_verifyhost | long |
|
||||
|
||||
| ssl_cipher_list | string |
|
||||
|
||||
| sslcerttype | string |
|
||||
|
||||
| sslkey | string |
|
||||
|
||||
| sslkeytype | string |
|
||||
|
||||
| sslengine | string |
|
||||
|
||||
| sslengine_default | long |
|
||||
|
||||
| capath | string |
|
||||
|
||||
| ssl_sessionid_cache | long |
|
||||
|
||||
| krblevel | string |
|
||||
|
||||
| keypasswd | string |
|
||||
|
||||
| issuercert | string |
|
||||
|
||||
| crlfile | string |
|
||||
|
||||
| certinfo | long |
|
||||
|
||||
| gssapi_delegation | long | none, policy_flag, flag
|
||||
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
|
||||
| ssl_enable_alpn | long |
|
||||
|
||||
| ssl_enable_npn | long |
|
||||
|
||||
| pinnedpublickey | string |
|
||||
|
||||
| ssl_verifystatus | long |
|
||||
|
||||
| ssl_falsestart | long |
|
||||
|
||||
| proxy_cainfo | string |
|
||||
|
||||
| proxy_capath | string |
|
||||
|
||||
| proxy_crlfile | string |
|
||||
|
||||
| proxy_keypasswd | string |
|
||||
|
||||
| proxy_pinnedpublickey | string |
|
||||
|
||||
| proxy_sslcert | string |
|
||||
|
||||
| proxy_sslcerttype | string |
|
||||
|
||||
| proxy_sslkey | string |
|
||||
|
||||
| proxy_sslkeytype | string |
|
||||
|
||||
| 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_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
|
||||
| proxy_ssl_verifyhost | long |
|
||||
|
||||
| proxy_ssl_verifypeer | long |
|
||||
|
||||
| proxy_tlsauth_password | string |
|
||||
|
||||
| proxy_tlsauth_type | string |
|
||||
|
||||
| proxy_tlsauth_username | string |
|
||||
|
||||
| tls13_ciphers | list |
|
||||
|
||||
| proxy_tls13_ciphers | list |
|
||||
|
||||
| ssh_auth_types | mask | none, policy_flag, flag
|
||||
|
||||
| ssh_public_keyfile | string |
|
||||
|
||||
| ssh_private_keyfile | string |
|
||||
|
||||
| ssh_host_public_key_md5 | string |
|
||||
|
||||
| ssh_knownhosts | string |
|
||||
|
||||
| ssh_compression | long |
|
||||
|
||||
| new_file_perms | long |
|
||||
|
||||
| new_directory_perms | long |
|
||||
|
||||
| telnetoptions | list |
|
||||
|
||||
|===
|
||||
// end::url_options[]
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,44 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::default_aliases[]
|
||||
[width="100%",cols="2m,5m,5",options="header"]
|
||||
|===
|
||||
| Alias | Befehl | Vervollständigung
|
||||
|
||||
| /AAWAY | /allserv /away | -
|
||||
| /ANICK | /allserv /nick | -
|
||||
| /BEEP | /print -beep | -
|
||||
| /BYE | /quit | -
|
||||
| /C | /buffer clear | -
|
||||
| /CL | /buffer clear | -
|
||||
| /CLOSE | /buffer close | -
|
||||
| /CHAT | /dcc chat | -
|
||||
| /EXIT | /quit | -
|
||||
| /IG | /ignore | -
|
||||
| /J | /join | -
|
||||
| /K | /kick | -
|
||||
| /KB | /kickban | -
|
||||
| /LEAVE | /part | -
|
||||
| /M | /msg | -
|
||||
| /MUB | /unban * | -
|
||||
| /MSGBUF | /command -buffer $1 * /input send $2- | %(buffers_plugins_names)
|
||||
| /N | /names | -
|
||||
| /Q | /query | -
|
||||
| /REDRAW | /window refresh | -
|
||||
| /SAY | /msg * | -
|
||||
| /SIGNOFF | /quit | -
|
||||
| /T | /topic | -
|
||||
| /UB | /unban | -
|
||||
| /UMODE | /mode $nick | -
|
||||
| /V | /command core version | -
|
||||
| /W | /who | -
|
||||
| /WC | /window close | -
|
||||
| /WI | /whois | -
|
||||
| /WII | /whois $1 $1 | -
|
||||
| /WM | /window merge | -
|
||||
| /WW | /whowas | -
|
||||
|===
|
||||
// end::default_aliases[]
|
||||
@@ -0,0 +1,112 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::irc_colors[]
|
||||
[width="50%",cols="^2m,3",options="header"]
|
||||
|===
|
||||
| IRC-Farbe | WeeChat-Farbe
|
||||
|
||||
| 00 | white
|
||||
| 01 | black
|
||||
| 02 | blue
|
||||
| 03 | green
|
||||
| 04 | lightred
|
||||
| 05 | red
|
||||
| 06 | magenta
|
||||
| 07 | brown
|
||||
| 08 | yellow
|
||||
| 09 | lightgreen
|
||||
| 10 | cyan
|
||||
| 11 | lightcyan
|
||||
| 12 | lightblue
|
||||
| 13 | lightmagenta
|
||||
| 14 | darkgray
|
||||
| 15 | gray
|
||||
| 16 | 52
|
||||
| 17 | 94
|
||||
| 18 | 100
|
||||
| 19 | 58
|
||||
| 20 | 22
|
||||
| 21 | 29
|
||||
| 22 | 23
|
||||
| 23 | 24
|
||||
| 24 | 17
|
||||
| 25 | 54
|
||||
| 26 | 53
|
||||
| 27 | 89
|
||||
| 28 | 88
|
||||
| 29 | 130
|
||||
| 30 | 142
|
||||
| 31 | 64
|
||||
| 32 | 28
|
||||
| 33 | 35
|
||||
| 34 | 30
|
||||
| 35 | 25
|
||||
| 36 | 18
|
||||
| 37 | 91
|
||||
| 38 | 90
|
||||
| 39 | 125
|
||||
| 40 | 124
|
||||
| 41 | 166
|
||||
| 42 | 184
|
||||
| 43 | 106
|
||||
| 44 | 34
|
||||
| 45 | 49
|
||||
| 46 | 37
|
||||
| 47 | 33
|
||||
| 48 | 19
|
||||
| 49 | 129
|
||||
| 50 | 127
|
||||
| 51 | 161
|
||||
| 52 | 196
|
||||
| 53 | 208
|
||||
| 54 | 226
|
||||
| 55 | 154
|
||||
| 56 | 46
|
||||
| 57 | 86
|
||||
| 58 | 51
|
||||
| 59 | 75
|
||||
| 60 | 21
|
||||
| 61 | 171
|
||||
| 62 | 201
|
||||
| 63 | 198
|
||||
| 64 | 203
|
||||
| 65 | 215
|
||||
| 66 | 227
|
||||
| 67 | 191
|
||||
| 68 | 83
|
||||
| 69 | 122
|
||||
| 70 | 87
|
||||
| 71 | 111
|
||||
| 72 | 63
|
||||
| 73 | 177
|
||||
| 74 | 207
|
||||
| 75 | 205
|
||||
| 76 | 217
|
||||
| 77 | 223
|
||||
| 78 | 229
|
||||
| 79 | 193
|
||||
| 80 | 157
|
||||
| 81 | 158
|
||||
| 82 | 159
|
||||
| 83 | 153
|
||||
| 84 | 147
|
||||
| 85 | 183
|
||||
| 86 | 219
|
||||
| 87 | 212
|
||||
| 88 | 16
|
||||
| 89 | 233
|
||||
| 90 | 235
|
||||
| 91 | 237
|
||||
| 92 | 239
|
||||
| 93 | 241
|
||||
| 94 | 244
|
||||
| 95 | 247
|
||||
| 96 | 250
|
||||
| 97 | 254
|
||||
| 98 | 231
|
||||
| 99 | default
|
||||
|===
|
||||
// end::irc_colors[]
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,6 @@
|
||||
// tag::plugin_options[]
|
||||
Um eine vollständige Dokumentation der Optionen zu erhalten, siehe
|
||||
https://weechat.org/doc/[WeeChat user's guide].
|
||||
https://weechat.org/doc[WeeChat user's guide].
|
||||
|
||||
Mittels der IRC Erweiterung kann man sich zu einen temporären Server verbinden lassen,
|
||||
indem man eine URL verwendet:
|
||||
@@ -86,9 +86,6 @@ $HOME/.config/weechat/tcl.conf::
|
||||
$HOME/.config/weechat/trigger.conf::
|
||||
Konfigurationsdatei für _trigger_ Erweiterung
|
||||
|
||||
$HOME/.config/weechat/typing.conf::
|
||||
Konfigurationsdatei für _typing_ Erweiterung
|
||||
|
||||
$HOME/.config/weechat/xfer.conf::
|
||||
Konfigurationsdatei für _xfer_ Erweiterung
|
||||
|
||||
@@ -100,7 +97,7 @@ $HOME/.local/share/weechat/weechat.log::
|
||||
WeeChat wird programmiert von Sébastien Helleu und weiteren Beteiligten (eine vollständige Auflistung
|
||||
findet man in der AUTHORS.adoc Datei).
|
||||
|
||||
Copyright (C) 2003-2024 {author}
|
||||
Copyright (C) 2003-2021 {author}
|
||||
|
||||
WeeChat is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -63,4 +63,4 @@ include::includes/man.de.adoc[tag=copyright]
|
||||
|
||||
== SUPPORT / FEHLER MELDEN
|
||||
|
||||
für Hilfe oder um einen Fehler zu melden: https://weechat.org/about/support/
|
||||
für Hilfe oder um einen Fehler zu melden: https://weechat.org/about/support
|
||||
|
||||
@@ -59,4 +59,4 @@ include::includes/man.de.adoc[tag=copyright]
|
||||
|
||||
== SUPPORT / FEHLER MELDEN
|
||||
|
||||
für Hilfe oder um einen Fehler zu melden: https://weechat.org/about/support/
|
||||
für Hilfe oder um einen Fehler zu melden: https://weechat.org/about/support
|
||||
|
||||
+256
-216
@@ -2,12 +2,24 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: de
|
||||
:toc: left
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
:toclevels: 2
|
||||
:sectnums:
|
||||
:sectnumlevels: 2
|
||||
:docinfo1:
|
||||
|
||||
|
||||
Diese Dokumentation bezieht sich auf die WeeChat Version ≥ 0.3.0. Es sollte aber
|
||||
vorzugsweise immer die aktuell veröffentlichte Version von WeeChat genutzt werden.
|
||||
|
||||
Übersetzer:
|
||||
|
||||
* Juergen Descher <jhdl@gmx.net>, 2009
|
||||
* Nils Görs <weechatter@arcor.de>, 2009-2022
|
||||
* Nils Görs <weechatter@arcor.de>, 2009-2018
|
||||
|
||||
toc::[]
|
||||
|
||||
|
||||
[[general]]
|
||||
== Allgemein
|
||||
@@ -26,8 +38,7 @@ Aber diese Bedeutung trifft nicht auf WeeChat zu!)
|
||||
|
||||
WeeChat ist sehr speicherschonend und besticht durch innovative Funktionen.
|
||||
|
||||
Weitere Infomationen über Weechat
|
||||
https://weechat.org/about/features/[features page ^↗^^].
|
||||
Weitere Informationen findet man auf der WeeChat Seite: https://weechat.org/about/features
|
||||
|
||||
[[compilation_install]]
|
||||
== Kompilierung / Installation
|
||||
@@ -35,23 +46,30 @@ https://weechat.org/about/features/[features page ^↗^^].
|
||||
[[gui]]
|
||||
=== Ich habe gehört es gibt verschiedene GUIs für WeeChat. Wie kann ich diese kompilieren bzw. nutzen?
|
||||
|
||||
Einige Remote-GUIs sind verfügbar, siehe
|
||||
https://weechat.org/about/interfaces/[remote interfaces page ^↗^^].
|
||||
Es sind einige Remote-Oberflächen verfügbar. Diese findet man auf der Homepage:
|
||||
https://weechat.org/about/interfaces
|
||||
|
||||
[[compile_git]]
|
||||
=== Ich kann WeeChat nach Cloning des git Repository nicht kompilieren - weshalb?
|
||||
|
||||
WeeChat muss mit CMake kompiliert werden.
|
||||
Es wird empfohlen link:weechat_user.de.html#compile_with_cmake[CMake] zum
|
||||
kompilieren von WeeChat zu nutzen.
|
||||
|
||||
Bitte folgen Sie link:weechat_user.en.html#source_package[build instructions ^↗^^]
|
||||
und stellen Sie sicher, dass alle erforderlichen Abhängigkeiten installiert sind.
|
||||
Falls Du WeeChat mit Hilfe der
|
||||
link:weechat_user.de.html#compile_with_autotools[autotools] kompilieren solltest
|
||||
(dich also nicht für CMake entscheidest), stelle sicher, dass Du die neueste
|
||||
Version von autoconf und automake besitzt.
|
||||
|
||||
Wenn Sie weiterhin Probleme haben, melden Sie diese bitte den Entwicklern.
|
||||
Die zweite Möglichkeit besteht darin, das "Entwickler-Paket" zu installieren, denn dies
|
||||
besitzt weniger Abhängigkeiten. Das Paket wird quasi täglich aus dem git Repository erstellt.
|
||||
Beachte, dass dieses Paket nicht immer exakt mit dem git Repository übereinstimmen muss
|
||||
und daher auch weniger brauchbar sein kann. Im Gegensatz zu der Möglichkeit, dass man selbst
|
||||
das Repository klont und daraus Updates installiert.
|
||||
|
||||
[[compile_macos]]
|
||||
=== Wie installiere ich WeeChat auf macOS?
|
||||
|
||||
Wir empfehlen, dass zur Installation https://brew.sh/[Homebrew ^↗^^] genutzt wird.
|
||||
Wir empfehlen, dass zur Installation https://brew.sh/[Homebrew] genutzt wird.
|
||||
Hilfe erhält man mittels:
|
||||
|
||||
----
|
||||
@@ -69,12 +87,12 @@ brew install weechat
|
||||
|
||||
Um Hilfe zu erhalten, nutze den `/help` Befehl.
|
||||
Jeder Befehl besitzt einen Hilfstext, den man sich durch `/help Befehlsname` anzeigen lassen kann.
|
||||
Die link:weechat_user.de.html#key_bindings[Standard Tastenbelegung ^↗^^] sowie
|
||||
link:weechat_user.de.html#commands_and_options[Befehle und Optionen ^↗^^] sind im
|
||||
link:weechat_user.de.html[Benutzerhandbuch ^↗^^] aufgeführt.
|
||||
Die link:weechat_user.de.html#key_bindings[Standard Tastenbelegung] sowie
|
||||
link:weechat_user.de.html#commands_and_options[Befehle und Optionen] sind im
|
||||
link:weechat_user.de.html[Benutzerhandbuch] aufgeführt.
|
||||
|
||||
Neuen Anwendern wird empfohlen,
|
||||
die link:weechat_quickstart.de.html[Quickstart Anleitung ^↗^^] zu lesen.
|
||||
die link:weechat_quickstart.de.html[Quickstart Anleitung] zu lesen.
|
||||
|
||||
[[display]]
|
||||
== Anzeige
|
||||
@@ -107,7 +125,7 @@ Es ist deshalb wichtig, *ALLE* der folgenden Lösungsmöglichkeiten zu prüfen:
|
||||
("`defutf8 on`" in der Datei ~/.screenrc oder `screen -U` beim Starten von
|
||||
screen).
|
||||
* Überprüfe die Option
|
||||
link:weechat_user.de.html#option_weechat.look.eat_newline_glitch[_weechat.look.eat_newline_glitch_ ^↗^^]
|
||||
link:weechat_user.de.html#option_weechat.look.eat_newline_glitch[_weechat.look.eat_newline_glitch_]
|
||||
(diese Option kann schwerwiegenden Darstellungsfehler verursachen, wenn man die Option aktiviert hat).
|
||||
|
||||
[NOTE]
|
||||
@@ -123,10 +141,10 @@ Dieser Fehler sollte durch glibc 2.22 behoben sein (vielleicht ist diese Version
|
||||
verwendeten Distributionen noch nicht verfügbar).
|
||||
|
||||
Es gibt folgende Übergangslösung, um das Problem mit der _wcwidth_ zu umgehen:
|
||||
https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat[https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat ^↗^^].
|
||||
https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat
|
||||
|
||||
Siehe https://github.com/weechat/weechat/issues/79[bug report ^↗^^]
|
||||
für weitere Informationen.
|
||||
Siehe auch diese Fehlermeldung für weitere Informationen:
|
||||
https://github.com/weechat/weechat/issues/79
|
||||
|
||||
[[bars_background]]
|
||||
=== Weshalb haben Bars, z.B. Titel und Status, keine Hintergrundfarbe bzw. diese endet direkt nach dem Text?
|
||||
@@ -181,10 +199,17 @@ von einem oder mehreren Fenstern gleichzeitig angezeigt werden.
|
||||
[[buffers_list]]
|
||||
=== Wie kann ich eine Liste mit den Buffern z.B. auf der linken Seite anzeigen lassen?
|
||||
|
||||
Diese Erweiterung, link:weechat_user.de.html#buflist[buflist ^↗^^],
|
||||
wird standardmäßig geladen und aktiviert.
|
||||
Ab WeeChat ≥ 1.8 wird standardmäßig die link:weechat_user.de.html#buflist_plugin["buflist"-Erweiterung]
|
||||
automatisch geladen und verwendet.
|
||||
|
||||
Um die maximale Breite der buflist-Spalte zu reduzieren, nutze folgende Option:
|
||||
Bei älteren Versionen kann stattdessen das Skript _buffers.pl_ installiert werden:
|
||||
|
||||
----
|
||||
/script install buffers.pl
|
||||
----
|
||||
|
||||
Um die maximale Breite der buflist-Spalte zu reduzieren (ersetze "buflist" durch "buffers", wenn das
|
||||
Skript _buffers.pl_ genutzt wird), nutze folgende Option:
|
||||
|
||||
----
|
||||
/set weechat.bar.buflist.size_max 15
|
||||
@@ -204,6 +229,26 @@ kbd:[F1] oder kbd:[Ctrl+F1]) zum Hoch-Scrollen,
|
||||
kbd:[F2] oder kbd:[Ctrl+F2] zum Runter-Scrollen,
|
||||
kbd:[Alt+F1] und kbd:[Alt+F2] um an den Anfang bzw. an das Ende der Liste zu springen.
|
||||
|
||||
Wird das Skript _buffers.pl_ verwendet,
|
||||
müssen die entsprechenden Tasten selbst definiert werden.
|
||||
Sie sind dann vergleichbar mit den vorhanden Tasten für die Nicklist. +
|
||||
Um zum Beispiel folgende Tasten nutzen zu können:
|
||||
kbd:[F1], kbd:[F2] um zu scrollen,
|
||||
oder kbd:[Alt+F1] und kbd:[Alt+F2] um an den Anfang bzw. das Ende zu springen,
|
||||
finden folgende WeeChat-Befehle Anwendung:
|
||||
|
||||
----
|
||||
/key bind meta-OP /bar scroll buffers * -100%
|
||||
/key bind meta-OQ /bar scroll buffers * +100%
|
||||
/key bind meta-meta-OP /bar scroll buffers * b
|
||||
/key bind meta-meta-OQ /bar scroll buffers * e
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Die Tasten "meta-OP" und "meta-OQ" können im Hinblick auf das jeweils genutzte Terminal variieren.
|
||||
Um die korrekten Tasten zu finden, sollte man mit kbd:[Alt+k] die gewünschte Tastenkombination einfangen.
|
||||
Siehe auch: link:weechat_user.de.html#key_bindings_command_line[Benutzerhandbuch / Tastenbelegung].
|
||||
|
||||
[[customize_buflist]]
|
||||
=== Wie kann ich die Darstellung der Bufferliste anpassen, z.B. die Farbe des aktiven Buffers?
|
||||
|
||||
@@ -226,8 +271,8 @@ Es kann auch eine beliebige numerische Farbe anstelle von "Rot" verwendet werden
|
||||
|
||||
Die Buflist-Erweiterung bietet viele Optionen, zum individualisieren. Bitte lesen Sie dazu die Hilfe von jeder Option.
|
||||
|
||||
Es gibt zusätzlich die https://github.com/weechat/weechat/wiki/buflist[wiki page ^↗^^]
|
||||
mit Beispielen für die erweiterte buflist Konfiguration.
|
||||
Es gibt auch eine Wiki-Seite mit Beispielen, wie eine erweiterte Konfiguration aussehen kann:
|
||||
https://github.com/weechat/weechat/wiki/buflist
|
||||
|
||||
[[customize_prefix]]
|
||||
=== Wie kann ich die Länge eines Nicknamens begrenzen oder die Ausrichtung des Nicks im Chatbereich entfernen?
|
||||
@@ -273,8 +318,8 @@ Diese Farben können mit den Optionen __weechat.color.status_data_*__
|
||||
Weitere hotlist Eigenschaften können mit Hilfe der Optionen __weechat.look.hotlist_*__
|
||||
verändert werden.
|
||||
|
||||
Siehe link:weechat_user.de.html#screen_layout[Benutzerhandbuch / Screen layout ^↗^^]
|
||||
für weitere Informationen zur Hotlist.
|
||||
Siehe link:weechat_user.de.html#screen_layout[Benutzerhandbuch / Screen layout] für
|
||||
weitere Informationen zur Hotlist.
|
||||
|
||||
[[input_bar_size]]
|
||||
=== Wie kann man eine mehrzeilige Eingabezeile einstellen?
|
||||
@@ -323,8 +368,9 @@ sobald das Item "input_text" in keiner anderen Bar genutzt wird:
|
||||
[[terminal_copy_paste]]
|
||||
=== Wie kann ich einen Text kopieren und einfügen, ohne dass die Nickliste (Benutzerliste) mit kopiert wird?
|
||||
|
||||
Sie können den vereinfachten Anzeigemodus verwenden (Standardtaste: kbd:[Alt+l] (`L`)), dieser
|
||||
zeigt nur den Inhalt des aktuell ausgewählten Fensters an, ohne jegliche Formatierung.
|
||||
Seit WeeChat ≥ 1.0 gibt es den "einfachen Anzeigemodus".
|
||||
Dieser kann mit der Tastenkombination kbd:[Alt+l] (<l> wie in Lima) aktiviert werden.
|
||||
Der Inhalt des aktuellen Fensters wird nach der Aktivierung ohne Formatierung angezeigt.
|
||||
|
||||
Jetzt kannst Du die Block-Auswahl nutzen, insofern dein Terminal diesen Modus
|
||||
unterstützt (rxvt-unicode, konsole, gnome-terminal, ... um nur einige zu nennen ).
|
||||
@@ -341,7 +387,8 @@ die Benutzerliste am oberen oder unteren Rand des WeeChat-Bildschirmes zu positi
|
||||
[[urls]]
|
||||
=== Wie kann ich eine URL aufrufen, die einen Zeilenumbruch besitzt?
|
||||
|
||||
Dazu kann man den vereinfachten Anzeigemodus nutzen (Standardtaste: kbd:[Alt+l] (`L`)).
|
||||
Seit WeeChat ≥ 1.0 gibt es den "einfachen Anzeigemodus".
|
||||
Dieser kann mit der Tastenkombination kbd:[Alt+l] (<l> wie in Lima) aktiviert werden.
|
||||
|
||||
Um URLs einfacher zu öffnen, können alternativ folgende Optionen gesetzt werden:
|
||||
|
||||
@@ -351,7 +398,7 @@ Um URLs einfacher zu öffnen, können alternativ folgende Optionen gesetzt werde
|
||||
/set weechat.bar.nicklist.position top
|
||||
----
|
||||
|
||||
* Die Ausrichtung bei einem Zeilenumbruch innerhalb eines Wortes deaktivieren.
|
||||
* Die Ausrichtung bei einem Zeilenumbruch innerhalb eines Wortes deaktivieren (WeeChat ≥ 1.7).
|
||||
|
||||
----
|
||||
/set weechat.look.align_multiline_words off
|
||||
@@ -363,9 +410,9 @@ Um URLs einfacher zu öffnen, können alternativ folgende Optionen gesetzt werde
|
||||
/set weechat.look.align_end_of_lines time
|
||||
----
|
||||
|
||||
Es kann auch die "eat_newline_glitch" Option aktiviert werden,
|
||||
sodass kein neuer Zeilenumbruch hinzugefügt wird,
|
||||
am Ende jeder angezeigten Zeile (es wird die URL-Auswahl nicht unterbrechen):
|
||||
Ab der WeeChat Version ≥ 0.3.6, kann die Option "eat_newline_glitch" aktiviert werden.
|
||||
Damit wird das Zeichen für einen Zeilenumbruch nicht an die dargestellten Zeilen angefügt
|
||||
(dies führt dazu, dass URLs beim Markieren korrekt erkannt werden):
|
||||
|
||||
----
|
||||
/set weechat.look.eat_newline_glitch on
|
||||
@@ -394,7 +441,7 @@ Natürlich ist das möglich:
|
||||
[[timezone]]
|
||||
=== Wie kann ich die Zeitzone ändern?
|
||||
|
||||
Es gibt in WeeChat keine Option um die Zeitzone einzustellen. Die
|
||||
Es gibt in WeeChat keine Option um die Zeitzone einzustellen. Die
|
||||
Umgebungsvariable `TZ` muss auf einen entsprechenden Wert eingestellt werden.
|
||||
Am Besten machen Sie dies in Ihrer Shell-Initialisierungsdatei oder in der
|
||||
Befehlszeile, bevor Sie WeeChat starten:
|
||||
@@ -412,6 +459,8 @@ In WeeChat wird der neue Wert umgehend genutzt:
|
||||
[[use_256_colors]]
|
||||
=== Wie kann ich 256 Farben in WeeChat nutzen?
|
||||
|
||||
256 Farben werden ab der WeeChat Version ≥ 0.3.4 unterstützt.
|
||||
|
||||
Zuerst sollte überprüft werden, ob die _TERM_-Umgebungsvariable korrekt hinterlegt ist.
|
||||
Folgende Werte sind zu empfehlen:
|
||||
|
||||
@@ -432,18 +481,21 @@ term screen-256color
|
||||
|
||||
Falls die Umgebungsvariable _TERM_ einen falschen Wert haben sollte und WeeChat
|
||||
schon gestartet wurde, kann man die Umgebungsvariable mit folgenden WeeChat Befehlen
|
||||
anpassen:
|
||||
anpassen (WeeChat ≥ 1.0):
|
||||
|
||||
----
|
||||
/set env TERM screen-256color
|
||||
/upgrade
|
||||
----
|
||||
|
||||
Sie können eine beliebige Farbnummer in den Optionen verwenden (optional: Sie können Farbaliase,
|
||||
mit dem Befehl `/color`, erstellen.
|
||||
Mit der WeeChat Version 0.3.4 muss der Befehl `/color` genutzt werden, um neue Farben zu erstellen.
|
||||
|
||||
Bitte lese link:weechat_user.de.html#colors[Benutzerhandbuch / Farben ^↗^^]
|
||||
für weitere Informationen die das Farbmanagement betreffen.
|
||||
Ab Version ≥ 0.3.5 kann in den Optionen für eine zu nutzende Farbe die entsprechende
|
||||
Zahl der Farbe eingetragen werden (optional: mit dem Befehl `/color` kann man einen Alias für
|
||||
eine Farbe definieren).
|
||||
|
||||
Bitte lese link:weechat_user.de.html#colors[Benutzerhandbuch / Farben] für weitere
|
||||
Informationen die das Farbmanagement betreffen.
|
||||
|
||||
[[search_text]]
|
||||
=== Wie kann ich in einem Buffer nach einem Text suchen (vergleichbar /lastlog in irssi)?
|
||||
@@ -453,8 +505,8 @@ Die Standardtastenbelegung lautet kbd:[Ctrl+r]
|
||||
Um zu Highlight-Nachrichten zu springen:
|
||||
kbd:[Alt+p] für vorherige, kbd:[Alt+n] für die nächste Nachricht.
|
||||
|
||||
siehe link:weechat_user.de.html#key_bindings[Benutzerhandbuch / Standard Tastenbelegung ^↗^^]
|
||||
für weitere Informationen zu dieser Funktion.
|
||||
siehe link:weechat_user.de.html#key_bindings[Benutzerhandbuch / Standard Tastenbelegung] für weitere
|
||||
Informationen zu dieser Funktion.
|
||||
|
||||
[[terminal_focus]]
|
||||
=== Wie kann ich Befehle ausführen, wenn der Terminal (keinen) Fokus hat?
|
||||
@@ -481,15 +533,15 @@ Zusätzlich sollten noch zwei Tastenbefehle eingebunden werden
|
||||
(der Befehl `/print` sollte durch einen Befehl Ihrer Wahl ersetzt werden):
|
||||
|
||||
----
|
||||
/key bind meta-[I /print -core focus
|
||||
/key bind meta-[O /print -core unfocus
|
||||
/key bind meta2-I /print -core focus
|
||||
/key bind meta2-O /print -core unfocus
|
||||
----
|
||||
|
||||
Um zum Beispiel Buffer als gelesen zu markieren,
|
||||
wenn das Terminal den Fokus verlieren sollte:
|
||||
|
||||
----
|
||||
/key bind meta-[O /allbuf /buffer set unread
|
||||
/key bind meta2-O /input set_unread
|
||||
----
|
||||
|
||||
[[screen_paste]]
|
||||
@@ -507,10 +559,9 @@ Der bracketed paste Modus kann wie folgt deaktiviert werden:
|
||||
[[small_terminal]]
|
||||
=== Wie kann ich die Anzeige bei sehr kleinen Terminalgrößen (wie 80 x 25) optimieren, um keinen Platz zu verschwenden?
|
||||
|
||||
Die seitlichen Bars (buflist und nicklist) können deaktiviert werden, die Datums-
|
||||
anzeige sollte nur Stunden und Minuten darstellen, die Ausrichtung von Nach-
|
||||
richten sollte ebenfalls deaktiviert werden und es sollte der Nick mit einen
|
||||
Präfix und Suffix vesehen werden:
|
||||
Sie können die seitlichen Bars (Buflist und Nicklist) entfernen und das Zeitformat im Buffer anpassen,
|
||||
sodass nur Stunden und Sekunden angezeigt werden. Die Ausrichtung von Nachrichten sollte deaktiviert
|
||||
und der Präfix/Suffix für Nicks gesetzt werden:
|
||||
|
||||
----
|
||||
/set buflist.look.enabled off
|
||||
@@ -613,30 +664,6 @@ Sollte die macOS Terminal Applikation genutzt werden, empfiehlt es sich,
|
||||
die Option "Use option as meta key" in den Menü-Einstellungen zu aktivieren.
|
||||
Dadurch kann man die kbd:[Option] Taste als Meta-Taste verwenden.
|
||||
|
||||
[[enter_key]]
|
||||
=== Einige Tasten, einschließlich Enter, funktionieren nicht. Weshalb?
|
||||
|
||||
Wenn eine WeeChat Version < 4.0.0 mit Konfigurationsdateien ausgeführt wird,
|
||||
die von einer Weechat Version ≥ 4.0.0 erstellt wurde, sind die Tastennamen ungültig und viele Tasten funktionieren überhaupt nicht mehr. +
|
||||
Um dies zu reparieren, muss WeeChat beendet und alle Einträge aus dem Abschnitt `[key*]` innerhalb der weechat.conf entfernt werden.
|
||||
Wenn WeeChat erneut gestartet wird, wird die Standardtastenbelegung neu erstellt.
|
||||
|
||||
[[key_f11]]
|
||||
=== Die Taste F11 maximiert das Terminalfenster. Wie kann ich aber in der Nicklist nach oben scrollen?
|
||||
|
||||
Die kbd:[F11] Taste wird häufig von Terminals verwendet, um das Fenster zu maximieren. Aber
|
||||
kbd:[F11]/kbd:[F12] sind ebenso die Standardtasten, in WeeChat, um in der Nickliste zu scrollen.
|
||||
|
||||
Man kann andere Tasten nutzen, zum Beispiel kbd:[Shift+F11] und kbd:[Shift+F12],
|
||||
mit WeeChat ≥ 4.0.0:
|
||||
|
||||
----
|
||||
/key bind shift-f11 /bar scroll nicklist * -100%
|
||||
/key bind shift-f12 /bar scroll nicklist * +100%
|
||||
----
|
||||
|
||||
Eine andere Möglichkeit besteht darin, die Maus zu aktivieren (Taste: kbd:[Alt+m]) und mit dem Mausrad zu scrollen (siehe auch Fragen zu <<mouse,mouse>>).
|
||||
|
||||
[[customize_key_bindings]]
|
||||
=== Wie kann ich die Tastaturbelegung anpassen?
|
||||
|
||||
@@ -658,7 +685,7 @@ Es kann auch eine neue Taste eingebunden werden um zu einem Buffer zu wechseln:
|
||||
----
|
||||
|
||||
Eine Auflistung der Standardtastenbelegung findet man in
|
||||
link:weechat_user.de.html#key_bindings[Benutzerhandbuch / Standard Tastenbelegung ^↗^^].
|
||||
link:weechat_user.de.html#key_bindings[Benutzerhandbuch / Standard Tastenbelegung].
|
||||
|
||||
Um zu Buffern zu wechseln die an Position ≥ 100 sind kann ein Trigger definiert
|
||||
werden um dann z.B. mit einem Kurzbefehl `/123` zum Buffer #123 zu springen:
|
||||
@@ -667,12 +694,6 @@ werden um dann z.B. mit einem Kurzbefehl `/123` zum Buffer #123 zu springen:
|
||||
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
|
||||
----
|
||||
|
||||
Um einfach von einem Buffer zu einem anderen zu springen, kann man das _go.py_ Skript installieren:
|
||||
|
||||
----
|
||||
/script install go.py
|
||||
----
|
||||
|
||||
[[global_history]]
|
||||
=== Wie kann ich den globalen Verlaufsspeicher (anstelle des Buffer eigenen) mit den Up-/Down-Tasten nutzen?
|
||||
|
||||
@@ -681,25 +702,23 @@ genutzt: kbd:[Ctrl+↑] und kbd:[Ctrl+↓]).
|
||||
|
||||
Beispiele:
|
||||
|
||||
----
|
||||
/key bind up /input history_global_previous
|
||||
/key bind down /input history_global_next
|
||||
----
|
||||
|
||||
Ab WeeChat ≤ 3.8 muß der rohe Schlüsselwert verwenden werden (drücken Sie kbd:[Alt+k] und dann die
|
||||
entsprechende Taste um den Wert anzuzeigen):
|
||||
|
||||
----
|
||||
/key bind meta2-A /input history_global_previous
|
||||
/key bind meta2-B /input history_global_next
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Die Tasten "meta2-A" und "meta2-B" können im Hinblick auf das jeweils genutzte Terminal variieren.
|
||||
Um die korrekten Tasten zu finden, sollte man mit kbd:[Alt+k] die gewünschte Tastenkombination einfangen.
|
||||
|
||||
[[mouse]]
|
||||
== Mausunterstützung
|
||||
|
||||
[[mouse_not_working]]
|
||||
=== Die Mausunterstützung funktioniert nicht, was kann ich tun?
|
||||
|
||||
Eine Unterstützung von Mausfunktionen ist seit WeeChat ≥ 0.3.6 verfügbar.
|
||||
|
||||
Als erstes sollte man die Mausunterstützung einschalten:
|
||||
|
||||
----
|
||||
@@ -750,28 +769,34 @@ anstelle der kbd:[Shift]-Taste gedrückt werden).
|
||||
[[irc]]
|
||||
== IRC
|
||||
|
||||
[[irc_tls_connection]]
|
||||
=== Es treten Probleme bei einer Serververbindung mittels TLS auf. Was kann ich tun?
|
||||
[[irc_ssl_connection]]
|
||||
=== Es treten Probleme bei einer Serververbindung mittels SSL auf. Was kann ich tun?
|
||||
|
||||
Falls macOS genutzt wird,
|
||||
muss mittels Homebrew `openssl` installiert werden.
|
||||
Eine CA-Datei wird mittels Zertifikaten vom Systemschlüssel geladen.
|
||||
|
||||
Ab WeeChat ≤ 3.1 können Sie den Pfad zu Systemzertifikaten festlegen:
|
||||
|
||||
----
|
||||
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
|
||||
----
|
||||
|
||||
Falls Fehlermeldungen auftreten, die besagen,
|
||||
dass der gnutls Handshake fehlgeschlagen ist,
|
||||
sollte ein kleinerer Diffie-Hellman-Schlüssel verwendet werden (Standardgröße: 2048):
|
||||
|
||||
----
|
||||
/set irc.server.example.tls_dhkey_size 1024
|
||||
/set irc.server.example.ssl_dhkey_size 1024
|
||||
----
|
||||
|
||||
Falls Fehlermeldungen auftreten, die besagen,
|
||||
dass das Zertifikat ungültig ist,
|
||||
dann kann die "tls_verify" Überprüfung deaktiviert werden
|
||||
dann kann die "ssl_verify" Überprüfung deaktiviert werden
|
||||
(die Verbindung ist in diesem Fall weniger sicher):
|
||||
|
||||
----
|
||||
/set irc.server.example.tls_verify off
|
||||
/set irc.server.example.ssl_verify off
|
||||
----
|
||||
|
||||
Sollte das Zertifikat für den Server (laut CA) ungültig sein,
|
||||
@@ -780,30 +805,45 @@ dann kann (ersatzweise) der Fingerabdruck (SHA-512, SHA-256 or SHA-1)
|
||||
des Zertifikats von Hand eingetragen werden:
|
||||
|
||||
----
|
||||
/set irc.server.example.tls_fingerprint 0c06e399d3c3597511dc8550848bfd2a502f0ce19883b728b73f6b7e8604243b
|
||||
/set irc.server.example.ssl_fingerprint 0c06e399d3c3597511dc8550848bfd2a502f0ce19883b728b73f6b7e8604243b
|
||||
----
|
||||
|
||||
[[irc_tls_handshake_error]]
|
||||
=== Bei einem Verbindungsaufbau zum Server via TLS erhalte ich "TLS Handshake fehlgeschlagen". Wie kann ich das beheben?
|
||||
[[irc_ssl_handshake_error]]
|
||||
=== Bei einem Verbindungsaufbau zum Server via SSL erhalte ich "TLS Handshake fehlgeschlagen". Wie kann ich das beheben?
|
||||
|
||||
Man sollte versuchen, eine andere Priorität zu nutzen; Im folgenden Beispiel
|
||||
muss "xxx" durch den betroffenen Servernamen ersetzt werden:
|
||||
Man sollte versuchen, eine andere Priorität zu nutzen (nur WeeChat ≥ 0.3.5);
|
||||
Im folgenden Beispiel muss "xxx" durch den betroffenen Servernamen ersetzt werden:
|
||||
|
||||
----
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
/set irc.server.xxx.ssl_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_tls_libera]]
|
||||
=== Wie kann ich eine TLS gesicherte Verbindung zum libera Server herstellen?
|
||||
[[irc_ssl_libera]]
|
||||
=== Wie kann ich eine SSL gesicherte Verbindung zum libera Server herstellen?
|
||||
|
||||
Überprüfen Sie, ob auf Ihrem System Zertifikate installiert sind. Dies wird häufig
|
||||
durch das Paket "ca-certificates" bereitgestellt.
|
||||
Ab WeeChat ≤ 3.1 kann mit der Option _weechat.network.gnutls_ca_file_ eine Datei mit
|
||||
Zertifikaten ausgewählt werden:
|
||||
|
||||
Konfiguration des Servers, Port angeben, TLS aktivieren und Verbindung herstellen:
|
||||
----
|
||||
/set weechat.network.gnutls_ca_file "/etc/ssl/certs/ca-certificates.crt"
|
||||
----
|
||||
|
||||
Wenn openssl mit homebrew unter macOS installiert wurde, könnte es sein,
|
||||
dass die Zertifikate in einer anderen Datei bereitgestellt werden:
|
||||
|
||||
----
|
||||
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Überprüfe, ob die Zertifikationsdatei auf deinem System installiert wurde.
|
||||
Üblicherweise wird diese Datei durch das Paket "ca-certificates" bereitgestellt.
|
||||
|
||||
Konfiguration des Servers, Port angeben, SSL aktivieren und Verbindung herstellen:
|
||||
|
||||
----
|
||||
/set irc.server.libera.addresses "irc.libera.chat/6697"
|
||||
/set irc.server.libera.tls on
|
||||
/set irc.server.libera.ssl on
|
||||
/connect libera
|
||||
----
|
||||
|
||||
@@ -824,7 +864,7 @@ ersetzt werden:
|
||||
----
|
||||
|
||||
[[irc_sasl]]
|
||||
=== Wie kann ich mich vor dem Betreten von Kanälen identifizieren?
|
||||
=== Wie kann ich mich vor dem Betreten von Channels identifizieren?
|
||||
|
||||
Sollte der Server SASL unterstützen,
|
||||
ist es ratsam auf diese Funktion zurückzugreifen
|
||||
@@ -837,44 +877,37 @@ und sich nicht mittels "nickserv" zu authentifizieren:
|
||||
|
||||
Unterstützt der Server keine SASL Authentifizierung,
|
||||
kann eine Verzögerung aktiviert werden,
|
||||
um sich vor dem Betreten von Kanälen bei "nickserv" zu identifizieren:
|
||||
um sich vor dem Betreten von Channels bei "nickserv" zu identifizieren:
|
||||
|
||||
----
|
||||
/set irc.server.libera.command_delay 5
|
||||
----
|
||||
|
||||
[[edit_autojoin]]
|
||||
=== Wie kann ich Kanäle zur autojoin Option hinzufügen oder entfernen?
|
||||
=== Wie kann ich Channels zur autojoin Option entfernen/hinzufügen?
|
||||
|
||||
Ab WeeChat ≥ 3.5 können Sie die Kanäle, denen Sie manuell betreten und verlassen,
|
||||
automatisch aufzeichnen und die Serveroption „autojoin“ entsprechend anpassen.
|
||||
|
||||
Für alle Server:
|
||||
Um die Liste der autojoin Channels zu editieren,
|
||||
kann der Befehl `/set` genutzt werden.
|
||||
In folgendem Beispiel wird der "libera"-Server angepasst:
|
||||
|
||||
----
|
||||
/set irc.server_default.autojoin_dynamic on
|
||||
/set irc.server.libera.autojoin [TAB]
|
||||
----
|
||||
|
||||
Für einen einzelnen Server:
|
||||
[NOTE]
|
||||
Man kann den Namen oder den Wert einer Option mit kbd:[Tab] vervollständigen
|
||||
oder mittels kbd:[Shift+Tab] eine teilweise Vervollständigung durchführen,
|
||||
was bei Namen sinnvoll ist, denn so braucht nicht die komplette Liste
|
||||
der Channels neu geschrieben werden.
|
||||
|
||||
Es kann auch der `/fset` Befehl verwendet werden, um die Liste der Channels
|
||||
zu editieren:
|
||||
|
||||
----
|
||||
/set irc.server.libera.autojoin_dynamic on
|
||||
/fset autojoin
|
||||
----
|
||||
|
||||
Sie können den aktuellen Kanal auch in der Serveroption "autojoin" hinzufügen, indem
|
||||
Sie den `/autojoin`-Befehl nutzen:
|
||||
|
||||
----
|
||||
/autojoin add
|
||||
----
|
||||
|
||||
oder einen beliebigen Kanal:
|
||||
|
||||
----
|
||||
/autojoin add #test
|
||||
----
|
||||
|
||||
Es existieren aber auch Skripten:
|
||||
oder man nutzt ein Skript:
|
||||
|
||||
----
|
||||
/script search autojoin
|
||||
@@ -884,9 +917,9 @@ Es existieren aber auch Skripten:
|
||||
=== Was ist der Unterschied zwischen dem Befehl /ignore und /filter?
|
||||
|
||||
Der Befehl `/ignore` ist ein (clientseitiger) IRC-Befehl und beeinflusst direkt,
|
||||
welche vom Server empfangenen Nachrichten im IRC-Buffer (Server und Kanäle) landen.
|
||||
welche vom Server empfangenen Nachrichten im IRC-Buffer (Server und Channel) landen.
|
||||
Durch diesen Befehl können bestimmte Nicks oder Hostnamen von bestimmten Servern
|
||||
oder Kanäle ignoriert werden.
|
||||
oder Channels ignoriert werden.
|
||||
Der Befehl wird nicht auf den Inhalt eines IRC-Buffers angewandt.
|
||||
Zutreffende Meldungen werden, bevor sie dem Buffer zugeführt werden,
|
||||
von der "irc"-Erweiterung gelöscht. Es gibt somit keine Möglichkeit,
|
||||
@@ -907,20 +940,39 @@ Die voreingestellte Tastenkombination zum Aktivieren bzw. Deaktivieren
|
||||
aller Filter ist kbd:[Alt+-].
|
||||
|
||||
[[filter_irc_join_part_quit]]
|
||||
=== Wie kann ich join/part/quit und andere unerwünschte Nachrichten in IRC-Kanälen filtern?
|
||||
=== Wie kann ich join/part/quit Meldungen in den IRC Channels filtern/unterdrücken?
|
||||
|
||||
siehe link:weechat_user.de.html#irc_smart_filter[User's guide / IRC smart filter ^↗^^].
|
||||
Zum einen mit dem Smart-Filter.
|
||||
Bei dessen Anwendung werden join/part/quit-Meldungen von Usern angezeigt,
|
||||
die kürzlich noch etwas geschrieben haben:
|
||||
|
||||
----
|
||||
/set irc.look.smart_filter on
|
||||
/filter add irc_smart * irc_smart_filter *
|
||||
----
|
||||
|
||||
Es besteht auch die Möglichkeit einer globalen Filterung.
|
||||
Dabei werden *alle* join/part/quit Nachrichten unterdrückt:
|
||||
|
||||
----
|
||||
/filter add joinquit * irc_join,irc_part,irc_quit *
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Für weitere Hilfe: `/help filter`, `+/help irc.look.smart_filter+` und
|
||||
link:weechat_user.de.html#irc_smart_filter_join_part_quit[Benutzerhandbuch / einfacher Filter für join/part/quit Nachrichten].
|
||||
|
||||
[[filter_irc_join_channel_messages]]
|
||||
=== Wie kann ich die Server-Nachrichten filtern, wenn ich einen IRC Kanal betrete?
|
||||
=== Wie kann ich Server-Nachrichten filtern, wenn ich einen IRC Channel betrete?
|
||||
|
||||
Sie können auswählen, welche Nachrichten angezeigt werden, wenn Sie einem Kanal beitreten
|
||||
Option _irc.look.display_join_message_ (siehe `+/help irc.look.display_join_message+`
|
||||
Für mehr Information).
|
||||
Ab WeeChat ≥ 0.4.1 kann man auswählen, welche Server-Nachrichten beim Betreten
|
||||
eines Channels angezeigt und welche verborgen werden sollen. Dazu nutzt man
|
||||
die Option _irc.look.display_join_message_ (für weitere Informationen, siehe
|
||||
`+/help irc.look.display_join_message+`).
|
||||
|
||||
Um Nachrichten visuell zu verbergen, können diese gefiltert werden.
|
||||
Dazu wird der Befehl `/filter` auf bestimmte Nachrichten-Tags angewandt.
|
||||
Das Tag _irc_329_ kennzeichnet beispielsweise das Erstellungsdatum des Kanals.
|
||||
Das Tag _irc_329_ kennzeichnet beispielsweise das Erstellungsdatum des Channels.
|
||||
Siehe `/help filter`, um weitere Informationen über die Filterfunktion zu
|
||||
erhalten.
|
||||
|
||||
@@ -935,13 +987,13 @@ da diese dazu genutzt werden um den Abwesenheitsstatus anderer User anzuzeigen
|
||||
und man nicht von diesen Mitteilungen überflutet werden möchte,
|
||||
kann man WeeChat anweisen, abwesende Nicks in einer anderen Farbe darzustellen.
|
||||
|
||||
Nutzt man Bitlbee ≥ 3, sollte man im _&bitlbee_ Kanal folgendes eingeben:
|
||||
Nutzt man Bitlbee ≥ 3, sollte man im _&bitlbee_ Channel folgendes eingeben:
|
||||
|
||||
----
|
||||
channel set show_users online,away
|
||||
----
|
||||
|
||||
für ältere Versionen von Bitlbee gibt man im _&bitlbee_ Kanal ein:
|
||||
für ältere Versionen von Bitlbee gibt man im _&bitlbee_ Channel ein:
|
||||
|
||||
----
|
||||
set away_devoice false
|
||||
@@ -967,12 +1019,12 @@ in welchem Zeitintervall die Überprüfungen auf Abwesenheit stattfinden sollen.
|
||||
Die Angabe des Wertes erfolgt in Minuten.
|
||||
|
||||
Mit der Option _irc.server_default.away_check_max_nicks_ kann festgelegt werden,
|
||||
in welchen Kanälen eine Überprüfung stattfinden soll.
|
||||
Hierbei stellt der angegebene Wert die maximale Anzahl an Nicks in einem Kanal dar,
|
||||
die den Kanal gleichzeitig besuchen dürfen.
|
||||
in welchen Channels eine Überprüfung stattfinden soll.
|
||||
Hierbei stellt der angegebene Wert die maximale Anzahl an Nicks in einem Channel dar,
|
||||
die den Channel gleichzeitig besuchen dürfen.
|
||||
|
||||
Im folgenden Beispiel wird der Abwesenheitsstatus alle fünf Minuten überprüft.
|
||||
Dabei werden aber nur solche Kanäle berücksichtigt, die nicht mehr als 25
|
||||
Dabei werden aber nur solche Channels berücksichtigt, die nicht mehr als 25
|
||||
Teilnehmer haben:
|
||||
|
||||
----
|
||||
@@ -980,13 +1032,18 @@ Teilnehmer haben:
|
||||
/set irc.server_default.away_check_max_nicks 25
|
||||
----
|
||||
|
||||
[[highlight_notification]]
|
||||
=== Wie kann ich mich benachrichtigen lassen, falls mich jemand in einem Kanal direkt anspricht (highlight)?
|
||||
[NOTE]
|
||||
Für WeeChat ≤ 0.3.3, lauten die Optionen _irc.network.away_check_ und
|
||||
_irc.network.away_check_max_nicks_.
|
||||
|
||||
Es gibt einen voreingestellten Trigger mit Namen „beep“, der ein _BEL_ an das Terminal sendet,
|
||||
bei einem Highlight oder einer private Nachricht. Damit können Sie Ihr Terminal konfigurieren
|
||||
(oder einen Multiplexer wie screen/tmux), um einen Befehl auszuführen oder einen Ton abzuspielen, wenn
|
||||
ein _BEL_ tritt auf.
|
||||
[[highlight_notification]]
|
||||
=== Wie kann ich mich benachrichtigen lassen, falls mich jemand in einem Channel direkt anspricht (highlight)?
|
||||
|
||||
Seit WeeChat ≥ 1.0 gibt es standardmäßig den Trigger "beep",
|
||||
der an das Terminal ein _BEL_ Signal schickt,
|
||||
sobald man eine highlight (hervorgehobene) oder private Nachricht erhält.
|
||||
Nun muss man lediglich im Terminalprogramm oder dem Multiplexer (screen/tmux) einstellen,
|
||||
welcher Befehl ausgeführt werden soll, sobald das Terminal das _BEL_ Signal erhält.
|
||||
|
||||
Der Trigger "beep" kann auch direkt an einen externen Befehl gekoppelt werden:
|
||||
|
||||
@@ -1012,29 +1069,47 @@ Es gibt weitere Skripten, die auch zu diesem Thema passen:
|
||||
[[disable_highlights_for_specific_nicks]]
|
||||
=== Wie kann ich Highlights (Hervorhebungen) von bestimmten Nicks deaktivieren?
|
||||
|
||||
Dafür sollte link:weechat_user.de.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^↗^^]
|
||||
die Buffer-Eigenschaft genutzt werden, um das maximale Hotlist-Level für einige Nicks pro Puffer festzulegen,
|
||||
oder pro Gruppe von Buffern (wie IRC-Server).
|
||||
Ab WeeChat ≥ 0.3.4 kann die Eigenschaft
|
||||
link:weechat_user.de.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add]
|
||||
für den entsprechenden Buffer gesetzt werden.
|
||||
Dies kann für einzelne Nicks,
|
||||
einen Buffer oder eine Gruppe von Buffern (z.B. IRC Server) gelten.
|
||||
|
||||
Um nun Highlights (Hervorhebungen) für bestimmte Nicks zu deaktivieren, muss
|
||||
man die entsprechende Eigenschaft auf 2 setzen.
|
||||
|
||||
Für den aktuellen Buffer:
|
||||
----
|
||||
/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2
|
||||
----
|
||||
|
||||
Für alle Kanäle auf dem Server "libera":
|
||||
man die entsprechende Eigenschaft auf 2 setzen:
|
||||
|
||||
----
|
||||
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2
|
||||
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
|
||||
----
|
||||
|
||||
Diese Buffereigenschaft wird aber nicht permanent in der Konfiguration
|
||||
gespeichert. Um diese Eigenschaften permanent zu verwenden, muss man
|
||||
das Skript _buffer_autoset.py_ nutzen:
|
||||
|
||||
----
|
||||
/script install buffer_autoset.py
|
||||
----
|
||||
|
||||
Um zum Beispiel Highlights (Hervorhebungen) von Nick "mike" im Channel
|
||||
#weechat auf dem IRC Server libera zu deaktivieren:
|
||||
|
||||
----
|
||||
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
|
||||
----
|
||||
|
||||
Um dies auf den kompletten libera Server anzuwenden:
|
||||
|
||||
----
|
||||
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
|
||||
----
|
||||
|
||||
Für weitere Beispiele, siehe `+/help buffer_autoset+`.
|
||||
|
||||
[[irc_target_buffer]]
|
||||
=== Wie kann ich bei zusammengefügten Buffern den Zielbuffer ändern (z.B. bei einem Server-Buffer)?
|
||||
|
||||
Die Standardtastenkombination ist kbd:[Ctrl+x]. Der entsprechende Befehl lautet:
|
||||
`+/buffer switch+`.
|
||||
`+/input switch_active_buffer+`.
|
||||
|
||||
[[plugins_scripts]]
|
||||
== Erweiterungen / Skripten
|
||||
@@ -1054,15 +1129,16 @@ Um dies zu beheben, muss folgendes konfiguriert werden:
|
||||
[[install_scripts]]
|
||||
=== Wie kann ich Skripten installieren? Sind Skripten kompatibel mit anderen IRC Clients?
|
||||
|
||||
Mit dem Befehl `/script` können Sie Skripte installieren und verwalten (siehe `/help script`
|
||||
für Hilfe).
|
||||
Seit WeeChat ≥ 0.3.9 gibt es den Befehl `/script` um Skripten zu installieren und zu verwalten
|
||||
(siehe `/help script` um eine Hilfe zu erhalten). Nutzt man eine ältere Version von WeeChat
|
||||
kann man die Skripten weeget.py und script.pl nutzen.
|
||||
|
||||
Die Skripten für WeeChat sind mit anderen IRC-Clients nicht kompatibel und vice versa.
|
||||
|
||||
[[scripts_update]]
|
||||
=== Der Befehl "/script update" liest die Skriptliste nicht ein, wie kann ich das beheben?
|
||||
|
||||
Als erstes sollte das Kapitel über TLS Verbindungen in dieser FAQ gelesen werden.
|
||||
Als erstes sollte das Kapitel über SSL Verbindungen in dieser FAQ gelesen werden.
|
||||
|
||||
Wenn das nicht hilft, sollte die Skriptliste von Hand gelöscht werden. Dazu
|
||||
folgenden Befehl in der Shell ausführen:
|
||||
@@ -1072,7 +1148,7 @@ $ rm ~/.cache/weechat/script/plugins.xml.gz
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Wenn Sie die XDG-Verzeichnisse nicht verwenden, könnte der Pfad lauten: _~/.weechat/script/plugins.xml.gz_.
|
||||
Ab WeeChat ≤ 3.1, sollte der Pfad: _~/.weechat/script/plugins.xml.gz_ lauten.
|
||||
|
||||
Danach sollte man noch einmal versuchen die Datei herunter zu laden:
|
||||
|
||||
@@ -1097,14 +1173,6 @@ $ cd ~/.cache/weechat/script
|
||||
$ curl -O https://weechat.org/files/plugins.xml.gz
|
||||
----
|
||||
|
||||
Wenn Sie macOS ausführen und die heruntergeladene Datei eine Größe von 0 Byte hat,
|
||||
versuchen Sie, diese Variable in Ihrer Shell-Initialisierungsdatei oder auf der
|
||||
Befehlszeile zu setzen. Bevor Sie WeeChat starten:
|
||||
|
||||
----
|
||||
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
|
||||
----
|
||||
|
||||
[[spell_dictionaries]]
|
||||
=== Ich habe aspell Wörterbücher auf mein System installiert. Wie kann ich diese nutzen, ohne WeeChat neu starten zu müssen?
|
||||
|
||||
@@ -1114,6 +1182,10 @@ Du brauchst lediglich die "spell"-Erweiterung neu zu laden:
|
||||
/plugin reload spell
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Bis WeeChat ≤ 2.4, hieß die "spell"-Erweiterung, "aspell". Somit lautet der Befehl:
|
||||
`/plugin reload aspell`.
|
||||
|
||||
[[settings]]
|
||||
== Einstellungen
|
||||
|
||||
@@ -1149,7 +1221,7 @@ Damit WeeChat weniger Speicher benötigt, solltest Du folgende Tipps umsetzen:
|
||||
Fifo, Logger, Perl, Python, Ruby, Lua, Tcl, Guile, JavaScript, PHP, Spell, Xfer
|
||||
(wird für DCC benötigst), siehe `/help weechat.plugin.autoload`.
|
||||
* installiere ausschließlich Skripten die Du auch nutzt
|
||||
* Laden Sie keine Systemzertifikate, wenn TLS *NICHT* verwendet wird: Deaktivieren Sie diese Option:
|
||||
* Laden Sie keine Systemzertifikate, wenn SSL *NICHT* verwendet wird: Deaktivieren Sie diese Option:
|
||||
_weechat.network.gnutls_ca_system_.
|
||||
* der Wert der Option _weechat.history.max_buffer_lines_number_ sollte möglichst
|
||||
niedrig eingestellt werden oder die Option _weechat.history.max_buffer_lines_minutes_
|
||||
@@ -1162,8 +1234,7 @@ Damit WeeChat weniger Speicher benötigt, solltest Du folgende Tipps umsetzen:
|
||||
Man sollte sich die Tipps zum <<memory_usage,Speicherverbrauch>> ansehen
|
||||
und zusätzlich diese Tipps beherzigen:
|
||||
|
||||
* "nicklist"-Bar sollte versteckt werden: `/bar hide nicklist` (Taste: kbd:[Alt+Shift+N]).
|
||||
* deaktiviere "buflist": `/buflist disable` (Taste: kbd:[Alt+Shift+B]).
|
||||
* "nicklist"-Bar sollte versteckt werden: `/bar hide nicklist`
|
||||
* die Sekundenanzeigen in der Statusbar sollte deaktiviert werden:
|
||||
`+/set weechat.look.item_time_format "%H:%M"+` (dies ist die Standardeinstellung)
|
||||
* die Echtzeit Rechtschreibkorrektur sollte deaktiviert werden (falls sie aktiviert wurde):
|
||||
@@ -1185,19 +1256,14 @@ Deaktiviere die automatische Antwort für alle CTCP Anfragen:
|
||||
|
||||
----
|
||||
/set irc.ctcp.clientinfo ""
|
||||
/set irc.ctcp.finger ""
|
||||
/set irc.ctcp.source ""
|
||||
/set irc.ctcp.time ""
|
||||
/set irc.ctcp.userinfo ""
|
||||
/set irc.ctcp.version ""
|
||||
/set irc.ctcp.ping ""
|
||||
----
|
||||
|
||||
Mit WeeChat < 4.1.0 wurden andere CTCP-Anfragen standardmäßig beantwortet und müssen ebenfalls deaktiviert werden:
|
||||
|
||||
----
|
||||
/set irc.ctcp.finger ""
|
||||
/set irc.ctcp.userinfo ""
|
||||
----
|
||||
|
||||
Entferne und deaktiviere das automatische Ausführen der "xfer"-Erweiterung, die beispielsweise für "IRC DCC" verantwortlich ist:
|
||||
|
||||
----
|
||||
@@ -1209,7 +1275,7 @@ Definiere eine Passphrase und nutze ausschließlich geschützte Daten wann immer
|
||||
es möglich ist, wie z.B. bei Passwörtern: siehe `/help secure` und nutze `/help`
|
||||
bei der entsprechenden Option (falls man geschützte Daten nutzen kann, wird es
|
||||
im Hilfstext erwähnt).
|
||||
Siehe auch link:weechat_user.de.html#secured_data[Benutzerhandbuch / sensible Daten ^↗^^].
|
||||
Siehe auch link:weechat_user.de.html#secured_data[Benutzerhandbuch / sensible Daten].
|
||||
|
||||
Beispiel:
|
||||
|
||||
@@ -1230,42 +1296,16 @@ Ihrer Passphrase verschlüsselten Kennwörter enthält.
|
||||
Einige andere Dateien enthalten möglicherweise vertrauliche Informationen wie
|
||||
Kennwörter (sofern sie nicht mit dem Befehl `/secure` in _sec.conf_ gesichert werden).
|
||||
|
||||
Siehe link:weechat_user.de.html#files_and_directories[Benutzerhandbuch / Dateien und Verzeichnisse ^↗^^]
|
||||
Siehe link:weechat_user.de.html#files_and_directories[Benutzerhandbuch / Dateien und Verzeichnisse]
|
||||
für weitere Informationen über Konfigurationsdateien.
|
||||
|
||||
[[move_to_another_device]]
|
||||
=== Ich möchte mein WeeChat auf ein anderes Gerät verschieben und meine Konfiguration behalten. Was muss ich kopieren?
|
||||
|
||||
Überprüfen Sie zunächst die von WeeChat verwendeten Verzeichnisse mit diesem Befehl: `/debug dirs`. +
|
||||
Die Verzeichnisse home/config und home/data müssen kopiert werden (alle Dateien und Unterverzeichnisse).
|
||||
|
||||
Falls beispielsweise XDG-Verzeichnisse verwendet werden (Standard bei WeeChat ≥ 3.2), sollten die
|
||||
Verzeichnisse `$HOME/.config/weechat` und `$HOME/.local/share/weechat` lauten. +
|
||||
Sollte ein einzelnes Verzeichnis verwenden werden (Standard bei WeeChat < 3.2), sollte das Verzeichnis
|
||||
`$HOME/.weechat` lauuten.
|
||||
|
||||
[IMPORTANT]
|
||||
Die WeeChat-Version auf dem Zielgerät muss größer oder gleich der Version sein des Ausganggerätes. +
|
||||
Ein Downgrade der WeeChat-Konfiguration wird *NICHT UNTERSTÜTZT* und kann zu Schäden führen und ein
|
||||
unbrauchbares WeeChat verursachen.
|
||||
|
||||
Schritte:
|
||||
|
||||
. Weechat beenden: `/quit` (oder `/upgrade -quit`, falls eine Sitzung fortgesetzt werden soll,
|
||||
einschließlich des Inhalts aller Buffer).
|
||||
. Kopieren Sie alle Verzeichnisse, Unterverzeichnisse und Dateien auf das neue Gerät und behalten Sie die
|
||||
Namen und Berechtigungen bei.
|
||||
. Optional: Kopieren Sie alle Dateien außerhalb dieser Verzeichnisse, die auf Ihre Konfiguration verweisen
|
||||
(es wird nicht empfohlen, Dateien außerhalb von WeeChat-Verzeichnissen zu verwenden).
|
||||
. WeeChat auf dem neuen Gerät starten: `weechat` (oder `weechat --upgrade`, falls die Sitzung gesichert wurde).
|
||||
|
||||
[[development]]
|
||||
== Entwicklung
|
||||
|
||||
[[bug_task_patch]]
|
||||
=== Was kann ich machen, falls ich einen Fehler gefunden habe, mich nach neuen Funktionen erkundigen oder Patches einsenden möchte?
|
||||
|
||||
siehe https://weechat.org/about/support/[this page ^↗^^].
|
||||
siehe: https://weechat.org/about/support
|
||||
|
||||
[[gdb_error_threads]]
|
||||
=== Wenn man WeeChat in gdb startet, kann ein Thread-Fehler auftreten. Was beudeutet das?
|
||||
@@ -1303,11 +1343,11 @@ Das Gleiche gilt für Systeme, zu denen wir keinen Zugang haben.
|
||||
|
||||
Es gibt einiges zu tun - z.B. testen, programmieren, dokumentieren, ...
|
||||
|
||||
Bitte kontaktieren Sie uns per IRC oder Mail, siehe
|
||||
https://weechat.org/about/support/[support page ^↗^^].
|
||||
Bitte kontaktiere uns via IRC oder E-Mail, wirf einen Blick auf die Support-Seite:
|
||||
https://weechat.org/about/support
|
||||
|
||||
[[donate]]
|
||||
=== Kann ich Geld oder anderes an die WeeChat Entwickler spenden?
|
||||
|
||||
Sie können uns Geld spenden, um die Entwicklung zu unterstützen.
|
||||
Details dazu, unter https://weechat.org/donate/[donation page ^↗^^].
|
||||
Du kannst uns Geld zur Unterstützung der weiteren Entwicklung spenden.
|
||||
Details hierzu gibt es auf: https://weechat.org/donate
|
||||
|
||||
@@ -2,7 +2,11 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: de
|
||||
:toc: left
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
:sectnums:
|
||||
:docinfo1:
|
||||
|
||||
|
||||
Übersetzer:
|
||||
|
||||
@@ -10,6 +14,7 @@
|
||||
* Juergen Descher <jhdl@gmx.net>, 2009
|
||||
* Nils Görs <weechatter@arcor.de>, 2009-2018
|
||||
|
||||
|
||||
[[start]]
|
||||
== Start von WeeChat
|
||||
|
||||
@@ -118,7 +123,7 @@ Um eine Verbindung zu einem IRC Server herzustellen, wird der
|
||||
`/server` Befehl verwendet. Beispiel:
|
||||
|
||||
----
|
||||
/server add libera irc.libera.chat/6697 -tls
|
||||
/server add libera irc.libera.chat/6697 -ssl
|
||||
----
|
||||
|
||||
In diesem Beispiel ist `libera` der interne, von Weechat genutzte Servername.
|
||||
@@ -218,15 +223,11 @@ in folgender Option erreicht werden:
|
||||
/set irc.server.libera.autojoin "#channel1,#channel2"
|
||||
----
|
||||
|
||||
Mit dem `/autojoin` Befehl können die _autojoin_ Optionen einfach konfiguriert werden.
|
||||
(siehe `/help autojoin`).
|
||||
|
||||
WeeChat kann auch konfigurieren werden, dass die _autojoin_ Optionen automatisch aktualisiert werden
|
||||
sobald man Kanäle betritt oder verlässt:
|
||||
|
||||
----
|
||||
/set irc.server_default.autojoin_dynamic on
|
||||
----
|
||||
[TIP]
|
||||
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
|
||||
durchgeführt werden (was bei langen Wörtern, wie z.B. dem Namen einer Option, nützlich
|
||||
sein kann).
|
||||
|
||||
Mit dem Befehl `/unset` können Server-Optionen zurückgesetzt werden.
|
||||
Ist eine Server-Option zurückgesetzt, _wirkt_ der entsprechende Vorgabewert
|
||||
@@ -245,12 +246,6 @@ Werte anderer Server-Optionen (`xxx`) können festgelegt werden mit:
|
||||
/set irc.server.libera.xxx Wert
|
||||
----
|
||||
|
||||
[TIP]
|
||||
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
|
||||
durchgeführt werden (was bei langen Wörtern, wie z.B. dem Namen einer Option, nützlich
|
||||
sein kann).
|
||||
|
||||
[[connect_to_irc_server]]
|
||||
== Verbinden mit dem IRC-Server
|
||||
|
||||
@@ -436,14 +431,14 @@ Zeige eine liste aller verfügbaren Skripten:
|
||||
/script
|
||||
----
|
||||
|
||||
Eine Liste von Skripten ist in WeeChat mittels `/script` oder auf
|
||||
https://weechat.org/scripts/[this page ^↗^^] verfügbar.
|
||||
Auf *weechat.org* von Drittanbietern bereitgestellte Scripten: https://weechat.org/scripts
|
||||
|
||||
[[more_doc]]
|
||||
== Weitere Dokumentation
|
||||
|
||||
WeeChat kann nun verwendet werden und lesen Sie
|
||||
https://weechat.org/doc/[FAQ/documentation ^↗^^]
|
||||
falls Sie weitere Fragen haben.
|
||||
Mit dieser Quickstart-Anleitung wurden dir die wesentlichen
|
||||
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!
|
||||
|
||||
+159
-213
@@ -2,16 +2,24 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: de
|
||||
:toc: left
|
||||
:toclevels: 4
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
:sectnums:
|
||||
:sectnumlevels: 3
|
||||
:docinfo1:
|
||||
|
||||
|
||||
Übersetzer:
|
||||
|
||||
* Nils Görs <weechatter@arcor.de>, 2010-2016
|
||||
|
||||
|
||||
Diese Anleitung beschreibt den WeeChat Chat Client und ist Teil von WeeChat.
|
||||
|
||||
Die neueste Version dieses Dokuments finden Sie unter
|
||||
https://weechat.org/doc/[this page ^↗^^].
|
||||
Die aktuelle Version dieser Anleitung finden Sie auf:
|
||||
https://weechat.org/doc
|
||||
|
||||
|
||||
[[introduction]]
|
||||
== Einleitung
|
||||
@@ -59,7 +67,7 @@ Ein Skript darf *NIEMALS* einen fork nutzen oder einen eigenen Thread erstellen,
|
||||
dafür gibt es explizit eine API Funktion, andernfalls kann WeeChat abstürzen. +
|
||||
Wenn etwas in einem Hintergrundprozess ausgeführt werden soll, kann die Funktion
|
||||
`+hook_process+` genutzt werden. Siehe Beispiele im Kapitel <<hook_process,Hintergrundprozesse>>
|
||||
und die Dokumentation für die Funktion `+hook_process+` in link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference ^↗^^] (Englisch).
|
||||
und die Dokumentation für die Funktion `+hook_process+` in link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference] (Englisch).
|
||||
|
||||
[[languages_specificities]]
|
||||
=== Besonderheiten der einzelnen Skriptsprachen
|
||||
@@ -73,7 +81,7 @@ und die Dokumentation für die Funktion `+hook_process+` in link:weechat_plugin_
|
||||
WeeChat definiert ein `weechat` Module welches mittels `import weechat`
|
||||
importiert werden muss. +
|
||||
Ein Python-Stub für die WeeChat-API ist im Repository verfügbar:
|
||||
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi].
|
||||
|
||||
[[python_functions]]
|
||||
===== Funktionen
|
||||
@@ -101,41 +109,45 @@ Liste ist nicht vollständig):
|
||||
|===
|
||||
| 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
|
||||
| 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 ^↗^^].
|
||||
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] +
|
||||
| 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
|
||||
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 ^↗^^].
|
||||
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.
|
||||
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.
|
||||
|
||||
[[language_perl]]
|
||||
==== Perl
|
||||
|
||||
@@ -193,22 +205,6 @@ Funktionen werden aufgerufen mittels `+weechat.xxx(arg1, arg2, ...)+`.
|
||||
|
||||
Funktionen werden aufgerufen mittels `+weechat::xxx arg1 arg2 ...+`.
|
||||
|
||||
[[tcl_null]]
|
||||
===== Nullwerte
|
||||
|
||||
Da Tcl nur String-Typen nutzt, gibt es keinen Null-Typ, der als Argument übergeben
|
||||
werden kann wenn eine Funktion Nullwerte akzeptiert, oder als Argument in einem
|
||||
Callback zu erhalten Funktion. Um dies zu umgehen, definiert die WeeChat-API die
|
||||
Konstante `$::weechat::WEECHAT_NULL`, welches als Nullwert fungiert. Diese Konstante
|
||||
ist festgelegt und lautet `\uFFFF\uFFFF\uFFFFWEECHAT_NULL\uFFFF\uFFFF\uFFFF`,
|
||||
es ist also sehr unwahrscheinlich das dies ungewollt genutzt wird.
|
||||
|
||||
Sie können diese Konstante übergeben, wenn eine Funktion NULL als Argument akzeptiert
|
||||
und Sie erhält es als Wert eines Arguments in einer Callback-Funktion zurück, wenn
|
||||
der Wert des Arguments NULL ist. Um zu sehen, welche Funktionen Nullwerte akzeptieren
|
||||
und Nullwerte in Rückrufen übergeben, schauen Sie sich die Python-Prototypen an
|
||||
link:weechat_plugin_api.en.html[WeeChat plugin API reference ^↗^^].
|
||||
|
||||
[[language_guile]]
|
||||
==== Guile (Scheme)
|
||||
|
||||
@@ -388,7 +384,7 @@ ein Link in das entsprechende _autoload_ Verzeichnis erzeugt.
|
||||
Die Skripten API ist nahezu identisch mit der API der C Erweiterung.
|
||||
Um einen Überblick über alle API Funktionen (Prototyp, Argumente,
|
||||
Rückgabe werte, Beispiele) zu erhalten werfen Sie einen Blick in
|
||||
die link:weechat_plugin_api.en.html[WeeChat Plugin API Reference ^↗^^] (Englisch).
|
||||
die link:weechat_plugin_api.en.html[WeeChat Plugin API Reference] (Englisch).
|
||||
Es ist wichtig das man zwischen einer _Erweiterung_ und einem _Skript_
|
||||
unterscheidet: Eine _Erweiterung_ ist eine Binärdatei die kompiliert wurde
|
||||
und mittels `/plugin` geladen wird. Ein _Skript_ ist eine Textdatei welche
|
||||
@@ -557,25 +553,25 @@ weechat_hook_timer(1000, 0, 1, $timer_cb, 'test');
|
||||
== Skript API
|
||||
|
||||
Um weiterführende Informationen zu den API Funktionen zu erhalten
|
||||
lesen Sie bitte link:weechat_plugin_api.en.html[WeeChat Plugin API Reference ^↗^^] (Englisch).
|
||||
lesen Sie bitte link:weechat_plugin_api.en.html[WeeChat Plugin API Reference] (Englisch).
|
||||
|
||||
[[script_api_functions]]
|
||||
=== Funktionen
|
||||
|
||||
Liste der Skript API Funktionen:
|
||||
|
||||
[width="100%",cols="1,5",options="header"]
|
||||
[width="100%",cols="1,3",options="header"]
|
||||
|===
|
||||
| Kategorie | Funktionen
|
||||
|
||||
| Allgemein
|
||||
| register
|
||||
| Allgemein |
|
||||
register
|
||||
|
||||
| Erweiterungen
|
||||
| plugin_get_name
|
||||
| Erweiterungen |
|
||||
plugin_get_name
|
||||
|
||||
| Strings
|
||||
| charset_set +
|
||||
| Strings |
|
||||
charset_set +
|
||||
iconv_to_internal +
|
||||
iconv_from_internal +
|
||||
gettext +
|
||||
@@ -587,7 +583,6 @@ Liste der Skript API Funktionen:
|
||||
string_has_highlight_regex +
|
||||
string_mask_to_regex +
|
||||
string_format_size +
|
||||
string_parse_size +
|
||||
string_color_code_size +
|
||||
string_remove_color +
|
||||
string_is_command_char +
|
||||
@@ -595,13 +590,13 @@ Liste der Skript API Funktionen:
|
||||
string_eval_expression +
|
||||
string_eval_path_home
|
||||
|
||||
| Verzeichnisse
|
||||
| mkdir_home +
|
||||
| Verzeichnisse |
|
||||
mkdir_home +
|
||||
mkdir +
|
||||
mkdir_parents
|
||||
|
||||
| sortierte Listen
|
||||
| list_new +
|
||||
| sortierte Listen |
|
||||
list_new +
|
||||
list_add +
|
||||
list_search +
|
||||
list_search_pos +
|
||||
@@ -617,8 +612,8 @@ Liste der Skript API Funktionen:
|
||||
list_remove_all +
|
||||
list_free
|
||||
|
||||
| Konfigurationsdatei
|
||||
| config_new +
|
||||
| Konfigurationsdatei |
|
||||
config_new +
|
||||
config_new_section +
|
||||
config_search_section +
|
||||
config_new_option +
|
||||
@@ -655,23 +650,20 @@ Liste der Skript API Funktionen:
|
||||
config_set_desc_plugin +
|
||||
config_unset_plugin
|
||||
|
||||
| Tastenbelegung
|
||||
| key_bind +
|
||||
| Tastenbelegung |
|
||||
key_bind +
|
||||
key_unbind
|
||||
|
||||
| Ausgabe
|
||||
| prefix +
|
||||
| Ausgabe |
|
||||
prefix +
|
||||
color +
|
||||
print (für Python: prnt) +
|
||||
print_date_tags (für Python: prnt_date_tags) +
|
||||
print_datetime_tags (für Python: prnt_datetime_tags) +
|
||||
print_y (für Python: prnt_y) +
|
||||
print_y_date_tags (für Python: prnt_y_date_tags) +
|
||||
print_y_datetime_tags (für Python: prnt_y_datetime_tags) +
|
||||
log_print
|
||||
|
||||
| Hooks
|
||||
| hook_command +
|
||||
| Hooks |
|
||||
hook_command +
|
||||
hook_command_run +
|
||||
hook_timer +
|
||||
hook_fd +
|
||||
@@ -696,9 +688,8 @@ Liste der Skript API Funktionen:
|
||||
unhook +
|
||||
unhook_all
|
||||
|
||||
| Buffer
|
||||
| buffer_new +
|
||||
buffer_new_props +
|
||||
| Buffer |
|
||||
buffer_new +
|
||||
current_buffer +
|
||||
buffer_search +
|
||||
buffer_search_main +
|
||||
@@ -713,16 +704,16 @@ Liste der Skript API Funktionen:
|
||||
buffer_string_replace_local_var +
|
||||
buffer_match_list
|
||||
|
||||
| Fenster
|
||||
| current_window +
|
||||
| Fenster |
|
||||
current_window +
|
||||
window_search_with_buffer +
|
||||
window_get_integer +
|
||||
window_get_string +
|
||||
window_get_pointer +
|
||||
window_set_title
|
||||
|
||||
| Nickliste
|
||||
| nicklist_add_group +
|
||||
| Nickliste |
|
||||
nicklist_add_group +
|
||||
nicklist_search_group +
|
||||
nicklist_add_nick +
|
||||
nicklist_search_nick +
|
||||
@@ -738,8 +729,8 @@ Liste der Skript API Funktionen:
|
||||
nicklist_nick_get_pointer +
|
||||
nicklist_nick_set
|
||||
|
||||
| Bars
|
||||
| bar_item_search +
|
||||
| Bars |
|
||||
bar_item_search +
|
||||
bar_item_new +
|
||||
bar_item_update +
|
||||
bar_item_remove +
|
||||
@@ -749,23 +740,23 @@ Liste der Skript API Funktionen:
|
||||
bar_update +
|
||||
bar_remove
|
||||
|
||||
| Befehle
|
||||
| command +
|
||||
| Befehle |
|
||||
command +
|
||||
command_options
|
||||
|
||||
| Vervollständigung
|
||||
| completion_new +
|
||||
| Vervollständigung |
|
||||
completion_new +
|
||||
completion_search +
|
||||
completion_get_string +
|
||||
completion_list_add +
|
||||
completion_free
|
||||
|
||||
| Informationen
|
||||
| info_get +
|
||||
| Informationen |
|
||||
info_get +
|
||||
info_get_hashtable
|
||||
|
||||
| Infolisten
|
||||
| infolist_new +
|
||||
| Infolisten |
|
||||
infolist_new +
|
||||
infolist_new_item +
|
||||
infolist_new_var_integer +
|
||||
infolist_new_var_string +
|
||||
@@ -783,8 +774,8 @@ Liste der Skript API Funktionen:
|
||||
infolist_time +
|
||||
infolist_free
|
||||
|
||||
| hdata
|
||||
| hdata_get +
|
||||
| hdata |
|
||||
hdata_get +
|
||||
hdata_get_var_offset +
|
||||
hdata_get_var_type_string +
|
||||
hdata_get_var_array_size +
|
||||
@@ -805,8 +796,8 @@ Liste der Skript API Funktionen:
|
||||
hdata_update +
|
||||
hdata_get_string
|
||||
|
||||
| Upgrade
|
||||
| upgrade_new +
|
||||
| Upgrade |
|
||||
upgrade_new +
|
||||
upgrade_write_object +
|
||||
upgrade_read +
|
||||
upgrade_close
|
||||
@@ -817,17 +808,17 @@ Liste der Skript API Funktionen:
|
||||
|
||||
Liste der Konstanten in Skript API:
|
||||
|
||||
[width="100%",cols="1,5",options="header"]
|
||||
[width="100%",cols="1,3",options="header"]
|
||||
|===
|
||||
| Kategorie | Konstanten
|
||||
|
||||
| return codes
|
||||
| `WEECHAT_RC_OK` (integer) +
|
||||
| return codes |
|
||||
`WEECHAT_RC_OK` (integer) +
|
||||
`WEECHAT_RC_OK_EAT` (integer) +
|
||||
`WEECHAT_RC_ERROR` (integer)
|
||||
|
||||
| Konfigurationsdatei
|
||||
| `WEECHAT_CONFIG_READ_OK` (integer) +
|
||||
| Konfigurationsdatei |
|
||||
`WEECHAT_CONFIG_READ_OK` (integer) +
|
||||
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (integer) +
|
||||
`WEECHAT_CONFIG_WRITE_OK` (integer) +
|
||||
@@ -842,23 +833,23 @@ Liste der Konstanten in Skript API:
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (integer)
|
||||
|
||||
| sortierte Listen
|
||||
| `WEECHAT_LIST_POS_SORT` (string) +
|
||||
| sortierte Listen |
|
||||
`WEECHAT_LIST_POS_SORT` (string) +
|
||||
`WEECHAT_LIST_POS_BEGINNING` (string) +
|
||||
`WEECHAT_LIST_POS_END` (string)
|
||||
|
||||
| Hotlist
|
||||
| `WEECHAT_HOTLIST_LOW` (string) +
|
||||
| Hotlist |
|
||||
`WEECHAT_HOTLIST_LOW` (string) +
|
||||
`WEECHAT_HOTLIST_MESSAGE` (string) +
|
||||
`WEECHAT_HOTLIST_PRIVATE` (string) +
|
||||
`WEECHAT_HOTLIST_HIGHLIGHT` (string)
|
||||
|
||||
| hook Prozesse
|
||||
| `WEECHAT_HOOK_PROCESS_RUNNING` (integer) +
|
||||
| hook Prozesse |
|
||||
`WEECHAT_HOOK_PROCESS_RUNNING` (integer) +
|
||||
`WEECHAT_HOOK_PROCESS_ERROR` (integer)
|
||||
|
||||
| hook Connect
|
||||
| `WEECHAT_HOOK_CONNECT_OK` (integer) +
|
||||
| hook Connect |
|
||||
`WEECHAT_HOOK_CONNECT_OK` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (integer) +
|
||||
@@ -870,8 +861,8 @@ Liste der Konstanten in Skript API:
|
||||
`WEECHAT_HOOK_CONNECT_TIMEOUT` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (integer)
|
||||
|
||||
| hook Signal
|
||||
| `WEECHAT_HOOK_SIGNAL_STRING` (string) +
|
||||
| hook Signal |
|
||||
`WEECHAT_HOOK_SIGNAL_STRING` (string) +
|
||||
`WEECHAT_HOOK_SIGNAL_INT` (string) +
|
||||
`WEECHAT_HOOK_SIGNAL_POINTER` (string)
|
||||
|===
|
||||
@@ -882,7 +873,7 @@ Liste der Konstanten in Skript API:
|
||||
Dieses Kapitel beinhaltet einige Aufgaben mit Lösungsbeispielen.
|
||||
Die Skript API wird dabei nur sehr oberflächlich besprochen.Um eine vollständige
|
||||
Übersicht aller Befehle zu erhalten nutzen Sie bitte die
|
||||
link:weechat_plugin_api.en.html[WeeChat Plugin API Reference ^↗^^] (Englisch).
|
||||
link:weechat_plugin_api.en.html[WeeChat Plugin API Reference] (Englisch).
|
||||
|
||||
[[buffers]]
|
||||
=== Buffer
|
||||
@@ -902,7 +893,7 @@ Beispiele:
|
||||
weechat.prnt("", "Hallo")
|
||||
|
||||
# Gibt den Text "Hallo" im Core Buffer aus, schreibt diesen aber nicht in die Protokolldatei
|
||||
# (nur Version ≥ 0.3.3)
|
||||
# (nur Version >= 0.3.3)
|
||||
weechat.prnt_date_tags("", 0, "no_log", "hello")
|
||||
|
||||
# Gibt den Präfix "==>" gefolgt von dem Text "Hallo" im aktuellen Buffer aus
|
||||
@@ -1082,53 +1073,26 @@ Mit der Funktion `+hook_process+` kann ein Hintergrundprozess gestartet werden.
|
||||
Der Callback wird aufgerufen sobald der Hintergrundprozess abgearbeitet wurde.
|
||||
Dies kann auch mehrfach der Fall sein.
|
||||
|
||||
Für den letzten Aufruf des Callback wird _return_code_ auf 0 oder einen positiven
|
||||
Wert gesetzt. Dies ist der Return Code des Befehls.
|
||||
Für den letzten Aufruf des Callback wird _rc_ auf 0 oder einen positiven Wert
|
||||
gesetzt. Dies ist der Return Code des Befehls.
|
||||
|
||||
Beispiele:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
def my_process_cb(data, command, return_code, out, err):
|
||||
if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
|
||||
weechat.prnt("", "Error with command '%s'" % command)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "return_code = %d" % return_code)
|
||||
if out:
|
||||
weechat.prnt("", "stdout: %s" % out)
|
||||
if err:
|
||||
weechat.prnt("", "stderr: %s" % err)
|
||||
process_output = ""
|
||||
|
||||
def my_process_cb(data, command, rc, out, err):
|
||||
global process_output
|
||||
if out != "":
|
||||
process_output += out
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", process_output)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process("/bin/ls -l /etc", 10 * 1000, "my_process_cb", "")
|
||||
----
|
||||
|
||||
Sie können statt eines externen Befehls auch direkt eine
|
||||
Skriptfunktion aufrufen, die Weechat blockieren würde:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
def get_status(data):
|
||||
# do something blocking...
|
||||
# ...
|
||||
return "this is the result"
|
||||
|
||||
def my_process_cb(data, command, return_code, out, err):
|
||||
if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
|
||||
weechat.prnt("", "Error with command '%s'" % command)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "return_code = %d" % return_code)
|
||||
if out:
|
||||
weechat.prnt("", "stdout: %s" % out)
|
||||
if err:
|
||||
weechat.prnt("", "stderr: %s" % err)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
hook = weechat.hook_process("func:get_status", 5000, "my_process_cb", "")
|
||||
----
|
||||
|
||||
[[url_transfer]]
|
||||
==== URL Übertragung
|
||||
|
||||
@@ -1143,15 +1107,15 @@ dabei in der Callback-Variable "out" gesichert (Standardausgabe des Prozesses):
|
||||
|
||||
[source,python]
|
||||
----
|
||||
# Display latest stable version of WeeChat.
|
||||
weechat_latest_version = ""
|
||||
# Zeigt die aktuelle stabile Version von WeeChat an.
|
||||
weechat_version = ""
|
||||
|
||||
def weechat_process_cb(data, command, return_code, out, err):
|
||||
global weechat_latest_version
|
||||
if out:
|
||||
weechat_latest_version += out
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "Latest WeeChat version: %s" % weechat_latest_version)
|
||||
def weechat_process_cb(data, command, rc, out, err):
|
||||
global weechat_version
|
||||
if out != "":
|
||||
weechat_version += out
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", "aktuelle stabile WeeChat-Version: %s" % weechat_version)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process("url:https://weechat.org/dev/info/stable/",
|
||||
@@ -1159,17 +1123,16 @@ weechat.hook_process("url:https://weechat.org/dev/info/stable/",
|
||||
----
|
||||
|
||||
[TIP]
|
||||
Alle verfügbaren Informationen über WeeChat findet man unter
|
||||
https://weechat.org/dev/info/[this page ^↗^^].
|
||||
Alle Informationen die WeeChat betreffen findet man auf: https://weechat.org/dev/info
|
||||
|
||||
Beispiel eines URL Transfers, mit zusätzliche Optionen: Es wird das neuste
|
||||
WeeChat Entwicklerpaket in die Datei _/tmp/weechat-devel.tar.gz_ gesichert:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
def my_process_cb(data, command, return_code, out, err):
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "End of transfer (return code = %d)" % return_code)
|
||||
def my_process_cb(data, command, rc, out, err):
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", "End of transfer (rc=%s)" % rc)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.tar.gz",
|
||||
@@ -1179,7 +1142,7 @@ weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.
|
||||
|
||||
Für weitere Informationen zum URL Transfer und verfügbare Optionen, siehe Funktionen
|
||||
`+hook_process+` und `+hook_process_hashtable+` in
|
||||
link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference ^↗^^] (Englisch).
|
||||
link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference] (Englisch).
|
||||
|
||||
[[config_options]]
|
||||
=== Konfiguration / Optionen
|
||||
@@ -1335,71 +1298,59 @@ Das Ergebnis ist eine Hashtabelle mit folgenden Schlüsseln
|
||||
|
||||
[width="100%",cols="3,^2,10,7",options="header"]
|
||||
|===
|
||||
| Schlüssel | Seit WeeChat ^(1)^ | Beschreibung | Beispiel
|
||||
| Schlüssel | Seit WeeChat ^(1)^ | Beschreibung | Beispiel
|
||||
|
||||
| Tags | 0.4.0
|
||||
| Tags in der Nachricht (kann leer sein).
|
||||
| `+time=2015-06-27T16:40:35.000Z+`
|
||||
| Tags | 0.4.0 |
|
||||
Tags in der Nachricht (kann leer sein). |
|
||||
`+time=2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| tag_xxx | 3.3
|
||||
| Wert des Tags "xxx" ohne Escapezeichen (ein Schlüssel pro Tag).
|
||||
| `+2015-06-27T16:40:35.000Z+`
|
||||
| message_without_tags | 0.4.0 |
|
||||
Die IRC Nachricht ohne Tags (wie eine Nachricht ohne Tags). |
|
||||
`+:nick!user@host PRIVMSG #weechat :hello!+`
|
||||
|
||||
| message_without_tags | 0.4.0
|
||||
| Die IRC Nachricht ohne Tags (wie eine Nachricht ohne Tags).
|
||||
| `+:nick!user@host PRIVMSG #weechat :hello!+`
|
||||
| nick | 0.3.4 |
|
||||
der ursprüngliche Nick. |
|
||||
`+nick+`
|
||||
|
||||
| nick | 0.3.4
|
||||
| der ursprüngliche Nick.
|
||||
| `+nick+`
|
||||
| user | 2.7 |
|
||||
der ursprüngliche Benutzer. |
|
||||
`+user+`
|
||||
|
||||
| user | 2.7
|
||||
| der ursprüngliche Benutzer.
|
||||
| `+user+`
|
||||
| host | 0.3.4 |
|
||||
der ursprüngliche Host (beinhaltet den Nick). |
|
||||
`+nick!user@host+`
|
||||
|
||||
| host | 0.3.4
|
||||
| der ursprüngliche Host (beinhaltet den Nick).
|
||||
| `+nick!user@host+`
|
||||
| command | 0.3.4 |
|
||||
der Befehl (_PRIVMSG_, _NOTICE_, ...). |
|
||||
`+PRIVMSG+`
|
||||
|
||||
| command | 0.3.4
|
||||
| der Befehl (_PRIVMSG_, _NOTICE_, ...).
|
||||
| `+PRIVMSG+`
|
||||
|
||||
| channel | 0.3.4
|
||||
| der Zielchanne.l|
|
||||
| channel | 0.3.4 |
|
||||
der Zielchanne.l|
|
||||
`+#weechat+`
|
||||
|
||||
| arguments | 0.3.4
|
||||
| das Argument des Befehls (beinhaltet den Channel).
|
||||
| `+#weechat :hello!+`
|
||||
| arguments | 0.3.4 |
|
||||
das Argument des Befehls (beinhaltet den Channel). |
|
||||
`+#weechat :hello!+`
|
||||
|
||||
| text | 1.3
|
||||
| der Text (zum Beispiel eine Nachricht eines Users).
|
||||
| `+hello!+`
|
||||
| text | 1.3 |
|
||||
der Text (zum Beispiel eine Nachricht eines Users). |
|
||||
`+hello!+`
|
||||
|
||||
| paramN | 3.4
|
||||
| Befehlsparameter (von 1 bis N).
|
||||
| `+#weechat+`
|
||||
| pos_command | 1.3 |
|
||||
Index von _command_ innerhalb einer Nachricht ("-1" falls _command_ nicht gefunden wird). |
|
||||
`+47+`
|
||||
|
||||
| num_params | 3.4
|
||||
| Anzahl der Befehlsparameter.
|
||||
| `+2+`
|
||||
| pos_arguments | 1.3 |
|
||||
Index von_arguments_ innerhalb einer Nachricht ("-1" falls _arguments_ nicht gefunden wird). |
|
||||
`+55+`
|
||||
|
||||
| pos_command | 1.3
|
||||
| Index von _command_ innerhalb einer Nachricht ("-1" falls _command_ nicht gefunden wird).
|
||||
| `+47+`
|
||||
| pos_channel | 1.3 |
|
||||
Index von _channel_ innerhalb einer Nachricht ("-1" falls _channel_ nicht gefunden wird). |
|
||||
`+55+`
|
||||
|
||||
| pos_arguments | 1.3
|
||||
| Index von_arguments_ innerhalb einer Nachricht ("-1" falls _arguments_ nicht gefunden wird).
|
||||
| `+55+`
|
||||
|
||||
| pos_channel | 1.3
|
||||
| Index von _channel_ innerhalb einer Nachricht ("-1" falls _channel_ nicht gefunden wird).
|
||||
| `+55+`
|
||||
|
||||
| pos_text | 1.3
|
||||
| Index von _text_ innerhalb einer Nachricht ("-1" falls _text_ nicht gefunden wird).
|
||||
| `+65+`
|
||||
| pos_text | 1.3 |
|
||||
Index von _text_ innerhalb einer Nachricht ("-1" falls _text_ nicht gefunden wird). |
|
||||
`+65+`
|
||||
|===
|
||||
|
||||
[NOTE]
|
||||
@@ -1409,12 +1360,10 @@ Das Ergebnis ist eine Hashtabelle mit folgenden Schlüsseln
|
||||
----
|
||||
dict = weechat.info_get_hashtable(
|
||||
"irc_message_parse",
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
|
||||
# dict == {
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
|
||||
# "tag_time": "2015-06-27T16:40:35.000Z",
|
||||
# "tag_tag2": "value space",
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z",
|
||||
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
||||
# "nick": "nick",
|
||||
# "user": "user",
|
||||
@@ -1423,13 +1372,10 @@ dict = weechat.info_get_hashtable(
|
||||
# "channel": "#weechat",
|
||||
# "arguments": "#weechat :hello!",
|
||||
# "text": "hello!",
|
||||
# "param1": "#weechat",
|
||||
# "param2": "hello!",
|
||||
# "num_params": "2",
|
||||
# "pos_command": "65",
|
||||
# "pos_arguments": "73",
|
||||
# "pos_channel": "73",
|
||||
# "pos_text": "83",
|
||||
# "pos_command": "47",
|
||||
# "pos_arguments": "55",
|
||||
# "pos_channel": "55",
|
||||
# "pos_text": "65",
|
||||
# }
|
||||
----
|
||||
|
||||
|
||||
@@ -0,0 +1,148 @@
|
||||
= WeeChat Anleitung für Testpersonen
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: de
|
||||
:toc: left
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
:sectnums:
|
||||
:docinfo1:
|
||||
|
||||
|
||||
Übersetzer:
|
||||
|
||||
* Juergen Descher <jhdl@gmx.net>, 2009
|
||||
* Nils Görs <weechatter@arcor.de>, 2009-2016
|
||||
|
||||
|
||||
[[purpose]]
|
||||
== Intention
|
||||
|
||||
Viele dankbare Anwender fragen uns wie sie bei der Entwicklung von WeeChat
|
||||
helfen können. Der einfachste (aber auch der kniffligste) Weg uns zu helfen ist:
|
||||
testen!
|
||||
|
||||
Testen ist ein sehr wichtiger Teil der Programmentwicklung und sollte daher
|
||||
nicht unterbewertet werden. Wenn neue Funktionen implementiert wurden dann
|
||||
müssen diese getestet werden. Für manche Funktionen gibt es sehr viele
|
||||
verschiedene Problemstellungen, oder diese sind äußerst Umfangreich. Dadurch
|
||||
können die Entwickler nicht jede einzelne Variante ausprobieren.
|
||||
|
||||
Ein Beispiel: Eine berüchtigte Zeichensatz-Erweiterung wurde in WeeChat 0.2.2
|
||||
eingeführt. Keiner von uns, Entwickler, Mithelfende und Tester, nutzten Channels
|
||||
in denen länderspezifische Zeichen im eigenen Namen Verwendung fanden. Somit wurde
|
||||
die Version 0.2.2 freigegeben und wir bekamen daraufhin eine Flut von Beschwerden
|
||||
durch russischen User, bei denen der Fehler sichtbar war. Hätten wir mehr Tester,
|
||||
dann sollte so etwas nicht mehr passieren.
|
||||
|
||||
Eine stabile Version von WeeChat zu testen bringt uns leider nicht weiter da die
|
||||
Entwickler in der Zwischenzeit neue Funktionen implementiert haben und vermutlich
|
||||
alte Fehler schon behoben wurden.
|
||||
|
||||
|
||||
[[prepare_system]]
|
||||
== Bereite Dein System vor
|
||||
|
||||
Es wäre uns schon sehr damit geholfen wenn Du Linux _core_ Dateien aktivieren würdest.
|
||||
Falls WeeChat abstürzen sollte wird eine Datei Namens _core_ erzeugt. Diese Datei
|
||||
beinhaltet viele nützliche Debug-Informationen um das genaue Problem in WeeChat
|
||||
zu lokalisieren.
|
||||
|
||||
Falls Du die _bash_ als shell benutzt, dann ergänze Deine _~/.bashrc_ durch folgende
|
||||
Zeile:
|
||||
|
||||
----
|
||||
ulimit -c unlimited
|
||||
----
|
||||
|
||||
|
||||
[[download]]
|
||||
== Besorge Dir die Entwickler-Version
|
||||
|
||||
aktueller Programmcode (mit den aktuellen Fehlern und Funktionen) ist im GIT Repository
|
||||
gespeichert.
|
||||
|
||||
Du könntest Dich dazu entscheiden es manuell zu bauen (empfohlen):
|
||||
|
||||
* die GIT Version kann parallel zur stabilen Version kompiliert und installiert
|
||||
werden.
|
||||
* Du benötigst keine Root-Rechte, und opfern brauchst Du Deine stabile Version
|
||||
von WeeChat auch nicht.
|
||||
|
||||
[[get_sources]]
|
||||
=== Beschaffe und baue die Quellen
|
||||
|
||||
Erstelle zuerst einen neuen Ordner, z.B. _weechat-git_:
|
||||
|
||||
----
|
||||
$ mkdir ~/weechat-git
|
||||
$ cd ~/weechat-git
|
||||
----
|
||||
|
||||
Falls Du git installiert hast, clone das git Repository (empfohlen):
|
||||
|
||||
----
|
||||
$ git clone https://github.com/weechat/weechat.git
|
||||
$ cd weechat
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Um auf den aktuellen Stand zu kommen verwendest Du z.B. `git pull` in
|
||||
diesem Ordner.
|
||||
|
||||
Ansonsten kannst Du das _Entwickler-Paket_ herunterladen und entpacken:
|
||||
|
||||
----
|
||||
$ wget https://weechat.org/files/src/weechat-devel.tar.bz2
|
||||
$ tar xvjf weechat-devel.tar.bz2
|
||||
$ cd weechat-devel
|
||||
----
|
||||
|
||||
Um die Quellen zu übersetzen, wird CMake empfohlen:
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/weechat-git -DWEECHAT_HOME=~/.weechat-dev -DCMAKE_BUILD_TYPE=Debug
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
Falls Du CMake nicht hast, ist es auch möglich die autotools zu nutzen:
|
||||
|
||||
----
|
||||
$ ./autogen.sh
|
||||
$ ./configure --prefix=$HOME/weechat-git WEECHAT_HOME=~/.weechat-dev
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
[[install_binary_package]]
|
||||
=== Installieren des Programm-Paketes
|
||||
|
||||
Abhängig Deiner Linux Distribution:
|
||||
|
||||
* Debian: https://weechat.org/download/debian
|
||||
* Gentoo: https://weechat.org/download
|
||||
* ArchLinux: PKGBUILD von https://aur.archlinux.org/
|
||||
* andere: Wissen wir nicht! Eheh.
|
||||
|
||||
|
||||
[[run]]
|
||||
== WeeChat starten
|
||||
|
||||
Die Befehlszeile lautet:
|
||||
|
||||
----
|
||||
$ ~/weechat-git/bin/weechat
|
||||
----
|
||||
|
||||
Immer noch munter? Dann solltest Du jetzt das bekannte Interface sehen und nun
|
||||
prahle vor Anderen, dass Du die neueste WeeChat-Version verwendest :)
|
||||
|
||||
Solltest Du nun ein merkwürdiges Verhalten bemerken (es können diverse Probleme
|
||||
oder Abstürze auftreten oder einfach Dein Bier überkochen) zögere nicht, komme
|
||||
in den Channel _#weechat_ auf _irc.libera.chat_ (A.d.Ü.: englischsprachig) und
|
||||
berichte uns darüber.
|
||||
|
||||
Auch falls alles korrekt funktionieren sollte gib uns trotzdem Bescheid, wir
|
||||
brauchen Deine Rückmeldung!
|
||||
+2586
-3784
File diff suppressed because it is too large
Load Diff
+848
@@ -0,0 +1,848 @@
|
||||
#!/usr/bin/env python3
|
||||
#
|
||||
# Copyright (C) 2008-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This program 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.
|
||||
#
|
||||
# This program 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 this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
"""
|
||||
Documentation generator for WeeChat: build include files with:
|
||||
|
||||
- commands
|
||||
- config options
|
||||
- default aliases
|
||||
- IRC colors
|
||||
- infos
|
||||
- infos hashtable
|
||||
- infolists
|
||||
- hdata
|
||||
- completions
|
||||
- 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"
|
||||
|
||||
There's one output file per language (where xx is language):
|
||||
|
||||
/path/xx/includes/autogen.xx.adoc
|
||||
|
||||
This script requires Python 3.6+.
|
||||
"""
|
||||
|
||||
SCRIPT_NAME = 'docgen'
|
||||
SCRIPT_AUTHOR = 'Sébastien Helleu <flashcode@flashtux.org>'
|
||||
SCRIPT_VERSION = '0.3'
|
||||
SCRIPT_LICENSE = 'GPL3'
|
||||
SCRIPT_DESC = 'Documentation generator for WeeChat'
|
||||
|
||||
SCRIPT_COMMAND = 'docgen'
|
||||
|
||||
IMPORT_OK = True
|
||||
|
||||
# pylint: disable=wrong-import-position
|
||||
try:
|
||||
from collections import defaultdict
|
||||
from operator import itemgetter
|
||||
import gettext
|
||||
import hashlib
|
||||
import inspect
|
||||
import os
|
||||
import re
|
||||
except ImportError as exc:
|
||||
print(f'Missing package(s) for {SCRIPT_NAME}: {exc}')
|
||||
IMPORT_OK = False
|
||||
|
||||
try:
|
||||
import weechat # pylint: disable=import-error
|
||||
except ImportError:
|
||||
print('This script must be run under WeeChat.')
|
||||
print('Get WeeChat now at: https://weechat.org/')
|
||||
IMPORT_OK = False
|
||||
|
||||
# list of locales for which we want to build doc files to include
|
||||
LOCALE_LIST = (
|
||||
'de_DE',
|
||||
'en_US',
|
||||
'fr_FR',
|
||||
'it_IT',
|
||||
'ja_JP',
|
||||
'pl_PL',
|
||||
)
|
||||
|
||||
# all commands/options/.. of following plugins will produce a file
|
||||
# non-listed plugins will be ignored
|
||||
# value: "c" = plugin may have many commands
|
||||
# "o" = write config options for plugin
|
||||
# if plugin is listed without "c", that means plugin has only one command
|
||||
# /name (where "name" is name of plugin)
|
||||
# Note: we consider core is a plugin called "weechat"
|
||||
PLUGIN_LIST = {
|
||||
'sec': 'o',
|
||||
'weechat': 'co',
|
||||
'alias': '',
|
||||
'buflist': 'co',
|
||||
'charset': 'o',
|
||||
'exec': 'o',
|
||||
'fifo': 'o',
|
||||
'fset': 'o',
|
||||
'irc': 'co',
|
||||
'logger': 'o',
|
||||
'relay': 'o',
|
||||
'script': 'o',
|
||||
'perl': 'o',
|
||||
'python': 'o',
|
||||
'ruby': 'o',
|
||||
'lua': 'o',
|
||||
'tcl': 'o',
|
||||
'guile': 'o',
|
||||
'javascript': 'o',
|
||||
'php': 'o',
|
||||
'spell': 'o',
|
||||
'trigger': 'o',
|
||||
'xfer': 'co',
|
||||
}
|
||||
|
||||
# options to ignore
|
||||
IGNORE_OPTIONS = (
|
||||
r'charset\.decode\..*',
|
||||
r'charset\.encode\..*',
|
||||
r'irc\.msgbuffer\..*',
|
||||
r'irc\.ctcp\..*',
|
||||
r'irc\.ignore\..*',
|
||||
r'irc\.server\..*',
|
||||
r'logger\.level\..*',
|
||||
r'logger\.mask\..*',
|
||||
r'relay\.port\..*',
|
||||
r'spell\.dict\..*',
|
||||
r'spell\.option\..*',
|
||||
r'trigger\.trigger\..*',
|
||||
r'weechat\.palette\..*',
|
||||
r'weechat\.proxy\..*',
|
||||
r'weechat\.bar\..*',
|
||||
r'weechat\.debug\..*',
|
||||
r'weechat\.notify\..*',
|
||||
)
|
||||
|
||||
# completions to ignore
|
||||
IGNORE_COMPLETIONS_ITEMS = (
|
||||
'docgen.*',
|
||||
)
|
||||
|
||||
|
||||
def translate(string):
|
||||
"""Translate a string."""
|
||||
return _(string) if string else string
|
||||
|
||||
|
||||
def escape(string):
|
||||
"""Escape a string."""
|
||||
return string.replace('|', '\\|')
|
||||
|
||||
|
||||
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 WeechatDoc(): # pylint: disable=too-few-public-methods
|
||||
"""A class to read documentation from WeeChat API."""
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
def read_doc(self):
|
||||
"""Get documentation from WeeChat API."""
|
||||
functions = sorted([
|
||||
func[0]
|
||||
for func in inspect.getmembers(self, predicate=inspect.isfunction)
|
||||
if func[0].startswith('_read_')
|
||||
])
|
||||
return {
|
||||
function[6:]: getattr(self, function)()
|
||||
for function in functions
|
||||
}
|
||||
|
||||
@staticmethod
|
||||
def _read_user_commands():
|
||||
"""
|
||||
Get list of WeeChat/plugins commands as dictionary with 3 indexes:
|
||||
plugin, command, xxx.
|
||||
"""
|
||||
commands = defaultdict(lambda: defaultdict(defaultdict))
|
||||
infolist = weechat.infolist_get('hook', '', 'command')
|
||||
while weechat.infolist_next(infolist):
|
||||
plugin = (weechat.infolist_string(infolist, 'plugin_name')
|
||||
or 'weechat')
|
||||
if plugin in PLUGIN_LIST:
|
||||
command = weechat.infolist_string(infolist, 'command')
|
||||
if command == plugin or 'c' in PLUGIN_LIST[plugin]:
|
||||
for key in ('description', 'args', 'args_description',
|
||||
'completion'):
|
||||
commands[plugin][command][key] = \
|
||||
weechat.infolist_string(infolist, key)
|
||||
weechat.infolist_free(infolist)
|
||||
return commands
|
||||
|
||||
@staticmethod
|
||||
def _read_user_options():
|
||||
"""
|
||||
Get list of WeeChat/plugins config options as dictionary with
|
||||
4 indexes: config, section, option, xxx.
|
||||
"""
|
||||
options = \
|
||||
defaultdict(lambda: defaultdict(lambda: defaultdict(defaultdict)))
|
||||
infolist = weechat.infolist_get('option', '', '')
|
||||
while weechat.infolist_next(infolist):
|
||||
full_name = weechat.infolist_string(infolist, 'full_name')
|
||||
if not re.search('|'.join(IGNORE_OPTIONS), full_name):
|
||||
config = weechat.infolist_string(infolist, 'config_name')
|
||||
if config in PLUGIN_LIST and 'o' in PLUGIN_LIST[config]:
|
||||
section = weechat.infolist_string(infolist, 'section_name')
|
||||
option = weechat.infolist_string(infolist, 'option_name')
|
||||
for key in ('type', 'string_values', 'default_value',
|
||||
'description'):
|
||||
options[config][section][option][key] = \
|
||||
weechat.infolist_string(infolist, key)
|
||||
for key in ('min', 'max', 'null_value_allowed'):
|
||||
options[config][section][option][key] = \
|
||||
weechat.infolist_integer(infolist, key)
|
||||
weechat.infolist_free(infolist)
|
||||
return options
|
||||
|
||||
@staticmethod
|
||||
def _read_api_infos():
|
||||
"""
|
||||
Get list of WeeChat/plugins infos as dictionary with 3 indexes:
|
||||
plugin, name, xxx.
|
||||
"""
|
||||
infos = defaultdict(lambda: defaultdict(defaultdict))
|
||||
infolist = weechat.infolist_get('hook', '', 'info')
|
||||
while weechat.infolist_next(infolist):
|
||||
info_name = weechat.infolist_string(infolist, 'info_name')
|
||||
plugin = (weechat.infolist_string(infolist, 'plugin_name')
|
||||
or 'weechat')
|
||||
for key in ('description', 'args_description'):
|
||||
infos[plugin][info_name][key] = \
|
||||
weechat.infolist_string(infolist, key)
|
||||
weechat.infolist_free(infolist)
|
||||
return infos
|
||||
|
||||
@staticmethod
|
||||
def _read_api_infos_hashtable():
|
||||
"""
|
||||
Get list of WeeChat/plugins infos (hashtable) as dictionary with
|
||||
3 indexes: plugin, name, xxx.
|
||||
"""
|
||||
infos_hashtable = defaultdict(lambda: defaultdict(defaultdict))
|
||||
infolist = weechat.infolist_get('hook', '', 'info_hashtable')
|
||||
while weechat.infolist_next(infolist):
|
||||
info_name = weechat.infolist_string(infolist, 'info_name')
|
||||
plugin = (weechat.infolist_string(infolist, 'plugin_name')
|
||||
or 'weechat')
|
||||
for key in ('description', 'args_description',
|
||||
'output_description'):
|
||||
infos_hashtable[plugin][info_name][key] = \
|
||||
weechat.infolist_string(infolist, key)
|
||||
weechat.infolist_free(infolist)
|
||||
return infos_hashtable
|
||||
|
||||
@staticmethod
|
||||
def _read_api_infolists():
|
||||
"""
|
||||
Get list of WeeChat/plugins infolists as dictionary with 3 indexes:
|
||||
plugin, name, xxx.
|
||||
"""
|
||||
infolists = defaultdict(lambda: defaultdict(defaultdict))
|
||||
infolist = weechat.infolist_get('hook', '', 'infolist')
|
||||
while weechat.infolist_next(infolist):
|
||||
infolist_name = weechat.infolist_string(infolist, 'infolist_name')
|
||||
plugin = (weechat.infolist_string(infolist, 'plugin_name')
|
||||
or 'weechat')
|
||||
for key in ('description', 'pointer_description',
|
||||
'args_description'):
|
||||
infolists[plugin][infolist_name][key] = \
|
||||
weechat.infolist_string(infolist, key)
|
||||
weechat.infolist_free(infolist)
|
||||
return infolists
|
||||
|
||||
@staticmethod
|
||||
def _read_api_hdata(): # pylint: disable=too-many-locals
|
||||
"""
|
||||
Get list of WeeChat/plugins hdata as dictionary with 3 indexes:
|
||||
plugin, name, xxx.
|
||||
"""
|
||||
hdata = defaultdict(lambda: defaultdict(defaultdict))
|
||||
infolist = weechat.infolist_get('hook', '', 'hdata')
|
||||
while weechat.infolist_next(infolist):
|
||||
hdata_name = weechat.infolist_string(infolist, 'hdata_name')
|
||||
plugin = (weechat.infolist_string(infolist, 'plugin_name')
|
||||
or 'weechat')
|
||||
hdata[plugin][hdata_name]['description'] = \
|
||||
weechat.infolist_string(infolist, 'description')
|
||||
variables = ''
|
||||
vars_update = ''
|
||||
lists = ''
|
||||
ptr_hdata = weechat.hdata_get(hdata_name)
|
||||
if ptr_hdata:
|
||||
hdata2 = []
|
||||
string = weechat.hdata_get_string(ptr_hdata, 'var_keys_values')
|
||||
if string:
|
||||
for item in string.split(','):
|
||||
key = item.split(':')[0]
|
||||
var_offset = weechat.hdata_get_var_offset(
|
||||
ptr_hdata,
|
||||
key,
|
||||
)
|
||||
var_array_size = \
|
||||
weechat.hdata_get_var_array_size_string(
|
||||
ptr_hdata,
|
||||
'',
|
||||
key,
|
||||
)
|
||||
if var_array_size:
|
||||
var_array_size = \
|
||||
f', array_size: "{var_array_size}"'
|
||||
var_hdata = weechat.hdata_get_var_hdata(ptr_hdata, key)
|
||||
if var_hdata:
|
||||
var_hdata = f', hdata: "{var_hdata}"'
|
||||
type_string = weechat.hdata_get_var_type_string(
|
||||
ptr_hdata,
|
||||
key,
|
||||
)
|
||||
hdata2.append({
|
||||
'offset': var_offset,
|
||||
'text': f'_{key}_ ({type_string})',
|
||||
'textlong': (f'_{key}_ ({type_string}'
|
||||
f'{var_array_size}{var_hdata})'),
|
||||
'update': weechat.hdata_update(
|
||||
ptr_hdata, '', {'__update_allowed': key}),
|
||||
})
|
||||
hdata2 = sorted(hdata2, key=itemgetter('offset'))
|
||||
for item in hdata2:
|
||||
variables += f'{item["textlong"]} +\n'
|
||||
if item['update']:
|
||||
vars_update += f' {item["text"]} +\n'
|
||||
if weechat.hdata_update(ptr_hdata, '',
|
||||
{'__create_allowed': ''}):
|
||||
vars_update += ' _{hdata_update_create}_ +\n'
|
||||
if weechat.hdata_update(ptr_hdata, '',
|
||||
{'__delete_allowed': ''}):
|
||||
vars_update += ' _{hdata_update_delete}_ +\n'
|
||||
hdata[plugin][hdata_name]['vars'] = variables
|
||||
hdata[plugin][hdata_name]['vars_update'] = vars_update.rstrip()
|
||||
|
||||
string = weechat.hdata_get_string(ptr_hdata, 'list_keys')
|
||||
if string:
|
||||
list_lists = string.split(',')
|
||||
lists_std = [lst for lst in list_lists
|
||||
if not lst.startswith('last_')]
|
||||
lists_last = [lst for lst in list_lists
|
||||
if lst.startswith('last_')]
|
||||
for item in sorted(lists_std) + sorted(lists_last):
|
||||
lists += f'_{item}_ +\n'
|
||||
hdata[plugin][hdata_name]['lists'] = lists
|
||||
weechat.infolist_free(infolist)
|
||||
return hdata
|
||||
|
||||
@staticmethod
|
||||
def _read_api_completions():
|
||||
"""
|
||||
Get list of WeeChat/plugins completions as dictionary with 3 indexes:
|
||||
plugin, item, xxx.
|
||||
"""
|
||||
completions = defaultdict(lambda: defaultdict(defaultdict))
|
||||
infolist = weechat.infolist_get('hook', '', 'completion')
|
||||
while weechat.infolist_next(infolist):
|
||||
completion_item = weechat.infolist_string(infolist,
|
||||
'completion_item')
|
||||
if not re.search('|'.join(IGNORE_COMPLETIONS_ITEMS),
|
||||
completion_item):
|
||||
plugin = (weechat.infolist_string(infolist, 'plugin_name')
|
||||
or 'weechat')
|
||||
completions[plugin][completion_item]['description'] = \
|
||||
weechat.infolist_string(infolist, 'description')
|
||||
weechat.infolist_free(infolist)
|
||||
return completions
|
||||
|
||||
@staticmethod
|
||||
def _read_api_url_options():
|
||||
"""
|
||||
Get list of URL options as list of dictionaries.
|
||||
"""
|
||||
url_options = []
|
||||
infolist = weechat.infolist_get('url_options', '', '')
|
||||
while weechat.infolist_next(infolist):
|
||||
url_options.append({
|
||||
'name': weechat.infolist_string(infolist, 'name').lower(),
|
||||
'option': weechat.infolist_integer(infolist, 'option'),
|
||||
'type': weechat.infolist_string(infolist, 'type'),
|
||||
'constants': weechat.infolist_string(
|
||||
infolist, 'constants').lower().replace(',', ', ')
|
||||
})
|
||||
weechat.infolist_free(infolist)
|
||||
return url_options
|
||||
|
||||
@staticmethod
|
||||
def _read_user_default_aliases():
|
||||
"""
|
||||
Get list of default aliases as list of dictionaries.
|
||||
"""
|
||||
default_aliases = []
|
||||
infolist = weechat.infolist_get('alias_default', '', '')
|
||||
while weechat.infolist_next(infolist):
|
||||
default_aliases.append({
|
||||
'name': '/' + weechat.infolist_string(infolist, 'name'),
|
||||
'command': '/' + weechat.infolist_string(infolist, 'command'),
|
||||
'completion': weechat.infolist_string(infolist, 'completion'),
|
||||
})
|
||||
weechat.infolist_free(infolist)
|
||||
return default_aliases
|
||||
|
||||
@staticmethod
|
||||
def _read_user_irc_colors():
|
||||
"""
|
||||
Get list of IRC colors as list of dictionaries.
|
||||
"""
|
||||
irc_colors = []
|
||||
infolist = weechat.infolist_get('irc_color_weechat', '', '')
|
||||
while weechat.infolist_next(infolist):
|
||||
irc_colors.append({
|
||||
'color_irc': weechat.infolist_string(infolist, 'color_irc'),
|
||||
'color_weechat': weechat.infolist_string(infolist,
|
||||
'color_weechat'),
|
||||
})
|
||||
weechat.infolist_free(infolist)
|
||||
return irc_colors
|
||||
|
||||
@staticmethod
|
||||
def _read_api_plugins_priority():
|
||||
"""
|
||||
Get priority of default WeeChat plugins as a dictionary.
|
||||
"""
|
||||
plugins_priority = {}
|
||||
infolist = weechat.infolist_get('plugin', '', '')
|
||||
while weechat.infolist_next(infolist):
|
||||
name = weechat.infolist_string(infolist, 'name')
|
||||
priority = weechat.infolist_integer(infolist, 'priority')
|
||||
if priority in plugins_priority:
|
||||
plugins_priority[priority].append(name)
|
||||
else:
|
||||
plugins_priority[priority] = [name]
|
||||
weechat.infolist_free(infolist)
|
||||
return plugins_priority
|
||||
|
||||
|
||||
class AutogenDoc():
|
||||
"""A class to write auto-generated doc files."""
|
||||
|
||||
def __init__(self, weechat_doc, doc_directory, locale):
|
||||
"""Initialize auto-generated doc file."""
|
||||
self.doc_directory = doc_directory
|
||||
self.locale = locale
|
||||
self.count_files = 0
|
||||
self.count_updated = 0
|
||||
self.filename = None
|
||||
self.filename_tmp = None
|
||||
self._file = None
|
||||
self.install_translations()
|
||||
self.write_autogen_files(weechat_doc)
|
||||
|
||||
def install_translations(self):
|
||||
"""Install translations."""
|
||||
trans = gettext.translation(
|
||||
'weechat',
|
||||
weechat.info_get('weechat_localedir', ''),
|
||||
languages=[f'{self.locale}.UTF-8'],
|
||||
fallback=True,
|
||||
)
|
||||
trans.install()
|
||||
|
||||
def open_file(self, name):
|
||||
"""Open temporary auto-generated file."""
|
||||
self.filename = os.path.join(
|
||||
self.doc_directory,
|
||||
self.locale[:2],
|
||||
'includes',
|
||||
f'autogen_{name}.{self.locale[:2]}.adoc',
|
||||
)
|
||||
self.filename_tmp = f'{self.filename}.tmp'
|
||||
self._file = open(self.filename_tmp, 'w')
|
||||
|
||||
def write_autogen_files(self, weechat_doc):
|
||||
"""Write auto-generated files."""
|
||||
for name, doc in weechat_doc.items():
|
||||
self.open_file(name)
|
||||
self.write_autogen_file(name, doc)
|
||||
self.update_autogen_file()
|
||||
|
||||
def write_autogen_file(self, name, doc):
|
||||
"""Write auto-generated file."""
|
||||
self.write('//')
|
||||
self.write('// This file is auto-generated by script docgen.py.')
|
||||
self.write('// DO NOT EDIT BY HAND!')
|
||||
self.write('//')
|
||||
getattr(self, f'_write_{name}')(doc)
|
||||
|
||||
def write(self, *args):
|
||||
"""Write a line in auto-generated doc file."""
|
||||
if args:
|
||||
if len(args) > 1:
|
||||
self._file.write(args[0] % args[1:])
|
||||
else:
|
||||
self._file.write(args[0])
|
||||
self._file.write('\n')
|
||||
|
||||
def update_autogen_file(self):
|
||||
"""Update doc file if needed (if content has changed)."""
|
||||
self.count_files += 1
|
||||
# close temp file
|
||||
self._file.close()
|
||||
sha_old = sha256_file(self.filename, 'old')
|
||||
sha_new = sha256_file(self.filename_tmp, 'new')
|
||||
# compare checksums
|
||||
if sha_old != sha_new:
|
||||
# update doc file
|
||||
if os.path.exists(self.filename):
|
||||
os.unlink(self.filename)
|
||||
os.rename(self.filename_tmp, self.filename)
|
||||
self.count_updated += 1
|
||||
else:
|
||||
os.unlink(self.filename_tmp)
|
||||
|
||||
def __str__(self):
|
||||
"""Get status string."""
|
||||
if self.count_updated > 0:
|
||||
color_count = weechat.color('yellow')
|
||||
color_updated = weechat.color('green')
|
||||
color_reset = weechat.color('reset')
|
||||
str_updated = (f', {color_count}{self.count_updated} '
|
||||
f'{color_updated}updated{color_reset}')
|
||||
else:
|
||||
str_updated = ''
|
||||
return f'{self.locale}: {self.count_files} files{str_updated}'
|
||||
|
||||
def _write_user_commands(self, commands):
|
||||
"""Write commands."""
|
||||
for plugin in commands:
|
||||
self.write()
|
||||
self.write(f'// tag::{plugin}_commands[]')
|
||||
for i, command in enumerate(sorted(commands[plugin])):
|
||||
if i > 0:
|
||||
self.write()
|
||||
_cmd = commands[plugin][command]
|
||||
args = translate(_cmd['args'])
|
||||
args_formats = args.split(' || ')
|
||||
desc = translate(_cmd['description'])
|
||||
args_desc = translate(_cmd['args_description'])
|
||||
self.write(f'[[command_{plugin}_{command}]]')
|
||||
self.write(f'* `+{command}+`: {desc}\n')
|
||||
self.write('----')
|
||||
prefix = '/' + command + ' '
|
||||
if args_formats != ['']:
|
||||
for fmt in args_formats:
|
||||
self.write(prefix + fmt)
|
||||
prefix = ' ' * len(prefix)
|
||||
if args_desc:
|
||||
self.write()
|
||||
self.write(args_desc)
|
||||
self.write('----')
|
||||
self.write(f'// end::{plugin}_commands[]')
|
||||
|
||||
# pylint: disable=too-many-locals,too-many-branches
|
||||
def _write_user_options(self, options):
|
||||
"""Write config options."""
|
||||
for config in options:
|
||||
self.write()
|
||||
self.write(f'// tag::{config}_options[]')
|
||||
i = 0
|
||||
for section in sorted(options[config]):
|
||||
for option in sorted(options[config][section]):
|
||||
if i > 0:
|
||||
self.write()
|
||||
i += 1
|
||||
_opt = options[config][section][option]
|
||||
opt_type = _opt['type']
|
||||
string_values = _opt['string_values']
|
||||
default_value = _opt['default_value']
|
||||
opt_min = _opt['min']
|
||||
opt_max = _opt['max']
|
||||
null_value_allowed = _opt['null_value_allowed']
|
||||
desc = translate(_opt['description'])
|
||||
type_nls = translate(opt_type)
|
||||
values = ''
|
||||
if opt_type == 'boolean':
|
||||
values = 'on, off'
|
||||
elif opt_type == 'integer':
|
||||
if string_values:
|
||||
values = string_values.replace('|', ', ')
|
||||
else:
|
||||
values = f'{opt_min} .. {opt_max}'
|
||||
elif opt_type == 'string':
|
||||
if opt_max <= 0:
|
||||
values = _('any string')
|
||||
elif opt_max == 1:
|
||||
values = _('any char')
|
||||
elif opt_max > 1:
|
||||
values = (_('any string')
|
||||
+ '(' + _('max chars') + ': '
|
||||
+ opt_max + ')')
|
||||
else:
|
||||
values = _('any string')
|
||||
default_value = ('"%s"' %
|
||||
default_value.replace('"', '\\"'))
|
||||
elif opt_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')
|
||||
self.write(f'* [[option_{config}.{section}.{option}]] '
|
||||
f'*{config}.{section}.{option}*')
|
||||
self.write('** %s: pass:none[%s]',
|
||||
_('description'), desc.replace(']', '\\]'))
|
||||
self.write('** %s: %s', _('type'), type_nls)
|
||||
self.write('** %s: %s', _('values'), values)
|
||||
self.write('** %s: `+%s+`',
|
||||
_('default value'), default_value)
|
||||
if null_value_allowed:
|
||||
self.write('** %s',
|
||||
_('undefined value allowed (null)'))
|
||||
self.write(f'// end::{config}_options[]')
|
||||
|
||||
def _write_user_default_aliases(self, default_aliases):
|
||||
"""Write default aliases."""
|
||||
self.write()
|
||||
self.write('// tag::default_aliases[]')
|
||||
self.write('[width="100%",cols="2m,5m,5",options="header"]')
|
||||
self.write('|===')
|
||||
self.write('| %s | %s | %s\n',
|
||||
_('Alias'), _('Command'), _('Completion'))
|
||||
for alias in default_aliases:
|
||||
self.write('| %s | %s | %s',
|
||||
escape(alias['name']),
|
||||
escape(alias['command']),
|
||||
escape(alias['completion'] or '-'))
|
||||
self.write('|===')
|
||||
self.write('// end::default_aliases[]')
|
||||
|
||||
def _write_user_irc_colors(self, irc_colors):
|
||||
"""Write IRC colors."""
|
||||
self.write()
|
||||
self.write('// tag::irc_colors[]')
|
||||
self.write('[width="50%",cols="^2m,3",options="header"]')
|
||||
self.write('|===')
|
||||
self.write('| %s | %s\n', _('IRC color'), _('WeeChat color'))
|
||||
for color in irc_colors:
|
||||
self.write('| %s | %s',
|
||||
escape(color['color_irc']),
|
||||
escape(color['color_weechat']))
|
||||
self.write('|===')
|
||||
self.write('// end::irc_colors[]')
|
||||
|
||||
def _write_api_infos(self, infos):
|
||||
"""Write infos."""
|
||||
self.write()
|
||||
self.write('// tag::infos[]')
|
||||
self.write('[width="100%",cols="^1,^2,6,6",options="header"]')
|
||||
self.write('|===')
|
||||
self.write('| %s | %s | %s | %s\n',
|
||||
_('Plugin'), _('Name'), _('Description'), _('Arguments'))
|
||||
for plugin in sorted(infos):
|
||||
for info in sorted(infos[plugin]):
|
||||
_inf = infos[plugin][info]
|
||||
desc = translate(_inf['description'])
|
||||
args_desc = translate(_inf['args_description']) or '-'
|
||||
self.write('| %s | %s | %s | %s\n',
|
||||
escape(plugin), escape(info), escape(desc),
|
||||
escape(args_desc))
|
||||
self.write('|===')
|
||||
self.write('// end::infos[]')
|
||||
|
||||
def _write_api_infos_hashtable(self, infos_hashtable):
|
||||
"""Write infos hashtable."""
|
||||
self.write()
|
||||
self.write('// tag::infos_hashtable[]')
|
||||
self.write('[width="100%",cols="^1,^2,6,6,8",options="header"]')
|
||||
self.write('|===')
|
||||
self.write('| %s | %s | %s | %s | %s\n',
|
||||
_('Plugin'), _('Name'), _('Description'),
|
||||
_('Hashtable (input)'), _('Hashtable (output)'))
|
||||
for plugin in sorted(infos_hashtable):
|
||||
for info in sorted(infos_hashtable[plugin]):
|
||||
_inh = infos_hashtable[plugin][info]
|
||||
desc = translate(_inh['description'])
|
||||
args_desc = translate(_inh['args_description']) or '-'
|
||||
output_desc = translate(_inh['output_description']) or '-'
|
||||
self.write('| %s | %s | %s | %s | %s\n',
|
||||
escape(plugin), escape(info), escape(desc),
|
||||
escape(args_desc), escape(output_desc))
|
||||
self.write('|===')
|
||||
self.write('// end::infos_hashtable[]')
|
||||
|
||||
def _write_api_infolists(self, infolists):
|
||||
"""Write infolists."""
|
||||
self.write()
|
||||
self.write('// tag::infolists[]')
|
||||
self.write('[width="100%",cols="^1,^2,5,5,5",options="header"]')
|
||||
self.write('|===')
|
||||
self.write('| %s | %s | %s | %s | %s\n',
|
||||
_('Plugin'), _('Name'), _('Description'), _('Pointer'),
|
||||
_('Arguments'))
|
||||
for plugin in sorted(infolists):
|
||||
for infolist in sorted(infolists[plugin]):
|
||||
_inl = infolists[plugin][infolist]
|
||||
desc = translate(_inl['description'])
|
||||
pointer_desc = translate(_inl['pointer_description']) or '-'
|
||||
args_desc = translate(_inl['args_description']) or '-'
|
||||
self.write('| %s | %s | %s | %s | %s\n',
|
||||
escape(plugin), escape(infolist), escape(desc),
|
||||
escape(pointer_desc), escape(args_desc))
|
||||
self.write('|===')
|
||||
self.write('// end::infolists[]')
|
||||
|
||||
def _write_api_hdata(self, hdata):
|
||||
"""Write hdata."""
|
||||
self.write()
|
||||
self.write('// tag::hdata[]')
|
||||
self.write(':hdata_update_create: __create')
|
||||
self.write(':hdata_update_delete: __delete')
|
||||
self.write('[width="100%",cols="^1,^2,2,2,5",options="header"]')
|
||||
self.write('|===')
|
||||
self.write('| %s | %s | %s | %s | %s\n',
|
||||
_('Plugin'), _('Name'), _('Description'), _('Lists'),
|
||||
_('Variables'))
|
||||
for plugin in sorted(hdata):
|
||||
for hdata_name in sorted(hdata[plugin]):
|
||||
_hda = hdata[plugin][hdata_name]
|
||||
anchor = f'hdata_{hdata_name}'
|
||||
desc = translate(_hda['description'])
|
||||
variables = _hda['vars']
|
||||
vars_update = _hda['vars_update']
|
||||
lists = _hda['lists']
|
||||
self.write(f'| {escape(plugin)}')
|
||||
self.write(f'| [[{escape(anchor)}]]<<{escape(anchor)},'
|
||||
f'{escape(hdata_name)}>>')
|
||||
self.write(f'| {escape(desc)}')
|
||||
str_lists = escape(lists) if lists else '-'
|
||||
self.write(f'| {str_lists}')
|
||||
self.write(f'| {escape(variables)}')
|
||||
if vars_update:
|
||||
self.write('*%s* +\n%s',
|
||||
_('Update allowed:'), escape(vars_update))
|
||||
self.write()
|
||||
self.write('|===')
|
||||
self.write('// end::hdata[]')
|
||||
|
||||
def _write_api_completions(self, completions):
|
||||
"""Write completions."""
|
||||
self.write()
|
||||
self.write('// tag::completions[]')
|
||||
self.write('[width="100%",cols="^1,^2,7",options="header"]')
|
||||
self.write('|===')
|
||||
self.write('| %s | %s | %s\n',
|
||||
_('Plugin'), _('Name'), _('Description'))
|
||||
for plugin in sorted(completions):
|
||||
for completion_item in sorted(completions[plugin]):
|
||||
_cmp = completions[plugin][completion_item]
|
||||
desc = translate(_cmp['description'])
|
||||
self.write('| %s | %s | %s\n',
|
||||
escape(plugin), escape(completion_item),
|
||||
escape(desc))
|
||||
self.write('|===')
|
||||
self.write('// end::completions[]')
|
||||
|
||||
def _write_api_url_options(self, url_options):
|
||||
"""Write URL options."""
|
||||
self.write()
|
||||
self.write('// tag::url_options[]')
|
||||
self.write('[width="100%",cols="2,^1,7",options="header"]')
|
||||
self.write('|===')
|
||||
self.write('| %s | %s ^(1)^ | %s ^(2)^\n',
|
||||
_('Option'), _('Type'), _('Constants'))
|
||||
for option in url_options:
|
||||
constants = option['constants']
|
||||
if constants:
|
||||
constants = ' ' + constants
|
||||
self.write('| %s | %s |%s\n',
|
||||
escape(option['name']), escape(option['type']),
|
||||
escape(constants))
|
||||
self.write('|===')
|
||||
self.write('// end::url_options[]')
|
||||
|
||||
def _write_api_plugins_priority(self, plugins_priority):
|
||||
"""Write plugins priority."""
|
||||
self.write()
|
||||
self.write('// tag::plugins_priority[]')
|
||||
for priority in sorted(plugins_priority, reverse=True):
|
||||
plugins = ', '.join(sorted(plugins_priority[priority]))
|
||||
self.write('. %s (%s)', escape(plugins), priority)
|
||||
self.write('// end::plugins_priority[]')
|
||||
|
||||
|
||||
def docgen_cmd_cb(data, buf, args):
|
||||
"""Callback for /docgen command."""
|
||||
doc_directory = data
|
||||
locales = args.split(' ') if args else sorted(LOCALE_LIST)
|
||||
|
||||
weechat_doc = WeechatDoc().read_doc()
|
||||
|
||||
weechat.prnt('', '-' * 75)
|
||||
|
||||
for locale in locales:
|
||||
autogen = AutogenDoc(weechat_doc, doc_directory, locale)
|
||||
weechat.prnt('', f'docgen: {autogen}')
|
||||
|
||||
weechat.prnt('', '-' * 75)
|
||||
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
|
||||
def docgen_completion_cb(data, completion_item, buf, completion):
|
||||
"""Callback for completion."""
|
||||
for locale in LOCALE_LIST:
|
||||
weechat.completion_list_add(completion, locale, 0,
|
||||
weechat.WEECHAT_LIST_POS_SORT)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
|
||||
if __name__ == '__main__' and IMPORT_OK:
|
||||
if weechat.register(SCRIPT_NAME, SCRIPT_AUTHOR, SCRIPT_VERSION,
|
||||
SCRIPT_LICENSE, SCRIPT_DESC, '', ''):
|
||||
weechat.hook_command(
|
||||
SCRIPT_COMMAND,
|
||||
'Documentation generator.',
|
||||
'[locales]',
|
||||
'locales: list of locales to build (by default build all locales)',
|
||||
'%(docgen_locales)|%*',
|
||||
'docgen_cmd_cb',
|
||||
os.path.dirname(__file__),
|
||||
)
|
||||
weechat.hook_completion(
|
||||
'docgen_locales',
|
||||
'locales for docgen',
|
||||
'docgen_completion_cb',
|
||||
'',
|
||||
)
|
||||
+6
-223
@@ -1,255 +1,38 @@
|
||||
<!--
|
||||
Custom styles for Asciidoctor
|
||||
Copyright (C) 2016-2024 Sébastien Helleu <flashcode@flashtux.org>
|
||||
Copyright (C) 2016-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
-->
|
||||
<style>
|
||||
|
||||
/* themes/colors */
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
/* dark theme */
|
||||
:root {
|
||||
color-scheme: dark;
|
||||
--body-bg-color: #1a1a1a;
|
||||
--body-color: #ddd;
|
||||
--body-font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
|
||||
--link-color: #7abeef;
|
||||
--table-thead-tfoot: #252525;
|
||||
--th-color: #fff;
|
||||
--toc-bg-color: #252525;
|
||||
--color-header1: #ddd;
|
||||
--color-header2: #da8975;
|
||||
--header-details-color: #aaa;
|
||||
--border: 1px solid #444;
|
||||
--code-bg-color: #252525;
|
||||
--pre-color: #ddd;
|
||||
--pre-bg-color: #202020;
|
||||
--pre-code-bg-color: #202020;
|
||||
--keyseq-color: #777;
|
||||
--kbd-bg-color: #252525;
|
||||
--kbd-border: 1px solid #333;
|
||||
--kbd-box-shadow: 0 1px 0 rgba(0, 0, 0, .2), inset 0 0 0 .1em #2c2c2c;
|
||||
--icon-note-color: #4d7cc6;
|
||||
--icon-tip-color: #fff;
|
||||
--icon-warning-color: #f39c12;
|
||||
--icon-caution-color: #bf3400;
|
||||
--icon-important-color: #f44336;
|
||||
--mark-bg-color: #007;
|
||||
}
|
||||
}
|
||||
|
||||
@media (not (prefers-color-scheme: dark)), (prefers-color-scheme: light) {
|
||||
/* light theme */
|
||||
:root {
|
||||
color-scheme: light;
|
||||
--body-bg-color: #fff;
|
||||
--body-color: #353535;
|
||||
--body-font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
|
||||
--link-color: #3d6baf;
|
||||
--table-thead-tfoot: #f7f8f7;
|
||||
--th-color: #000;
|
||||
--toc-bg-color: #f8f8f7;
|
||||
--color-header1: #000;
|
||||
--color-header2: #ba3925;
|
||||
--header-details-color: #797979;
|
||||
--border: 1px solid #dddddf;
|
||||
--code-bg-color: #f7f7f8;
|
||||
--keyseq-color: #333c;
|
||||
--pre-color: #353535;
|
||||
--pre-bg-color: #f7f7f8;
|
||||
--pre-code-bg-color: #202020;
|
||||
--kbd-bg-color: #f7f7f7;
|
||||
--kbd-border: 1px solid #ccc;
|
||||
--kbd-box-shadow: 0 1px 0 rgba(0, 0, 0, .2), inset 0 0 0 .1em #fff;
|
||||
--icon-note-color: #19407c;
|
||||
--icon-tip-color: #111;
|
||||
--icon-warning-color: #bf6900;
|
||||
--icon-caution-color: #ff0000;
|
||||
--icon-important-color: #bf0000;
|
||||
--mark-bg-color: #9df;
|
||||
}
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: var(--body-bg-color);
|
||||
color: var(--body-color);
|
||||
font-family: var(--body-font);
|
||||
}
|
||||
|
||||
h1 {
|
||||
color: var(--color-header1) !important;
|
||||
}
|
||||
|
||||
h2, h3, h4, h5, h6 {
|
||||
color: var(--color-header2) !important;
|
||||
}
|
||||
|
||||
h1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 {
|
||||
font-family: var(--body-font);
|
||||
}
|
||||
|
||||
a:link, a:visited, #header .details span.email a {
|
||||
color: var(--link-color);
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
table thead, table tfoot {
|
||||
background: var(--table-thead-tfoot) !important;
|
||||
}
|
||||
|
||||
table.tableblock, th.tableblock, td.tableblock {
|
||||
border: var(--border);
|
||||
}
|
||||
|
||||
th {
|
||||
color: var(--th-color) !important;
|
||||
}
|
||||
|
||||
td {
|
||||
background-color: var(--body-bg-color);
|
||||
color: var(--body-color) !important;
|
||||
}
|
||||
|
||||
#toc.toc2 {
|
||||
background-color: var(--toc-bg-color);
|
||||
border-right: none;
|
||||
}
|
||||
|
||||
#toc.toc2 > ul {
|
||||
font-size: .9em;
|
||||
}
|
||||
|
||||
@media screen and (max-width:767px) {
|
||||
#toc.toc2 {
|
||||
background-color: var(--body-bg-color);
|
||||
}
|
||||
}
|
||||
|
||||
p, .paragraph.lead > p, #preamble > .sectionbody > [class="paragraph"]:first-of-type p, #toctitle, .title {
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
#header .details {
|
||||
border-bottom: var(--border);
|
||||
color: var(--header-details-color);
|
||||
}
|
||||
|
||||
code, .prettyprint {
|
||||
background-color: var(--code-bg-color) !important;
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
pre {
|
||||
color: var(--pre-color) !important;
|
||||
}
|
||||
|
||||
pre > code {
|
||||
background-color: var(--pre-code-bg-color) !important;
|
||||
}
|
||||
|
||||
.keyseq {
|
||||
color: var(--keyseq-color);
|
||||
}
|
||||
|
||||
kbd {
|
||||
background-color: var(--kbd-bg-color) !important;
|
||||
border: var(--kbd-border) !important;
|
||||
box-shadow: var(--kbd-box-shadow);
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
.literalblock pre, .listingblock > .content > pre:not(.highlight), .listingblock > .content > pre[class="highlight"], .listingblock > .content > pre[class^="highlight "] {
|
||||
background-color: var(--pre-bg-color);
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
.sect1 + .sect1 {
|
||||
border-top: var(--border);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-note::before {
|
||||
color: var(--icon-note-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-tip::before {
|
||||
color: var(--icon-tip-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-warning::before {
|
||||
color: var(--icon-warning-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-caution::before {
|
||||
color: var(--icon-caution-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-important::before {
|
||||
color: var(--icon-important-color);
|
||||
}
|
||||
|
||||
.admonitionblock > table td.content {
|
||||
border-left: var(--border);
|
||||
}
|
||||
|
||||
mark {
|
||||
background-color: var(--mark-bg-color);
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
/* syntax highlighting tuning */
|
||||
|
||||
pre.pygments .tok-cp {
|
||||
color: #44cfaf;
|
||||
}
|
||||
|
||||
pre.pygments .tok-nc, pre.pygments .tok-nf {
|
||||
color: #649fef;
|
||||
}
|
||||
|
||||
pre.pygments .tok-gu, pre.pygments .tok-nc, pre.pygments .tok-nn {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* asciidoctor styles tuning */
|
||||
|
||||
#header, #content, #footnotes, #footer {
|
||||
#header,#content,#footnotes,#footer {
|
||||
max-width: none;
|
||||
padding-left: 3em;
|
||||
padding-right: 3em;
|
||||
}
|
||||
|
||||
#header #revnumber {
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5 {
|
||||
h1,h2,h3,h4,h5 {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.literalblock pre {
|
||||
font-family: "DejaVu Sans Mono", "Liberation Mono", "Lucida Console", monospace, 'Courier New', Courier;
|
||||
line-height: inherit;
|
||||
font-family: monospace, 'Courier New', Courier;
|
||||
line-height: normal;
|
||||
}
|
||||
|
||||
kbd {
|
||||
font-size: .9em;
|
||||
}
|
||||
|
||||
.keyseq {
|
||||
margin-left: .2em;
|
||||
margin-right: .2em;
|
||||
}
|
||||
|
||||
.tableblock kbd {
|
||||
margin-top: .2em;
|
||||
margin-bottom: .2em;
|
||||
}
|
||||
|
||||
.hex {
|
||||
padding: 0 .2em;
|
||||
border: var(--border);
|
||||
border: 1px solid #88b;
|
||||
margin: 0 .2em;
|
||||
font-family: monospace;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -0,0 +1,164 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 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/>.
|
||||
#
|
||||
|
||||
if(ENABLE_MAN)
|
||||
# man page: weechat
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat.1
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.en.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.en.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/man.en.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat.1 (en)"
|
||||
)
|
||||
add_custom_target(doc-man-weechat-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat.1)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.1 DESTINATION ${MANDIR}/man1)
|
||||
|
||||
if(ENABLE_HEADLESS)
|
||||
# man page: weechat-headless
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat-headless.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.en.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.en.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/man.en.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat-headless.1 (en)"
|
||||
)
|
||||
add_custom_target(doc-man-weechat-headless-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1 DESTINATION ${MANDIR}/man1)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(ENABLE_DOC)
|
||||
|
||||
file(GLOB AUTOGEN_USER "${CMAKE_CURRENT_SOURCE_DIR}/includes/autogen_user_*.adoc")
|
||||
file(GLOB AUTOGEN_PLUGIN "${CMAKE_CURRENT_SOURCE_DIR}/includes/autogen_api_*.adoc")
|
||||
|
||||
# user's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_user.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.en.adoc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.en.adoc
|
||||
${AUTOGEN_USER}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_user.en.html"
|
||||
)
|
||||
add_custom_target(doc-user-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# plugin API reference
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_plugin_api.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.en.adoc
|
||||
${AUTOGEN_PLUGIN}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_plugin_api.en.html"
|
||||
)
|
||||
add_custom_target(doc-plugin-api-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# scripting guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.en.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_scripting.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.en.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_scripting.en.html"
|
||||
)
|
||||
add_custom_target(doc-scripting-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# FAQ
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.en.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_faq.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.en.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_faq.en.html"
|
||||
)
|
||||
add_custom_target(doc-faq-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# quickstart
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_quickstart.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.en.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_quickstart.en.html"
|
||||
)
|
||||
add_custom_target(doc-quickstart-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# tester's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.en.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_tester.en.html"
|
||||
)
|
||||
add_custom_target(doc-tester-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# relay protocol
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.en.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_relay_protocol.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_relay_protocol.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_relay_protocol.en.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_relay_protocol.en.html"
|
||||
)
|
||||
add_custom_target(doc-relay-protocol-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# developer's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.en.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_dev.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_dev.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_dev.en.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_dev.en.html"
|
||||
)
|
||||
add_custom_target(doc-dev-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
endif()
|
||||
@@ -0,0 +1,135 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2006 Julien Louis <ptitlouis@sysif.net>
|
||||
#
|
||||
# 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/>.
|
||||
#
|
||||
|
||||
docdir = $(datadir)/doc/$(PACKAGE)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt \
|
||||
docinfo.html \
|
||||
weechat.1.en.adoc \
|
||||
weechat-headless.1.en.adoc \
|
||||
weechat_user.en.adoc \
|
||||
weechat_plugin_api.en.adoc \
|
||||
weechat_scripting.en.adoc \
|
||||
weechat_faq.en.adoc \
|
||||
weechat_quickstart.en.adoc \
|
||||
weechat_tester.en.adoc \
|
||||
weechat_relay_protocol.en.adoc \
|
||||
weechat_dev.en.adoc \
|
||||
includes/autogen_api_completions.en.adoc \
|
||||
includes/autogen_api_hdata.en.adoc \
|
||||
includes/autogen_api_infolists.en.adoc \
|
||||
includes/autogen_api_infos.en.adoc \
|
||||
includes/autogen_api_infos_hashtable.en.adoc \
|
||||
includes/autogen_api_plugins_priority.en.adoc \
|
||||
includes/autogen_api_url_options.en.adoc \
|
||||
includes/autogen_user_commands.en.adoc \
|
||||
includes/autogen_user_default_aliases.en.adoc \
|
||||
includes/autogen_user_irc_colors.en.adoc \
|
||||
includes/autogen_user_options.en.adoc \
|
||||
includes/cmdline_options.en.adoc \
|
||||
includes/man.en.adoc
|
||||
|
||||
if MAN
|
||||
man_targets = weechat.1 \
|
||||
weechat-headless.1
|
||||
man_install = install-man
|
||||
man_uninstall = uninstall-man
|
||||
endif
|
||||
if DOC
|
||||
doc_targets = weechat_user.en.html \
|
||||
weechat_plugin_api.en.html \
|
||||
weechat_scripting.en.html \
|
||||
weechat_faq.en.html \
|
||||
weechat_quickstart.en.html \
|
||||
weechat_tester.en.html \
|
||||
weechat_relay_protocol.en.html \
|
||||
weechat_dev.en.html
|
||||
doc_install = install-doc
|
||||
doc_uninstall = uninstall-doc
|
||||
endif
|
||||
all-local: $(man_targets) $(doc_targets)
|
||||
|
||||
# man pages
|
||||
weechat.1: weechat.1.en.adoc includes/cmdline_options.en.adoc includes/man.en.adoc
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -b manpage -o weechat.1 $(abs_top_srcdir)/doc/en/weechat.1.en.adoc
|
||||
weechat-headless.1: weechat-headless.1.en.adoc includes/cmdline_options.en.adoc includes/man.en.adoc
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -b manpage -o weechat-headless.1 $(abs_top_srcdir)/doc/en/weechat-headless.1.en.adoc
|
||||
|
||||
# user's guide
|
||||
weechat_user.en.html: weechat_user.en.adoc includes/cmdline_options.en.adoc $(wildcard includes/autogen_user_*.adoc) $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_user.en.html $(abs_top_srcdir)/doc/en/weechat_user.en.adoc
|
||||
|
||||
# plugin API reference
|
||||
weechat_plugin_api.en.html: weechat_plugin_api.en.adoc $(wildcard includes/autogen_api_*.adoc) $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_plugin_api.en.html $(abs_top_srcdir)/doc/en/weechat_plugin_api.en.adoc
|
||||
|
||||
# scripting guide
|
||||
weechat_scripting.en.html: weechat_scripting.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_scripting.en.html $(abs_top_srcdir)/doc/en/weechat_scripting.en.adoc
|
||||
|
||||
# FAQ
|
||||
weechat_faq.en.html: weechat_faq.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_faq.en.html $(abs_top_srcdir)/doc/en/weechat_faq.en.adoc
|
||||
|
||||
# quickstart
|
||||
weechat_quickstart.en.html: weechat_quickstart.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.en.html $(abs_top_srcdir)/doc/en/weechat_quickstart.en.adoc
|
||||
|
||||
# tester's guide
|
||||
weechat_tester.en.html: weechat_tester.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.en.html $(abs_top_srcdir)/doc/en/weechat_tester.en.adoc
|
||||
|
||||
# relay protocol
|
||||
weechat_relay_protocol.en.html: weechat_relay_protocol.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_relay_protocol.en.html $(abs_top_srcdir)/doc/en/weechat_relay_protocol.en.adoc
|
||||
|
||||
# developer's guide
|
||||
weechat_dev.en.html: weechat_dev.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_dev.en.html $(abs_top_srcdir)/doc/en/weechat_dev.en.adoc
|
||||
|
||||
# install man/docs
|
||||
|
||||
install-data-hook: $(man_install) $(doc_install)
|
||||
|
||||
install-man:
|
||||
$(mkinstalldirs) $(DESTDIR)$(mandir)/man1/
|
||||
$(INSTALL_DATA) *.1 $(DESTDIR)$(mandir)/man1/
|
||||
|
||||
install-doc:
|
||||
$(mkinstalldirs) $(DESTDIR)$(docdir)/
|
||||
$(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
|
||||
|
||||
# uninstall man/docs
|
||||
|
||||
uninstall-hook: $(man_uninstall) $(doc_uninstall)
|
||||
|
||||
uninstall-man:
|
||||
$(RM) $(DESTDIR)$(mandir)/man1/weechat.1
|
||||
$(RM) $(DESTDIR)$(mandir)/man1/weechat-headless.1
|
||||
-rmdir $(DESTDIR)$(mandir)/man1
|
||||
|
||||
uninstall-doc:
|
||||
$(RM) $(DESTDIR)$(docdir)/*.en.html
|
||||
-rmdir $(DESTDIR)$(docdir)
|
||||
|
||||
# clean
|
||||
|
||||
clean-local:
|
||||
-$(RM) weechat.1 weechat-headless.1 weechat_*.html
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
../docinfo.html
|
||||
@@ -0,0 +1,192 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::completions[]
|
||||
[width="100%",cols="^1,^2,7",options="header"]
|
||||
|===
|
||||
| Plugin | Name | Description
|
||||
|
||||
| alias | alias | list of aliases
|
||||
|
||||
| alias | alias_value | value of alias
|
||||
|
||||
| exec | exec_commands_ids | ids (numbers and names) of executed commands
|
||||
|
||||
| fset | fset_options | configuration files, sections, options and words of options
|
||||
|
||||
| guile | guile_script | list of scripts
|
||||
|
||||
| irc | irc_channel | current IRC channel
|
||||
|
||||
| irc | irc_channel_nicks_hosts | nicks and hostnames of current IRC channel
|
||||
|
||||
| irc | irc_channel_topic | topic of current IRC channel
|
||||
|
||||
| irc | irc_channels | channels on all IRC servers
|
||||
|
||||
| irc | irc_ignores_numbers | numbers for defined ignores
|
||||
|
||||
| irc | irc_modelist_masks | modelist masks of current IRC channel; required argument: modelist mode
|
||||
|
||||
| irc | irc_modelist_numbers | modelist numbers of current IRC channel; required argument: modelist mode
|
||||
|
||||
| irc | irc_msg_kick | default kick message
|
||||
|
||||
| irc | irc_msg_part | default part message for IRC channel
|
||||
|
||||
| irc | irc_notify_nicks | nicks in notify list
|
||||
|
||||
| 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_channels | channels on current IRC server
|
||||
|
||||
| irc | irc_server_nick | nick on current IRC server
|
||||
|
||||
| irc | irc_server_nicks | nicks on all channels of current IRC server
|
||||
|
||||
| irc | irc_server_privates | privates on current IRC server
|
||||
|
||||
| irc | irc_servers | IRC servers (internal names)
|
||||
|
||||
| irc | nick | nicks of current IRC channel
|
||||
|
||||
| javascript | javascript_script | list of scripts
|
||||
|
||||
| lua | lua_script | list of scripts
|
||||
|
||||
| perl | perl_script | list of scripts
|
||||
|
||||
| php | php_script | list of scripts
|
||||
|
||||
| python | python_script | list of scripts
|
||||
|
||||
| relay | relay_free_port | first free port for relay plugin
|
||||
|
||||
| relay | relay_protocol_name | all possible protocol.name for relay plugin
|
||||
|
||||
| relay | relay_relays | protocol.name of current relays for relay plugin
|
||||
|
||||
| ruby | ruby_script | list of scripts
|
||||
|
||||
| script | script_extensions | list of script extensions
|
||||
|
||||
| script | script_files | files in script directories
|
||||
|
||||
| script | script_languages | list of script languages
|
||||
|
||||
| script | script_scripts | list of scripts in repository
|
||||
|
||||
| script | script_scripts_installed | list of scripts installed (from repository)
|
||||
|
||||
| script | script_tags | tags of scripts in repository
|
||||
|
||||
| spell | spell_dicts | list of installed dictionaries
|
||||
|
||||
| spell | spell_langs | list of all languages supported
|
||||
|
||||
| tcl | tcl_script | list of scripts
|
||||
|
||||
| trigger | trigger_hook_arguments | default arguments for a hook
|
||||
|
||||
| trigger | trigger_hook_command | default command for a hook
|
||||
|
||||
| trigger | trigger_hook_conditions | default conditions for a hook
|
||||
|
||||
| trigger | trigger_hook_rc | default return codes for hook callback
|
||||
|
||||
| trigger | trigger_hook_regex | default regular expression for a hook
|
||||
|
||||
| trigger | trigger_hooks | hooks for triggers
|
||||
|
||||
| trigger | trigger_hooks_filter | hooks for triggers (for filter in monitor buffer)
|
||||
|
||||
| trigger | trigger_names | triggers
|
||||
|
||||
| trigger | trigger_names_default | default triggers
|
||||
|
||||
| trigger | trigger_option_value | value of a trigger option
|
||||
|
||||
| trigger | trigger_options | options for triggers
|
||||
|
||||
| trigger | trigger_post_action | trigger post actions
|
||||
|
||||
| weechat | bars_names | names of bars
|
||||
|
||||
| weechat | bars_options | options for bars
|
||||
|
||||
| weechat | buffer_local_variable_value | value of a buffer local variable
|
||||
|
||||
| weechat | buffer_local_variables | buffer local variables
|
||||
|
||||
| weechat | buffer_properties_get | properties that can be read on a buffer
|
||||
|
||||
| weechat | buffer_properties_set | properties that can be set on a buffer
|
||||
|
||||
| weechat | buffers_names | names of buffers
|
||||
|
||||
| weechat | buffers_numbers | numbers of buffers
|
||||
|
||||
| weechat | buffers_plugins_names | names of buffers (including plugins names)
|
||||
|
||||
| weechat | colors | color names
|
||||
|
||||
| weechat | commands | commands (weechat and plugins); optional argument: prefix to add before the commands
|
||||
|
||||
| weechat | config_files | configuration files
|
||||
|
||||
| weechat | config_option_values | values for a configuration option
|
||||
|
||||
| weechat | config_options | configuration options
|
||||
|
||||
| weechat | cursor_areas | areas ("chat" or bar name) for free cursor movement
|
||||
|
||||
| weechat | env_value | value of an environment variable
|
||||
|
||||
| weechat | env_vars | environment variables
|
||||
|
||||
| weechat | filename | filename; optional argument: default path (evaluated, see /help eval)
|
||||
|
||||
| weechat | filters_names | names of filters
|
||||
|
||||
| weechat | infolists | names of infolists hooked
|
||||
|
||||
| weechat | infos | names of infos hooked
|
||||
|
||||
| weechat | keys_codes | key codes
|
||||
|
||||
| weechat | keys_codes_for_reset | key codes that can be reset (keys added, redefined or removed)
|
||||
|
||||
| weechat | keys_contexts | key contexts
|
||||
|
||||
| weechat | layouts_names | names of layouts
|
||||
|
||||
| weechat | nicks | nicks in nicklist of current buffer
|
||||
|
||||
| weechat | palette_colors | palette colors
|
||||
|
||||
| weechat | plugins_commands | commands defined by plugins; optional argument: prefix to add before the commands
|
||||
|
||||
| weechat | plugins_installed | names of plugins installed
|
||||
|
||||
| weechat | plugins_names | names of plugins
|
||||
|
||||
| weechat | proxies_names | names of proxies
|
||||
|
||||
| weechat | proxies_options | options for proxies
|
||||
|
||||
| weechat | secured_data | names of secured data (file sec.conf, section data)
|
||||
|
||||
| weechat | weechat_commands | weechat commands; optional argument: prefix to add before the commands
|
||||
|
||||
| weechat | windows_numbers | numbers of windows
|
||||
|
||||
| xfer | nick | nicks of DCC chat
|
||||
|
||||
|===
|
||||
// end::completions[]
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user