# Краткое введение в WeeChat

Sébastien Helleu
`<flashcode@flashtux.org>`
version 1.1.1, 2015-04-12

## 1. Запуск WeeChat

В качестве эмулятора терминала для X рекомендуется rxvt-unicode (в нём хорошая поддержка UTF-8 и нет проблем с сочетаниями клавиш).

Запуск из шелла:

    $ weechat

## 2. помощь и параметры

В WeeChat есть справка по всем командам, просто наберите:

    /help

Чтобы получить справку по определённой команде, наберите:

    /help команда

Для задания параметров используйте:

    /set config.section.option value

(где `config` — название конфигурации (`weechat` для ядра или название плагина для плагина), `section` — группа параметров и `option` — название параметра).

WeeChat немедленно применяет все изменения (вам никогда не потребуется перезапускать WeeChat после изменений в параметрах).

В команде `/set` можно указывать неполные названия параметров с шаблоном "*" в начале или конце, чтобы отобразить все параметры с данными буквами. Пример:

- Показать все параметры (WeeChat и плагинов):

    /set

- Показать параметры WeeChat:

    /set weechat.*

- Показать параметры IRC-плагина:

    /set irc.*

Справку по любому параметру можно получить, используя `/help`, например:

    /help weechat.look.highlight

Все параметры сохраняются при выходе из WeeChat (или путём принудительной записи с помощью команды `/save`).

Можно редактировать файлы конфигурации (*.conf) вручную и применять параметры с помощью команды `/reload`, в случае, если вы не хотите использовать `/set`.

## 3. Ядро и плагины

«Ядро» WeeChat используется только для вывода информации на экран и взаимодействия с пользователем, так что ядро без плагинов бесполезно. (преданные пользователи: IRC был частью ядра в версиях ⩽ 0.2.6).

Все сетевые протоколы вроде IRC представлены отдельными плагинами.

Используйте команду `/plugin`, чтобы увидеть все загруженные плагины. В этом списке должен быть IRC-плагин и другие.

## 4. Добавление IRC-сервера

Сервер freenode по умолчанию добавляется при первом запуске.

Другой IRC-сервер можно добавить с помощью команды `/server`, например:

    /server add oftc irc.oftc.net/6667

Вы всегда можете обратиться к справке, набрав:

    /help server

## 5. Установка дополнительных параметров для сервера

Для всех значений, которые не были установлены вручную, WeeChat использует общие для всех серверов значения по умолчанию ("fall backs"). Посмотреть эти значения можно, набрав "irc.server_default.*".

Для каждого параметра в группе server WeeChat использует установленное значение, если оно определено (не "null"). В противном случае используется значение по умолчанию ("irc.server_default.xxx").

Например, есть список псевдонимов по умолчанию (основан на un*x-логине пользователя), и перекрыть его для сервера freenode можно следующей командой:

    /set irc.server.freenode.nicks "mynick,mynick2,mynick3,mynick4,mynick5"

Так можно установить псевдоним и настоящее имя:

    /set irc.server.freenode.username "My user name"
    /set irc.server.freenode.realname "My real name"

Чтобы включить автосоединение с сервером при старте программы:

    /set irc.server.freenode.autoconnect on

To connect with SSL:

    /set irc.server.freenode.addresses "chat.freenode.net/7000"
    /set irc.server.freenode.ssl on

Если сервер предоставляет SASL, то можно использовать его для аутентификации (вы будете идентифицированы до того, как присоединиться к каналам):

    /set irc.server.freenode.sasl_username "mynick"
    /set irc.server.freenode.sasl_password "xxxxxxx"

Для запуска команды после соединения с сервером, к примеру, аутентификации через nickserv (нужно только если не используется аутентификация SASL):

    /set irc.server.freenode.command "/msg nickserv identify xxxxxxx"

Замечание | Many commands in option command can be separated by ; (semi-colon).

Для автовхода на определённые каналы при подключении к серверу используйте:

    /set irc.server.freenode.autojoin "#channel1,#channel2"

Для очистки параметра из группы server и установки значения по умолчанию используется следующая конструкция, например, для возврата к псевдонимам по умолчанию (irc.server_default.nicks):

    /set irc.server.freenode.nicks null

Другие параметры можно установить, используя следующую команду ("xxx" соответствует названию параметра):

    /set irc.server.freenode.xxx value

## 6. Подключение к IRC-серверу и автовход на каналы

    /connect freenode

Замечание | Эту команду можно использовать для добавления нового сервера и подключения к нему без команды `/server` (должен ли я напомнить, что вы можете посмотреть справку, набрав `/help connect` ?).

По умолчанию буфер сервера совмещён с core-буфером WeeChat. Для переключения между core-буфером и буферами сервера можно использовать ctrl+x.

Автоматическое совмещение буферов сервера можно отключить, чтобы работать с ними независимо:

    /set irc.look.server_buffer independent

## 7. Вход и выход с IRC-каналов

Зайти на канал:

    /join #channel

Покинуть канал (оставляет буфер открытым):

    /part [quit message]

Закрыть буфер сервера или канала (`/close` — алиас для `/buffer close`):

    /close

## 8. Персональные IRC-сообщения

Открыть буфер и отправить сообщение другому пользователю (с псевдонимом foo):

    /query foo сообщение

Закрыть буфер персонального разговора:

    /close

## 9. Управление буферами и окнами

Буфер — это относящийся к плагину компонент с номером, категорией и именем. Буфер содержит данные, отображаемые на экране.

Окно — это то, на чём отображается содержимое буфера. По умолчанию создаётся одно окно, отображающее один буфер. Если разделить экран, то можно одновременно видеть несколько окон с несколькими буферами.

Команды для управления буферами и окнами:

    /buffer
    /window

(Я не буду повторять, что вы можете получить помощь, набрав /help с соответствующим параметром.)

Например, чтобы разделить экран по вертикали на малую (1/3 ширины) и большую (2/3) части, используйте команду:

    /window splitv 33

## 10. Сочетания клавиш

В WeeChat по умолчанию определено немало горячих клавиш. Все они задокументированны, но вам обязательно нужно знать несколько жизненно необходимых:

- alt+←/→ или F5/F6: к следующему или предыдущему буферу

- F7/F8: следующее или предыдущее окно (когда экран разделён)

- F9/F10: прокрутка title bar

- F11/F12: прокрутка списка псевдонимов

- Tab: дополнить текст в строке ввода, как в шелле

- PgUp/PgDn: прокрутка текста в текущем буфере

- alt+a: перейти к буферу с «активностью» (в hotlist’е)

Вы можете переназначить любые сочетания в соответствии со своей клавиатурой и предпочтениями с помощью команды `/key`. Для получения кодов клавиш полезно использовать сочетание alt+k.

Например, чтобы назначить на alt+y команду `/buffer close`:

    /key bind (press alt-k) (press alt-y) /buffer close

Команда будет выглядеть как-то так:

    /key bind meta-y /buffer close

Удалить сочетание клавиш:

    /key unbind meta-y

## 11. Плагины и скрипты

В некоторых дистрибутивах, например, в Debian плагины доступны в виде отдельных пакетов (вроде weechat-plugins). Плагины загружаются автоматически, если найдены (можете посмотреть документацию о загрузке и выгрузке плагинов или скиптов).

Для WeeChat доступно много внешних скриптов (от разработчиков клиента): https://weechat.org/scripts

Управлять скриптами в WeeChat можно с помощью команды `/script` (см. `/help script` для дополнительной информации).

## 12. Документация для дальнейшего чтения

Теперь вы можете пользоваться WeeChat и консультироваться с FAQ/documentation по возникающим вопросам: https://weechat.org/doc

Приятной работы с WeeChat!