last modified on
Author: 河本孝之 (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].
歴史を紐解くと、ヴァージョン 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 について解説します。



このドキュメントでは、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 の書式を自動生成するような仕組みを作ろうとすると幾つかの大きな課題が予想できます。
まず、100 種類以上もあるサードパーティー製のモジュールをどれくらいサポートするのか。そもそも現行の(少なくとも 0.24.6)LiteStep で動くモジュールなのかどうかを一つずつ検証するだけでも大変な作業となります。
次にサポートするモジュールを厳選した(あるいは一個に特定した)として、それらがアップデートされるたびに生成システムも書き直しとなります。
このように、質と量の二つの点で難しいと言えるでしょう。また、LiteStep を使う人が誰でも参照したり設定するような項目(例えば環境変数など)だけを扱うようにしても、ビルドの開発にあわせていかなくてはなりません。
そこで、allelimo さんは alphaLSCP を公開する以前に、個々のモジュールについて設定項目を自由に追加できる、alphaLS step.rc editor という step.rc 編集ソフトを開発していました。ただ、これにしてもユーザーがモジュールの設定項目をこのエディターの書式に合わせて書き換えなくてはならず、結局は step.rc をそのまま編集するのと同じくらいの手間がかかってしまいます。

そもそも、「コントロール・パネル」とは何なのでしょうか? 通俗書によくある「『広辞苑』を紐解いてみると~」の要領で、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:
(個々の)コントロール・パネルは、ユーザーに以下のような構成を許すに相応しいものである。
settings with system-wide effects (for example, the Date & Time control panel)
システム全体に関わる設定(日時設定のコントロール・パネルなど)settings that have no visible effect (for example, the File Sharing control panel)
視覚的な効果を伴わない設定(ファイル共有のコントロール・パネルなど)hardware (for example, the Monitors & Sound control panel)
ハードウェアの設定(モニターとサウンドのコントロール・パネルなど)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 のページで参照できます)。
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 コントロール・パネルを立ち上げて各部を見てみましょう。

LiteStep Control Panel
次に、メニューペインに表示される(つまりは右の内容表示ペインで確認できる)各項目を解説します。この部分は、IndieSTEP のビルドに付属している lscphelp.txt からほぼ全文を訳出した文章になります。
Configuration Files 設定ファイル
ダブルクリックすると、.rc ファイルのエディタがそのファイルを開きます(事前に「フォルダオプション」で関連付けが必要です)。
右クリックのオプションは、そのファイルを開くエディタとして「関連付けされたエディタ」と「メモ帳」のどちらかを選択できます。
Changes 更新履歴
changes.txt ファイルを開いて、ソースコードに加わった変更の履歴を表示します。
Log File ログ・ファイル
ログファイル(デフォルトなら litestep.log)を開きます。主にデバッグ目的で使います。
Loaded Modules ロード中のモジュール
現在のテーマが読み込んでいるモジュール( *.dll)の一覧を表示します。
右クリックのオプションは、モジュールのフルパスをクリップボードへ送ったり、選択したモジュールを unload/reload できます。
Revision IDs ヴァージョン情報
モジュールの名称とヴァージョン番号の一覧を表示します。
!Bang Commands !Bang コマンド
現在のテーマで実行可能な Bang コマンドの一覧を表示します。
ダブルクリックすると、選択されている Bang コマンドを(オプションがあればオプション付で)実行します。
右クリックのオプションは、選択されている Bang コマンドを実行したり、コマンドの名称をクリップボードへコピーしたり、コマンドをオプション付で「コマンド入力ボックス」(上図の 4.)へペーストします。
オプションは、Bang コマンドの一覧を表示しているときに「コマンド入力ボックス」の上へ表示される「オプション入力ボックス(Bang params)」へ入力します。
Hotkeys Definitions ホットキー定義
現在のテーマで定義されているホットキー("*Hotkey..." で定義する RC コマンド)の一覧を表示します。
ダブルクリックすると、選択されたホットキーをクリップボードへコピーします。
右クリックのオプションは、選択されたホットキーをクリップボードへコピーしたり、「コマンド入力ボックス」へペーストしたりします。
Built-in ビルトイン環境変数
LiteStep のシステムが最初から定義している環境変数の一覧を表示します。
環境変数を選択すると、簡単な説明が見られます。
ダブルクリックすると、選択された環境変数をクリップボードへコピーします。
右クリックのオプションは、選択された環境変数をクリップボードへコピーしたり、「コマンド入力ボックス」へペーストしたりします。
Custom ユーザー環境変数
現在のテーマでユーザーが定義した環境変数の一覧を表示します。
ここでの一覧表示はあまり良い方法ではありませんが、他によいやり方を思いつかないので、LSCP の一覧にあなたが定義する環境変数を表示するには、次のやり方に従ってください。
ユーザー環境変数の名称をかならず "&"(「アンパーサンド」と呼ぶ。要するに「アンドマーク」のこと)で始めて下さい。
もちろん、この環境変数を使うときには、$&MyVar1$ といったように記さなくてはなりません。こんなやり方はよくないとは思うのですが、いまのところこれで動いているので・・・。それに、もしこのやり方が気に食わない場合でも、他のやり方で環境変数を定義してもシステムに影響はないので(笑。
ダブルクリックすると、選択された環境変数をクリップボードへコピーします。
右クリックのオプションは、選択された環境変数をクリップボードへコピーしたり、あるいは「コマンド入力ボックス」へペーストしたりします。
OTS Standard OTS 規格のテーマ
$LiteStepDir$Themes$ フォルダにあるテーマの一覧を表示します(左ペインの項目ではなく、「コマンド入力ボックス」の上部に表示されるラジオボタンで、表示を切り替えます)。
ダブルクリックで、選択されたテーマに切り替えます。
右クリックのオプションは、選択されたテーマに切り替えたり、選択されたテーマの readme を開いたりします(readme ファイルは、OTS 規格によると、テーマフォルダの直下 $ThemeDir$readme.(txt|htm) に置かなくてはなりません。また、ファイル名は readme.txt, readme.htm, readme.chm のいづれかでなければなりません)。
Custom 他のテーマ
$LitestepDir$themeswitch.rc に登録されている、OTS 以外の仕方でつくられたテーマの一覧を表示します。
ダブルクリックで、選択されたテーマに切り替えます。
右クリックのオプションは、選択されたテーマに切り替えたり、そのテーマの readme を開いたりします。themeswitch.rc ファイルの編集は手作業で行って下さい。
Configure 調整
このオプションで、あなたは次の定義を追加できます。
Ls Docs (by devilboi)
Ls Modules (by Phar0e)
Ls FAQ (by Necro)
Ls Sdk (by repugnant and sci)
.chm (コンパイルされたヘルプファイル)ヴァージョンの各ヘルプファイルを表示します。これらは、それぞれの著者の了解を得てコンバートされました。
最新のヴァージョンは、shellfront.org からダウンロードして下さい。
lscp help
この文書(lscp help)を表示します。