Screen Is Good

Wouldn’t be me if the posts were any closer together, would it. After a couple people’s comments in IRC channels I frequent, I started looking into customizing Screen a bit more to my liking. Here is the end result (and here’s the screenrc that made it look like that). What you’re looking at is two nested screens (one home, one at work); the innermost statusbar tells you which machine you’re on, and the depth tells you how many you’re nested. The hostname and clock are fixed on the right side, and the window list will grow until it reaches them, then scroll off the left side (or back to the right if you move to previous windows) to try to keep the active window in the middle. I’ve already got used to it, and renaming screen instances on the fly so I can keep track of opened tabs – no more opening a terminal window to do something quickly, just Ctrl-A Ctrl-C and type away :>

Oh, and that’s obviously a small window. Almost none of my terminals are that small normally, I maximize them on whatever machine I’m using. And since irssi is one of the tabs there, I might as well show off my irssi setup too. Screenshot, and description:

  • adv_windowlist – Gives the nice list at the bottom of the screen, nicer than just “Act: 2,3,6” to say which windows have activity.
  • auto_whois – When someone sends me a /msg, it does a /whois on them automatically. Most people who /msg me, I know, but for those that I don’t it saves me the trouble.
  • away_hilight_notice – If I’m /away and someone says something that hilights me, it sends them a single noticie to say I’m away and why. I emphasize “single” because there’s some scripts out there that will keep spamming people every time you hilight them, and those scripts suck.
  • bantime – Aliased to /bans, it will tell you in normal terms how long a ban has existed (instead of in seconds).
  • bitlbee_tab_completion – Tab completes some common bitlbee commands.
  • bitlbee_typing_notice – Know how some IM clients tell you when the other person is typing? This adds that functionality to irssi & bitlbee. Looks neat too :>
  • buf – Saves your current scrollback buffers for doing an /upgrade. Yes, irssi can be upgraded without really hurting your connection status. It rocks.
  • conncount – Tells you how many users are connected to your IRC daemon, useful for opers who want to keep track of lusers.
  • dispatch – Sends any unknown /commands directly to the server. No need to remember to /quite kline, just /kline.
  • idlesince – Tells you how long someone was idle in the /whois response.
  • kicks – Spice up your kick messages! Instead of just using your nick if you /kick without a reason, this will pull from a list of reasons and pick one automagically. I have the BOFH ones installed, which are a big hit in channels where I have to use them.
  • mangle – I first got this for the rot13 ability, but some of the other bits are fun too. Lets you mangle your text appropriately.
  • nickcolor – Colorizes nicks in the window. Helpful for tracking who said what.
  • nicklist – I don’t currently use this, but it’s still loaded (occasionally crashes my irssi, probably because of bugs I’ve introduced). Displays a nicklist on the right side of the screen. My modification adds away-coloring, so people who go /away are colored dark blue in the list.
  • per_window_prompt – Saves your input text so if you change to another window, it’s cleared, and restored when you change back. Great if someone asks you about a setting, and you start to reply and then Alt-1 to go to your status window to check something; you can see the setting and come back without clearing & retyping your response.
  • screen_away – Automatically sets /away if you detach your last screen.
  • scriptassist – Lets you download and upgrade scripts from irssi.org/scripts easily.
  • scripthelp – I forget which script suggested I install this, but it helps with the help system for it. I don’t even know if I still need it, but there it is.
  • timer – Create timers to do things. I think I’ve used it twice. Still neat though.
  • topicsed – Ever want to change one word in a topic? /topicsed s/one/two/ does the trick.
  • trackbar – See the line in that screenshot above, near the bottom of the screen? That’s where the chat had stopped last time I looked there. Damned handy if you’re in more than 1-2 windows and ever idle in IRC (which is what IRC is all about anyway).
  • trigger – Most powerful script ever. Basically, “when something happens, do something.” Can be used to do just about anything.
  • usercount – Gives the count of users/ops/voices/OPERs in a channel which sits in the statusbar.
  • window_switcher – I don’t use this one as often anymore, but if you type Ctrl-G and start on the name of a window, it’ll let you switch to that window quickly. Now I’ve just aliased /w to /window, and do /w 28 or whatever.

Most of the above scripts can be found at the Irssi scripts page, the rest you can find with Google pretty quickly.

Leave a Reply