#pragma keywords howto, irc, irssi, screen, gnu screen, tutorial = Howto: IRC = <> == tmux + irssi = <3 == In this howto you will learn how to use your shell account for possibly the best [[Info/IRC|IRC]] solution possible ;) We will concentrate on how to connect to IRC with the IRC-client [[irssi]]<> and how to stay connected even when your computer is turned off via a program called [[tmux]]. === tmux === tmux is a program that creates a virtual terminal inside your shell. You can then "detach" or "attach" this virtual terminal when you log in and out from your shell account. The programs you have running inside the virtual terminal (tmux) will keep running on the server after you've logged off. Perfect for IRC, this way you will always be able to see what's been said in the chat while you were away/sleeping etc. Start by logging in to your shell account and type the following command: {{{ tmux new -As irssi}}} This will create a new tmux session called "irssi". You can now start a program in this new tmux session. Let's start irssi: {{{ irssi}}} You can now start chatting away, but before you start learning more about irssi let's see how you can disconnect from the shell and then resume the same tmux session as you just started! You can either just close the terminal window, or press and hold ctrl and then press b followed by d (ctrl-b d) to detach the tmux session, and then type `exit` or `logout` to log out. Now let's connect to the shell again. When you're in, use the `tmux a` command again to resume the previously started session. {{{ tmux a}}} Now you will be back in the program irssi you started before. This program kept running on the server the whole time you were disconnected! To exit a tmux session (destroy it, not just detach), exit the programs running inside it (`/quit` in irssi) and then type `exit` or `logout`. It's possible to have multiple sessions running, but this is not recommended. It can get very confusing if you are new to tmux. If you accidentaly do, just retach them one at a time and exit them. You can list all your sessions with this command: `tmux list-sessions` Another program very similar to tmux is GNU Screen, take a look at the [[Howto/Screen| Screen Howto]] if you prefer to use that. === Irssi === Let's now learn some basics of irssi. Start by logging in to the shell and resuming the tmux session if you're not already connected. In irssi there is a command promt at the bottom. This is where you write messages and type in commands. Before you can start chatting, you have to connect to an IRC server and join a channel. If you use the standard config for irssi (which you probably do), then you won't have to connect manually. Instead you should automatically get connected to our home IRC network and joined into #blinkenshell. If not (or if you want to learn how to connect to other IRC networks), use these commands to connect and join: {{{ /CONNECT -ssl irc0.blinkenshell.org 6697 /JOIN #blinkenshell}}} The first command connects to BlinkenIRC server. This might take a couple of seconds, so wait a bit before typing in the next command. The next command will join you to our IRC channel #blinkenshell. Now you are connected, and you have two "windows" open in irssi. One with the server messages and one with #blinkenshell. To change between them press and hold the ALT-key while pressing the 1-9 on your keyboard. ALT-2 will change to the second window, which should be the #blinkenshell channel. ALT-1 will change back to the server message tab. Go to the second tab with ALT-2 and say hello to us! (You can also change windows by typing `/win 2` etc.) When you want to turn off the computer just close the window and you can then resume the screen the next time you want to use IRC and your session of irssi will be there waiting for you, running at the server at all times! You can connect to multiple networks by issuing the `/connect ` command several times. When you issue the join command, it will join the channel on the network that is currently selected. You can switch between the networks by pressing ctrl-x. To list all active connections to IRC networks, type `/server`. == Autoconnect == Again, you don't have to do this if you already automatically gets connected to IRC. Start irssi and type these commands to automatically join the official IRC channel each time you start irssi: {{{ /SERVER ADD -network BlinkenIRC -tls -auto irc0.blinkenshell.org 6697 /CHANNEL ADD -auto #blinkenshell BlinkenIRC }}} Next time you start irssi, the program will automatically connect you to BlinkenIRC and join our channel. You can also specify other networks and channels of course, just remember to not connect to any network twice! You can also make irssi automatically identify with [[NickServ]] when you connect to the network with the following command: {{{ /NETWORK MODIFY -sasl_username -sasl_password -sasl_mechanism plain BlinkenIRC }}} Replace '' '' with your NickServ account details. Use `/save` to save your changes. The configuration will be written to the file `.irssi/config` in your home directory. If you get confused about what networks you're getting auto-connected to or want to change an address, it might be easier to change in the config file. If you have a couple of channels in irssi that you have configured with autoconnect, you might want them to appear in the same windows every time you start irssi. You can move your windows around by changing to the window you want to move, and issuing the command: `/window move 3` to move that window to position 3 for exmaple. You can then save the "layout" of your windows with the command: `/layout save`. == Added functionality via scripts == You can load scripts to provide additional functionality. You can find pre-installed scripts in /usr/share/irssi/scripts Descriptions of what the scripts does can be found by viewing the script in a text editor like nano and reading the comments at the top of the source. To load a script, type: {{{ /SCRIPT LOAD trackbar.pl }}} To add autoload scripts when starting irssi, you can add a symlink like this: {{{ cd .irssi/scripts/autorun ln -s /usr/share/irssi/scripts/trackbar.pl ./ }}} You might have to create the directories scripts and autorun if you have not used scripts before. === Explanation of some common and useful scripts === * trackerbar - Prints a line where you last left of in a channel, so you easily can pick up your reading in the log when you check back. * screen_away - Automatically sets your status to away if you detach your screen. * usercount - Adds an item that displays the number of users in the statusbar. == More == * [[Howto/IrssiTips]] - Tips and tricks for the irssi IRC client * [[FAQ/DeadScreen]] - What to do when you can't resume a screen because it's "dead". * [[FAQ/Unicode]] - Enable unicode to make local characters work properly. * [[Howto/Screen]] - More on how to use screen. * [[Howto/Autostart]] - How to automatically start Screen+irssi when the server starts. == External links == * http://irssi.org/documentation/startup - Startup howto on irssi's website. * http://quadpoint.org/articles/irssi - "A Guide to Efficiently Using Irssi and Screen". ---- . CategoryHowto