last modified on

Customizing LiteStep 3rd edn. 1.9 LiteStep Control Panel
LiteStep チュートリアル 第3版 1.9 LiteStep コントロール・パネル

tutorialAuthor: 河本孝之 (Takayuki Kawamoto, aka philsci);
1st appeared on 19th August, 2003.

References:
Alessandro Limonta (allelimo), "lscphelp.txt" (2002.12).
the LiteStep Documentation Effort Team, "litestep", LiteStep v. 0.24.6 documentation (2002).
Todd Kadrie (tin_omen), "What is Litestep?" at desktopian.org (2001-04-21).

Special thanks goes to Nose at Nose Room.

Acknowledgement: thanks to allelimo, ayamame, Fizz.oO, Fuji, hideh, Toshiyuki Itakura, Naoto Kanzaki, ken, Ks, ManiMani, Yusuke Mizukoshi, mth(k), N&R, Hirohisa Teramoto, Taro "O_SAKANA" Todoroki, and especially to the LiteStep Documentation Effort Team.

Copyright©2000-2003 by Takayuki KAWAMOTO.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
A copy of the license is included in the section entitled "GNU Free Documentation License" [translation in ja].


LiteStep コントロール・パネル前史

歴史を紐解くと、ヴァージョン 0.24.5 の頃に同じ名前で呼ばれる設定ツールがありました。LiteStep のメーリングリストを管理する南アフリカの Bryan Kilian (MHolmesIV) さんが開発した LiteStep Configuration Editor (LCE) というツールの後継版で、Kilian さんと Cael さんが開発していた LiteStep Control (or Configuration) Panel (LSCP) と呼ばれたものです。また 1998 年の 11 月から 1999 年の 8 月にかけて、LSD Project と呼ばれるプロジェクトのメンバー(Epsylon 3, Hash4r, IWar, Nono)が公開していた LSTweaker というアプリケーションもありました(但しインターフェイスがフランス語なので普及はしませんでした)。それから月日は経って、alphaLSCP というツールを既に個人サイトで公開していたイタリアの Alessandro Limonta (allelimo) さんが 2002 年 12 月 9 日のビルドで lscphelp.txt と共にこの新しいコントロール・パネルを LiteStep 0.24.6 へ追加しています。こんにち LSCP と呼ばれているのは allelimo さんの単体版 LSCP ではなく、0.24.6 (IndieSTEP) に同梱されている LSCP を指しています。このドキュメントでも、ビルドに同梱されている方の LSCP について解説します。

LiteStep Configuration (Control) Panel

LSTweaker

alphaLSCP

このドキュメントでは、IndieSTEP(Independent LiteStep)と呼ばれているベータ版を 0.24.6 のこととして記述します。LiteStep の 0.24.6 が事実上 Indie 版であるのは周知の事実なので、これが(どういう意味にせよ)「公式版」であるかどうかといった表面的なことがらにはこだわらないでおきます。

LiteStep は、基本的な動作を設定する項目だけでも初心者には敷居の高いソフトウェアかもしれません。それゆえ、LiteStep の設定を簡単に記述するためのツールやユーティリティが幾つか出ては消えてゆきました。LCE や古い LSCP だけでなく、NoteTab というスイスのテキストエディタで使う「ライブラリ」と呼ばれるスクリプト形式のプラグイン(テキストエディタ自身で作れる拡張機能)に、step.rc の雛形を生成するライブラリもありました。また、個人的にウェブサイトで step.rc を自動生成するためのウェブ・アプリケーションを公開していた方もいます。僕も一時は popup2.dll の書式を JavaScript で生成するようなページを作ろうと思っていたのですが、step.rc の書式を自動生成するような仕組みを作ろうとすると幾つかの大きな課題が予想できます。

このように、質と量の二つの点で難しいと言えるでしょう。また、LiteStep を使う人が誰でも参照したり設定するような項目(例えば環境変数など)だけを扱うようにしても、ビルドの開発にあわせていかなくてはなりません。

そこで、allelimo さんは alphaLSCP を公開する以前に、個々のモジュールについて設定項目を自由に追加できる、alphaLS step.rc editor という step.rc 編集ソフトを開発していました。ただ、これにしてもユーザーがモジュールの設定項目をこのエディターの書式に合わせて書き換えなくてはならず、結局は step.rc をそのまま編集するのと同じくらいの手間がかかってしまいます。

alphaLS RC Editor

[top] [contents]

「コントロール・パネル」について

そもそも、「コントロール・パネル」とは何なのでしょうか? 通俗書によくある「『広辞苑』を紐解いてみると~」の要領で、everything2.com を紐解いてみると、次のような記述があります。

実のところ、「コントロール・パネル」という言葉の意味は MacOS と Windows で少し違っています。MacOS で言うコントロール・パネルは複数ありますが、Windows のコントロール・パネルは一つしかありません。MacOS のシステムで Windows のコントロール・パネルに相当するものは「コントロール・パネル・フォルダ」であり、逆に Windows のシステムで MacOS のコントロール・パネルに相当するものは、コントロール・パネルに表示されている個々のアイコンです。

tftv256, 2000-05-13

また、アーケード・ゲームの筐体でジョイスティックやボタンを装着してある箇所を「コントロール・パネル」と呼ぶそうですが、これは違いますね。では、実際に「コントロール・パネル」という名称を使っている Microsoft と Apple の公式ドキュメントを調べてみましょう。

まず Apple の『Mac OS 8 ヒューマン・インターフェイス・ガイドライン(Mac OS 8 Human Interface Guidelines)』というドキュメントによると、次のように定義されています。

Control panels are appropriate for allowing users to configure:
(個々の)コントロール・パネルは、ユーザーに以下のような構成を許すに相応しいものである。

Control panels are not appropriate for allowing users to configure specific applications or utilities, or tasks that would require multiple layered dialog boxes or custom menu items.
コントロール・パネルは、個別のアプリケーションやユーティリティの設定をするためのものであってはならない。また、複数の階層をもつ(複雑な)ダイアログ・ボックスや特殊なメニュー項目を要するものであってはならない。

では、Windows の方を見てみましょう。Microsoft Japan の Microsoft 単語帳「コントロール パネル」の項目によると、

コントロール パネル【 = control panel 】
Windows や Mac OS で、オペレーティング システムのさまざまな設定を行うためのフォルダ。 Windows XP ではウィンドウ形式の独立したアプリケーションになっている。
画面の色やマウスの移動速度、日付と時刻、ネットワーク、キーボードの言語設定、数値や通貨の表示形式、動作モードなどの設定を行うために使用する。
Windows ではスタート メニューから実行する。 Mac OS は画面左上のアップル メニューから 『コントロール パネル』 を選択することにより、各種の設定を選択する仕組みになっている。

ここまでのさまさまな説明から、「システムの設定項目に対応するユーティリティ(へのショートカット)を一つのウィンドウに集めて、グラフィカルなやり方で設定を変更できるようにしたもの」がコントロール・パネルだと言ってよさそうです。要点は、設定項目に適したそれぞれのユーティリティを一つのウィンドウから起動できるようになっていること、起動したユーティリティが(特に Mac と Windows の環境で)グラフィカルなやり方で設定を変更できるようにしてあることの二つです。

また、Windows の環境ではコントロール・パネルには次のような特徴があります。まず、エクスプローラをユーザーインターフェイスの標準として利用する Windows では、ファイルシステムが提供しているディレクトリと、シェル・ネームスペース(名前空間)が提供しているオブジェクトの二つが「フォルダ」として表現されています。皆さんがよく知っている「ごみ箱」,「ネットワーク・コンピュータ」,「ネットワーク上の他のコンピュータ」,「コントロール・パネル・アプリケーション」などはファイラーモードのエクスプローラ上ではフォルダのように扱えますし、シェルモードのエクスプローラではフォルダ・アイコンのように扱われていますが、或るものは通常のファイルやフォルダと異なる仕方で扱われており、また或るものは物理的なストレージ(データ保存・記憶装置)に実体すらありません。ですが、これらのオブジェクトもエクスプローラ上のフォルダやファイルとして扱われますので、ファイルシステム上のディレクトリやファイルと区別するために「擬似フォルダ」,「擬似ファイル」と呼ばれています。コントロール・パネルもそうした擬似フォルダの一つです。ユーザーはエクスプローラ上で「新規作成」のメニューから新しいフォルダを作るように擬似フォルダを作成することはできず、せいぜい何かのアプリケーションがインストールされるときに擬似フォルダや擬似ファイルを作成するかどうかを選択できるだけです。

擬似フォルダを簡単に作れない理由は明らかで、例えばファイラーモードのエクスプローラで、左ペインに表示されるフォルダ階層を思い出してみましょう。この階層の最上層には「デスクトップ」があります。もしユーザーが勝手に「デスクトップ」という擬似フォルダを現在あるデスクトップの下に新規作成したとして、その機能が既存のデスクトップと同じであったなら、Windows は「デスクトップ」という場所を特定できなくなります。果たして、「デスクトップの下にあるデスクトップ」と表現したとして、その最初の「デスクトップ」はどこなのか? デスクトップの下にあるデスクトップなのか、デスクトップの上にあるデスクトップなのか? いや、デスクトップの下にあるデスクトップの下にある・・・。このような混乱を避けるために、(擬似的なものを含めて)ファイルやフォルダは「名前空間(namespace)」と呼ばれている擬似的な布置空間の中で固有の ID をもっています。特に、擬似フォルダや擬似ファイルは "CSIDL" とか "GUID" という特別な値をもっており、異なる Windows システムの中で共有される同じ擬似フォルダを指し示せるようになっています。コントロール・パネルのアプリケーション、例えば「デスクトップのプロパティ」(desk.cpl)は、Windows 98 なら C:\WINDOWS\SYSTEM にありますが、Windows 2000 Professional なら C:\WINNT\SYSTEM32 にあります。このようにファイルシステム上で異なる位置にあっても、同じ CSIDL をもっていれば、それぞれの Windows で動くエクスプローラは同じオブジェクトを探し当ててくれるわけです。具体的に述べると、CSIDL_BITBUCKET は「ごみ箱」、CSIDL_CONTROLS は「コントロール・パネル」、CSIDL_PROGRAMS は(Windows 2000 以降の)ユーザー毎に用意されている "C:\Documents and Settings\username\スタート メニュー\プログラム" というフォルダの CSIDL です(CSIDL の一覧は、Microsoft MSDN, CSIDL のページで参照できます)。

[top] [contents]

LiteStep コントロール・パネルについて

LiteStep コントロール・パネルは、LiteStep システムで設定されている環境変数(後述)や、読み込まれているモジュール、そしてそれらのモジュールによってサポートされる Bang コマンドを表示したり、あるいは切り替え可能なテーマの一覧を表示して切り替えたり、Bang コマンドを入力して実行したり、コンパイル済みのヘルプファイル(.chm)を表示したりします(いまのところヘルプファイルは LSCP の画面に読み込まれるのではなく、別のウィンドウでポップアップ表示されます)。これまで見てきた Mac や Windows のコントロール・パネルと比べれば、コンピュータのハードウェアについて設定したりシステム全体に作用するような設定を扱うわけではありませんが、LiteStep の環境全体にわたって効力がある設定を扱えます(もちろん、既にコントロール・パネルのアプリケーションとして提供されている .cpl ファイルまで LiteStep のモジュールとして置き換えるなら、LSCP は更に強力なものになるでしょう)。

LiteStep コントロール・パネルをインストールするには、IndieSTEP のビルドを入手しなければなりません。allelimo さんの単体版を除いて、LSCP は単体ではリリースされていないので、ごく最近の IndieSTEP ビルドを入手します(2003 年以降のビルドなら入っています)。ビルドの中に、lscp.exe と lscp.dll が同梱されていると思います。それらを、$LitestepDir$ つまり LiteStep のインストール・ディレクトリに置けば、使えるようになります。lscp.dll については、LoadModule コマンドで読み込んでおく必要はありません。

LSCP を起動するには、LiteStep が起動している状態で !lscp という Bang コマンドを実行するか、もしくは Ctrl + Alt + F1 のトリプルキー(前者二つを押しながら F1 を押す)で呼び出した回復メニューのメニュー項目から Utilities -> LiteStep Control Panel を選んで起動して下さい。なお、LSCP は LiteStep が起動していないと動かないのですが、LSCP を立ち上げた後で LiteStep を終了させても動くように作られています。そして、LSCP の画面にある "Restart LS" などのボタンで LiteStep を再起動したりもできます。

では、LiteStep コントロール・パネルを立ち上げて各部を見てみましょう。

LSCP
LiteStep Control Panel

1. メニューペイン
LSCP のメニューが、エクスプローラのツリービューのように展開します。ここで選択した項目の内容が、右側のペイン(表示領域)に表示されます。
2. 内容表示ペイン
左のメニューペインで選択した項目の内容が実際に表示される場所です。ここに表示される項目は特に編集可能なわけでもなく、ユーザーはシステムの情報などを確認できるだけになっています。

3. Always on Top (常に最前面に表示)チェックボックス
このチェックボックスをチェックしておくと、タスクマネージャの「常に手前に表示」と同じく、他のウィンドウよりも常に手前に LSCP のウィンドウを表示しておけるようになります。LCSP を参照しながらテキストエディタに何かを書いたりするとき、テキストエディタにフォーカスが移る(テキストエディタのウィンドウがアクティブになる)と LSCP の画面が隠れてしまって困るときなどに使います。
4. コマンド入力ボックス
エクスプローラの「ファイル名を指定して実行」に入力できるコマンドラインの命令をはじめ、Bang コマンドもここに入力して実行できます。実質、!execute コマンドとやっていることは同じですね。すぐ右にある "Clear History" ボタンを押すと、それまでに入力したコマンドの履歴がクリアされます。
5. ボタン類
としか言いようがない(笑。ともかく、一見すればそれぞれのボタンの役割は明瞭です。"!Recycle" は LiteStep を再起動し、"Quit" は LiteStep をソフトに終了させて、"Restart LS" は LiteStep を(LSCP のウィンドウだけが残っている状態で)起動させます。いちばん右端にある "Close" ボタンは、LSCP を終了させるボタンです。

[top] [contents]

メニューの各項目について

次に、メニューペインに表示される(つまりは右の内容表示ペインで確認できる)各項目を解説します。この部分は、IndieSTEP のビルドに付属している lscphelp.txt からほぼ全文を訳出した文章になります。

[Information] 一般情報
  1. Configuration Files 設定ファイル

    ダブルクリックすると、.rc ファイルのエディタがそのファイルを開きます(事前に「フォルダオプション」で関連付けが必要です)。

    右クリックのオプションは、そのファイルを開くエディタとして「関連付けされたエディタ」と「メモ帳」のどちらかを選択できます。

  2. Changes 更新履歴

    changes.txt ファイルを開いて、ソースコードに加わった変更の履歴を表示します。

  3. Log File ログ・ファイル

    ログファイル(デフォルトなら litestep.log)を開きます。主にデバッグ目的で使います。

[Modules] モジュール
  1. Loaded Modules ロード中のモジュール

    現在のテーマが読み込んでいるモジュール( *.dll)の一覧を表示します。

    右クリックのオプションは、モジュールのフルパスをクリップボードへ送ったり、選択したモジュールを unload/reload できます。

  2. Revision IDs ヴァージョン情報

    モジュールの名称とヴァージョン番号の一覧を表示します。

[Bang Commands] Bang コマンド
  1. !Bang Commands !Bang コマンド

    現在のテーマで実行可能な Bang コマンドの一覧を表示します。

    ダブルクリックすると、選択されている Bang コマンドを(オプションがあればオプション付で)実行します。

    右クリックのオプションは、選択されている Bang コマンドを実行したり、コマンドの名称をクリップボードへコピーしたり、コマンドをオプション付で「コマンド入力ボックス」(上図の 4.)へペーストします。

    オプションは、Bang コマンドの一覧を表示しているときに「コマンド入力ボックス」の上へ表示される「オプション入力ボックス(Bang params)」へ入力します。

[Hotkeys] ホットキー
  1. Hotkeys Definitions ホットキー定義

    現在のテーマで定義されているホットキー("*Hotkey..." で定義する RC コマンド)の一覧を表示します。

    ダブルクリックすると、選択されたホットキーをクリップボードへコピーします。

    右クリックのオプションは、選択されたホットキーをクリップボードへコピーしたり、「コマンド入力ボックス」へペーストしたりします。

[Environments Variables] 環境変数
  1. Built-in ビルトイン環境変数

    LiteStep のシステムが最初から定義している環境変数の一覧を表示します。

    環境変数を選択すると、簡単な説明が見られます。

    ダブルクリックすると、選択された環境変数をクリップボードへコピーします。

    右クリックのオプションは、選択された環境変数をクリップボードへコピーしたり、「コマンド入力ボックス」へペーストしたりします。

  2. Custom ユーザー環境変数

    現在のテーマでユーザーが定義した環境変数の一覧を表示します。

    ここでの一覧表示はあまり良い方法ではありませんが、他によいやり方を思いつかないので、LSCP の一覧にあなたが定義する環境変数を表示するには、次のやり方に従ってください。

    ユーザー環境変数の名称をかならず "&"(「アンパーサンド」と呼ぶ。要するに「アンドマーク」のこと)で始めて下さい。

    • 例: &MyVar1  C:\Path\to.exe

    もちろん、この環境変数を使うときには、$&MyVar1$ といったように記さなくてはなりません。こんなやり方はよくないとは思うのですが、いまのところこれで動いているので・・・。それに、もしこのやり方が気に食わない場合でも、他のやり方で環境変数を定義してもシステムに影響はないので(笑。

    ダブルクリックすると、選択された環境変数をクリップボードへコピーします。

    右クリックのオプションは、選択された環境変数をクリップボードへコピーしたり、あるいは「コマンド入力ボックス」へペーストしたりします。

[Theme Switcher] テーマチェンジャー
  1. OTS Standard OTS 規格のテーマ

    $LiteStepDir$Themes$ フォルダにあるテーマの一覧を表示します(左ペインの項目ではなく、「コマンド入力ボックス」の上部に表示されるラジオボタンで、表示を切り替えます)。

    ダブルクリックで、選択されたテーマに切り替えます。

    右クリックのオプションは、選択されたテーマに切り替えたり、選択されたテーマの readme を開いたりします(readme ファイルは、OTS 規格によると、テーマフォルダの直下 $ThemeDir$readme.(txt|htm) に置かなくてはなりません。また、ファイル名は readme.txt, readme.htm, readme.chm のいづれかでなければなりません)。

  2. Custom 他のテーマ

    $LitestepDir$themeswitch.rc に登録されている、OTS 以外の仕方でつくられたテーマの一覧を表示します。

    ダブルクリックで、選択されたテーマに切り替えます。

    右クリックのオプションは、選択されたテーマに切り替えたり、そのテーマの readme を開いたりします。themeswitch.rc ファイルの編集は手作業で行って下さい。

  3. Configure 調整

    このオプションで、あなたは次の定義を追加できます。

    • テーマを切り替えるのに使うファイルの名前を決められます。デフォルトでは、LSCP は LiteStep ディレクトリにある step.rc ファイルを参照しますが、他のファイルを参照するように強制もできます。こうして、step.rc に書かれている設定を保存したまま、他のファイルを LiteStep に参照させて起動することができるようになります。
    • テーマ設定用ファイルのファイル名も決められます。これは、デフォルトでは選択されたテーマのフォルダの直下にある step.rc になっているのですが、これも他のファイルに変更できます。
[Help] ヘルプ
  1. Ls Docs (by devilboi)

  2. Ls Modules (by Phar0e)

  3. Ls FAQ (by Necro)

  4. Ls Sdk (by repugnant and sci)

    .chm (コンパイルされたヘルプファイル)ヴァージョンの各ヘルプファイルを表示します。これらは、それぞれの著者の了解を得てコンバートされました。

    最新のヴァージョンは、shellfront.org からダウンロードして下さい。

  5. lscp help

    この文書(lscp help)を表示します。

[top] [contents]

crossedge.net - Copyright©1999-2003 by Takayuki KAWAMOTO [philsci].
written in XHTML 1.1, Cascading Stylesheets level 3, and JavaScript 1.2 or later with encoding in utf-8n [cr/lf];
and this document is also a distributiion under GFDL version 1.1 or later.