mirror of
https://github.com/weechat/weechat.git
synced 2026-06-12 14:14:48 +02:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| e04047be68 | |||
| 710247891c | |||
| 2e1d16b7e5 |
+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
|
||||
+44
-179
@@ -1,66 +1,29 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
schedule:
|
||||
- cron: '22 9 * * 2'
|
||||
|
||||
env:
|
||||
WEECHAT_DEPENDENCIES: >-
|
||||
asciidoctor
|
||||
cmake
|
||||
curl
|
||||
devscripts
|
||||
equivs
|
||||
flake8
|
||||
gem2deb
|
||||
guile-3.0-dev
|
||||
lcov
|
||||
libargon2-dev
|
||||
libaspell-dev
|
||||
libcjson-dev
|
||||
libcpputest-dev
|
||||
libcurl4-gnutls-dev
|
||||
libgcrypt20-dev
|
||||
libgnutls28-dev
|
||||
liblua5.3-dev
|
||||
libncurses-dev
|
||||
libperl-dev
|
||||
libphp-embed
|
||||
libsodium-dev
|
||||
libv8-dev
|
||||
libzstd-dev
|
||||
ninja-build
|
||||
php-dev
|
||||
pkg-config
|
||||
pylint
|
||||
python3-bandit
|
||||
python3-dev
|
||||
python3-pip
|
||||
ruby-pygments.rb
|
||||
shellcheck
|
||||
tcl8.6-dev
|
||||
zlib1g-dev
|
||||
- push
|
||||
- pull_request
|
||||
|
||||
jobs:
|
||||
|
||||
tests_linux:
|
||||
build_linux:
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os:
|
||||
- ubuntu-22.04
|
||||
- ubuntu-20.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_no_cjson", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_CJSON=OFF -DENABLE_DOC=OFF" }
|
||||
- { name: "gcc_coverage", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_CODE_COVERAGE=ON" }
|
||||
- { name: "clang", cc: "clang", cxx: "clang++", buildargs: "" }
|
||||
- { name: "cmake_gcc", cc: "gcc", cxx: "g++", tool: "cmake", args: "" }
|
||||
- { name: "cmake_gcc_ninja", cc: "gcc", cxx: "g++", tool: "cmake", args: "-G Ninja" }
|
||||
- { name: "cmake_gcc_no_nls", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_NLS=OFF" }
|
||||
- { name: "cmake_gcc_py2", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_PYTHON2=ON" }
|
||||
- { name: "cmake_gcc_coverage", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_CODE_COVERAGE=ON" }
|
||||
- { 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: "" }
|
||||
|
||||
name: "Tests: ${{ matrix.config.name }} on ${{ matrix.os }}"
|
||||
name: ${{ matrix.config.name }} on ${{ matrix.os }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
@@ -69,30 +32,36 @@ 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 purge php8.1-dev
|
||||
sudo apt-get --yes --no-install-recommends install devscripts equivs python3-pip libenchant-dev autopoint cmake ninja-build lcov pkg-config libncursesw5-dev gem2deb libperl-dev python2-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev zlib1g-dev curl libcpputest-dev php8.0-dev libphp8.0-embed libargon2-0-dev libsodium-dev pylint python3-bandit asciidoctor
|
||||
sudo -H pip3 install --ignore-installed msgcheck
|
||||
|
||||
- name: Test patches
|
||||
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 scripts
|
||||
run: |
|
||||
pylint --additional-builtins=_ doc/docgen.py
|
||||
pylint doc/python_stub.py
|
||||
pylint tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
|
||||
bandit doc/docgen.py doc/python_stub.py
|
||||
bandit tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
|
||||
|
||||
- name: Check Python stub file
|
||||
run: ./tools/generate_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
|
||||
run: ./doc/python_stub.py | diff src/plugins/python/weechat.pyi -
|
||||
|
||||
- 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:
|
||||
@@ -103,26 +72,10 @@ jobs:
|
||||
weechat --colors
|
||||
weechat --license
|
||||
weechat --version
|
||||
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
|
||||
- name: Test Relay OpenAPI
|
||||
if: ${{ matrix.config.name == 'gcc' }}
|
||||
env:
|
||||
RELAY_PASSWORD: test
|
||||
run: |
|
||||
sudo -H pip3 install --ignore-installed schemathesis
|
||||
weechat-headless \
|
||||
--dir /tmp/weechat-test-api \
|
||||
--run-command '/set relay.network.password "${{ env.RELAY_PASSWORD }}"' \
|
||||
--run-command '/relay add api 9000' \
|
||||
--daemon \
|
||||
;
|
||||
sleep 5
|
||||
./tools/test_relay_api.sh http://localhost:9000
|
||||
echo '*/quit' >/tmp/weechat-test-api/weechat_fifo_*
|
||||
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: |
|
||||
@@ -132,44 +85,29 @@ jobs:
|
||||
lcov --list coverage.info
|
||||
bash <(curl -s https://codecov.io/bash) -f coverage.info || echo 'Codecov error'
|
||||
|
||||
tests_macos:
|
||||
build_macos:
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os:
|
||||
- macos-12
|
||||
- macos-11
|
||||
- macos-10.15
|
||||
config:
|
||||
- { name: "gcc", cc: "gcc", cxx: "g++" }
|
||||
- { name: "clang", cc: "clang", cxx: "clang++" }
|
||||
- { name: "cmake_gcc", cc: "gcc", cxx: "g++" }
|
||||
- { name: "cmake_clang", cc: "clang", cxx: "clang++" }
|
||||
|
||||
name: "Tests: ${{ matrix.config.name }} on ${{ matrix.os }}"
|
||||
name: ${{ matrix.config.name }} on ${{ matrix.os }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
|
||||
- name: Setup Homebrew
|
||||
id: setup-homebrew
|
||||
uses: Homebrew/actions/setup-homebrew@master
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- 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 cjson guile lua pkg-config ruby
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
brew install asciidoctor lua ruby
|
||||
|
||||
- name: Build
|
||||
env:
|
||||
@@ -177,7 +115,7 @@ jobs:
|
||||
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
|
||||
cmake .. -DENABLE_MAN=ON -DENABLE_DOC=ON -DENABLE_PHP=OFF
|
||||
make VERBOSE=1 -j2
|
||||
sudo make install
|
||||
|
||||
@@ -190,77 +128,4 @@ jobs:
|
||||
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"
|
||||
|
||||
codeql-analysis:
|
||||
|
||||
name: CodeQL
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
permissions:
|
||||
actions: read
|
||||
contents: read
|
||||
security-events: write
|
||||
|
||||
steps:
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
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 -H pip3 install --ignore-installed msgcheck
|
||||
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v3
|
||||
with:
|
||||
languages: cpp
|
||||
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@v3
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v3
|
||||
with:
|
||||
category: "/language:cpp"
|
||||
weechat --temp-dir --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
-8
@@ -67,7 +67,6 @@ Alphabetically:
|
||||
* Jiri Golembiovsky (GolemJ)
|
||||
* Joey Pabalinas (alyptik)
|
||||
* Johan Rylander
|
||||
* Johannes Kuhn
|
||||
* Joram Schrijver
|
||||
* Jos Ahrens
|
||||
* Joseph Kichline
|
||||
@@ -78,16 +77,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
|
||||
@@ -126,7 +122,6 @@ Alphabetically:
|
||||
* Rudolf Polzer (divVerent)
|
||||
* Ruslan Bekenev
|
||||
* Ryan Farley
|
||||
* Ryan Qian
|
||||
* Ryuunosuke Ayanokouzi
|
||||
* scumjr
|
||||
* Sergio Durigan Junior
|
||||
@@ -152,7 +147,6 @@ Alphabetically:
|
||||
* Vasco Almeida
|
||||
* Victorhck
|
||||
* Voroskoi
|
||||
* wfrsk
|
||||
* Wojciech Kwolek
|
||||
* W. Trevor King
|
||||
* Yannick Palanque
|
||||
@@ -161,4 +155,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
|
||||
|
||||
+108
-123
@@ -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_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra -Werror-implicit-function-declaration")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra")
|
||||
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()
|
||||
|
||||
# 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,70 +59,68 @@ 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_CJSON "Enable cJSON 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_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_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_TESTS "Enable tests" OFF)
|
||||
option(ENABLE_CODE_COVERAGE "Enable code coverage" OFF)
|
||||
|
||||
# code coverage
|
||||
add_library(coverage_config INTERFACE)
|
||||
@@ -138,29 +129,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.")
|
||||
@@ -183,8 +151,6 @@ endif()
|
||||
|
||||
add_definitions(-DHAVE_CONFIG_H)
|
||||
|
||||
include(FindPkgConfig)
|
||||
|
||||
include(CheckIncludeFiles)
|
||||
include(CheckFunctionExists)
|
||||
include(CheckSymbolExists)
|
||||
@@ -192,9 +158,6 @@ include(CheckSymbolExists)
|
||||
check_include_files("langinfo.h" HAVE_LANGINFO_CODESET)
|
||||
check_include_files("sys/resource.h" HAVE_SYS_RESOURCE_H)
|
||||
|
||||
check_include_files("malloc.h" HAVE_MALLOC_H)
|
||||
check_symbol_exists("malloc_trim" "malloc.h" HAVE_MALLOC_TRIM)
|
||||
|
||||
check_function_exists(mallinfo HAVE_MALLINFO)
|
||||
check_function_exists(mallinfo2 HAVE_MALLINFO2)
|
||||
|
||||
@@ -205,11 +168,24 @@ 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
|
||||
pkg_check_modules(LIBGCRYPT REQUIRED libgcrypt)
|
||||
find_package(GCRYPT REQUIRED)
|
||||
add_definitions(-DHAVE_GCRYPT)
|
||||
include_directories(${LIBGCRYPT_INCLUDE_DIRS})
|
||||
list(APPEND EXTRA_LIBS ${LIBGCRYPT_LDFLAGS})
|
||||
list(APPEND EXTRA_LIBS ${GCRYPT_LDFLAGS})
|
||||
|
||||
# Check for GnuTLS
|
||||
find_package(GnuTLS REQUIRED)
|
||||
@@ -220,18 +196,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()
|
||||
|
||||
# Check for cJSON
|
||||
if(ENABLE_CJSON)
|
||||
pkg_check_modules(LIBCJSON REQUIRED libcjson)
|
||||
add_definitions(-DHAVE_CJSON)
|
||||
endif()
|
||||
add_definitions(-DHAVE_ZLIB)
|
||||
|
||||
# Check for iconv
|
||||
find_package(Iconv)
|
||||
@@ -259,13 +224,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)
|
||||
@@ -279,16 +238,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}"
|
||||
)
|
||||
|
||||
@@ -304,7 +260,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
|
||||
@@ -313,23 +269,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)
|
||||
|
||||
+476
-1428
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
|
||||
+10
-12
@@ -5,9 +5,9 @@
|
||||
|
||||
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/x-follow-blue.svg["Twitter", link="https://x.com/WeeChatClient"]
|
||||
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"]
|
||||
image:https://img.shields.io/badge/help-donate%20%E2%9D%A4-ff69b4.svg["Donate", link="https://weechat.org/donate/"]
|
||||
@@ -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].
|
||||
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://tools.ietf.org/html/rfc1459[1459], https://tools.ietf.org/html/rfc2810[2810], https://tools.ietf.org/html/rfc2811[2811], https://tools.ietf.org/html/rfc2812[2812], and https://tools.ietf.org/html/rfc2813[2813].
|
||||
* *Small, fast, and very light*: the core is and should stay as light and fast as possible.
|
||||
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/language/perl/[Perl], https://weechat.org/scripts/language/python/[Python], https://weechat.org/scripts/language/ruby[Ruby], https://weechat.org/scripts/language/lua/[Lua], https://weechat.org/scripts/language/tcl/[Tcl], https://weechat.org/scripts/language/guile/[Scheme], https://weechat.org/scripts/language/javascript/[JavaScript] and https://weechat.org/scripts/language/php/[PHP]).
|
||||
* *Fully documented*: there is comprehensive https://weechat.org/doc/weechat/[documentation], which is https://weechat.org/doc/weechat/dev/#translations[translated] into several languages.
|
||||
* *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].
|
||||
|
||||
@@ -39,17 +39,15 @@ On WeeChat's website you can find https://weechat.org/about/screenshots/[more sc
|
||||
|
||||
== Installation
|
||||
|
||||
WeeChat can be installed using your favorite package manager (recommended) or by compiling it yourself.
|
||||
WeeChat can be installed using your favorite package manager (recommended)
|
||||
or by compiling it yourself.
|
||||
|
||||
For detailed instructions, please check the https://weechat.org/doc/weechat/user/#install[WeeChat user's guide].
|
||||
|
||||
== Semantic versioning
|
||||
|
||||
WeeChat is following a "practical" semantic versioning, see file link:Contributing.adoc#semantic-versioning[Contributing.adoc].
|
||||
For detailed instructions, please check the
|
||||
https://weechat.org/files/doc/stable/weechat_user.en.html#install[WeeChat user's guide].
|
||||
|
||||
== 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.
|
||||
|
||||
|
||||
+308
-1257
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}
|
||||
)
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
#
|
||||
# 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/>.
|
||||
#
|
||||
|
||||
# - Find Gcrypt
|
||||
# This module finds if libgcrypt is installed and determines where
|
||||
# the include files and libraries are.
|
||||
#
|
||||
# This code sets the following variables:
|
||||
#
|
||||
# GCRYPT_CFLAGS = cflags to use to compile
|
||||
# GCRYPT_LDFLAGS = ldflags to use to compile
|
||||
#
|
||||
|
||||
find_program(LIBGCRYPT_CONFIG_EXECUTABLE NAMES libgcrypt-config)
|
||||
|
||||
set(GCRYPT_LDFLAGS)
|
||||
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)
|
||||
|
||||
if(NOT DEFINED ${GCRYPT_CFLAGS})
|
||||
set(GCRYPT_CFLAGS " ")
|
||||
endif()
|
||||
|
||||
endif()
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set GCRYPT_FOUND to TRUE if
|
||||
# all listed variables are TRUE
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(GCRYPT REQUIRED_VARS GCRYPT_LDFLAGS GCRYPT_CFLAGS)
|
||||
|
||||
if(GCRYPT_FOUND)
|
||||
mark_as_advanced(GCRYPT_CFLAGS GCRYPT_LDFLAGS)
|
||||
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.
|
||||
#
|
||||
|
||||
+1
-1
@@ -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.
|
||||
#
|
||||
|
||||
+2
-3
@@ -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.
|
||||
#
|
||||
@@ -29,7 +29,6 @@ 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
|
||||
@@ -48,7 +47,7 @@ if(NOT PHP_FOUND)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --version OUTPUT_VARIABLE PHP_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if(${PHP_VERSION} MATCHES "^[78]")
|
||||
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 php8.1 php8.0 php8 php7.4 php7.3 php7.2 php7.1 php7.0 php7 php
|
||||
HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64
|
||||
)
|
||||
if(PHP_LIB)
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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.
|
||||
#
|
||||
@@ -37,7 +37,7 @@ if(PKG_CONFIG_FOUND)
|
||||
# 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)
|
||||
pkg_search_module(RUBY ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
|
||||
if(RUBY_FOUND AND ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# FIXME: weird hack: hardcoding the Ruby lib location on macOS
|
||||
set(RUBY_LDFLAGS "${RUBY_LDFLAGS} -L/usr/local/opt/ruby/lib")
|
||||
|
||||
+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.
|
||||
#
|
||||
|
||||
+1
-2
@@ -1,3 +1,4 @@
|
||||
#cmakedefine HAVE_LIBINTL_H
|
||||
#cmakedefine HAVE_SYS_RESOURCE_H
|
||||
#cmakedefine HAVE_FLOCK
|
||||
#cmakedefine HAVE_LANGINFO_CODESET
|
||||
@@ -5,8 +6,6 @@
|
||||
#cmakedefine ICONV_2ARG_IS_CONST 1
|
||||
#cmakedefine HAVE_MALLINFO
|
||||
#cmakedefine HAVE_MALLINFO2
|
||||
#cmakedefine HAVE_MALLOC_H
|
||||
#cmakedefine HAVE_MALLOC_TRIM
|
||||
#cmakedefine HAVE_EAT_NEWLINE_GLITCH
|
||||
#cmakedefine HAVE_ASPELL_VERSION_STRING
|
||||
#cmakedefine HAVE_ENCHANT_GET_VERSION
|
||||
|
||||
+1585
File diff suppressed because it is too large
Load Diff
@@ -4,26 +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,
|
||||
libcjson-dev
|
||||
Standards-Version: 4.6.2
|
||||
zlib1g-dev
|
||||
Standards-Version: 4.6.0.1
|
||||
Homepage: https://weechat.org/
|
||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||
|
||||
+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"
|
||||
@@ -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,102 +1,3 @@
|
||||
weechat (4.3.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release (Closes: #1067608)
|
||||
- fix FTBFS against libgcrypt 1.11 (Closes: #1071960)
|
||||
* Add build dependency on libcjson-dev
|
||||
* Replace pkg-config build dependency by pkgconf
|
||||
* Minor updates in debian/copyright
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 01 Jun 2024 14:21:02 +0000
|
||||
|
||||
weechat (4.1.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release (Closes: #1055278)
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Fri, 03 Nov 2023 20:23:37 +0000
|
||||
|
||||
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
|
||||
|
||||
@@ -4,26 +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,
|
||||
libcjson-dev
|
||||
Standards-Version: 4.6.2
|
||||
zlib1g-dev
|
||||
Standards-Version: 4.6.0.1
|
||||
Homepage: https://weechat.org/
|
||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||
|
||||
+13
-13
@@ -4,26 +4,26 @@ 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/core-command.c
|
||||
src/core/core-command.h
|
||||
Files: src/core/wee-command.c
|
||||
src/core/wee-command.h
|
||||
Copyright: 2005-2006, Emmanuel Bouthenot <kolter@openics.org>
|
||||
License: GPL-3+
|
||||
|
||||
Files: src/core/core-config-file.c
|
||||
src/core/core-config-file.h
|
||||
src/core/core-config.c
|
||||
src/core/core-config.h
|
||||
Files: src/core/wee-config-file.c
|
||||
src/core/wee-config-file.h
|
||||
src/core/wee-config.c
|
||||
src/core/wee-config.h
|
||||
Copyright: 2005-2006, Emmanuel Bouthenot <kolter@openics.org>
|
||||
License: GPL-3+
|
||||
|
||||
Files: src/core/hook/hook-connect.c
|
||||
Files: src/core/hook/wee-hook-connect.c
|
||||
Copyright: 2012, Simon Arlott
|
||||
License: GPL-3+
|
||||
|
||||
Files: src/core/hook/hook-connect.h
|
||||
Files: src/core/hook/wee-hook-connect.h
|
||||
Copyright: 2012, Simon Arlott
|
||||
License: GPL-3+
|
||||
|
||||
@@ -31,9 +31,9 @@ Files: src/gui/gui-history.c
|
||||
Copyright: 2005, Emmanuel Bouthenot <kolter@openics.org>
|
||||
License: GPL-3+
|
||||
|
||||
Files: src/core/core-completion.c
|
||||
src/core/core-log.c
|
||||
src/core/core-utf8.c
|
||||
Files: src/core/wee-completion.c
|
||||
src/core/wee-log.c
|
||||
src/core/wee-utf8.c
|
||||
src/core/weechat.h
|
||||
src/plugins/spell/spell-config.c
|
||||
src/plugins/spell/spell-config.h
|
||||
@@ -45,7 +45,7 @@ Files: src/core/core-completion.c
|
||||
Copyright: 2006, Emmanuel Bouthenot <kolter@openics.org>
|
||||
License: GPL-3+
|
||||
|
||||
Files: src/core/core-network.c
|
||||
Files: src/core/wee-network.c
|
||||
Copyright: 2005-2010, Emmanuel Bouthenot <kolter@openics.org>
|
||||
2010, Gu1ll4um3r0m41n <aeroxteam@gmail.com>
|
||||
2012, Simon Arlott
|
||||
|
||||
+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"
|
||||
+33
-304
@@ -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,97 +19,10 @@
|
||||
#
|
||||
|
||||
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
|
||||
)
|
||||
set(ASCIIDOCTOR_ARGS -a experimental -a reproducible -a "prewrap!" -a "webfonts!" -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=pygments -a pygments-style=native)
|
||||
|
||||
# sed arguments used to replace links in ChangeLog and release notes
|
||||
set(SED_LINKS_ARGS
|
||||
@@ -123,238 +36,54 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
|
||||
# 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"
|
||||
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}"
|
||||
${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"
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -a docinfodir="${CMAKE_CURRENT_SOURCE_DIR}" -o ChangeLog.html ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
${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")
|
||||
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"
|
||||
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}"
|
||||
${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"
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -a docinfodir="${CMAKE_CURRENT_SOURCE_DIR}" -o ReleaseNotes.html ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
${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"
|
||||
# scripting duide
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_functions.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_constants.${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"
|
||||
doc-autogen
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_functions.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_constants.${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()
|
||||
add_custom_target(rn DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html)
|
||||
|
||||
# man/doc in all languages
|
||||
add_subdirectory(cs)
|
||||
add_subdirectory(de)
|
||||
add_subdirectory(en)
|
||||
add_subdirectory(es)
|
||||
add_subdirectory(fr)
|
||||
add_subdirectory(it)
|
||||
add_subdirectory(ja)
|
||||
add_subdirectory(pl)
|
||||
add_subdirectory(ru)
|
||||
add_subdirectory(sr)
|
||||
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 sr
|
||||
|
||||
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:
|
||||
|
||||
@@ -99,7 +99,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,110 @@
|
||||
#
|
||||
# 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})
|
||||
|
||||
endif()
|
||||
@@ -0,0 +1,111 @@
|
||||
#
|
||||
# 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 \
|
||||
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
|
||||
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
|
||||
|
||||
# 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, "tag_xxx": Wert des Tags "xxx" ohne Escapezeichen (ein Schlüssel pro Tag), "message_without_tags": Nachrichten ohne Tags, "nick": Nick, "user": Benutzer, "host": Host, "command": Befehl, "channel": Kanal, "arguments": Argumente (schließt Kanal ein), "text": Text (zum Beispiel eine Nachricht von einem User), "param1" ... "paramN": geparste Befehlsparameter, "num_params": Anzahl geparste Befehlsparameter, "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird)
|
||||
|
||||
| irc | irc_message_split | trennt eine IRC Nachricht (standardmäßig in 512 Bytes große Nachrichten) | "message": IRC Nachricht, "server": Servername (optional) | "msg1" ... "msgN": Nachrichten die versendet werden sollen (ohne abschließendes "\r\n"), "args1" ... "argsN": Argumente für Nachrichten, "count": Anzahl der Nachrichten
|
||||
|
||||
| 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,29 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::plugins_priority[]
|
||||
. charset (16000)
|
||||
. logger (15000)
|
||||
. exec (14000)
|
||||
. trigger (13000)
|
||||
. spell (12000)
|
||||
. alias (11000)
|
||||
. buflist (10000)
|
||||
. fifo (9000)
|
||||
. typing (8000)
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. 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:
|
||||
@@ -100,7 +100,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
|
||||
|
||||
+252
-203
@@ -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
|
||||
@@ -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]]
|
||||
@@ -613,30 +665,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 +686,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 +695,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 +703,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 +770,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 +806,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 +865,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 +878,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 +918,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 +941,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 +988,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 +1020,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 +1033,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 +1070,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 +1130,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 +1149,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:
|
||||
|
||||
@@ -1114,6 +1191,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 +1230,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 +1243,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 +1265,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 +1284,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 +1305,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 +1352,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!
|
||||
|
||||
+402
-147
@@ -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,21 +553,319 @@ 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:
|
||||
|
||||
include::{autogendir}/autogen_scripting_functions.de.adoc[tag=functions]
|
||||
[width="100%",cols="1,3",options="header"]
|
||||
|===
|
||||
| Kategorie | Funktionen
|
||||
|
||||
| Allgemein |
|
||||
register
|
||||
|
||||
| Erweiterungen |
|
||||
plugin_get_name
|
||||
|
||||
| Strings |
|
||||
charset_set +
|
||||
iconv_to_internal +
|
||||
iconv_from_internal +
|
||||
gettext +
|
||||
ngettext +
|
||||
strlen_screen +
|
||||
string_match +
|
||||
string_match_list +
|
||||
string_has_highlight +
|
||||
string_has_highlight_regex +
|
||||
string_mask_to_regex +
|
||||
string_format_size +
|
||||
string_color_code_size +
|
||||
string_remove_color +
|
||||
string_is_command_char +
|
||||
string_input_for_buffer +
|
||||
string_eval_expression +
|
||||
string_eval_path_home
|
||||
|
||||
| Verzeichnisse |
|
||||
mkdir_home +
|
||||
mkdir +
|
||||
mkdir_parents
|
||||
|
||||
| sortierte Listen |
|
||||
list_new +
|
||||
list_add +
|
||||
list_search +
|
||||
list_search_pos +
|
||||
list_casesearch +
|
||||
list_casesearch_pos +
|
||||
list_get +
|
||||
list_set +
|
||||
list_next +
|
||||
list_prev +
|
||||
list_string +
|
||||
list_size +
|
||||
list_remove +
|
||||
list_remove_all +
|
||||
list_free
|
||||
|
||||
| Konfigurationsdatei |
|
||||
config_new +
|
||||
config_new_section +
|
||||
config_search_section +
|
||||
config_new_option +
|
||||
config_search_option +
|
||||
config_string_to_boolean +
|
||||
config_option_reset +
|
||||
config_option_set +
|
||||
config_option_set_null +
|
||||
config_option_unset +
|
||||
config_option_rename +
|
||||
config_option_is_null +
|
||||
config_option_default_is_null +
|
||||
config_boolean +
|
||||
config_boolean_default +
|
||||
config_integer +
|
||||
config_integer_default +
|
||||
config_string +
|
||||
config_string_default +
|
||||
config_color +
|
||||
config_color_default +
|
||||
config_write_option +
|
||||
config_write_line +
|
||||
config_write +
|
||||
config_read +
|
||||
config_reload +
|
||||
config_option_free +
|
||||
config_section_free_options +
|
||||
config_section_free +
|
||||
config_free +
|
||||
config_get +
|
||||
config_get_plugin +
|
||||
config_is_set_plugin +
|
||||
config_set_plugin +
|
||||
config_set_desc_plugin +
|
||||
config_unset_plugin
|
||||
|
||||
| Tastenbelegung |
|
||||
key_bind +
|
||||
key_unbind
|
||||
|
||||
| Ausgabe |
|
||||
prefix +
|
||||
color +
|
||||
print (für Python: prnt) +
|
||||
print_date_tags (für Python: prnt_date_tags) +
|
||||
print_y (für Python: prnt_y) +
|
||||
log_print
|
||||
|
||||
| Hooks |
|
||||
hook_command +
|
||||
hook_command_run +
|
||||
hook_timer +
|
||||
hook_fd +
|
||||
hook_process +
|
||||
hook_process_hashtable +
|
||||
hook_connect +
|
||||
hook_line +
|
||||
hook_print +
|
||||
hook_signal +
|
||||
hook_signal_send +
|
||||
hook_hsignal +
|
||||
hook_hsignal_send +
|
||||
hook_config +
|
||||
hook_completion +
|
||||
hook_modifier +
|
||||
hook_modifier_exec +
|
||||
hook_info +
|
||||
hook_info_hashtable +
|
||||
hook_infolist +
|
||||
hook_focus +
|
||||
hook_set +
|
||||
unhook +
|
||||
unhook_all
|
||||
|
||||
| Buffer |
|
||||
buffer_new +
|
||||
current_buffer +
|
||||
buffer_search +
|
||||
buffer_search_main +
|
||||
buffer_clear +
|
||||
buffer_close +
|
||||
buffer_merge +
|
||||
buffer_unmerge +
|
||||
buffer_get_integer +
|
||||
buffer_get_string +
|
||||
buffer_get_pointer +
|
||||
buffer_set +
|
||||
buffer_string_replace_local_var +
|
||||
buffer_match_list
|
||||
|
||||
| Fenster |
|
||||
current_window +
|
||||
window_search_with_buffer +
|
||||
window_get_integer +
|
||||
window_get_string +
|
||||
window_get_pointer +
|
||||
window_set_title
|
||||
|
||||
| Nickliste |
|
||||
nicklist_add_group +
|
||||
nicklist_search_group +
|
||||
nicklist_add_nick +
|
||||
nicklist_search_nick +
|
||||
nicklist_remove_group +
|
||||
nicklist_remove_nick +
|
||||
nicklist_remove_all +
|
||||
nicklist_group_get_integer +
|
||||
nicklist_group_get_string +
|
||||
nicklist_group_get_pointer +
|
||||
nicklist_group_set +
|
||||
nicklist_nick_get_integer +
|
||||
nicklist_nick_get_string +
|
||||
nicklist_nick_get_pointer +
|
||||
nicklist_nick_set
|
||||
|
||||
| Bars |
|
||||
bar_item_search +
|
||||
bar_item_new +
|
||||
bar_item_update +
|
||||
bar_item_remove +
|
||||
bar_search +
|
||||
bar_new +
|
||||
bar_set +
|
||||
bar_update +
|
||||
bar_remove
|
||||
|
||||
| Befehle |
|
||||
command +
|
||||
command_options
|
||||
|
||||
| Vervollständigung |
|
||||
completion_new +
|
||||
completion_search +
|
||||
completion_get_string +
|
||||
completion_list_add +
|
||||
completion_free
|
||||
|
||||
| Informationen |
|
||||
info_get +
|
||||
info_get_hashtable
|
||||
|
||||
| Infolisten |
|
||||
infolist_new +
|
||||
infolist_new_item +
|
||||
infolist_new_var_integer +
|
||||
infolist_new_var_string +
|
||||
infolist_new_var_pointer +
|
||||
infolist_new_var_time +
|
||||
infolist_get +
|
||||
infolist_next +
|
||||
infolist_prev +
|
||||
infolist_reset_item_cursor +
|
||||
infolist_search_var +
|
||||
infolist_fields +
|
||||
infolist_integer +
|
||||
infolist_string +
|
||||
infolist_pointer +
|
||||
infolist_time +
|
||||
infolist_free
|
||||
|
||||
| hdata |
|
||||
hdata_get +
|
||||
hdata_get_var_offset +
|
||||
hdata_get_var_type_string +
|
||||
hdata_get_var_array_size +
|
||||
hdata_get_var_array_size_string +
|
||||
hdata_get_var_hdata +
|
||||
hdata_get_list +
|
||||
hdata_check_pointer +
|
||||
hdata_move +
|
||||
hdata_search +
|
||||
hdata_char +
|
||||
hdata_integer +
|
||||
hdata_long +
|
||||
hdata_string +
|
||||
hdata_pointer +
|
||||
hdata_time +
|
||||
hdata_hashtable +
|
||||
hdata_compare +
|
||||
hdata_update +
|
||||
hdata_get_string
|
||||
|
||||
| Upgrade |
|
||||
upgrade_new +
|
||||
upgrade_write_object +
|
||||
upgrade_read +
|
||||
upgrade_close
|
||||
|===
|
||||
|
||||
[[script_api_constants]]
|
||||
=== Konstanten
|
||||
|
||||
Liste der Konstanten in Skript API:
|
||||
|
||||
include::{autogendir}/autogen_scripting_constants.de.adoc[tag=constants]
|
||||
[width="100%",cols="1,3",options="header"]
|
||||
|===
|
||||
| Kategorie | Konstanten
|
||||
|
||||
| return codes |
|
||||
`WEECHAT_RC_OK` (integer) +
|
||||
`WEECHAT_RC_OK_EAT` (integer) +
|
||||
`WEECHAT_RC_ERROR` (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) +
|
||||
`WEECHAT_CONFIG_WRITE_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (integer)
|
||||
|
||||
| sortierte Listen |
|
||||
`WEECHAT_LIST_POS_SORT` (string) +
|
||||
`WEECHAT_LIST_POS_BEGINNING` (string) +
|
||||
`WEECHAT_LIST_POS_END` (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) +
|
||||
`WEECHAT_HOOK_PROCESS_ERROR` (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) +
|
||||
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_TIMEOUT` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (integer)
|
||||
|
||||
| hook Signal |
|
||||
`WEECHAT_HOOK_SIGNAL_STRING` (string) +
|
||||
`WEECHAT_HOOK_SIGNAL_INT` (string) +
|
||||
`WEECHAT_HOOK_SIGNAL_POINTER` (string)
|
||||
|===
|
||||
|
||||
[[common_tasks]]
|
||||
== Gemeinschaftsaufgabe
|
||||
@@ -579,7 +873,7 @@ include::{autogendir}/autogen_scripting_constants.de.adoc[tag=constants]
|
||||
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
|
||||
@@ -599,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
|
||||
@@ -779,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
|
||||
|
||||
@@ -840,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/",
|
||||
@@ -856,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",
|
||||
@@ -876,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
|
||||
@@ -1032,71 +1298,63 @@ 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+`
|
||||
| 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]
|
||||
@@ -1120,9 +1378,6 @@ 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",
|
||||
|
||||
+958
-1756
File diff suppressed because it is too large
Load Diff
+850
@@ -0,0 +1,850 @@
|
||||
#!/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',
|
||||
'sr_RS',
|
||||
)
|
||||
|
||||
# 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',
|
||||
'typing': 'o',
|
||||
}
|
||||
|
||||
# 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',
|
||||
'',
|
||||
)
|
||||
+9
-18
@@ -1,6 +1,6 @@
|
||||
<!--
|
||||
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>
|
||||
|
||||
@@ -9,11 +9,10 @@
|
||||
@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;
|
||||
--body-font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
|
||||
--link-color: #8aceff;
|
||||
--table-thead-tfoot: #252525;
|
||||
--th-color: #fff;
|
||||
--toc-bg-color: #252525;
|
||||
@@ -22,7 +21,6 @@
|
||||
--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;
|
||||
@@ -41,11 +39,10 @@
|
||||
@media (not (prefers-color-scheme: dark)), (prefers-color-scheme: light) {
|
||||
/* light theme */
|
||||
:root {
|
||||
color-scheme: light;
|
||||
--body-bg-color: #fff;
|
||||
--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;
|
||||
--body-font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
|
||||
--link-color: #1d4b8f;
|
||||
--table-thead-tfoot: #f7f8f7;
|
||||
--th-color: #000;
|
||||
--toc-bg-color: #f8f8f7;
|
||||
@@ -55,7 +52,6 @@
|
||||
--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;
|
||||
@@ -90,7 +86,6 @@ h1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 {
|
||||
|
||||
a:link, a:visited, #header .details span.email a {
|
||||
color: var(--link-color);
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
table thead, table tfoot {
|
||||
@@ -139,10 +134,6 @@ code, .prettyprint {
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
pre {
|
||||
color: var(--pre-color) !important;
|
||||
}
|
||||
|
||||
pre > code {
|
||||
background-color: var(--pre-code-bg-color) !important;
|
||||
}
|
||||
@@ -199,7 +190,7 @@ mark {
|
||||
/* syntax highlighting tuning */
|
||||
|
||||
pre.pygments .tok-cp {
|
||||
color: #44cfaf;
|
||||
color: #ed4848;
|
||||
}
|
||||
|
||||
pre.pygments .tok-nc, pre.pygments .tok-nf {
|
||||
@@ -227,8 +218,8 @@ h1, h2, h3, h4, h5 {
|
||||
}
|
||||
|
||||
.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 {
|
||||
|
||||
@@ -0,0 +1,151 @@
|
||||
#
|
||||
# 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})
|
||||
|
||||
# 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,129 @@
|
||||
#
|
||||
# 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_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_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
|
||||
|
||||
# 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[]
|
||||
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"]
|
||||
|===
|
||||
| Plugin | Name | Description | Pointer | Arguments
|
||||
|
||||
| alias | alias | list of aliases | alias pointer (optional) | alias name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| alias | alias_default | list of default aliases | - | -
|
||||
|
||||
| buflist | buflist | list of buffers in a buflist bar item | - | buflist bar item name (optional)
|
||||
|
||||
| fset | fset_option | list of fset options | fset option pointer (optional) | option name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| guile | guile_script | list of scripts | script pointer (optional) | script name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| irc | irc_channel | list of channels for an IRC server | channel pointer (optional) | server,channel (channel is optional)
|
||||
|
||||
| irc | irc_color_weechat | mapping between IRC color codes and WeeChat color names | - | -
|
||||
|
||||
| irc | irc_ignore | list of IRC ignores | ignore pointer (optional) | -
|
||||
|
||||
| irc | irc_modelist | list of channel mode lists for an IRC channel | mode list pointer (optional) | server,channel,type (type is optional)
|
||||
|
||||
| irc | irc_modelist_item | list of items in a channel mode list | mode list item pointer (optional) | server,channel,type,number (number is optional)
|
||||
|
||||
| irc | irc_nick | list of nicks for an IRC channel | nick pointer (optional) | server,channel,nick (nick is optional)
|
||||
|
||||
| irc | irc_notify | list of notify | notify pointer (optional) | server name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| irc | irc_server | list of IRC servers | server pointer (optional) | server name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| javascript | javascript_script | list of scripts | script pointer (optional) | script name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| logger | logger_buffer | list of logger buffers | logger pointer (optional) | -
|
||||
|
||||
| lua | lua_script | list of scripts | script pointer (optional) | script name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| perl | perl_script | list of scripts | script pointer (optional) | script name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| php | php_script | list of scripts | script pointer (optional) | script name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| python | python_script | list of scripts | script pointer (optional) | script name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| relay | relay | list of relay clients | relay pointer (optional) | -
|
||||
|
||||
| ruby | ruby_script | list of scripts | script pointer (optional) | script name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| script | script_script | list of scripts | script pointer (optional) | script name with extension (wildcard "*" is allowed) (optional)
|
||||
|
||||
| tcl | tcl_script | list of scripts | script pointer (optional) | script name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| weechat | bar | list of bars | bar pointer (optional) | bar name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| weechat | bar_item | list of bar items | bar item pointer (optional) | bar item name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| weechat | bar_window | list of bar windows | bar window pointer (optional) | -
|
||||
|
||||
| weechat | buffer | list of buffers | buffer pointer (optional) | buffer name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| weechat | buffer_lines | lines of a buffer | buffer pointer | -
|
||||
|
||||
| weechat | filter | list of filters | - | filter name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| weechat | history | history of commands | buffer pointer (if not set, return global history) (optional) | -
|
||||
|
||||
| weechat | hook | list of hooks | hook pointer (optional) | type,arguments (type is command/timer/.., arguments to get only some hooks (wildcard "*" is allowed), both are optional)
|
||||
|
||||
| weechat | hotlist | list of buffers in hotlist | - | -
|
||||
|
||||
| weechat | key | list of key bindings | - | context ("default", "search", "cursor" or "mouse") (optional)
|
||||
|
||||
| weechat | layout | list of layouts | - | -
|
||||
|
||||
| weechat | nicklist | nicks in nicklist for a buffer | buffer pointer | nick_xxx or group_xxx to get only nick/group xxx (optional)
|
||||
|
||||
| weechat | option | list of options | - | option name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| weechat | plugin | list of plugins | plugin pointer (optional) | plugin name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| weechat | proxy | list of proxies | proxy pointer (optional) | proxy name (wildcard "*" is allowed) (optional)
|
||||
|
||||
| weechat | url_options | options for URL | - | -
|
||||
|
||||
| weechat | window | list of windows | window pointer (optional) | "current" for current window or a window number (optional)
|
||||
|
||||
| xfer | xfer | list of xfer | xfer pointer (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"]
|
||||
|===
|
||||
| Plugin | Name | Description | Arguments
|
||||
|
||||
| fifo | fifo_filename | name of FIFO pipe | -
|
||||
|
||||
| guile | guile_eval | evaluation of source code | source code to execute
|
||||
|
||||
| guile | guile_interpreter | name of the interpreter used | -
|
||||
|
||||
| guile | guile_version | version of the interpreter used | -
|
||||
|
||||
| irc | irc_buffer | get buffer pointer for an IRC server/channel/nick | server,channel,nick (channel and nicks are optional)
|
||||
|
||||
| irc | irc_is_channel | 1 if string is a valid IRC channel name for server | server,channel (server is optional)
|
||||
|
||||
| irc | irc_is_message_ignored | 1 if the nick is ignored (message is not displayed) | server,message (message is the raw IRC message)
|
||||
|
||||
| irc | irc_is_nick | 1 if string is a valid IRC nick name | server,nickname (server is optional)
|
||||
|
||||
| irc | irc_nick | get current nick on a server | server name
|
||||
|
||||
| irc | irc_nick_color | get nick color code (*deprecated* since version 1.5, replaced by "nick_color") | nickname
|
||||
|
||||
| irc | irc_nick_color_name | get nick color name (*deprecated* since version 1.5, replaced by "nick_color_name") | nickname
|
||||
|
||||
| irc | irc_nick_from_host | get nick from IRC host | IRC host (like `:nick!name@server.com`)
|
||||
|
||||
| irc | irc_server_isupport | 1 if server supports this feature (from IRC message 005) | server,feature
|
||||
|
||||
| irc | irc_server_isupport_value | value of feature, if supported by server (from IRC message 005) | server,feature
|
||||
|
||||
| javascript | javascript_eval | evaluation of source code | source code to execute
|
||||
|
||||
| javascript | javascript_interpreter | name of the interpreter used | -
|
||||
|
||||
| javascript | javascript_version | version of the interpreter used | -
|
||||
|
||||
| lua | lua_eval | evaluation of source code | source code to execute
|
||||
|
||||
| lua | lua_interpreter | name of the interpreter used | -
|
||||
|
||||
| lua | lua_version | version of the interpreter used | -
|
||||
|
||||
| perl | perl_eval | evaluation of source code | source code to execute
|
||||
|
||||
| perl | perl_interpreter | name of the interpreter used | -
|
||||
|
||||
| perl | perl_version | version of the interpreter used | -
|
||||
|
||||
| php | php_eval | evaluation of source code | source code to execute
|
||||
|
||||
| php | php_interpreter | name of the interpreter used | -
|
||||
|
||||
| php | php_version | version of the interpreter used | -
|
||||
|
||||
| python | python2_bin | path to Python 2.x interpreter (*deprecated* since version 2.6, scripts must use Python 3 only) | -
|
||||
|
||||
| python | python_eval | evaluation of source code | source code to execute
|
||||
|
||||
| python | python_interpreter | name of the interpreter used | -
|
||||
|
||||
| python | python_version | version of the interpreter used | -
|
||||
|
||||
| relay | relay_client_count | number of clients for relay | protocol,status (both are optional, for each argument "*" means all; protocols: irc, weechat; statuses: connecting, waiting_auth, connected, auth_failed, disconnected)
|
||||
|
||||
| ruby | ruby_eval | evaluation of source code | source code to execute
|
||||
|
||||
| ruby | ruby_interpreter | name of the interpreter used | -
|
||||
|
||||
| ruby | ruby_version | version of the interpreter used | -
|
||||
|
||||
| spell | spell_dict | comma-separated list of dictionaries used in buffer | buffer pointer ("0x12345678") or buffer full name ("irc.libera.#weechat")
|
||||
|
||||
| tcl | tcl_eval | evaluation of source code | source code to execute
|
||||
|
||||
| tcl | tcl_interpreter | name of the interpreter used | -
|
||||
|
||||
| tcl | tcl_version | version of the interpreter used | -
|
||||
|
||||
| weechat | auto_connect | 1 if automatic connection to servers is enabled, 0 if it has been disabled by the user (option "-a" or "--no-connect") | -
|
||||
|
||||
| weechat | charset_internal | WeeChat internal charset | -
|
||||
|
||||
| weechat | charset_terminal | terminal charset | -
|
||||
|
||||
| weechat | color_ansi_regex | POSIX extended regular expression to search ANSI escape codes | -
|
||||
|
||||
| weechat | color_rgb2term | RGB color converted to terminal color (0-255) | rgb,limit (limit is optional and is set to 256 by default)
|
||||
|
||||
| weechat | color_term2rgb | terminal color (0-255) converted to RGB color | color (terminal color: 0-255)
|
||||
|
||||
| weechat | cursor_mode | 1 if cursor mode is enabled | -
|
||||
|
||||
| weechat | date | WeeChat compilation date/time | -
|
||||
|
||||
| weechat | dir_separator | directory separator | -
|
||||
|
||||
| weechat | filters_enabled | 1 if filters are enabled | -
|
||||
|
||||
| weechat | inactivity | keyboard inactivity (seconds) | -
|
||||
|
||||
| weechat | locale | locale used for translating messages | -
|
||||
|
||||
| weechat | nick_color | get nick color code | nickname;colors (colors is an optional comma-separated list of colors to use; background is allowed for a color with format text:background; if colors is present, WeeChat options with nick colors and forced nick colors are ignored)
|
||||
|
||||
| weechat | nick_color_name | get nick color name | nickname;colors (colors is an optional comma-separated list of colors to use; background is allowed for a color with format text:background; if colors is present, WeeChat options with nick colors and forced nick colors are ignored)
|
||||
|
||||
| weechat | pid | WeeChat PID (process ID) | -
|
||||
|
||||
| weechat | term_color_pairs | number of color pairs supported in terminal | -
|
||||
|
||||
| weechat | term_colors | number of colors supported in terminal | -
|
||||
|
||||
| weechat | term_height | height of terminal | -
|
||||
|
||||
| weechat | term_width | width of terminal | -
|
||||
|
||||
| weechat | totp_generate | generate a Time-based One-Time Password (TOTP) | secret (in base32), timestamp (optional, current time by default), number of digits (optional, between 4 and 10, 6 by default)
|
||||
|
||||
| weechat | totp_validate | validate a Time-based One-Time Password (TOTP): 1 if TOTP is correct, otherwise 0 | secret (in base32), one-time password, timestamp (optional, current time by default), number of passwords before/after to test (optional, 0 by default)
|
||||
|
||||
| weechat | uptime | WeeChat uptime (format: "days:hh:mm:ss") | "days" (number of days) or "seconds" (number of seconds) (optional)
|
||||
|
||||
| weechat | version | WeeChat version | -
|
||||
|
||||
| weechat | version_git | WeeChat git version (output of command "git describe" for a development version only, empty for a stable release) | -
|
||||
|
||||
| weechat | version_number | WeeChat version (as number) | -
|
||||
|
||||
| weechat | weechat_cache_dir | WeeChat cache directory | -
|
||||
|
||||
| weechat | weechat_config_dir | WeeChat config directory | -
|
||||
|
||||
| weechat | weechat_daemon | 1 if WeeChat is running in daemon mode (headless, in background) | -
|
||||
|
||||
| weechat | weechat_data_dir | WeeChat data directory | -
|
||||
|
||||
| weechat | weechat_dir | WeeChat directory (*deprecated* since version 3.2, replaced by "weechat_config_dir", "weechat_data_dir", "weechat_cache_dir" and "weechat_runtime_dir") | -
|
||||
|
||||
| weechat | weechat_headless | 1 if WeeChat is running headless | -
|
||||
|
||||
| weechat | weechat_libdir | WeeChat "lib" directory | -
|
||||
|
||||
| weechat | weechat_localedir | WeeChat "locale" directory | -
|
||||
|
||||
| weechat | weechat_runtime_dir | WeeChat runtime directory | -
|
||||
|
||||
| weechat | weechat_sharedir | WeeChat "share" directory | -
|
||||
|
||||
| weechat | weechat_site | WeeChat site | -
|
||||
|
||||
| weechat | weechat_site_download | WeeChat site, download page | -
|
||||
|
||||
| weechat | weechat_upgrading | 1 if WeeChat is upgrading (command `/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"]
|
||||
|===
|
||||
| Plugin | Name | Description | Hashtable (input) | Hashtable (output)
|
||||
|
||||
| irc | irc_message_parse | parse an IRC message | "message": IRC message, "server": server name (optional) | "tags": tags, "tag_xxx": unescaped value of tag "xxx" (one key per tag), "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "param1" ... "paramN": parsed command parameters, "num_params": number of parsed command parameters, "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
|
||||
|
||||
| irc | irc_message_split | split an IRC message (to fit in 512 bytes by default) | "message": IRC message, "server": server name (optional) | "msg1" ... "msgN": messages to send (without final "\r\n"), "args1" ... "argsN": arguments of messages, "count": number of messages
|
||||
|
||||
| weechat | focus_info | get focus info | "x": x coordinate (string with integer >= 0), "y": y coordinate (string with integer >= 0) | see function "hook_focus" in Plugin API reference
|
||||
|
||||
| weechat | secured_data | secured data | - | secured data: names and values (be careful: the values are sensitive data: do NOT print/log them anywhere)
|
||||
|
||||
|===
|
||||
// end::infos_hashtable[]
|
||||
@@ -0,0 +1,29 @@
|
||||
//
|
||||
// This file is auto-generated by script docgen.py.
|
||||
// DO NOT EDIT BY HAND!
|
||||
//
|
||||
|
||||
// tag::plugins_priority[]
|
||||
. charset (16000)
|
||||
. logger (15000)
|
||||
. exec (14000)
|
||||
. trigger (13000)
|
||||
. spell (12000)
|
||||
. alias (11000)
|
||||
. buflist (10000)
|
||||
. fifo (9000)
|
||||
. typing (8000)
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. 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"]
|
||||
|===
|
||||
| Option | Type ^(1)^ | Constants ^(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 | Command | Completion
|
||||
|
||||
| /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 color | WeeChat color
|
||||
|
||||
| 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[]
|
||||
For complete doc on plugin options, please look at plugins documentation in
|
||||
https://weechat.org/doc/[WeeChat user's guide].
|
||||
https://weechat.org/doc[WeeChat user's guide].
|
||||
|
||||
With irc plugin, you can connect to temporary server with an URL like:
|
||||
|
||||
@@ -100,7 +100,7 @@ $HOME/.local/share/weechat/weechat.log::
|
||||
WeeChat is written by Sébastien Helleu and contributors (complete list is in
|
||||
the AUTHORS.adoc file).
|
||||
|
||||
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
|
||||
|
||||
@@ -60,4 +60,4 @@ include::includes/man.en.adoc[tag=copyright]
|
||||
|
||||
== SUPPORT / REPORTING BUGS
|
||||
|
||||
For help or a bug report: https://weechat.org/about/support/
|
||||
For help or a bug report: https://weechat.org/about/support
|
||||
|
||||
@@ -57,4 +57,4 @@ include::includes/man.en.adoc[tag=copyright]
|
||||
|
||||
== SUPPORT / REPORTING BUGS
|
||||
|
||||
For help or a bug report: https://weechat.org/about/support/
|
||||
For help or a bug report: https://weechat.org/about/support
|
||||
|
||||
+375
-505
File diff suppressed because it is too large
Load Diff
+207
-184
@@ -2,6 +2,18 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
:toc: left
|
||||
:toclevels: 2
|
||||
:sectnums:
|
||||
:sectnumlevels: 2
|
||||
:docinfo1:
|
||||
|
||||
|
||||
This document is written for WeeChat versions ≥ 0.3.0 but should preferably be
|
||||
used with latest stable version of WeeChat.
|
||||
|
||||
toc::[]
|
||||
|
||||
|
||||
[[general]]
|
||||
== General
|
||||
@@ -20,8 +32,7 @@ apply to WeeChat!).
|
||||
|
||||
Because WeeChat is very light and brings innovating features.
|
||||
|
||||
More info on the WeeChat
|
||||
https://weechat.org/about/features/[features page ^↗^^].
|
||||
More info on the WeeChat features page: https://weechat.org/about/features
|
||||
|
||||
[[compilation_install]]
|
||||
== Compilation / install
|
||||
@@ -29,24 +40,27 @@ https://weechat.org/about/features/[features page ^↗^^].
|
||||
[[gui]]
|
||||
=== I've heard about many GUIs for WeeChat. How can I compile/use them?
|
||||
|
||||
Some remote GUIs are available, see the
|
||||
https://weechat.org/about/interfaces/[remote interfaces page ^↗^^].
|
||||
Some remote GUIs are available, see the remote interfaces page:
|
||||
https://weechat.org/about/interfaces
|
||||
|
||||
[[compile_git]]
|
||||
=== I can't compile WeeChat after cloning git repository, why?
|
||||
|
||||
WeeChat must be compiled with CMake.
|
||||
The recommended way to compile WeeChat is with
|
||||
link:weechat_user.en.html#compile_with_cmake[CMake].
|
||||
|
||||
Please follow link:weechat_user.en.html#source_package[build instructions ^↗^^]
|
||||
and ensure all required dependencies are installed.
|
||||
If you're compiling with link:weechat_user.en.html#compile_with_autotools[autotools]
|
||||
(and not CMake), check that you have latest version of autoconf and automake.
|
||||
|
||||
If you still have issues, please report them to the developers.
|
||||
The other way is to install the "devel package", which needs less dependencies.
|
||||
This package is built almost every day using git repository. Note that this
|
||||
package may not correspond exactly to git base and that it's less convenient
|
||||
than git cloning for installing updates.
|
||||
|
||||
[[compile_macos]]
|
||||
=== How can I install WeeChat on macOS?
|
||||
|
||||
It is recommended to use https://brew.sh/[Homebrew ^↗^^],
|
||||
you can get help with:
|
||||
It is recommended to use https://brew.sh/[Homebrew], you can get help with:
|
||||
|
||||
----
|
||||
brew info weechat
|
||||
@@ -62,12 +76,12 @@ brew install weechat
|
||||
=== I've launched WeeChat, but I'm lost, what can I do?
|
||||
|
||||
For help you can type `/help`. For help about a command, type `/help command`.
|
||||
link:weechat_user.en.html#key_bindings[Keys ^↗^^] and
|
||||
link:weechat_user.en.html#commands_and_options[commands ^↗^^]
|
||||
are listed in documentation.
|
||||
link:weechat_user.en.html#key_bindings[Keys] and
|
||||
link:weechat_user.en.html#commands_and_options[commands] are listed
|
||||
in documentation.
|
||||
|
||||
It's recommended for new users to read the
|
||||
link:weechat_quickstart.en.html[Quickstart guide ^↗^^].
|
||||
link:weechat_quickstart.en.html[Quickstart guide].
|
||||
|
||||
[[display]]
|
||||
== Display
|
||||
@@ -95,7 +109,7 @@ It's a common issue with a variety of causes, please read carefully and check
|
||||
** If you are using screen, check that it is run with UTF-8 mode
|
||||
("`defutf8 on`" in ~/.screenrc or `screen -U` to run screen).
|
||||
* Check that option
|
||||
link:weechat_user.en.html#option_weechat.look.eat_newline_glitch[_weechat.look.eat_newline_glitch_ ^↗^^]
|
||||
link:weechat_user.en.html#option_weechat.look.eat_newline_glitch[_weechat.look.eat_newline_glitch_]
|
||||
is off (this option may cause display bugs).
|
||||
|
||||
[NOTE]
|
||||
@@ -110,10 +124,10 @@ This may be caused by a libc bug in function _wcwidth_, which should be fixed
|
||||
in glibc 2.22 (maybe not yet available in your distribution).
|
||||
|
||||
There is a workaround to use the fixed _wcwidth_ function:
|
||||
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
|
||||
|
||||
See this https://github.com/weechat/weechat/issues/79[bug report ^↗^^]
|
||||
for more information.
|
||||
See this bug report for more information:
|
||||
https://github.com/weechat/weechat/issues/79
|
||||
|
||||
[[bars_background]]
|
||||
=== Bars like title and status are not filled, background color stops after text, why?
|
||||
@@ -170,10 +184,17 @@ windows.
|
||||
[[buffers_list]]
|
||||
=== How to display the buffers list on the left side?
|
||||
|
||||
The plugin link:weechat_user.en.html#buflist[buflist ^↗^^]
|
||||
With WeeChat ≥ 1.8, the plugin link:weechat_user.en.html#buflist_plugin[buflist]
|
||||
is loaded and enabled by default.
|
||||
|
||||
To limit size of bar:
|
||||
With an older version, you can install script _buffers.pl_:
|
||||
|
||||
----
|
||||
/script install buffers.pl
|
||||
----
|
||||
|
||||
To limit size of bar (replace "buflist" by "buffers" if you're using the script
|
||||
_buffers.pl_):
|
||||
|
||||
----
|
||||
/set weechat.bar.buflist.size_max 15
|
||||
@@ -191,6 +212,21 @@ bar with your mouse wheel.
|
||||
Default keys to scroll _buflist_ bar are kbd:[F1] (or kbd:[Ctrl+F1]), kbd:[F2]
|
||||
(or kbd:[Ctrl+F2]), kbd:[Alt+F1] and kbd:[Alt+F2].
|
||||
|
||||
For script _buffers.pl_, you can define keys, similar to the existing keys to
|
||||
scroll nicklist. +
|
||||
For example to use kbd:[F1], kbd:[F2], kbd:[Alt+F1] and kbd:[Alt+F2]:
|
||||
|
||||
----
|
||||
/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]
|
||||
Keys "meta-OP" and "meta-OQ" may be different in your terminal. To find key
|
||||
code press kbd:[Alt+k] then key.
|
||||
|
||||
[[customize_buflist]]
|
||||
=== How can I customize the list of buffers list, like the color of the active buffer?
|
||||
|
||||
@@ -216,8 +252,8 @@ like `237` for dark gray.
|
||||
The buflist plugin provides lot of options that you can customize, please read
|
||||
the help on each option.
|
||||
|
||||
There's also a https://github.com/weechat/weechat/wiki/buflist[wiki page ^↗^^]
|
||||
with examples of advanced buflist configuration.
|
||||
There's also a wiki page with examples of advanced buflist configuration:
|
||||
https://github.com/weechat/weechat/wiki/buflist
|
||||
|
||||
[[customize_prefix]]
|
||||
=== How can I reduce length of nicks or remove nick alignment in chat area?
|
||||
@@ -260,8 +296,8 @@ These colors can be changed with the options __weechat.color.status_data_*__
|
||||
(buffers) and __weechat.color.status_count_*__ (counters). +
|
||||
Other hotlist options can be changed with the options __weechat.look.hotlist_*__.
|
||||
|
||||
See link:weechat_user.en.html#screen_layout[User's guide / Screen layout ^↗^^]
|
||||
for more info about the hotlist.
|
||||
See link:weechat_user.en.html#screen_layout[User's guide / Screen layout] for
|
||||
more info about the hotlist.
|
||||
|
||||
[[input_bar_size]]
|
||||
=== How to use command line with more than one line?
|
||||
@@ -306,8 +342,9 @@ any bar:
|
||||
[[terminal_copy_paste]]
|
||||
=== How can I copy/paste text without pasting nicklist?
|
||||
|
||||
You can use the bare display (default key: kbd:[Alt+l] (`L`)), which shows
|
||||
just the contents of the currently selected window, without any formatting.
|
||||
With WeeChat ≥ 1.0, you can use the bare display (default key: kbd:[Alt+l] (`L`)),
|
||||
which will show just the contents of the currently selected window,
|
||||
without any formatting.
|
||||
|
||||
You can use a terminal with rectangular selection (like rxvt-unicode,
|
||||
konsole, gnome-terminal, etc.). Key is usually kbd:[Ctrl] + kbd:[Alt] + mouse
|
||||
@@ -322,7 +359,7 @@ Another solution is to move nicklist to top or bottom, for example:
|
||||
[[urls]]
|
||||
=== How can I click on long URLs (more than one line)?
|
||||
|
||||
You can use the bare display (default key: kbd:[Alt+l] (`L`)).
|
||||
With WeeChat ≥ 1.0, you can use the bare display (default key: kbd:[Alt+l] (`L`)).
|
||||
|
||||
To make opening URLs easier, you can:
|
||||
|
||||
@@ -332,7 +369,7 @@ To make opening URLs easier, you can:
|
||||
/set weechat.bar.nicklist.position top
|
||||
----
|
||||
|
||||
* disable alignment for multiline words:
|
||||
* disable alignment for multiline words (WeeChat ≥ 1.7):
|
||||
|
||||
----
|
||||
/set weechat.look.align_multiline_words off
|
||||
@@ -344,8 +381,9 @@ To make opening URLs easier, you can:
|
||||
/set weechat.look.align_end_of_lines time
|
||||
----
|
||||
|
||||
You can enable option "eat_newline_glitch", so that new line char is not added
|
||||
at the end of each line displayed (it will not break URL selection):
|
||||
With WeeChat ≥ 0.3.6, you can enable option "eat_newline_glitch", so that
|
||||
new line char is not added at the end of each line displayed (it will not break
|
||||
URL selection):
|
||||
|
||||
----
|
||||
/set weechat.look.eat_newline_glitch on
|
||||
@@ -392,6 +430,8 @@ In WeeChat, the new value is immediately used:
|
||||
[[use_256_colors]]
|
||||
=== How can I use 256 colors in WeeChat?
|
||||
|
||||
256 colors are supported with WeeChat ≥ 0.3.4.
|
||||
|
||||
First check that your _TERM_ environment variable is correct, recommended values
|
||||
are:
|
||||
|
||||
@@ -410,18 +450,20 @@ term screen-256color
|
||||
----
|
||||
|
||||
If your _TERM_ variable has a wrong value and that WeeChat is already running,
|
||||
you can change it with these two commands:
|
||||
you can change it with these two commands (with WeeChat ≥ 1.0):
|
||||
|
||||
----
|
||||
/set env TERM screen-256color
|
||||
/upgrade
|
||||
----
|
||||
|
||||
You can use any color number in options (optional: you can add color aliases
|
||||
with command `/color`).
|
||||
For version 0.3.4, you must use command `/color` to add new colors.
|
||||
|
||||
Please read the link:weechat_user.en.html#colors[User's guide / Colors ^↗^^]
|
||||
for more information about colors management.
|
||||
For versions ≥ 0.3.5, you can use any color number in options (optional: you
|
||||
can add color aliases with command `/color`).
|
||||
|
||||
Please read the link:weechat_user.en.html#colors[User's guide / Colors] for more
|
||||
information about colors management.
|
||||
|
||||
[[search_text]]
|
||||
=== How can I search text in buffer (like /lastlog in irssi)?
|
||||
@@ -429,8 +471,8 @@ for more information about colors management.
|
||||
The default key is kbd:[Ctrl+r] (command is: `+/input search_text_here+`).
|
||||
And jump to highlights: kbd:[Alt+p] / kbd:[Alt+n].
|
||||
|
||||
See link:weechat_user.en.html#key_bindings[User's guide / Key bindings ^↗^^]
|
||||
for more info about this feature.
|
||||
See link:weechat_user.en.html#key_bindings[User's guide / Key bindings] for more
|
||||
info about this feature.
|
||||
|
||||
[[terminal_focus]]
|
||||
=== How can I execute commands when terminal gets/loses focus?
|
||||
@@ -456,14 +498,14 @@ And then you bind two keys for the focus (replace the `/print` commands by the
|
||||
commands of your choice):
|
||||
|
||||
----
|
||||
/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
|
||||
----
|
||||
|
||||
For example to mark buffers as read when the terminal loses the focus:
|
||||
|
||||
----
|
||||
/key bind meta-[O /allbuf /buffer set unread
|
||||
/key bind meta2-O /input set_unread
|
||||
----
|
||||
|
||||
[[screen_paste]]
|
||||
@@ -583,31 +625,6 @@ If you are using the macOS Terminal app, enable the option
|
||||
"Use option as meta key" in menu Settings/Keyboard after which you can use the
|
||||
kbd:[Option] key as meta key.
|
||||
|
||||
[[enter_key]]
|
||||
=== Some keys including Enter are not working, why?
|
||||
|
||||
If you run a WeeChat < 4.0.0 with configuration files created by any
|
||||
version ≥ 4.0.0, the keys names become invalid and many keys won't work at all. +
|
||||
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
|
||||
and start WeeChat again: all default keys will be created.
|
||||
|
||||
[[key_f11]]
|
||||
=== Key F11 maximizes the terminal window, how can I scroll up the nicklist?
|
||||
|
||||
The key kbd:[F11] is commonly used by terminals to maximize the window, and
|
||||
kbd:[F11]/kbd:[F12] are the default keys in WeeChat to scroll the nicklist.
|
||||
|
||||
You can bind other keys, for example kbd:[Shift+F11] and kbd:[Shift+F12],
|
||||
with WeeChat ≥ 4.0.0:
|
||||
|
||||
----
|
||||
/key bind shift-f11 /bar scroll nicklist * -100%
|
||||
/key bind shift-f12 /bar scroll nicklist * +100%
|
||||
----
|
||||
|
||||
Other solution is to enable mouse (key: kbd:[Alt+m]) and scroll with the mouse
|
||||
wheel (see also questions about <<mouse,mouse>>).
|
||||
|
||||
[[customize_key_bindings]]
|
||||
=== How can I customize key bindings?
|
||||
|
||||
@@ -628,7 +645,7 @@ You can bind a key, for example:
|
||||
----
|
||||
|
||||
List of default keys is in
|
||||
link:weechat_user.en.html#key_bindings[User's guide / Key bindings ^↗^^].
|
||||
link:weechat_user.en.html#key_bindings[User's guide / Key bindings].
|
||||
|
||||
To jump to buffers with number ≥ 100, you could define a trigger and then use
|
||||
commands like `/123` to jump to buffer #123:
|
||||
@@ -637,12 +654,6 @@ commands like `/123` to jump to buffer #123:
|
||||
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
|
||||
----
|
||||
|
||||
For an easy jump to buffers, you can also install the _go.py_ script:
|
||||
|
||||
----
|
||||
/script install go.py
|
||||
----
|
||||
|
||||
[[global_history]]
|
||||
=== How to use global history (instead of buffer history) with up and down keys?
|
||||
|
||||
@@ -651,25 +662,23 @@ history are kbd:[Ctrl+↑] and kbd:[Ctrl+↓]).
|
||||
|
||||
Example:
|
||||
|
||||
----
|
||||
/key bind up /input history_global_previous
|
||||
/key bind down /input history_global_next
|
||||
----
|
||||
|
||||
With WeeChat ≤ 3.8, you must use the raw key code (press kbd:[Alt+k] then key
|
||||
to display its code):
|
||||
|
||||
----
|
||||
/key bind meta2-A /input history_global_previous
|
||||
/key bind meta2-B /input history_global_next
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Keys "meta2-A" and "meta2-B" may be different in your terminal. To find key
|
||||
code press kbd:[Alt+k] then key.
|
||||
|
||||
[[mouse]]
|
||||
== Mouse
|
||||
|
||||
[[mouse_not_working]]
|
||||
=== Mouse is not working at all, what can I do?
|
||||
|
||||
Mouse is supported with WeeChat ≥ 0.3.6.
|
||||
|
||||
First try to enable mouse:
|
||||
|
||||
----
|
||||
@@ -713,53 +722,74 @@ you have to use kbd:[Alt] instead of kbd:[Shift]).
|
||||
[[irc]]
|
||||
== IRC
|
||||
|
||||
[[irc_tls_connection]]
|
||||
=== I have some problems when connecting to a server using TLS, what can I do?
|
||||
[[irc_ssl_connection]]
|
||||
=== I have some problems when connecting to a server using SSL, what can I do?
|
||||
|
||||
If you are using macOS, you must install `openssl` from Homebrew.
|
||||
A CA file will be bootstrapped using certificates from the system keychain.
|
||||
|
||||
With WeeChat ≤ 3.1, you can then set the path to system certificates:
|
||||
|
||||
----
|
||||
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
|
||||
----
|
||||
|
||||
If you see errors about gnutls handshake, you can try to use a smaller
|
||||
Diffie-Hellman key (default is 2048):
|
||||
|
||||
----
|
||||
/set irc.server.example.tls_dhkey_size 1024
|
||||
/set irc.server.example.ssl_dhkey_size 1024
|
||||
----
|
||||
|
||||
If you see errors about certificate, you can disable "tls_verify" (be careful,
|
||||
If you see errors about certificate, you can disable "ssl_verify" (be careful,
|
||||
connection will be less secure by doing that):
|
||||
|
||||
----
|
||||
/set irc.server.example.tls_verify off
|
||||
/set irc.server.example.ssl_verify off
|
||||
----
|
||||
|
||||
If the server has an invalid certificate and you know what the certificate
|
||||
should be, you can specify the fingerprint (SHA-512, SHA-256 or SHA-1):
|
||||
|
||||
----
|
||||
/set irc.server.example.tls_fingerprint 0c06e399d3c3597511dc8550848bfd2a502f0ce19883b728b73f6b7e8604243b
|
||||
/set irc.server.example.ssl_fingerprint 0c06e399d3c3597511dc8550848bfd2a502f0ce19883b728b73f6b7e8604243b
|
||||
----
|
||||
|
||||
[[irc_tls_handshake_error]]
|
||||
=== When connecting to server with TLS, I only see the error "TLS handshake failed", what can I do?
|
||||
[[irc_ssl_handshake_error]]
|
||||
=== When connecting to server with SSL, I only see the error "TLS handshake failed", what can I do?
|
||||
|
||||
You can try a different priority string, replace "xxx" by your server name:
|
||||
You can try a different priority string (WeeChat ≥ 0.3.5 only), replace "xxx"
|
||||
by your server name:
|
||||
|
||||
----
|
||||
/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]]
|
||||
=== How can I connect to libera server using TLS?
|
||||
[[irc_ssl_libera]]
|
||||
=== How can I connect to libera server using SSL?
|
||||
|
||||
Check that you have certificates installed on your system, this is commonly
|
||||
provided by the package "ca-certificates".
|
||||
With WeeChat ≤ 3.1, set option _weechat.network.gnutls_ca_file_ to file with
|
||||
certificates:
|
||||
|
||||
Setup server port, TLS, then connect:
|
||||
----
|
||||
/set weechat.network.gnutls_ca_file "/etc/ssl/certs/ca-certificates.crt"
|
||||
----
|
||||
|
||||
Note: if you are running macOS with homebrew openssl installed, you can do:
|
||||
|
||||
----
|
||||
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Check that you have this file on your system (commonly brought by package
|
||||
"ca-certificates").
|
||||
|
||||
Setup server port, SSL, then connect:
|
||||
|
||||
----
|
||||
/set irc.server.libera.addresses "irc.libera.chat/6697"
|
||||
/set irc.server.libera.tls on
|
||||
/set irc.server.libera.ssl on
|
||||
/connect libera
|
||||
----
|
||||
|
||||
@@ -799,35 +829,25 @@ join of channels):
|
||||
[[edit_autojoin]]
|
||||
=== How can I add/remove channels from autojoin option?
|
||||
|
||||
With WeeChat ≥ 3.5, you can automatically record the channels you manually
|
||||
join and part in the "autojoin" server option.
|
||||
|
||||
For all servers:
|
||||
You can use the `/set` command to edit the list of autojoin channels,
|
||||
for example for the "libera" server:
|
||||
|
||||
----
|
||||
/set irc.server_default.autojoin_dynamic on
|
||||
/set irc.server.libera.autojoin [TAB]
|
||||
----
|
||||
|
||||
For a single server:
|
||||
[NOTE]
|
||||
You can complete the name and value of option with the kbd:[Tab] key
|
||||
(or kbd:[Shift+Tab] for partial completion, useful for the name). +
|
||||
This way you don't have to type the whole list of channels.
|
||||
|
||||
You can also use the `/fset` command to edit the list of channels:
|
||||
|
||||
----
|
||||
/set irc.server.libera.autojoin_dynamic on
|
||||
/fset autojoin
|
||||
----
|
||||
|
||||
You can also add the current channel in the "autojoin" server option using the
|
||||
`/autojoin` command:
|
||||
|
||||
----
|
||||
/autojoin add
|
||||
----
|
||||
|
||||
Or another channel:
|
||||
|
||||
----
|
||||
/autojoin add #test
|
||||
----
|
||||
|
||||
There are also scripts:
|
||||
Another solution is to use a script:
|
||||
|
||||
----
|
||||
/script search autojoin
|
||||
@@ -850,16 +870,31 @@ Filtered lines are only hidden, not deleted, and you can see them if you
|
||||
disable filters (by default, the key kbd:[Alt+=] toggles filters).
|
||||
|
||||
[[filter_irc_join_part_quit]]
|
||||
=== How can I filter join/part/quit and other annoying messages on IRC channels?
|
||||
=== How can I filter join/part/quit messages on IRC channels?
|
||||
|
||||
See link:weechat_user.en.html#irc_smart_filter[User's guide / IRC smart filter ^↗^^].
|
||||
With smart filter (keep join/part/quit from users who spoke recently):
|
||||
|
||||
----
|
||||
/set irc.look.smart_filter on
|
||||
/filter add irc_smart * irc_smart_filter *
|
||||
----
|
||||
|
||||
With a global filter (hide *all* join/part/quit):
|
||||
|
||||
----
|
||||
/filter add joinquit * irc_join,irc_part,irc_quit *
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
For help: `/help filter`, `+/help irc.look.smart_filter+` and see
|
||||
link:weechat_user.en.html#irc_smart_filter_join_part_quit[User's guide / Smart filter for join/part/quit messages].
|
||||
|
||||
[[filter_irc_join_channel_messages]]
|
||||
=== How can I filter some messages displayed when I join an IRC channel?
|
||||
|
||||
You can choose which messages are displayed when joining a channel with the
|
||||
option _irc.look.display_join_message_ (see `+/help irc.look.display_join_message+`
|
||||
for more info).
|
||||
With WeeChat ≥ 0.4.1, you can choose which messages are displayed when
|
||||
joining a channel with the option _irc.look.display_join_message_ (see
|
||||
`+/help irc.look.display_join_message+` for more info).
|
||||
|
||||
To hide messages (but keep them in buffer), you can filter them using the tag
|
||||
(for example _irc_329_ for channel creation date). See `/help filter` for help
|
||||
@@ -914,13 +949,17 @@ nicks:
|
||||
/set irc.server_default.away_check_max_nicks 25
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
For WeeChat ≤ 0.3.3, options are _irc.network.away_check_ and
|
||||
_irc.network.away_check_max_nicks_.
|
||||
|
||||
[[highlight_notification]]
|
||||
=== How can I be warned when someone highlights me on a channel?
|
||||
|
||||
There is a default trigger "beep" which sends a _BEL_ to the terminal on
|
||||
a highlight or private message. Thus you can configure your terminal
|
||||
(or multiplexer like screen/tmux) to run a command or play a sound when
|
||||
a _BEL_ occurs.
|
||||
With WeeChat ≥ 1.0, there is a default trigger "beep" which sends a _BEL_ to
|
||||
the terminal on a highlight or private message. Thus you can configure your
|
||||
terminal (or multiplexer like screen/tmux) to run a command or play a sound
|
||||
when a _BEL_ occurs.
|
||||
|
||||
Or you can add a command in "beep" trigger:
|
||||
|
||||
@@ -945,29 +984,44 @@ Other scripts on this subject:
|
||||
[[disable_highlights_for_specific_nicks]]
|
||||
=== How can I disable highlights for specific nicks?
|
||||
|
||||
You can use the
|
||||
link:weechat_user.en.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^↗^^]
|
||||
With WeeChat ≥ 0.3.4 you can use the
|
||||
link:weechat_user.en.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add]
|
||||
buffer property to set the max hotlist level for some nicks, per buffer,
|
||||
or per group of buffers (like IRC servers).
|
||||
|
||||
To only disable highlights, you'd have to set it to 2.
|
||||
|
||||
For the current buffer:
|
||||
To only disable highlights, you'd have to set it to 2:
|
||||
|
||||
----
|
||||
/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2
|
||||
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
|
||||
----
|
||||
|
||||
For all channels on server "libera":
|
||||
This buffer property isn't stored in the configuration though.
|
||||
To automatically reapply these buffer properties, you would need the
|
||||
_buffer_autoset.py_ script:
|
||||
|
||||
----
|
||||
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2
|
||||
/script install buffer_autoset.py
|
||||
----
|
||||
|
||||
For example, to permanently disable highlights from "mike" on #weechat
|
||||
on the IRC server libera:
|
||||
|
||||
----
|
||||
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
|
||||
----
|
||||
|
||||
To apply it to the entire libera server instead:
|
||||
|
||||
----
|
||||
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
|
||||
----
|
||||
|
||||
For more examples, see `+/help buffer_autoset+`.
|
||||
|
||||
[[irc_target_buffer]]
|
||||
=== How can I change target buffer for commands on merged buffers (like buffer with servers)?
|
||||
|
||||
The default key is kbd:[Ctrl+x] (command is: `+/buffer switch+`).
|
||||
The default key is kbd:[Ctrl+x] (command is: `+/input switch_active_buffer+`).
|
||||
|
||||
[[plugins_scripts]]
|
||||
== Plugins / scripts
|
||||
@@ -987,15 +1041,15 @@ You must set that up:
|
||||
[[install_scripts]]
|
||||
=== How can I install scripts? Are scripts compatible with other IRC clients?
|
||||
|
||||
You can use the command `/script` to install and manage scripts (see `/help script`
|
||||
for help).
|
||||
With WeeChat ≥ 0.3.9 you can use the command `/script` to install and manage scripts
|
||||
(see `/help script` for help). For older versions there is weeget.py and script.pl.
|
||||
|
||||
Scripts are not compatible with other IRC clients.
|
||||
|
||||
[[scripts_update]]
|
||||
=== The command "/script update" can not read scripts, how to fix that?
|
||||
|
||||
First check questions about TLS connection in this FAQ.
|
||||
First check questions about SSL connection in this FAQ.
|
||||
|
||||
If still not working, try to manually delete the scripts file (in your shell):
|
||||
|
||||
@@ -1004,7 +1058,7 @@ $ rm ~/.cache/weechat/script/plugins.xml.gz
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
If you are not using the XDG directories, the path could be: _~/.weechat/script/plugins.xml.gz_.
|
||||
With WeeChat ≤ 3.1, the path should be: _~/.weechat/script/plugins.xml.gz_.
|
||||
|
||||
And update scripts again in WeeChat:
|
||||
|
||||
@@ -1046,6 +1100,10 @@ You have to reload the spell plugin:
|
||||
/plugin reload spell
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
With WeeChat ≤ 2.4, the "spell" plugin was named "aspell", so the command is:
|
||||
`/plugin reload aspell`.
|
||||
|
||||
[[settings]]
|
||||
== Settings
|
||||
|
||||
@@ -1079,7 +1137,7 @@ You can try following tips to consume less memory:
|
||||
fifo, logger, perl, python, ruby, lua, tcl, guile, javascript, php, spell,
|
||||
xfer (used for DCC). See `/help weechat.plugin.autoload`.
|
||||
* Load only scripts that you really need.
|
||||
* Do not load system certificates if TLS is *NOT* used: turn off this option:
|
||||
* Do not load system certificates if SSL is *NOT* used: turn off this option:
|
||||
_weechat.network.gnutls_ca_system_.
|
||||
* Reduce value of option _weechat.history.max_buffer_lines_number_ or set value
|
||||
of option _weechat.history.max_buffer_lines_minutes_.
|
||||
@@ -1090,8 +1148,7 @@ You can try following tips to consume less memory:
|
||||
|
||||
You can follow same tips as for <<memory_usage,memory>>, and these ones:
|
||||
|
||||
* Hide "nicklist" bar: `/bar hide nicklist` (key: kbd:[Alt+Shift+N]).
|
||||
* Disable "buflist": `/buflist disable` (key: kbd:[Alt+Shift+B]).
|
||||
* Hide "nicklist" bar: `/bar hide nicklist`.
|
||||
* Remove display of seconds in status bar time:
|
||||
`+/set weechat.look.item_time_format "%H:%M"+` (this is the default value).
|
||||
* Disable real time check of misspelled words in command line (if you enabled it):
|
||||
@@ -1113,20 +1170,14 @@ Disable answers to all CTCP queries:
|
||||
|
||||
----
|
||||
/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 ""
|
||||
----
|
||||
|
||||
With WeeChat < 4.1.0, other CTCP queries were replied by default and must be
|
||||
disabled as well:
|
||||
|
||||
----
|
||||
/set irc.ctcp.finger ""
|
||||
/set irc.ctcp.userinfo ""
|
||||
----
|
||||
|
||||
Unload and disable auto-loading of "xfer" plugin (used for IRC DCC):
|
||||
|
||||
----
|
||||
@@ -1137,7 +1188,7 @@ Unload and disable auto-loading of "xfer" plugin (used for IRC DCC):
|
||||
Define a passphrase and use secured data wherever you can for sensitive data
|
||||
like passwords: see `/help secure` and `/help` on options
|
||||
(if you can use secured data, it is written in the help).
|
||||
See also link:weechat_user.en.html#secured_data[User's guide / Secured data ^↗^^].
|
||||
See also link:weechat_user.en.html#secured_data[User's guide / Secured data].
|
||||
|
||||
For example:
|
||||
|
||||
@@ -1158,44 +1209,16 @@ contains your passwords ciphered with your passphrase.
|
||||
Some other files may contain sensitive info like passwords (if they are not
|
||||
stored in _sec.conf_ with the `/secure` command).
|
||||
|
||||
See the link:weechat_user.en.html#files_and_directories[User's guide / Files and directories ^↗^^]
|
||||
See the link:weechat_user.en.html#files_and_directories[User's guide / Files and directories]
|
||||
for more information about configuration files.
|
||||
|
||||
[[move_to_another_device]]
|
||||
=== I want to move my WeeChat to another device and keep my config, what should I copy?
|
||||
|
||||
First check directories used by WeeChat with this command: `/debug dirs`. +
|
||||
Directories home/config and home/data must be copied (all files and sub-directories).
|
||||
|
||||
For example if you're using XDG directories (default with WeeChat ≥ 3.2),
|
||||
the directories should be `$HOME/.config/weechat` and `$HOME/.local/share/weechat`. +
|
||||
If you're using a single directory (default with WeeChat < 3.2), the directory
|
||||
should be `$HOME/.weechat`.
|
||||
|
||||
[IMPORTANT]
|
||||
The WeeChat version on the new device must be greater than or equal to the version
|
||||
on the initial device. +
|
||||
Downgrading WeeChat configuration is *NOT SUPPORTED* and can break it,
|
||||
leading to unusable WeeChat.
|
||||
|
||||
Steps:
|
||||
|
||||
. Quit Weechat: `/quit` (or `/upgrade -quit` if you want to resume the session,
|
||||
which includes content of all buffers).
|
||||
. Copy all directories, sub-directories and files to the new device, keeping
|
||||
same names and permissions.
|
||||
. Optional: copy any file outside these directories that you refer to in your
|
||||
configuration (it's not recommended to use files outside WeeChat directories).
|
||||
. Start WeeChat on the new device: `weechat` (or `weechat --upgrade` if you
|
||||
saved the session).
|
||||
|
||||
[[development]]
|
||||
== Development
|
||||
|
||||
[[bug_task_patch]]
|
||||
=== How should I report bugs, ask for new features or send patches?
|
||||
|
||||
See https://weechat.org/about/support/[this page ^↗^^].
|
||||
See: https://weechat.org/about/support
|
||||
|
||||
[[gdb_error_threads]]
|
||||
=== When I run WeeChat under gdb, there is an error about threads, what can I do?
|
||||
@@ -1231,11 +1254,11 @@ some OS' we don't have, to test WeeChat.
|
||||
|
||||
There are many tasks to do (testing, code, documentation, etc.)
|
||||
|
||||
Please contact us via IRC or mail, look at
|
||||
https://weechat.org/about/support/[support page ^↗^^].
|
||||
Please contact us via IRC or mail, look at support page:
|
||||
https://weechat.org/about/support
|
||||
|
||||
[[donate]]
|
||||
=== Can I give money or other things to WeeChat developers?
|
||||
|
||||
You can give us money to help development.
|
||||
Details on https://weechat.org/donate/[donation page ^↗^^].
|
||||
Details on https://weechat.org/donate
|
||||
|
||||
+1754
-3597
File diff suppressed because it is too large
Load Diff
@@ -2,6 +2,10 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
:toc: left
|
||||
:sectnums:
|
||||
:docinfo1:
|
||||
|
||||
|
||||
[[start]]
|
||||
== Start WeeChat
|
||||
@@ -101,7 +105,7 @@ other plugins in the list.
|
||||
You can add an IRC server with the `/server` command, for example:
|
||||
|
||||
----
|
||||
/server add libera irc.libera.chat/6697 -tls
|
||||
/server add libera irc.libera.chat/6697 -ssl
|
||||
----
|
||||
|
||||
In this command, `libera` is the internal server name used by WeeChat:
|
||||
@@ -190,15 +194,10 @@ To auto-join some channels when connecting to server:
|
||||
/set irc.server.libera.autojoin "#channel1,#channel2"
|
||||
----
|
||||
|
||||
The `/autojoin` command lets you configure the _autojoin_ option easily
|
||||
(see `/help autojoin`).
|
||||
|
||||
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).
|
||||
|
||||
To remove a value of a server option, and use the default value instead,
|
||||
for example to use default nicks (irc.server_default.nicks):
|
||||
@@ -214,11 +213,6 @@ option name):
|
||||
/set irc.server.libera.xxx value
|
||||
----
|
||||
|
||||
[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]]
|
||||
== Connect to IRC server
|
||||
|
||||
@@ -376,14 +370,13 @@ for example:
|
||||
|
||||
See `/help script` for more info.
|
||||
|
||||
A list of scripts is available in WeeChat with `/script` or on
|
||||
https://weechat.org/scripts/[this page ^↗^^].
|
||||
A list of scripts is available in WeeChat with `/script` or at this URL:
|
||||
https://weechat.org/scripts
|
||||
|
||||
[[more_doc]]
|
||||
== More documentation
|
||||
|
||||
You can now use WeeChat and read
|
||||
https://weechat.org/doc/[FAQ/documentation ^↗^^]
|
||||
for any other questions.
|
||||
You can now use WeeChat and read FAQ/documentation for any other questions:
|
||||
https://weechat.org/doc
|
||||
|
||||
Enjoy using WeeChat!
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user