﻿<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">

<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<meta http-equiv="Content-Style-Type" content="text/css" />
	<link rel="stylesheet" type="text/css" href="manual.css" />
	<title>Brownie マニュアル</title>
</head>

<body>

<h1>Brownie マニュアル</h1>
<ul>
	<li><a href="#overview">概要</a></li>
	<li><a href="#feature">特徴</a></li>
	<li><a href="#introduction">はじめに</a></li>
	<li><a href="#usage">基本的な使い方</a></li>
	<li><a href="#customize">カスタマイズ</a></li>
	<li><a href="#tools">ツール</a></li>
	<li><a href="#reference">リファレンス</a></li>
	<li><a href="#history">更新履歴</a></li>
</ul>

<h2 id="overview">概要</h2>
<table>
	<tr><td nowrap>製品名</td><td>Brownie (ファイラ)</td></tr>
	<tr><td nowrap>バージョン</td><td>0.0.0.18 dev</td></tr>
	<tr><td nowrap>最終更新</td><td>2007-12-20</td></tr>
	<tr><td nowrap>著作権者</td><td>ITAGAKI Takahiro</td></tr>
	<tr><td nowrap>メール</td><td><a href="mailto:lamoo@s53.xrea.com">lamoo@s53.xrea.com</a></td></tr>
	<tr><td nowrap>URL</td><td><a href="http://lamoo.s53.xrea.com/">http://lamoo.s53.xrea.com/</a></td></tr>
	<tr><td nowrap>開発環境</td><td>日本語版 Windows XP SP2 + Visual Studio.NET 2005 SP1 Express Edition</td></tr>
	<tr><td nowrap>動作環境</td><td>Windows XP SP2 (2003, Vista は動作未検証)</td></tr>
	<tr><td nowrap>ライセンス</td><td><a href="http://www.opensource.jp/artistic/ja/Artistic-ja.html">Artistic License</a></td></tr>
</table>

<h2 id="feature">特徴</h2>
<ul>
	<li>基本的な操作はエクスプローラに倣っています。</li>
	<li>複数のタブを切り替え、複数のフォルダを同時に閲覧することができます。</li>
	<li>マウスでもキーボードでも十分な操作ができます。</li>
	<li>ほとんどの要素をスクリプトで自由にカスタマイズできます。</li>
	<li>さまざまなシェル拡張ツールがそのまま利用できます。</li>
</ul>
	
<h2 id="introduction">はじめに</h2>

<h3>インストール</h3>
	<p>適当な場所にフォルダを作成し、そこに解凍して下さい。</p>
	<p>以下のコンポーネントの追加インストールが必要かもしれません。</p>
	<div>
		<dl>
			<dt>Python 2.5.x</dt>
			<dd><a href="http://www.python.org/download/releases/2.5.1/">Python Software Foundation</a> より、python-2.5.1.msi をインストールしてください。</dd>
			<dt>MSVC runtime: msvcr80.dll, msvcp80.dll (2.0.50727.762)</dt>
			<dd><a href="http://www.microsoft.com/downloads/details.aspx?familyid=200B2FD9-AE1A-4A14-984D-389C36F85647&displaylang=ja">Microsoft Visual C++ 2005 SP1 再頒布可能パッケージ (x86)</a>を実行してください。</dd>
		</dl>
	</div>

<h3>アンインストール</h3>
	<p>
	レジストリは使用していないので、フォルダごと削除して下さい。
	</p>
	
<h2 id="usage">基本的な使い方</h2>

<h3>フォルダ</h3>
<ul>
	<li>基本的には、エクスプローラと同じです。</li>
	<li>タブクリック時やフォルダ移動時に、CtrlキーやShiftキーを押しておくと、通常とは別の動作になります。<ul>
		<li>Ctrlキー / 中クリック → 別のタブで開く</li>
		<li>Shiftキー → （実装中）</li>
	</ul></li>
	<li>タブキーにより、ビュー間の移動ができます。</li>
</ul>

<h3>タブ</h3>
<ul>
	<li>左クリック：クリックしたタブをフォーカス。</li>
	<li>右クリック：(未実装)</li>
	<li>中クリック：タブを閉じます。</li>
</ul>

<h3>ツールバー</h3>
<img src="dropdown.png" style="float:right" />
<div>
	マウスホイール または 下方へ左ドラッグすると、ボタンがドロップダウンします。
</div>

<h2 id="customize">カスタマイズ</h2>

<p>
	キーバインドやマウスジェスチャは自由にカスタマイズできます。
	bin/user.py の該当部分をテキストエディタなどで編集します。
</p>
<p>
	以下は、デフォルト設定です。
</p>

<h3>マウスジェスチャ</h3>
<div>
	<table class="gesture">
		<tr><th>操作</th><th>動作</th></tr>
		<tr class="o"><td>左ダブルクリック</td><td>親フォルダへ移動</td></tr>
		<tr class="e"><td>中クリック</td><td>親フォルダへ移動</td></tr>
		<tr class="o"><td>左ボタン＋右クリック</td><td>親フォルダへ移動</td></tr>
		<tr class="e"><td>右ボタン＋左クリック</td><td>親フォルダへ移動</td></tr>
		<tr class="o"><td>右ボタン＋ホイール↑</td><td>親フォルダへ移動</td></tr>
		<tr class="e"><td>右ボタン＋ホイール↓</td><td>親フォルダへ移動</td></tr>
		<tr class="o"><td>右ボタン＋ジェスチャ↑</td><td>親フォルダへ移動</td></tr>
		<tr class="e"><td>右ボタン＋ジェスチャ→</td><td>進む</td></tr>
		<tr class="o"><td>右ボタン＋ジェスチャ←</td><td>戻る</td></tr>
		<tr class="e"><td>右ボタン＋ジェスチャ↓</td><td>閉じる</td></tr>
	</table>
</div>

<h3>キーバインド</h3>
<div>
	<table class="keybind">
		<tr><th>キー</th><th>修飾子</th><th>動作</th></tr>
		<tr class="o"><td>Tab</td><td>　</td><td>次のタブをフォーカス</td></tr>
		<tr class="e"><td>Tab</td><td>Shift</td><td>前のタブをフォーカス</td></tr>
		<tr class="o"><td>F2</td><td>　</td><td>名前を変更</td></tr>
		<tr class="e"><td>F5</td><td>　</td><td>最新の情報に更新</td></tr>
		<tr class="o"><td>A</td><td>Ctrl</td><td>すべて選択</td></tr>
		<tr class="e"><td>C</td><td>Ctrl</td><td>クリップボードへコピー</td></tr>
		<tr class="o"><td>C</td><td>Ctrl+Shift</td><td>クリップボードへ名前をコピー</td></tr>
		<tr class="e"><td>C</td><td>Ctrl+Alt</td><td>クリップボードへパスをコピー</td></tr>
		<tr class="o"><td>D</td><td>Ctrl</td><td>ファイルをゴミ箱へ削除</td></tr>
		<tr class="e"><td>D</td><td>Ctrl+Shift</td><td>ファイルを完全に削除</td></tr>
		<tr class="o"><td>E</td><td>Ctrl</td><td>名前を変更</td></tr>
		<tr class="e"><td>Q</td><td>Ctrl</td><td>ウィンドウを閉じる</td></tr>
		<tr class="o"><td>R</td><td>Ctrl</td><td>最新の情報に更新</td></tr>
		<tr class="e"><td>S</td><td>Ctrl</td><td>ファイル選択（中間一致 or ワイルドカード）</td></tr>
		<tr class="o"><td>S</td><td>Shift</td><td>ファイル選択（正規表現）</td></tr>
		<tr class="e"><td>T</td><td>Ctrl</td><td>ツールボックスを表示</td></tr>
		<tr class="o"><td>U</td><td>Ctrl</td><td>クリップボードへURLをコピー</td></tr>
		<tr class="e"><td>V</td><td>Ctrl</td><td>クリップボードから貼り付け</td></tr>
		<tr class="o"><td>W</td><td>Ctrl</td><td>現在のタブを閉じる</td></tr>
		<tr class="e"><td>X</td><td>Ctrl</td><td>クリップボードへ切り取り</td></tr>
		<tr class="o"><td>X</td><td>Win</td><td>次のウィンドウをフォーカス</td></tr>
		<tr class="e"><td>X</td><td>Win+Shift</td><td>前のウィンドウをフォーカス</td></tr>
		<tr class="o"><td>Z</td><td>Ctrl</td><td>直前の動作を取り消し</td></tr>
		<tr class="e"><td>無変換</td><td>　</td><td>次のウィンドウをフォーカス</td></tr>
	</table>
</div>

<h3>キーバインド（名前変更）</h3>
<div>
	<table class="keybind">
		<tr><th>キー</th><th>修飾子</th><th>動作</th></tr>
		<tr class="o"><td>F2</td><td>　</td><td>名前を選択</td></tr>
		<tr class="e"><td>F3</td><td>　</td><td>拡張子を選択</td></tr>
		<tr class="o"><td>A</td><td>Ctrl</td><td>先頭へ移動</td></tr>
		<tr class="e"><td>B</td><td>Ctrl</td><td>一文字 左へ移動</td></tr>
		<tr class="o"><td>D</td><td>Ctrl</td><td>一文字 右を削除</td></tr>
		<tr class="e"><td>E</td><td>Ctrl</td><td>末尾へ移動</td></tr>
		<tr class="o"><td>F</td><td>Ctrl</td><td>一文字 右へ移動</td></tr>
		<tr class="e"><td>G</td><td>Ctrl</td><td>名前を選択</td></tr>
		<tr class="o"><td>H</td><td>Ctrl</td><td>一文字 左を削除</td></tr>
		<tr class="e"><td>K</td><td>Ctrl</td><td>末尾まで削除</td></tr>
		<tr class="o"><td>T</td><td>Ctrl</td><td>拡張子を選択</td></tr>
		<tr class="e"><td>U</td><td>Ctrl</td><td>先頭まで削除</td></tr>
	</table>
	<p>「名前を選択」と「拡張子を選択」はトグル動作です。</p>
</div>

<h2 id="tools">ツール</h2>

<p>
	tools フォルダには拡張ツールを配置します。
	詳しくは <a href="../tools/readme.txt">tools/readme.txt</a> を参照。
</p>
<p>以下は、付属のサンプルです。</p>

<div>
	<dl>
		<dt>extract.py</dt>
		<dd>url() : 選択中のファイルからURLを抽出し、クリップボードにコピーします。</dd>
		<dt>select.py</dt>
		<dd>new() : 新しいオブジェクトを作成します。</dd>
		<dd>pattern() : 中間一致 または ワイルドカードに一致するファイルを選択します。</dd>
		<dd>regex() : 正規表現に一致するファイルを選択します。</dd>
		<dt>コマンドプロンプト.lnk</dt>
		<dd>現在のフォルダでコマンドプロンプトを呼び出します。</dd>
		<dt>一括圧縮 (.tgz).lnk</dt>
		<dd><a href="http://www.kmonos.net/lib/noah.ja.html">Noah</a> を使い、選択中の全ファイルをtgz形式で圧縮します。</dd>
		<dt>一括圧縮 (.zip).lnk</dt>
		<dd>Noah を使い、選択中の全ファイルをzip形式で圧縮します。</dd>
		<dt>分離圧縮 (.zip).lnk</dt>
		<dd>Noah を使い、選択中のそれぞれのファイルをzip形式で圧縮します。</dd>
	</dl>
</div>

<h2 id="reference">リファレンス</h2>

<h3>brownie : モジュールグローバル関数</h3>
<div class="source">
	<dl>
		<dt>alert(message, title = 'brownie', what = None)</dt>
		<dd>メッセージボックスを表示します。(what = None / INFO / WARNING / ERROR)</dd>
		<dt>beep(what = None)</dt>
		<dd>ビープ音または音声ファイルを再生します。(what = alert と同じ / 音声ファイル)</dd>
		<dt>exception()</dt>
		<dd>現在の例外オブジェクトを返します。</dd>
		<dt>modifiers()</dt>
		<dd>現在のキー修飾子を取得します。</dd>
		<dt>now()</dt>
		<dd>現在の時刻を ms 単位で返します。</dd>
		<dt>popup(node, icons = None, where = None)</dt>
		<dd>node をメニューとして表示します。where は Window または 座標(x, y) です。</dd>
	</dl>
</div>

<h3>ui : ユーザインタフェース</h3>
<div class="source">
	<dl>
		<dt>form</dt>
		<dd>呼び出たスレッドのメインウィンドウ (Form) です。</dd>
		<dt>current</dt>
		<dd>呼び出たスレッドのアクティブなビュー (ExplorerView) です。</dd>
	</dl>
</div>

<h3>その他の設定とクラスリファレンス</h3>
<div>
	<a href="../res/message.txt">リファレンス</a>
</div>

<h2 id="history">更新履歴</h2>

<div>
	<a href="../TODO.txt">TODO items</a>
</div>

<ul>
	<li>0.0.0.18 (2007-12-20)<ul>
		<li>デスクトップから上へ移動する際の履歴の扱いを修正。</li>
		<li>右クリックメニューで「移動」した際の履歴の扱いを修正。</li>
		<li>表示モードの切り替えができなくなっていた不具合を修正。</li>
		<li>右マウスボタンを押し続けるタイプのジェスチャで移動ができない不具合を修正。</li>
	</ul></li>
	<li>0.0.0.17 (2007-12-16)<ul>
		<li>タブなどのバー項目の右クリックメニューをカスタマイズできるようになった。</li>
		<li>戻る、進むの処理が効率的になった。</li>
	</ul></li>
	<li>0.0.0.16 (2007-09-25)<ul>
		<li>詳細表示以外だと左ダブルクリックでジェスチャが暴発する不具合を修正。</li>
		<li>中クリックジェスチャ後、マウスを受け付けなく不具合を修正。</li>
	</ul></li>
	<li>0.0.0.15 (2007-09-24)<ul>
		<li>スクリプトからメニューを表示できるようになった。デフォルトでは Ctrl+T でツールボックス。</li>
		<li>ファイル上の右クリックメニューを改善。</li>
		<li>メッセージボックスやダイアログが閉じた後にメインウィンドウがアクティブにならない不具合を修正。</li>
		<li>短い時間内の連続したジェスチャでの不具合を修正。</li>
		<li>FolderView.refresh() しても項目のフォーカスを失わないようにした。</li>
		<li>初期設定の一部を usr/settings.ini へ追い出した。</li>
		<li>Python 3.0 Alpha 1 でも動作するよう調整。</li>
	</ul></li>
	<li>0.0.0.14 (2007-09-16)<ul>
		<li>ステータスバーへのフォルダ状態、ジェスチャ状態を表示するようになった。</li>
		<li>ジェスチャ→ドラッグに移行する際の不具合を修正。</li>
		<li>お気に入り登録時に発生するエラーを修正。</li>
	</ul></li>
	<li>0.0.0.13 (2007-09-09)<ul>
		<li>ボタン上のホイールまたはドラッグでメニューを表示できるようになった。</li>
		<li>フォルダを閉じた後、マウスホイールが効かなくなるバグを修正。</li>
		<li>ドラッグドロップの際の当たり判定を修正。</li>
		<li>AbstractBarを追加。HeaderBar, StatusBar, TabBar をAbstractBar派生クラスとして整理。</li>
		<li>グローバル関数の一部を System クラスのスタティックメソッド化。</li>
	</ul></li>
	<li>0.0.0.12 (2007-08-23)<ul>
		<li>ファイルをクリップボードにコピーした際に、自動的にそのパスをテキスト形式でコピーする。</li>
		<li>新規ファイルを作成できるようになった。</li>
		<li>グローバルホットキーを追加。user.py global_keymap() を参照。</li>
		<li>StatusBar 上にボタンを配置できるようになった。</li>
		<li>HeaderBar を追加。アドレスバーを HeaderBar ベースに変更。</li>
	</ul></li>
	<li>0.0.0.11 (2007-08-03)<ul>
		<li>ツールバーやアドレスバ一の描画やドラッグドロップを改善。</li>
		<li>最後に閉じたフォルダを開く機能を追加。</li>
	</ul></li>
	<li>0.0.0.10 (2007-07-29)<ul>
		<li>FolderView, TabBar の描画関連のバグを数多く修正。</li>
		<li>右クリックから新規作成しても名前の編集が始まらないバグを修正。</li>
		<li>複数段の「戻る」「進む」が実際には新規の移動として扱われていたバグを修正。</li>
		<li>ごみ箱が使えないドライブでの FolderView.delete() は bury() 扱いになった。必ず削除確認ダイアログが表示される。</li>
		<li>ファイルサイズの単位をKB以外でも表示できるようになった。(LISTVIEW_AUTOUNIT)</li>
		<li>ごみ箱を操作するためのオブジェクト trash を追加。</li>
	</ul></li>
	<li>0.0.0.9 (2007-07-23)<ul>
		<li>上へ、戻る、進む で、一度に複数段階移動できるようになった。</li>
		<li>リストビューが、奇数行/偶数行で色分けできるようになった。</li>
		<li>「最新の情報に更新」で、ファイルの選択状態とソート状態を維持するようになった。</li>
		<li>名前カラム上のマウスホイールでカーソルを動かす。(LISTVIEW_WHEELSELECT)</li>
	</ul></li>
	<li>0.0.0.8 (2007-07-16)<ul>
		<li>ライセンスを Artistic License へ変更。</li>
		<li>マウスホイールで、ツールバーをドロップダウンできるようになった。</li>
		<li>ツールバーを整理。</li>
	</ul></li>
	<li>0.0.0.7 (2007-03-04)<ul>
		<li>フォルダの表示状態の保存を改良。</li>
	</ul></li>
	<li>0.0.0.6 (2007-02-20)<ul>
		<li>Vista風アドレスバーを追加。</li>
		<li>お気に入り機能を追加。</li>
		<li>フォルダの表示状態が保存されるようになった。</li>
		<li>メニューにて、入れ子の右クリックメニューを改良。</li>
		<li>FolderView.new(name = None) を追加。新しいフォルダを作成する。</li>
	</ul></li>
	<li>0.0.0.4 (2007-02-12)<ul>
		<li>FolderViewにて、ワイルドカード (Ctrl+S) と正規表現 (Shift+S) によるファイル選択を追加。</li>
		<li>外部拡張を整備。toolsフォルダにスクリプトやショートカットを配置する。</li>
	</ul></li>
	<li>0.0.0.3 (2007-02-10)<ul>
		<li>PNG アイコンに対応。</li>
		<li>FolderViewにて、自動幅調整を追加。</li>
		<li>ToolBarにて、右/中クリックに対応。</li>
		<li>TabBarにて、ドラッグドロップでのタブ入れ替えに対応。</li>
		<li>メニューにて、中クリックに対応。</li>
	</ul></li>
	<li>0.0.0.2 (2007-01-28)<ul>
		<li>FolderViewにて、項目上での中クリックとショートカットファイルの扱いを実装。</li>
		<li>ToolBarにて、サイズ計算を修正。</li>
		<li>メニューにて、アイコンを実装。</li>
	</ul></li>
	<li>0.0.0.1 (2007-01-01)<ul>
		<li>お試し版リリース。</li>
	</ul></li>
</ul>

</body>
</html>
