# Lychee

## About

Lycheeは、TPIという仕様に対応したプラグインを利用することでさまざまな書庫を操作することができるアーカイバです。Lycheeには、統合アーカイバDLLやSusie Plugin(SPI)などに対応するTPIが同封されています。

## Feature

- 統合アーカイバDLL, SPI, CUI Applicationなどによる書庫操作。
  - 書庫の作成、ファイルの追加、展開、削除、検査、修復機能。
  - 書庫とSFXの相互変換機能。
- wxWidgetsを採用することでWindows/Linux双方で動作。
- Unicodeへの対応。
- 仮想リストビューを用いた高速動作。
- 多言語対応UI。

※但し、実際の動作はTPIの実装に依存する部分があります。

## Customize

### 対応する形式を増やす。

calLibraryとcuiWrapperは、それぞれcalLibrary.xmlとcuiWrapper.xmlを編集することで対応する書庫形式を増やせます。詳細はxmlファイルの記述を参照してください。

また、bin/lib以下にSPIやXPIを配置することにより、spiLibraryやxpiLibraryが対応する形式を増やせます。

### TPIの動作を変更する。

calLibraryとcuiWrapperはxmlファイルを編集することで、ライブラリや実行ファイルに渡すコマンドラインを変更できます。

### Lycheeの設定を変更する。

confファイルを編集することで動作を変更できます。

### Lycheeを書庫に関連付ける。

#### Windows

association-sample.regを参考にregファイルを編集し、実行してください。association-sample.regはあくまでもサンプルなので、決してそのまま実行しないでください。

#### Linux

lychee.desktopを参考にdesktop ファイルを編集し、~/.local/share/applications/(現在のユーザのみ)または /usr/share/applications/(全ユーザ)のいずれかにコピーしてください。その後、update-desktop-database (コピー先フォルダ)を実行してください。

### LycheeのUIのデザインを変更する。

share/ico以下の画像を差し替えることで、UIで使用するアイコンを変更できます。また、share/xrc以下のXRCを編集することで、UIをさまざまに変更できます。

### LycheeのUIのテキスト/言語を変更する。

share/locale以下のpoファイルを編集し、moファイルを作成することでテキストを変更できます。また、share/locale/lychee.potから新たなmoファイルを作成することで、UIを別の言語に変更できます。

## Tips

### NSISやInno Setupのインストーラを展開するには？

7z.exeやinnounp.exeを用意した上で、ファイルの拡張子をそれぞれ'.nsis'や'.inno'に変更してから開いてください。

### 画像の変換機能を利用するには？

exbmp.xpiやifDIB.spiを用意した上で、画像ファイルをLycheeで開いてください。

## Notes

LycheeはGNU LGPL 2.1の下で配布されています。再配布、改変などの条件についてはlicense.txtを参照してください。また、Lycheeに使用されている画像は、Crystal Projectの画像を使用しています。Crystal Project はGNU LGPL 2.1で配布されている画像集で、Everaldo.comから入手できます。

Lycheeは正式版ではありません。未完成の部分や欠陥が存在することをご承知の上ご利用ください。また、Lycheeを使用したことにより生じたいかなる損害に対しても、開発者は一切の補償を致しません。しかしながら、バグや要望などが有りましたら、TPI Projectのウェブサイトもしくはメールにてご連絡いただければ対応するかもしれません。