¶The Great IRC Experiment
- About 40-50 people in the channel at any time
- We’re now a registered community on Libera.Chat!
- The #systemcrafters channel is bridged to Matrix (matrix.org instance)
- Benoit is working on
crafter-bot
derived from the one from#emacs
- Will we be leaving Discord? Short answer: no!
Shom’s wiki page: https://wiki.systemcrafters.cc/community/chat-with-us/
Contribute to the System Crafters wiki! https://github.com/SystemCrafters/wiki-site
I’m experimenting with a ZNC bouncer for $5+ sponsors, looking for 5 people to try it!
¶Improving the IRC Experience in ERC
¶Improving the display of messages
You can change how ERC displays messages with erc-fill-mode
:
(setq erc-fill-column 120
erc-fill-function 'erc-fill-static
erc-fill-static-center 20)
¶Customizing activity tracking
Mode line tracking of channels is useful but can be a little annoying:
(setq erc-track-exclude '("#emacs") erc-track-exclude-types '("JOIN" "NICK" "QUIT" "MODE" "AWAY") erc-hide-list '("JOIN" "NICK" "QUIT" "MODE" "AWAY") erc-track-exclude-server-buffer t)
If you’re using multiple frames, especially if you keep IRC buffers on a specific EXWM workspace, this setting can be useful:
(setq erc-track-visibility nil) ; Only use the selected frame for visibility
¶Tracking specific keywords or people
(setq erc-pals '("shom_" "masteroman" "benoitj") erc-fools '("daviwil-test") erc-keywords '("guix" "wiki"))
¶Desktop notifications for matches/mentions
(add-to-list 'erc-modules 'notifications)
¶Uniquely colorizing nicknames in chat
This makes it easier to recognize specific people at a glance!
(use-package erc-hl-nicks :ensure t :after erc :config (add-to-list 'erc-modules 'hl-nicks))
You might need to run M-: (erc-update-modules)
after running this in an existing Emacs session!
¶Displaying inline images
(use-package erc-image :ensure t :after erc :config (setq erc-image-inline-rescale 300) (add-to-list 'erc-modules 'image))
Try it out in a chat (like in /query NickServ
): https://upload.wikimedia.org/wikipedia/commons/thumb/0/08/EmacsIcon.svg/1200px-EmacsIcon.svg.png
NOTE: Make sure to pull the latest version of the package! Karthik and TitanOfOld on #systemcrafters IRC worked together to fix image scaling on Emacs 27+!
¶Displaying emojis in messages
Use emojify-mode:
(use-package emojify :ensure t :hook (erc-mode . emojify-mode) :commands emojify-mode)
¶Connecting to a specific server with a keybinding
(defun my/connect-irc () (interactive) (erc-tls :server "irc.libera.chat" :port 6697 :nick "mynick" ;; This is using password-store.el. Not needed if you use auth-source! :password (password-store-get "IRC/irc.libera.chat"))) (global-set-key (kbd "C-c c c") 'my/connect-irc)
¶Jumping to IRC buffers easily
Two commands are useful for this:
erc-switch-to-buffer
erc-track-switch-buffer
(bound to C-c C-SPC iferc-track-enable-keybindings
ist
)
(setq erc-track-enable-keybindings t)
¶Automatically logging in
You’ll need auth-source
set up for this to work! Check out the video I made about storing your passwords in Emacs.
Setting this variable to nil
will tell ERC that it should look up your password automatically when connecting.
(setq erc-prompt-for-password nil)
¶Using ZNC
¶Emacs News
¶Next week on the stream
We’ll be doing another Dotfile Detective stream featuring a discussion with Ambrevar about his dotfiles and possibly other topics!