概要
API書き下しで無駄を省いて高速起動、アイコンなんて描かずに速度追求、同時にシングルプロセスSDI/二画面ファイラー(三画面以上も可)の両方をこなす柔軟性、メニューとキーアサインをカスタマイズ可能、連番バックアップコピー機能など。
DOSファイラー(FSを想定)と同感覚で使え、尚且つWindowsで違和感を感じさせない作りのつもりです。当然操作は全てキーボードから可能。
もし貴方がマウスで操作するファイラーを探しているなら、それはシェル統合されてるエクスプローラが最強でしょー、と無責任発言をしておきます。
つまるところ私は、自分の為に作って自分が使っている自作ファイラーのバグ洗い出し作業を他人に押しつけたいだけですので、気の向いたお方だけおつきあいくださいませ。
でも、恨み言は無しでお願いします。
EOFileはEnvironment of Operating Fileの略だったのですが、最近はどうでもよくなってきました。
いままで私は「いーおーふぁいる」とか「えんどおぶふぁいらー」とか読んでたのですが、神皇帝様により読み方は「えおふぃーれ」になりました。
download
Unicode and Multi-Thread Edition (2.xx) for Windows 2000, XP
version 2.50 (2008-04-20)
更新履歴は主にヘルプファイルと掲示板に書いています。
古くてもいいならVECTORからもどうぞ。
Source……ソースコードです。ビルドにはDelphiの四方山話に置いてある私の私家ライブラリ一式(RTL,LightWindows,dyaregexp,dyayaml)が必要です。エクステンションはDelphi4以降ぐらいでコンパイルできますが、本体のコンパイルには最近のDelphiが必要です。私はDelphi2007を使用しています。無料で使えるバージョンとしてはDelphi2006相当のTurboDelphiがあります。
Second Edition (1.xx) for Windows 98
version 1.58 (fin)
バージョンの数字を合せるため旧Second Editionはメジャーバージョン1.xxとなりました。Unicode専用と認識されているみたいですが一応9xで動くのもあるんですよ。今となってはしょぼいので無いに等しいですけれども。わざわざVECTORに削除を頼むまでも無いかなー程度。下記の機能説明は最新版のものですので1.xxには該当しません。
機能説明
- n画面ファイラー/マルチスレッドGUIを兼用
Windows APIを使い書き下されたGUIはとにかく軽量。
ウィンドウ毎にスレッドを作りますので、あるウィンドウで作業中でも他のウィンドウを操作できます。
ひとつのウィンドウの中にも複数ビューを開け、二画面ファイラー、三画面、四画面……としても使えます。
基本的にキーボードファイラーです。 - シェルの名前空間に対応
マイコンピュータやデスクトップ、コントロールパネル、ごみ箱なども開けます。 - Unicode
Unicodeファイル名が扱えます。
WindowsNT(2000,XP)専用。9x系では動かないので注意。 - インクリメンタルサーチ
ディレクトリ移動と平行して行えるインクリメンタルサーチは、一度使うと離れられない……はず。 - GREP
GREPは拙作dyaregexp搭載。 ファイルの内容を一括で読んで全部流し込むという無茶をしてますが、予想より速く動いているので自画自賛してます。
ちなみにモードは"li+"(Windowsの現在の言語、大小文字同一視)相当です。必要なら"(?...:"書けばその場で変更できます。 ファイルの内容を全て流し込んでいるためバイナリ列を探す荒技も可能です(StairlingがBGREPって名前付けてましたね)。 - 色、メニュー、キーレイアウトをカスタマイズ可能
setting.yamlを直接書き換えてください。YAMLの解析ルーチンは、EOFileで使えればいいやーで作ったサブセットなので、対応していない構文があります。 - エクステンション(拡張)
EOFileは、dllの形で機能を追加できるようにAPIを公開しています。
エクステンションに関するリソースは下の方へ。
EOFile.exe自身は保存を行なわないのがポリシーなので、ブックマーク機能は現在暫定的にBookmark.dllが提供しています。CD-ROM起動などではsetting.yamlからBookmark.dllの名前を削ればOKです。
BridgeUnlha32.dll、BridgeSevenZip32.dll、BridgeUngca32.dll、BridgeTar32.dllはそれぞれ書庫用のエクステンションです。
現在.lzh .zip .7z .gca .tar .tar.gz(.tgz) .tar.bz2 に入れます。
.lzh .zip .7z .tar .tar.gz .tar.bz2 圧縮可能。 .gca圧縮はdllが解凍オンリーなのでできません。
Unlha32.dll, 7-zip32.dll, UnGCA32.dll, tar32.dllに依存しているので、書庫を扱う時はこれらを用意して下さい。
本体に添付していないエクステンションもありますので、下の方もご覧ください。
その他
- どなたか奇麗な背景画像ください。
- どなたか、もっと素敵な紹介文を書いていただけないでしょうか。
てきとうな紹介
とっつきにくいらしいので、てきとーに解説をば。
インストールはどうすればいい?
適当にフォルダ作って、そこにEOFile2xx.zipを解凍してください。
それだけです。
アンインストールは消すだけですが、別途関連付けやランチャーの設定を行った場合はそれらは手動で戻してください。
しかし、エクスプローラのWin+Eと同等程度には簡単に起動できないとエクスプローラよりは便利には使えませんので、ショートカットなり、適当なランチャーか何かで、簡単に起動できるようにしましょう。
私は窓使いの憂鬱で、役に立たないWindowsのヘルプが出てくるWin+F1を、上書きして使ってます。
統合アーカイバーdllって?
Common Archivers Libraryで配布されている、書庫を扱うための.dll群です。
個別にダウンロード/インストールするのが面倒ならcaldixなら一括ですのでありがたく使わせていただきましょう。
統合アーカイバーdllを導入したら、EOFileでも書庫が扱えるようになります。
拡張子.zipや.lzhに対して、EOFile.exeに関連付けを行えば、書庫をEOFileで開くようにするようにもできます。
ファイルのコピーはEOFileの流儀ではどう行う?
コピー元のみが表示されている前提で話を始めます。
コピーするファイルを選択します。
Spaceが楽です。
エクスプローラ同様のCtrl+C,Ctrl+Vや、コピー先を別に開いてドラッグ&ドロップでもOKなのですが、ここではWキーを押します。
通常の移動(Enter)他、インクリメンタルサーチ(@キー)など、何らかの移動方法でふたつめのビューにコピー先を表示させます。
最初のビューに戻って、コピー(Cキー)を行います。
ふたつめのビューを開かずにいきなりコピーを実行した時も、"..."を選べば、フォルダツリーのダイアログが出て、コピー先を選ぶことができます。
「選択フォルダを開く」にチェックがあれば("..."選択時自動でチェックがつきます)、コピー先がふたつめのビューとして新しく開かれます。
既にコピー元, 先の両方が表示されていれば、ファイルを選択後そのままコピー(Cキー)を行えばよく、行ったり来たりが楽にできます。
キーカスタマイズの方法は?
setting.yamlをテキストエディタで開き、"key:"で始まる行移行に並んでいるものを書き換えてください。
この際Tabによるインデントを崩さないように注意してください。
YAMLの仕様です……い、いや、YAMLは本当はスペースでしかインデントできないのですが、なんといいますか、私が無知だったというかまあ……とにかく仕様です。
メモ帳よりもTabや改行が見えるエディタのほうがいいでしょう。
文字コードはUTF-8にしてください。
":"の左がキー、右が動作です。
どんな動作があるかは、ヘルプをご覧ください。
同様にメニューもカスタマイズできます。
EOFile Extensions
EOFileに機能を追加するdll群です。主に、他のソフトの存在を前提とした機能などを、本体から分離したものです。
EOFileエクステンションは、EOFileIntf.pasの変更によりバイナリ互換性を失うため、バージョンチェックを入れてあります。 dllをsetting.yamlに書き加えても変化が無い場合は、本体、dll共に最新版にしてみてください。 それでも動かなければ僕のアーカイブミスと思われますので教えてね。
ソースコードは、Delphi6Personal可)/7でコンパイル可能です。 C++Builder6でもきっと大丈夫です。
導入方法
基本的には、dllをEOFile.exeと同じ位置に配置し、setting.yaml中のmodules:
節に追記します。 各エクステンションが追加するアクションをkey:
やmenu:
に割り当てて完了です。
リンク
- Earl Grey Laboratory
EOFile本体内蔵の移動コマンドは、2.40現在、ファイルをひとつずつ移動しますが、それでは同ドライブ間の移動が非効率です。 lethevertさんが、SHFileOperationにて一括移動するエクステンションを作られています。 - しげた ともかづ EOFile エクステンションなページ
しげたさんが、痒いところに手が届くエクステンション群を公開してくださいました。- カーソルアクション拡張
- ジャンプ
- ランチャー
もし何か作られた方がいらっしゃれば教えてください。 何がなんでもこのページからリンクを貼らせていただきます。
Unlha32.dll/7-zip32.dll/Ungca32.dll/tar32.dll対応
統合アーカイバーDLLを用いて、各形式の書庫ファイルに対応します。
現在、コンパイル済み.dllをEOFile本体と共に配布しています。 こちらに置いてあるのはソースコードです。 もしコンパイルに挑戦されるのであれば、DLLのインポートユニットは、適当にどこかから見繕って来てください。
追加するアクション
なし。 本体の、書庫を扱うための操作に、対応形式を追加するだけです。
簡易ブックマーク機能/お気に入り利用
ブックマーク機能、および、お気に入りを利用したディレクトリ移動機能、その他、本体に入れたく無いけれど標準で持たせておきたい機能の詰め合わせです。
現在、コンパイル済み.dllをEOFile本体と共に配布しています。 こちらに置いてあるのはソースコードです。
追加するアクション
- Bookmark
- ToBookmark
- Favorite
- Recent
- ToRecycleBin
Fire File Copyブリッジ
巨大なファイルを高速、静かにコピーできるFire File Copyを、引数にEOFileで選択したファイルを渡して起動します。
FFCの位置はC:\Program Files\FFC\FFC.exe決め打ちです。
追加するアクション
- FireFileCopy
GVブリッジ
GVにDDEコマンドを送って、キャレットが指している画像ファイルをプレビューします。 拡張子はとりあえず.bmp .png .jpg .jpegを判定しています。
GVの位置はC:\Program Files\GV\GV.exe決め打ちです。
追加するアクション
- PreviewWithGV
Subversionブリッジ
バージョン管理ソフトSubversionのコマンドラインクライアントsvn.exeを手軽に使うための、簡素なアクションを幾つか追加します。 書庫同様にリポジトリの中を覗く事もできます。
svn.exeはPATHの通った位置に置いてください。
追加するアクション
- SVNCommit
- SVNDiff
- SVNAdd
- SVNMove
- SVNDelete
- SVNToRepository
- SVNRepositoryInfo
ディレクトリ二重化
キャレットが指しているディレクトリを、"ディレクトリ名(2)"という名前で同じ位置に複写します。 急ごしらえですのでサンプル程度に考えてください。
追加するアクション
- DuplicateDirectory
エディタで開く
キャレット位置のファイルをテキストエディタで強制的に開きます。 OpenWithEditor.dllと同じ位置にOpenWithEditor.lnkがあればそのショートカットを使い2.43現在、setting.yaml中にeditor: "EDITOR.exe"
の一行があればそれを使い、なければメモ帳を使います。
追加するアクション
- OpenWithEditor