Записки программиста
Irssi — это кроссплатформенный консольный IRC-клиент, написанный на чистом C. Консольные утилиты имеют неоспоримое преимущество перед всякой там GUI’ней вроде HexChat. Например, можно один раз настроить в терминале шрифты и (темную!) цветовую гамму, а все консольные приложения автоматически их подхватят. Да, у GUI приложений в третьем тысячелетии с этим все еще есть проблемы. Qt и разные версии GTK берут свои настройки немного из разных мест. Плюс к этому консольные приложения можно легко запускать на сервере в screen. Кроме того, в консольных приложениях практически никогда не используется мышь, что я лично нахожу очень удобным. Наконец, обычно они жрут меньше памяти и заряда батареи.
Примечание: Команды, приводимые далее, можно сокращать. Например, можно писать /h вместо /help , /c вместо /connect , и так далее.
Как и все консольные утилиты, irssi имеет чуть больший порог вхождения, чем аналогичные программы с графическим интерфейсом. Но, как нам с вами уже известно, эти дополнительные усилия, приложенные на старте, окупаются с лихвой, так что приступим.
Самая главная команда в irssi — отображение подсказки, общей или по конкретной команде:
/help
/help server
В любое время из irssi можно выйти, выполнив команду:
При первом запуске irssi создать конфиг по умолчанию ~/.irssi/config. Я советую сразу выйти из irssi и отредактировать конфиг в Vim, убрав лишние сети и каналы. Таким образом, в начале конфига должно остаться только:
Также в конце конфига исправляем имя пользователя и никнейм по умолчанию. Должно получиться что-то вроде:
settings = <
core = <
real_name = «Aleksander Alekseev»;
user_name = «afiskon»;
nick = «afiskon»;
>;
«fe-text» = < actlist_sort = "refnum"; >;
>;
Давайте теперь попробуем зайти при помощи irssi на канал #kernelnewbies.
Добавляем новую сеть:
/network add -nick afiskon OFTC
/network list
Добавляем к сети сервер:
/server add -network OFTC -ssl irc.oftc.net 6697
/server list
Добавляем каналы, на которые хотим заходить:
/channel add -auto #kernelnewbies OFTC
/channel list
Кстати, если у вас запущено сразу несколько экземпляров irssi, обновленный конфиг в них всегда можно подгрузить так:
Наконец, подрубаемся к сети:
/connect OFTC
Основные хоткеи в irssi следующие:
- Alt + (1, 2, …, Q, W, …) — переключение между окнами;
- Ctr + N / P, Alt + → / ← — следующее / предыдущее окно;
- Page Up / Page Down — перемотка сообщений вверх / вниз;
Поиск каналов по названию и количеству человек осуществляется так:
Прикручиваем уведомление о hilight в irssi через notify-osd
Благодаря наличию в Irssi поддержки perl-скриптования, можно очень простым способом, не используя никаких дополнительных модулей или еще чего либо реализовать довольно-таки удобную функцию уведомления о приватных сообщениях и хайлайтах через notify-osd, используя приведенный здесь скрипт. Конечно же, вы можете использовать что угодно вместо notify-osd по вашему желанию, и тогда это будет лишь небольшим примером того как можно облагородить такой, кажущийся многим с первого взгляда убогим, IRC-клиент.
#!/usr/bin/perl -w -C use strict; use Irssi; use Irssi::Irc; sub sig_public < my @host; my ($server, $msg, $nick, $address, $target) = @_; my $mynick = $server->; chomp $mynick; if ($msg =~ m/.*$mynick.*/ ) < # Замена разных спецсимволов на более понятные для notify-osd $msg =~ s/</; $msg =~ s/>/>/; $msg =~ s/'/`/g; system ("/usr/bin/notify-send 'Irssi:$nick [$target]' '$msg'"); > > sub sig_private < my ($server, $msg, $nick, $address) = @_; system ("/usr/bin/notify-send 'Irssi:$nick [private]' '$msg'"); >Irssi::signal_add_last('message public', 'sig_public'); Irssi::signal_add_last('message private', 'sig_private');
Конечно же, это работает только если клиент запущен локально у вас на машине, а не в screen на удаленном сервере.
P.S. Нашли и исправили баг с двойным уведомлением про хайлайты на канале.
irssi — консольный IRC-клиент

Life-Hack
Irssi — консольный IRC-клиент. Преимущество перед GUI клиентами, типа HexChat, очевидны:
- Автоматическая поддержка шрифта и цветовой схемы терминала
- Можно легко запустить на сервере в screen
- Практически не используется мышь, а это удобно
- Потребляют мало памяти и заряда батареи
- Можно подключать темы, модули и скрипты
- По умолчанию irssi не пишет логов
Установка
apt-get install irssi
Запуск
Запускается командой в терминале:
irssi
Настройка
При первом запуске irssi создаст конфигурацию по умолчанию в /root/.irssi/config
Лучше выйти и отредактировать его, убрав лишние сети и каналы:
nano /root/.irssi/config
В начале оставляем только:
servers = ( ); chatnets = < >; channels = ( );
В конце меняем имя пользователя и никнейм на свой:
settings = < core = < real_name = "Имя"; user_name = "ник"; nick = "ник"; >; "fe-text" = < actlist_sort = "refnum"; >; >;
Ctrl+O — сохранить файл Ctrl+X — выйти из редактора
Команды irssi
/help
Попробуем войти с помощью irssi на канал #название_канала
Для добавления новой сети:
/network add -nick ник название_сети /network list
Для добавления к сети сервера:
/server add -network название_сети -ssl сервер порт /server list
Для добавления каналов, на которые будем заходить:
/channel add -auto #название_канала название_сети /channel list
Для сохранения конфигурации:
/save
Если запущено несколько экземпляров irssi, обновленную конфигурацию в них можно загрузить:
/reload
Для подключения к сети:
/connect название_сети
Для поиска каналов по названию:
/list #*название_канала*
Для поиска каналов по названию и количеству человек:
/list #*название_канала*,>3
Для входа на канал:
/join #название_канала
Для вывода списка окон:
/window list
Для перехода в заданное окно:
/window 9
Для перехода на заданный канал:
/window goto #название_канала
Для закрытия окна:
/window close
Для просмотра присутствующих на канале:
/names
Для выхода с канала:
/leave /part
Отметиться, что вы отошли:
/away причина
Отметиться, что вы вернулись, той же командой, но без указания причины:
/away
Для проверки, что в сети можно зарегистрировать ник:
/msg nickserv help
Для регистрации ника:
/msg nickserv register пароль электронная_почта
Для автоматического подтверждения при входе в сеть того, что мы те, за кого себя выдаем:
/network add -autosendcmd "/msg nickserv identify пароль" название_сети /save
Для отключения от сети:
/disconnect название_сети
Для выхода из irssi (в любое время и из любого окна):
/quit

Основные хоткеи
- Alt + (1, 2, …, Q, W, …) — переключение между окнами
- Ctr + N / P, Alt + → / ← — следующее / предыдущее окно
- Page Up / Page Down — перемотка сообщений вверх / вниз
Всем спасибо за внимание!
irssi 
![]()
![]()
![]()
Irssi — клиент IRC на базе терминала для UNIX-систем. Он также поддерживает протоколы SILC и ICB через плагины.
Разработчик
Сайт приложения
Аналоги и альтернативы irssi
Наиболее популярные альтернативы и аналоги irssi для Windows, Mac, Linux, BSD.
![]()
Adium
Adium Team
Free Open Source
Adium — бесплатное приложение для обмена мгновенными сообщениями с открытым исходным кодом для Mac OS X, написанное с использованием API Mac OS Xs Cocoa, выпущенное под GNU GPL и разработанное командо.
![]()
HexChat
Free Open Source
HexChat является клиентом IRC на базе XChat для Linux, но, в отличие от XChat, он полностью свободен как для Windows, так и для Unix-подобных систем. HexChat изначально назывался XChat-WDK, который, в.