Hi. In this document, I try to document how to set up irssi & screen to support UTF-8 in the case where you typically still use ISO-8859-15 or some other charset in most cases and only UTF-8 in some special cases. Please note that due to some bug in irssi, channel names with special characters might not show up well after the change. If this is the case, you might want to reconsider this procedure. There are three sections, first I describe the configuration, second what changes it means to your habits of using screen & irssi, and third how to set up the channels that actually do use UTF-8. ---------------------------------------------------------------------- Section 1. Configuration Follow the following steps. Please do not use scandinavic characters until you have proceeded configuring irssi & screen since they probably will not work properly while the configuration is not finished. Step 1. Connect to the server to run your irssi on Step 2. Shut down your irssi /quit Step 3. Close the screen you were running it in (if it didn't already) Step 4. Backup your current irssi & screen configuration: $ tar czf irssi-backup.tar.gz .irssi .screenr* Step 5. If you have a line starting "defencoding" in ~/.screenrc, remove it Step 6. Start screen like you usually do, but add a -U parameter $ screen -U or perhaps $ screen -U -S irc This makes screen understand that irssi talks utf-8 to screen NOTE: If your LC_CTYPE environment variable is correctly set to indicate UTF-8, the -U is implied and therefore not needed on the command line. Example: $ echo $LC_CTYPE fi_FI.UTF-8 Modern distros are already configured to forward LC_CTYPE over ssh, but in case you want to make sure, ensure /etc/ssh/ssh_config (or $HOME/.ssh/config) has something like: Host * SendEnv LANG LC_CTYPE Step 7. Configure irssi to talk utf-8 to screen but use iso-8859-15 charset by default for all windows Copy-paste the following commands to the irssi console: /set term_charset utf-8 /set recode_autodetect_utf8 ON /set recode_fallback ISO-8859-15 /set recode_out_default_charset ISO-8859-15 /set recode_transliterate ON /set recode ON 2019 update: I guess you might as well assume you can use utf-8 nowadays, so perhaps use that as default instead: /set recode_out_default_charset utf-8 => This way utf-8 is now default for all windows, and Section 3 steps are not needed (unless you want to use e.g. ISO-8859-15 for some old channels not using utf-8) Step 8. Detach screen (typically by pressing ctrl-a d) Ta-da! Now you have configured irssi and screen to work properly. ---------------------------------------------------------------------- Section 2. Changes to everyday habits using screen & irssi Now, to be able to see UTF-8 your terminal must support UTF-8. In Windows you can typically just adjust the "encoding" or "charset" to UTF-8 and that's it. At least SSH software like Putty and Nutty support this. In Linux, at least gnome-terminal supports UTF-8. To test if your terminal supports UTF-8, you can run the following command in the terminal: $ echo ö | wc -c Please do not copy-paste this command as it is cruical you type the special scandinavian character manually. If this command prints out number 3, you have UTF-8 support. Otherwise you do not. Of course it might sometimes happen you have to use SSH in environments where it is not possible to UTF-8. Don't worry, you will still be able to use irssi and all characters you used before, you will just not be able to see or use any characters that require UTF-8. They will be shown as question marks instead. Anyway, to use screen in a terminal that supports UTF-8, use ssh to go to the remote machine running your screen and again type something like: $ screen -U -r When you use a terminal that does not support UTF-8, run it like this instead (probably this is the way you used to use screen): $ screen -r You do not need to change any irssi or screen configuration - just use the appropriate command from above. Just keep the "echo ... " command above handy to check which terminal you have and you'll be fine. ---------------------------------------------------------------------- Section 3. How to configure individual channels & private chats to use UTF-8 To make a channel or private chat use UTF-8, run one of the following commands in irssi: /recode add #mychannel utf-8 /recode add freenode/#mychannel utf-8 /recode add myprivatefriend utf-8 /recode add freenode/myprivatefriend utf-8 To restore default charset for a channel or private chat, use: /recode remove #mychannel /recode remove freenode/#mychannel /recode remove myprivatefriend /recode remove freenode/myprivatefriend To list the current channels and private chats using UTF-8, run: /recode Good luck!