吉里吉里2用プラグインです。下記の関数、クラス等を使用できるようになります。
ほか、SQLite DB用のユーティリティである「SQLite コマンドライン・インターフェース」が付属しています。
Windows 2000/XP 上の吉里吉里2 2.26/2.28 で動作します。Windows Server 2003やWindows Vistaでも動くかもしれませんが、試す環境がないため未確認です。
Windows 95/98/Me は動作対象外です。吉里吉里2 2.24 以前も動作対象外です(プラグインのインターフェースが異なるため)。
使用したい機能を提供する各DLLファイル(util_****.dll)を、下記のいずれかのフォルダにコピーしてください。各DLLファイルは lib フォルダにあります。
util_sqlite.dll を使用する場合は、sqlite3.dll を吉里吉里本体と同じフォルダ (*1)にコピーしてください。
util_iconv.dll を使用する場合、iconv.dll を吉里吉里本体と同じフォルダ (*2)にコピーしてください。iconv.dll は、GNUのFTPミラーサイト等から入手できます。libiconv 1.9.1 のWindows用バイナリアーカイブ(libiconv-1.9.1.bin.woe32.zip 等)に含まれています。
TJS2ソースコード中で、Plugins.link("util_****.dll");
としてプラグインをロードすると、ロードしたプラグインに応じていくつかの関数やクラス等が使えるようになります。
lib フォルダにある isqlite.exe は、SQLiteデータベースを扱うためのコマンドラインインターフェースです。
コマンドライン上で実行します。プラグインと同様、sqlite3.dll が必要です。isqlite.exe と同じフォルダか、パスの通ったフォルダにsqlite3.dll を置いておく必要があります。
isqlite.exe [-b] DBFile [SQL] [パラメータ] DBFile : SQLite3データベースファイル名 SQL : 実行するSQL [オプション] -b : バッチモードで起動します。 [メモ] SQLが指定されなかった場合、あるいは '-' が指定された場合、 インタラクティブモードで起動します。 インタラクティブモードでは、.help でヘルプが表示されます。 バッチモードではプロンプトも結果も出力されません。
「ごった煮プラグイン」で提供されるプラグインには、プラグインをリンクするときに、特定のスクリプトファイルを実行させる機能があります。このスクリプトをフックスクリプトと呼びます。
プラグインのリンク時に、メンバが追加された後に実行されます。フックスクリプトのファイル名はutil_***_on_link.tjsです。'***'の部分にはプラグインの名前が入ります。たとえば、util_system.dllをリンクしたときのスクリプトファイル名はutil_system_on_link.tjsとなります (*3)。このファイルを吉里吉里の実行ファイルのあるフォルダに配置しておくと、プラグインがリンクされるときに自動的に読み込まれ、実行されます。ファイルがなければ何もしません。実行に失敗したときには無視してそのまま処理を続けます(吉里吉里は終了しませんし、例外も出しません)。
フックスクリプト中で、別の吉里吉里プラグイン(DLL、TPMファイル)をリンク、またはアンリンクしてはいけません。この場合の動作は未定義です。
samples/hook_script フォルダにサンプルがあります。util_system_on_link.tjs は、util_system をリンクした時に実行され、ダイアログを表示します。
util_graph.dll を KAG で使用する場合は、Override.tjs でプラグインをリンクしてください。
KAGLayerクラスとそのサブクラスのインスタンスが生成される前にプラグインを組み込んでおかないと、メッセージレイヤ、前景・背景レイヤに、プラグインで追加される Layer のメソッドが適用されません。util_system.dll についても同様です。global.kag に登録されたメニュー項目を、Window.trackPopupMenu 関数を使用してポップアップさせたい場合は、Override.tjs中でプラグインをリンクしてください。
global.kag が生成された後で当プラグインをリンクした場合は、下記のコードを実行すればポップアップできるようになります。
global.kag.trackPopupMenu = Window.trackPopupMenu incontextof global.kag;
なお、この関数は吉里吉里2 2.28/KAG3 3.28では推奨されません。代わりに吉里吉里本体の機能(Menu.popup関数)を使用してください。
このソフトウェア(SQLite関連を除く)のライセンスは、以下の「The BSD License」に従います。後述の日本語訳は飽くまで参考です。日本語訳にはOpen Source Group Japanで公開されているものを使用しました。
Copyright 2006-2007 mey and other authors. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
ソースコード形式かバイナリ形式か、変更するかしないかを問わず、以下の条件を満たす場合に限り、再頒布および使用が許可されます。
本ソフトウェアは、著作権者およびコントリビューターによって「現状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、および特定の目的に対する適合性に関する暗黙の保証も含め、またそれに限定されない、いかなる保証もありません。著作権者もコントリビューターも、事由のいかんを問わず、損害発生の原因いかんを問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その他の)不法行為であるかを問わず、仮にそのような損害が発生する可能性を知らされていたとしても、本ソフトウェアの使用によって発生した(代替品または代用サービスの調達、使用の喪失、データの喪失、利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害について、一切責任を負わないものとします。
SQLiteに関わる物、即ち util_sqlite.dll, isqlite.exe, sqlite3.dllとそれらを構成する主たるソースファイル、及び SQLitePlus については、SQLite 及び SQLitePlusのライセンスを尊重し、パブリック・ドメイン・ソフトウェアとします。
このソフトウェアを作成するにあたり、下記のソースコードを使用・流用・改変しました。
下記の吉里吉里2のソースコードを使用、改変しました。
MD5ライブラリのソースファイル(common/md5.c, .h)にはRFC1321-based (RSA-free) MD5 library(ver. 2002/04/13)を使用しました。
SHAライブラリ(common/GflSHA.cpp, .h)にはSHA(Secure Hash Algorithm)(SYN氏)を改変したものを使用しました。
RIPEMD160のソースファイル(common/rmd_dgst.c, ripemd.h, rmd_locl.h, rmdconst.h, md32_common.h)にはSSLeay(OpenSSL 0.9.7i)のソースファイルを使用しました。ただし、一部不要なインクルード(#include コマンド)を削除してあります。
ユリウス通日変換とタイムゾーン処理(generic/JulianDay.cpp, php5_fallbackmap.h, php5_timezonemap.h)には、PHP/5.2.0のソースから抜粋、改変したものを使用しました。
旧暦計算のコード(generic/LunisolarBase.cpp)は、旧暦計算スクリプト Version 1.5を移植、機能追加したものです。
SQLiteプラグインとSQLiteコマンドラインインターフェースは、SQLite 3.2.7とSQLitePlus 3.0.7 (SQLitePlus-3.0.7.cab)を使用・改変したものです。 (*4)
ペイント部(graph/PaintFunc.cpp, .h)には、ペイントルーチン(Fussy氏)を改変したものを使用しました。
ドロネー三角形分割部(graph/Delaunay.cpp, .h)には、デローニー三角形分割(ぱすてる氏)を改変したものを使用しました。
Punycodeエンコーダ/デコーダ(Punycode.h)にはPunycodeを使用しました。
累積分布逆関数部(generic/RandomVariate.ncc)は、Python 2.4.2のソース(Lib/random.py)の一部を移植したものです。
Copyright (C) 1999, 2000, 2002 Aladdin Enterprises. All rights reserved.
This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
L. Peter Deutschghost@aladdin.com
A C-program for MT19937, with initialization improved 2002/1/26. Coded by Takuji Nishimura and Makoto Matsumoto.
Before using, initialize the state by using init_genrand(seed) or init_by_array(init_key, key_length).
Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura, All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Any feedback is very welcome.
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html
email: m-mat @ math.sci.hiroshima-u.ac.jp (remove space)
The author disclaims copyright to this source code.In place of a legal notice, here is a blessing:
このソースコードに関する全ての著作権を放棄します。
Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) All rights reserved.
This package is an SSL implementation written by Eric Young (eay@cryptsoft.com). The implementation was written so as to conform with Netscapes SSL.
This library is free for commercial and non-commercial use as long as the following conditions are aheared to. The following conditions apply to all code found in this distribution, be it the RC4, RSA, lhash, DES, etc., code; not just the SSL code. The SSL documentation included with this distribution is covered by the same copyright terms except that the holder is Tim Hudson (tjh@cryptsoft.com).
Copyright remains Eric Young's, and as such any Copyright notices in the code are not to be removed. If this package is used in a product, Eric Young should be given attribution as the author of the parts of the library used. This can be in the form of a textual message at program startup or in documentation (online or textual) provided with the package.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The licence and distribution terms for any publically available version or derivative of this code cannot be changed. i.e. this code cannot simply be copied and put under another distribution licence [including the GNU Public Licence.]
Copyright 1993-1995, Scott E. Lee, all rights reserved. Permission granted to use, copy, modify, distribute and sell so long as the above copyright and this permission statement are retained in all copies. THERE IS NO WARRANTY - USE AT YOUR OWN RISK.
Copyright (c) 1997-2006 The PHP Group
-------------------------------------------------------------------- The PHP License, version 3.01 Copyright (c) 1999 - 2006 The PHP Group. All rights reserved. --------------------------------------------------------------------
Redistribution and use in source and binary forms, with or without modification, is permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PHP DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This software consists of voluntary contributions made by many individuals on behalf of the PHP Group.
The PHP Group can be contacted via Email at group@php.net.
For more information on the PHP Group and the PHP project, please see <http://www.php.net>.
PHP includes the Zend Engine, freely available at <http://www.zend.com>.
付属のファイル(CHANGES)をご覧ください。