Разговаривать по нескольким каналам IRC одновременно?
Кажется, я помню, еще в '91 или около того, что консольная реализация IRCII на коробке Solaris, которая впервые попала в сеть, позволила мне / объединить несколько каналов в данной сети, так что при присоединении новых каналов, они начнут прокручивать до единого вида консоли. Давайте назовем это парадигмой чата "чередующийся разговор". Я правильно помню это? Что еще более важно, есть ли современный способ сделать это в любом из клиентов на основе графического интерфейса?
Я удивлен, что это не обычное желание / функция, потому что я думаю, что это значительно улучшило бы впечатление, особенно на каналах с высоким SNR. Например, если я работаю над проектом, я могу подключиться к Freenode и присоединиться: #Qt,#OpenGL,#C++. Как и сейчас, с mIRC,Xchat, мне приходится вручную перелистывать страницы, чтобы посмотреть, что говорится, и ответить.
То, что я представляю себе, будет больше похоже на это (используя только 2 канала для простоты)
> / присоединиться #QT #OpenGL
<[QT] QtChannelUser: Здравствуйте, TwoPixelGrid.
<[OpenGL] OpenGLChannelUser: Привет, TwoPixelGrid.
> @QT: Привет, QtChannelUser
> @OpenGL: Привет еще раз OpenGLChannelUser
> И это сообщение выходит на все мои каналы.
Должен ли я написать нового клиента или это уже там?
4 ответа
Как автор ранее упомянутого скрипта Show All Channels, я хотел бы сделать несколько дополнительных замечаний.
- Значение по умолчанию "shared_tab" уже равно 1, а не 0. В этом параметре все сообщения из всех сетей отображаются на одной вкладке.
- Вместо того, чтобы изменять исходный код, значение можно изменить на 0 (что и требовалось для TwoPixelGrid), выполнив: /sc_set shared_tab 0 (теперь это должно быть понятно на странице сценариев)
- Если вы используете общую вкладку, вы можете использовать сценарий Do At, чтобы учесть следующий слегка запутанный синтаксис: "/doat #ChannelName say Message here".
- Это может быть немного длиннее, но по крайней мере #ChannelName можно завершить с помощью tab complete, и вы также можете создать пользовательскую команду "sayat" (или любое другое слово), которая позволит сократить фразу до "/sayat #ChannelName Сообщение здесь ".
- Настройки -> Дополнительно -> Пользовательская команда могут быть указаны с помощью "sayat" и "doat %2 say &3"
Это должно покрыть это. Я уже упоминал об этом в #xchat, однако, поскольку этот вопрос может появиться у кого-то другого, я решил, что на него тоже нужно ответить.
Нашел ответ от пользователя на #xchat (thx Khisanth) Фринода.
Существует плагин Perl-скрипта для Xchat под названием ShowAllChannels, который делает почти точно то, что я описал. Он создает новое окно, в котором отображаются все входящие сообщения, а затем вы можете адресовать отдельные каналы или все сразу, используя существующие команды XChat.
/msg #ChannelName ipsum lorem
или же
/ Allchanl говорят Ipsum Lorem
Один Gotcha, который не задокументирован на сайте сценария. Для правильной работы адресации необходимо изменить переменную в скрипте.pl.
Строка 34 гласит: 'shared_tab' => 0,
Измените на: 'shared_tab' => 1,
Это заставит скрипт создать отдельное окно "все каналы" для каждого сервера, на котором вы работаете. Если вы не измените это, вы не сможете /msg отдельных каналов из глобального окна "все каналы", так как XChat не будет видеть вас на каком-либо сервере, когда вы находитесь в окне "все каналы".
mIRC использует Windows API "Multiple Document Interface", который позволяет отображать окна нескольких каналов внутри окна контейнера. Восстановите (не разверните) окно своего канала с помощью элементов управления под элементами управления главного окна, и вы можете расположить их так, как хотите. Там даже кнопка для автоматической черепицы.
Еще один клиент, который может это сделать, - AdiIRC. Похоже, что очень похож на mIRC, только с немного лучшей прорисовкой шрифтов.
Это не чередующийся чат, но я бы посчитал его "современным способом сделать это" и, надеюсь, ответит на то, что вы хотите - чтение нескольких каналов - если не буквально на то, что вы просили.
Многие клиенты позволяют вам отсоединять каналы, чтобы они стали независимыми окнами на вашем рабочем столе, но нет средств для произвольной укладки или одновременного перемещения всех окон между экранами.
Насколько мне известно, на момент написания этой статьи теперь, когда KVIrc прекратил поддержку MDI, mIRC и AdiIRC являются единственными в мире клиентами IRC, способными на это, среди всех клиентов в их текущих версиях. Можно утверждать, что irssi тоже подходит, поэтому я не пытаюсь это игнорировать, но, поскольку это скорее текстовый терминальный клиент, он, скорее всего, не подходит для тех же вариантов использования.
Если вы используете weechat, вы можете использовать плагин chanmon.pl для чередования нескольких каналов. Вы можете установить его внутри уик-эндов, используя /script
Команда внутри Weechat. Для получения дополнительной информации об этом вы можете посмотреть на http://dev.weechat.org/post/2012/08/14/Scripts-manager
Хотя я полагаю, что это не позволяет вам отвечать на рассматриваемые каналы. Но вы вполне можете добавить эту функциональность.