[518] | 1 | # Clients
|
---|
| 2 |
|
---|
| 3 | This page describes how to configure IRC clients to better integrate with soju.
|
---|
| 4 |
|
---|
| 5 | Also see the [IRCv3 support tables] for a more general list of clients.
|
---|
| 6 |
|
---|
[765] | 7 | # [Emacs]
|
---|
| 8 |
|
---|
| 9 | There are two clients provided with Emacs. They require some setup to work
|
---|
| 10 | properly.
|
---|
| 11 |
|
---|
| 12 | ## Erc
|
---|
| 13 |
|
---|
| 14 | You need to explicitly set the username, which is the defcustom
|
---|
| 15 | `erc-email-userid`.
|
---|
| 16 |
|
---|
| 17 | ```elisp
|
---|
| 18 | (setq erc-email-userid "<username>/irc.libera.chat") ;; Example with Libera.Chat
|
---|
| 19 | (defun run-erc ()
|
---|
| 20 | (interactive)
|
---|
| 21 | (erc-tls :server "<server>"
|
---|
| 22 | :port 6697
|
---|
| 23 | :nick "<nick>"
|
---|
| 24 | :password "<password>"))
|
---|
| 25 | ```
|
---|
| 26 |
|
---|
| 27 | Then run `M-x run-erc`.
|
---|
| 28 |
|
---|
| 29 | ## Rcirc
|
---|
| 30 |
|
---|
| 31 | The only thing needed here is the general config:
|
---|
| 32 |
|
---|
| 33 | ```elisp
|
---|
| 34 | (setq rcirc-server-alist
|
---|
| 35 | '(("<server>"
|
---|
| 36 | :port 6697
|
---|
| 37 | :encryption tls
|
---|
| 38 | :nick "<nick>"
|
---|
| 39 | :user-name "<username>/irc.libera.chat" ;; Example with Libera.Chat
|
---|
| 40 | :password "<password>")))
|
---|
| 41 | ```
|
---|
| 42 |
|
---|
| 43 | Then run `M-x irc`.
|
---|
| 44 |
|
---|
[518] | 45 | # [gamja]
|
---|
| 46 |
|
---|
| 47 | gamja has been designed together with soju, so should have excellent
|
---|
| 48 | integration. gamja supports many IRCv3 features including chat history.
|
---|
[538] | 49 | gamja also provides UI to manage soju networks via the
|
---|
| 50 | `soju.im/bouncer-networks` extension.
|
---|
[518] | 51 |
|
---|
[579] | 52 | # [Hexchat]
|
---|
| 53 |
|
---|
| 54 | Hexchat has support for a small set of IRCv3 capabilities. To prevent
|
---|
| 55 | automatically reconnecting to channels parted from soju, and prevent buffering
|
---|
| 56 | outgoing messages:
|
---|
| 57 |
|
---|
| 58 | /set irc_reconnect_rejoin off
|
---|
| 59 | /set net_throttle off
|
---|
| 60 |
|
---|
[518] | 61 | # [senpai]
|
---|
| 62 |
|
---|
| 63 | senpai is being developed with soju in mind, so should have excellent
|
---|
| 64 | integration. senpai supports many IRCv3 features including chat history.
|
---|
| 65 |
|
---|
| 66 | # [Weechat]
|
---|
| 67 |
|
---|
[718] | 68 | A [Weechat script] is available to provide better integration with soju.
|
---|
| 69 | The script will automatically connect to all of your networks once a
|
---|
| 70 | single connection to soju is set up in Weechat.
|
---|
[518] | 71 |
|
---|
[718] | 72 | On WeeChat 3.2-, no IRCv3 capabilities are enabled by default. To enable them:
|
---|
| 73 |
|
---|
| 74 | /set irc.server_default.capabilities account-notify,away-notify,cap-notify,chghost,extended-join,invite-notify,multi-prefix,server-time,userhost-in-names
|
---|
[518] | 75 | /save
|
---|
| 76 | /reconnect -all
|
---|
| 77 |
|
---|
| 78 | See `/help cap` for more information.
|
---|
| 79 |
|
---|
| 80 | [IRCv3 support tables]: https://ircv3.net/software/clients
|
---|
| 81 | [gamja]: https://sr.ht/~emersion/gamja/
|
---|
| 82 | [senpai]: https://sr.ht/~taiite/senpai/
|
---|
| 83 | [Weechat]: https://weechat.org/
|
---|
[557] | 84 | [Weechat script]: https://github.com/weechat/scripts/blob/master/python/soju.py
|
---|
[578] | 85 | [Hexchat]: https://hexchat.github.io/
|
---|
[765] | 86 | [Emacs]: https://www.gnu.org/software/emacs/
|
---|