filer-extapart.l

Last modified: "2008/01/01 01:45:39"

Description

ファイラからアーカイブ中のファイルを指定して展開します。

ディレクトリを再構築しないで展開する場合、現在対応している形式は、 lha, zip, cab, tar の 4 つです。 ディレクトリを再構築しながら展開する場合は、xyzzy の機能をそのまま使っているので、 xyzzy が対応している形式ならば何でもよいと思います。

アーカイブの展開には、それ用のアーカイバ DLL(unlha32.dll, unzip32.dll, tar32.dll ... )が必要です。 あらかじめ、統合アーカイバプロジェクト などから入手してインストールしておいてください。

ディレクトリの選択には、 nonentity さん の、 select_directory.dll 使わせて頂いています。 無くても動作しますが、あったほうが便利と思います。

また、filer.l のコードもたくさん使わせて頂いてます。 さらに、xyzzy Part7 678 のコードも参考にさせていただきました。

Download ...

Install

NetInstaller からインストールして、自動設定機能を利用していれば、 xyzzy を再起動するなりして設定を反映させればおしまいです。 (siteinit.l に自動設定機能の記述をしている場合は、ダンプファイルを作成しなおしてください)。

NetInstaller を使用していない場合、もしくは、自動設定機能を利用していない場合は、 filer-extapart.l のコメント文を参照ください。


Usage

展開するディレクトリを指定して展開M-e
あらかじめ指定したディレクトリに展開(既定値はデスクトップ)C-e

展開方法

  1. ファイラで、アーカイブファイルにカーソルを合わせ、M-e します。
    extapart-1
  2. 一覧から展開するファイルを選択し、「展開」をクリックします。 複数選択する場合は、Ctrl + クリックとかShift + クリックで選択して下さい。
    (キー操作であれば、Ctrl + 矢印 → Ctrl + SPACE または Shift + 矢印)
    extapart-2
  3. 展開するディレクトリを指定します。
    extapart-3
  4. select_directory.dll を使用しない場合は、以下のようなダイヤログとなります。
    extapart-3b
  5. ディレクトリを作成してそのディレクトリに展開する場合は、 「ディレクトリ作成」欄に作成するディレクトリ名を入力して下さい。 作成しない場合は、何も入力する必要はありません。
  6. ディレクトリを再構築しないで展開する場合は、「ディレクトリ付で展開」のチェックを外して下さい。
  7. 必要な設定が終わったら、「OK」をクリックして下さい。
    extapart-4
  8. ファイル展開後は、ファイラで展開されたディレクトリが表示されます。
    extapart-5

Setting

select_directory.dll がない場合

(setq *extapart-use-select_directory* nil)

展開するディレクトリの既定値を変更

(setq *extapart-base-dir* "c:/tmp")

展開するディレクトリ確認時に既定のディレクトリを開く

(setq *extapart-use-base-dir* t)

ファイルを展開した後展開したディレクトリを開かない

(setq *extapart-open-filer-after-extract* nil)

History

  [Version 1.01] 2007-12-31 (月)
  ・ライセンス条項(MITライセンス)を記載。

  [Version 1.00] 2003/05/02 (金)
  ・つくった。
    

License

  filer-extapart.l はMITライセンスに基づいて利用可能です。
  

Copyright (c) 2003-2007 HIE Masahiro

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
    

(^_^)