= Краткое введение в WeeChat
:author: Sébastien Helleu
:email: flashcode@flashtux.org
:lang: ru
:toc: left
:sectnums:
:docinfo1:


Переводчики:

* Stalwart <stlwrt@gmail.com>, 2006
* Алексей Бортник <thebosha@gmail.com>, 2009
* Alexander Turenko <totktonada.ru@gmail.com>, 2014-2015
* Evgeny Shmarnev <eshmarnev@suse.com>, 2016


[[start]]
== Запуск WeeChat

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

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

----
$ weechat
----

[[help_options]]
== Помощь и параметры

В 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`).

// TRANSLATION MISSING
[IMPORTANT]
It is *not recommended* to edit configuration files by hand because WeeChat
may write them at any time (for example on <<command_weechat_quit,/quit>>)
and after any change you must run the command <<command_weechat_reload,/reload>>
(with the risk of losing other changes that were not yet saved with
<<command_weechat_save,/save>>). +
You can use the command <<command_weechat_set,/set>>, which checks the value
and applies immediately the changes.

[[core_vs_plugins]]
== Ядро и плагины

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

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

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

[[add_irc_server]]
== Добавить IRC сервер

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

----
/server add freenode chat.freenode.net
----

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

----
/help server
----

[[irc_server_options]]
== Установка дополнительных параметров для сервера

Для всех значений, которые не были установлены вручную, 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
----

Присоединиться с использованием 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"
----

[NOTE]
В параметре _command_ можно записать несколько команд через `;` (точку с
запятой).

Если вы хотите защитить ваш пароль в конфигурационном файле, вы можете
воспользоваться функцией защиты данных

Для начала, создайте ключевую фразу:

----
/secure passphrase this is my secret passphrase
----

Затем добавьте защищенные данные с помощью вашего freenode пароля:

----
/secure set freenode_password xxxxxxx
----

Вы также можете использоавть `+${sec.data.freenode_password}+` вместо вашего
пароля в опциях IRC, например:

----
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
----

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

----
/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
----

[[connect_to_irc_server]]
== Подключение к IRC-серверу и автовход на каналы

----
/connect freenode
----

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

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

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

----
/set irc.look.server_buffer independent
----

[[join_part_irc_channels]]
== Вход и выход с IRC-каналов

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

----
/join #channel
----

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

----
/part [quit message]
----

Закрыть соединение с сервером, каналом или частным буфером (`/close` -
псевдоним для `/buffer close`):

----
/close
----

[WARNING]
Закрытие соединения с сервером закроет все каналы/частные буферы.

Отключиться от сервера, на серверном буфере:

----
/disconnect
----

[[irc_private_messages]]
== Персональные IRC-сообщения

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

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

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

----
/close
----

[[buffer_window]]
== Управление буферами и окнами

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

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

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

----
/buffer
/window
----

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


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

----
/window splitv 33
----

Отменить разделение экрана:

----
/window merge
----

[[key_bindings]]
== Сочетания клавиш

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

- kbd:[Alt+←] / kbd:[Alt+→] или kbd:[F5] / kbd:[F6]: к следующему или предыдущему буферу
- kbd:[F7] / kbd:[F8]: следующее или предыдущее окно (когда экран разделён)
- kbd:[F9] / kbd:[F10]: прокрутка title bar
- kbd:[F11] / kbd:[F12]: прокрутка списка псевдонимов
- kbd:[Tab]: дополнить текст в строке ввода, как в шелле
- kbd:[PgUp] / kbd:[PgDn]: прокрутка текста в текущем буфере
- kbd:[Alt+a]: перейти к буферу с «активностью» (в hotlist’е)

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

Например, чтобы назначить на kbd:[Alt+!] команду `/buffer close`:

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

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

----
/key bind meta-! /buffer close
----

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

----
/key unbind meta-!
----

[[plugins_scripts]]
== Плагины и скрипты

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

Множество внешних скриптов (написанных контрибьюторами) доступно для WeeChat,
вы можете скачать и установить скрипты из репозитория с помощью команды `/script`,
например:

----
/script install iset.pl
----

Для получения дополнительной информации введите команду `/help script`.

Список скриптов, доступных в WeeChat, можно просмотреть, введя команду `/script`, или на сайте:
https://weechat.org/scripts

[[more_doc]]
== Документация для дальнейшего чтения

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

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