XChatの操作性を格段に向上させるUberScriptプラグイン

 私の場合、XChat IRCクライアントの使用歴は数年に及んでいるが、唯一の不満を覚えているのは頻用するチャンネルをリストに登録しておく機能の不在である。こうした不足分を埋めてくれるのが、Perlで記述されたUberscriptというプラグインであり、これをインストールしたXChatにはお気に入りの登録機能が追加されるだけでなく、チャンネルに参加したユーザへの挨拶メッセージを自動出力する機能や、nick change、quit、joinメッセージを非表示化させる機能なども利用可能となる。

 UberScriptのインストール手順としては、まず同ソフトウェアのホームページからzip形式の圧縮ファイルをダウンロードして、「unzip UberScript-1.1e.zip」により解凍しておく。これによりuberというディレクトリおよびReadme.txtとUberScript.plという追加ファイルが作成される。このディレクトリと2つのファイルは各自の~/.xchat2/ディレクトリに移動しておかなければならない。

 XChatで使用する前のその他の準備としては、UberScript.plというスクリプトファイル中にある「my $uber_editor = "notepad";」という行の編集がある。ここで必要なのはnotepadという指定を、各自が使いやすいと思うグラフィカル形式のテキストエディタに変更することで、私の場合はgeditとしておいた。必要な事前準備はこれだけで、後はXChatを起動すると本スクリプトが自動的に読み込まれる。

新規に追加されるメニュー群

 インストール終了後に一番最初に目に付く変更箇所は、System、UberScript、Favoritesという3つのメニューが追加されることである。このうちSystemメニューはXChatの各種設定を変更するためのもので、本スクリプトの開発者であるSimon Avery氏の説明にあるように、XChatの最近のバージョンでは以前は設けられていたこの種のメニューオプションがいくつか削除されてしまっているのだ。例えばチャンネルが切断された際の自動ログイン機能を利用したければ、「System」→「IRC」→「irc_auto_login」または「System」→「Net」→「net_auto_reconnectonfail」を選択しておくと、接続失敗時の再接続が自動的に試みられるようになる。Systemメニューにはその他に、システムビープ音の変更、ネットワークおよびIRC関連のオプション、不在メッセージの指定といった機能が用意されている。

 2つ目のUberScriptメニューには、本プラグイン全体のコントロールをするための機能が用意されている。例えば同メニューにおける最初のカテゴリはFilteringであり、この中に用意されているオプションを指定すると、join、quit、nick changeのメッセージを非表示化することができる。

 Uberscriptのuberディレクトリにはwelcome.txtというファイルが同梱されているが、これを使用すると、ユーザのチャンネル参加時に出力させる挨拶メッセージや実行コマンドをカスタマイズすることができる。例えば「*|#channelname|say Hello %n, welcome to %c!」という指定は、チャンネルに参加する全ユーザに挨拶をするという設定である。その他にもこのファイルを使いこなせれば、自分のチャンネルに参加したユーザにその場でオペレータ権限を与えたり、種類の異なる挨拶メッセージを自動で表示させるなどの処理が行える。このファイルを編集するには、「UberScript」→「Edit Files」→「Edit Greetings」を選択すればいい。

 最後に解説するFavoritesメニューは、デフォルト状態では空欄のままである。ここでのお気に入りチャンネルの登録は、favourites.txtというファイルに対して行う仕様になっており、具体的な操作としては「UberScript」→「Edit Files」→「Edit Favourites」をクリックして、必要なチャンネルを1行1項目形式で記入していく。また簡単な“プレゼント”メッセージをランダムに出力させる機能も用意されており、それにはgives.txtファイルにメッセージ群を登録してから、「/ubergive nickname 」を実行すればいい。オリジナルのgives.txtファイルには、「a vampire. They really suck」といった各種のメッセージが登録されており、例えばlinuxlalaというIRCニックネームでチャット中に「/ubergives roblimo」を実行すると、このgives.txtファイルの登録項目の中からランダムに選ばれた文章を基にして「linuxlala gives roblimo a vampire. They really suck」などのジョークメッセージが出力されることになる。

 なおUberScriptメニューにはQuotesというサブメニューも用意されているが、オリジナルのzipパッケージ中には引用文ファイル(その実態は引用文をランダムに収録しただけのファイル)は何も用意されていないので、ダウンロードしたままの状態では使用することはできない。引用文を入手するには、本スクリプトのホームページからquotes.zipファイルをダウンロードして、unzipで~/.xchat2/ディレクトリに解凍しておけばいい。これにより作成されるquotesディレクトリには複数のテキストファイルが格納されており、これら各ファイルは「UberScript」→「Quotes」メニューのオプションに関連付けられるようになっている。こうした準備の完了後、Quotesサブメニューのオプションをクリックすることで、該当分野のランダムな引用文をチャットの中に投げ込むことができる。例えば「UberScript」→「Quotes」→「BOFH」を選択すると、bofh.txtファイルが読み込まれて、その中にある引用文が出力されるといった具合である。

 UberScriptに関して最も驚くべき事実の1つは、使用許諾ライセンスが何も設けられていないことかもしれない。開発者のAvery氏の語るところでは、先に触れた引用文の一部がインターネットから拾ってきたものである関係上それらのライセンスを主張する訳にはいかないという事情もあるが、主たる理由は「どうも自分は、本来は単純な要件を長ったらしいライセンスの文面にするのが嫌いなようです。ただし、このコードに関する権利は私がすべて有しています。とは言うものの、これで金銭的な見返りを得る気もないので、銘々のユーザが各自の用途に応じて使ってもらって一向に構わないからです」ということだそうだ。

 当初UberScriptプラグインはLinux版だけでなくWindows版のXChatクライアント用のものも用意されていたが、それも今では過去の話となってしまった。Avery氏の語るところでは「オフィシャルのWindows版XChatクライアントはシェアウェア化されてから高度に複雑化して、コンパイルするのが困難になりました。それに私の考えでは、ユーザからのサポートに支えられてフリーな形態で配布されていたオープンソース系プログラムを有料化するというのは、モラル的に問題がある行為であり、私自身のサポート意欲も減退してきたため、結局は手を引くことになりました」ということだ。Avery氏は現在、ゲーム関係の大手サービスプロバイダにボランティア管理者として参加しており、自身の仕事であるIRC経由でのゲームサーバ管理を簡単化するためのスクリプト開発を進めているところだが、将来的に“より適した”IRCクライアントが登場すればコミュニティへのスクリプト提供を再開する意思はあるとしている。

 UberScriptは、使用するための設定も簡単であり、XChatの各種機能を操作性の優れたメニューを介してアクセス可能にするだけでなく、XChatの不足機能も補完してくれるという有り難い存在であり、XChatユーザにとっての必須プラグインと評していいだろう。

Linux.comでは毎週月曜日に、機能拡張、プラグイン、アドオンに関する新着記事を掲載している。自分で使用して便利だと感じたツールについて、その機能や操作上のヒントなどを1,000ワード以内にまとめた記事を投稿していただければ、採用された方にはもれなく100ドルをお支払いする(なお、既に同じテーマが最近取り上げられていたり掲載予定になっている可能性もあるので、事前に確認のメールを送って頂きたい)。

Shashank Sharmaはコンピュータサイエンスの学位取得中の学生で、フリー/オープンソース系ソフトウェアの初心者向け記事の執筆も行なっており、Apress社から刊行されている『Beginning Fedora』の共著者でもある。

Linux.com 原文