Language Selection

English French German Italian Portuguese Spanish

A Collection of Tips and Tricks for XChat, Part 1

XChat is a GTK client for IRC, available on both Linux and Windows. It is one of the most popular and feature-rich IRC clients on the Linux platform, together with Konversation and KVirc. Of course, there are very good clients like Irssi too, but I'm talking only about graphical clients here.

Although by default XChat doesn't offer all the user-friendly options in its configuration dialogue, its true power stands in the possibility to configure it using /SET variables and Perl/Python scripts or even C plugins. You can practically make XChat behave in any way you want: from a powerful, personalised IRC client for daily use to an IRC help or trivia bot.

In my two recent articles I showed how to make simple Perl scripts for XChat which will change its default behaviour:

Make a Perl Script to Display Notices in Current Window
Make a Perl Script to PART/REJOIN a Channel Similar with mIRC's /HOP

In this article however I will list some of the tips and tricks I consider most popular and useful for the IRC user, leaving all that scripting behind.

Hide JOIN/PART messages using the conference mode
The conference mode can be turned on/off using the irc_conf_mode variable (which by default is 0 - disabled). By turning it on, the join/part and quit messages will not be displayed anymore, so you will be able to keep a log from an IRC meeting/tutorial/discussion without those annoying messages. Use it like this:

/SET irc_conf_mode 1

If you still want to see the messages on other channels, right-click on the channel button, go to Settings -> Hide Join/Part Messages. Tick (or un-tick, depending if you want to see them) this option.

Hide the backlog
Introduced in XChat 2.8.4, this feature will automatically display the last lines from a channel/private log when you open it again. If you want to turn this feature off use:

/SET text_replay 0

This will turn off the backlog.

Show the /WHOIS info in the current window
The /WHOIS information is shown in the status window by default. However if you are on a channel and you /WHOIS someone, you will probably want the information to be displayed in the same window, instead of having to switch on the status window to see it and then back on the channel. To do so, use:

/SET irc_whois_front 1

Change the way events are shown
You can do this using scripts, which provides a more flexible way of doing it, but I'll show here only how to use the Settings -> Advanced -> Text Events... dialogue.

For example, the Quit action looks like this by default:

%C23*%O$t%C23$1 has quit (%O%C23%B%B$2%O%C23)

However, you may also want to see the person's host, add the third parameter ($3 - host), as specified in the Number and Description fields:

%C23*%O$t%C23$1 ($3) has quit (%O%C23%B%B$2%O%C23)

See the screenshot below:

Change the location and format of logs
The default format for logs is %n-%c.log, which will log as network-channel/nick.log (e.g. FreeNode-#debian.log). The logs are kept by default in the ~/.xchat2/logs/ directory. However, you may change this and customise it to your likings:

~/logs_xchat/%n/%Y_%m_%d_%c.log

This will log all in the logs_xchat directory inside your home directory, creating a new folder for each network, and using several conversion specifiers for the filename. In the above example, I used:

%Y for full year digits (e.g. 2009)
%m for the number of the month (e.g. 01-12)
%d for the day number (e.g. 01-31)
%c for the channel/nickname

You can find all the conversion specifiers here.

Use shortcuts for last and previous commands
By default, the up and down arrows are used for these two actions. However I always prefered ^P (CTRL+P) for last command and ^N (CTRL+N) for next command. You can add these two in the Settings -> Advanced -> Keyboard Shortcuts... menu. The screenshot below shows how the ^P command should look like, after clicking Add New and filling the necessary fields. Don't forget to press Enter in the Data 1 field, otherwise the new shortcut will be lost after closing the window (I know, extremely annoying but that's the way XChat implements it).

That's it for today. In the next part I'll also include several simple scripts and more /SET tips. Also, I recommend to see this page (offsite), it has some great XChat resources, and eventually the XChat scripts and plugins page.

More in Tux Machines

Scrivener Writing Software has a Linux Version

In some ways, Scrivener is the very embodiment of anti-Linux, philosophically. Scrivener is a writing program, used by authors. In Linux, one strings together well developed and intensely tested tools on data streams to produce a result. So, to author a complex project, create files and edit them in a simple text editor, using some markdown. Keep the files organized in the file system and use file names carefully chosen to keep them in order in their respective directories. when it comes time to make project-wide modifications, use grep and sed to process all of the files at once or selected files. Eventually, run the files through LaTeX to produce beautiful output. Then, put the final product in a directory where people can find it on Gopher.

Gopher? Anyway …

On the other hand, emacs is the ultimate linux program. Emacs is a text editor that is so powerful and has so many community-contributed “modes” (like add-ins) that it can be used as a word processor, an email client, a calendar, a PIM, a web browser, an operating system, to make coffee, or to stop that table with the short leg from rocking back and forth. So, in this sense, a piece of software that does everything is also linux, philosophically.

And so, Scrivener, despite what I said above, is in a way the very embodiment of Linux, philosophically.

I’ve been using Scrivener on a Mac for some time now, and a while back I tried it on Linux. Scrivener for the Mac is a commercial product you must pay money for, though it is not expensive, but the Linux version, being highly experimental and probably unsafe, is free. But then again, this is Linux. We eat unsafe experimental free software for breakfast. So much that we usually skip lunch. Because we’re still fixing breakfast. As it were.

Details with Screen Shots Here

Anyway, here’s what Scrivener does. It does everything. The full blown Mac version has more features than the Linux version, but both are feature rich. To me, the most important things are: A document is organised in “scenes” which can be willy nilly moved around in relation to each other in a linear or hierarchical system. The documents are recursive, so a document can hold other documents, and the default is to have only the text in the lower level document as part of the final product (though this is entirely optional). A document can be defined as a “folder” which is really just a document that has a file folder icon representing it to make you feel like it is a folder.

Associated with the project, and with each separate document, is a note taking area. So, you can jot notes project-wide as you work, like “Don’t forget to write the chapter where everyone dies at the end,” or you can write notes on a given document like “Is this where I should use the joke about the slushy in the bathroom at Target?” Each scene also has a number of attributes such as a “label” and a “status” and keywords. I think keywords may not be implemented in the Linux version yet.

Typically a project has one major folder that has all the actual writing distributed among scenes in it, and one or more additional folders in which you put stuff that is not in the product you are working on, but could be, or was but you pulled it out, or that includes research material.

You can work on one scene at a time. Scenes have meta-data and document notes.

The scenes, folders, and everything are all held together with a binder typically displayed on the left side of the Scrivener application window, showing the hierarchy. A number of templates come with the program to create pre-organized binder paradigms, or you can just create one from scratch. You can change the icons on the folders/scenes to remind you of what they are. When a scene is active in the central editing window, you can display an “inspector” on the right side, showing the card (I’ll get to that later) on top the meta data, and the document or project notes. In the Mac version you can create additional meta-data categories.

An individual scene can be displayed in the editing window. Or, scenes can be shown as a collection of scenes in what is known as “Scrivenings mode.” Scrivenings mode is more or less standard word processing mode where all the text is simply there to scroll through, though scene titles may or may not be shown (optional). A lot of people love the corkboard option. I remember when PZ Myers discovered Scrivener he raved about it. The corkboard is a corkboard (as you may have guessed) with 3 x 5 inch virtual index cards, one per scene, that you can move around and organize as though that was going to help you get your thoughts together. The corkboard has the scene title and some notes on what the scene is, which is yet another form of meta-data. I like the corkboard mode, but really, I don’t think it is the most useful features. Come for the corkboard, stay for the binder and the document and project notes!

Community chest: Storage firms need to pay open-source debts

Linux and *BSD have completely changed the storage market. They are the core of so many storage products, allowing startups and established vendors alike to bring new products to the market more rapidly than previously possible. Almost every vendor I talk to these days has built their system on top of these and then there are the number of vendors who are using Samba implementations for their NAS functionality. Sometimes they move on from Samba but almost all version 1 NAS boxen are built on top of it. Read more

Black Lab SDK 1.8 released

QT Creator - for QT 5 Gambas 3 - Visual Basic for Linux Ubuntu Quickly - Quick and dirty development tool for python emacs and Xemacs - Advanced Text Editor Anjuta and Glade - C++ RAD development tool for GTK Netbeans - Java development environment GNAT-GPS - IDE for the following programming languages. Ada, C, JavaScript, Pascal and Python Idle - IDE for Python Scite - Text Editor Read more

Did Red Hat’s CTO Walk – Or Was He Pushed?

He went on to say that some within Red Hat speculate that tensions between Stevens and Paul Cormier, Red Hat’s president of products and technologies, might be responsible, although there doesn’t appear to have been any current argument between the two. Cormier will take over Stevens’ duties until a replacement is found. Vaughan-Nichols also said that others at Red Hat had opined that Stevens might’ve left because he’d risen as high as he could within the company and with no new advancement opportunities open to him, he’d decided to move on. If this was the case, why did he leave so abruptly? Stevens had been at Red Hat for nearly ten years. If he was leaving merely because “I’ve done all I can here and it’s time to seek my fortune elsewhere,” we’d expect him to work out some kind of notice and stay on the job long enough for Red Hat to find a suitable replacement. Turning in a resignation that’s effective immediately is not the ideal way to walk out the door for the last time. It smells of burning bridges. Read more