diff options
Diffstat (limited to 'fluent-bit/lib/onigmo/README.ja')
-rw-r--r-- | fluent-bit/lib/onigmo/README.ja | 258 |
1 files changed, 258 insertions, 0 deletions
diff --git a/fluent-bit/lib/onigmo/README.ja b/fluent-bit/lib/onigmo/README.ja new file mode 100644 index 00000000..3b50c27f --- /dev/null +++ b/fluent-bit/lib/onigmo/README.ja @@ -0,0 +1,258 @@ +README.ja 2016/11/30 + +鬼雲 (鬼車改) -- (C) K.Takata <kentkt AT csc DOT jp> + +https://github.com/k-takata/Onigmo + +鬼雲は、鬼車から派生した正規表現ライブラリである。 +Perl 5.10以降で導入された `\K`, `\R`, `(?(cond)yes|no)` などの新たな +正規表現をサポートすることに注力している。 + +鬼雲は、Ruby 2.0以降の標準の正規表現ライブラリであるため、多くのパッチが +Ruby 2.xからバックポートされている。 + +Wikiページも参照のこと。 +https://github.com/k-takata/Onigmo/wiki + + +主な新機能: + 正規表現 (文法依存): + \K, \R, \X, (?(cond)yes|no) + (?adlu), \g{name}, \g{n}, (?&name), (?n), (?R), (?0) + (?P<name>...), (?P=name), (?P>name) + + API: + onig_search_gpos (Perl互換の \G 用) + + エンコーディング: + CP932, CP1250, CP1251, CP1252, CP1253, CP1254, CP1257 + + 文法: + Python + + +新規ソースファイル: + enc/jis/props.h JIS 文字プロパティーデータ + enc/jis/props.kwd JIS 文字プロパティーデータ + enc/unicode/casefold.h Unicodeケースフォールドデータ + enc/unicode/name2ctype.h Unicodeプロパティデータ + enc/windows_*.c CP*エンコーディング + + onigmo.py onigmo.dll/libonigmo.so ローダ + testpy.py テストプログラム + + tool/download-ucd.sh Unicode Character Database (UCD)をダウンロード + tool/case-folding.rb UCDからcasefold.hを生成 + tool/convert-jis-props.sh props.kwdをprops.hに変換 + tool/convert-name2ctype.sh name2ctype.kwdをname2ctypes.hに変換 + tool/enc-unicode.rb UCDからname2ctype.kwdを生成 + + win32/Makefile.mingw Win32用 Makefile (for MinGW) + win32/makedef.py onigmo.defを作成 + win32/onigmo.rc onigmo.dll用リソースファイル + + +ToDo: + * Unicode Character Data のサイズ削減。 + * (?|...) + * (?(cond)yes|no) の改善。(先読み・戻り読みの対応) + + +以下、鬼車の README.ja: +====================================================================== +README.ja 2007/05/31 + +鬼車 ---- (C) K.Kosako <sndgk393 AT ybb DOT ne DOT jp> + +http://www.geocities.jp/kosako3/oniguruma/ + +鬼車は正規表現ライブラリである。 +このライブラリの特長は、それぞれの正規表現オブジェクトごとに +文字エンコーディングを指定できることである。 + +サポートしている文字エンコーディング: + + ASCII, UTF-8, UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE, + EUC-JP, EUC-TW, EUC-KR, EUC-CN, + Shift_JIS, Big5, GB18030, KOI8-R, CP1251, + ISO-8859-1, ISO-8859-2, ISO-8859-3, ISO-8859-4, ISO-8859-5, + ISO-8859-6, ISO-8859-7, ISO-8859-8, ISO-8859-9, ISO-8859-10, + ISO-8859-11, ISO-8859-13, ISO-8859-14, ISO-8859-15, ISO-8859-16 + +* GB18030: 久保健洋氏提供 +* CP1251: Byte氏提供 +------------------------------------------------------------ + +ライセンス + + BSDライセンスに従う。 + + +インストール + + ケース1: UnixとCygwin環境 + + 1. .autogen.sh (`configure` が存在しなかった場合) + 2. ./configure + 3. make + 4. make install + + アンインストール + + make uninstall + + 動作テスト (ASCII/EUC-JP) + + make atest + + + 構成確認 + + onig-config --cflags + onig-config --libs + onig-config --prefix + onig-config --exec-prefix + + + + ケース2: Win32(VC++)環境 + + 1. copy win32\Makefile Makefile + 2. copy win32\config.h config.h + 3. nmake + + onig_s.lib: static link library + onig.dll: dynamic link library + + * 動作テスト (ASCII/Shift_JIS) + 4. copy win32\testc.c testc.c + 5. nmake ctest + + + +正規表現 + + doc/RE.jaを参照 + + +使用方法 + + 使用するプログラムで、oniguruma.hをインクルードする(Oniguruma APIの場合)。 + Oniguruma APIについては、doc/API.jaを参照。 + + oniguruma.hで定義されている型名UChar(== unsigned char)を無効にしたい場合 + には、ONIG_ESCAPE_UCHAR_COLLISIONをdefineしてからoniguruma.hをインクルード + すること。このときにはUCharは定義されず、OnigUCharという名前の定義のみが + 有効になる。 + + oniguruma.hで定義されている型名regex_tを無効にしたい場合には、 + ONIG_ESCAPE_REGEX_T_COLLISIONをdefineしてからoniguruma.hをインクルード + すること。このときにはregex_tは定義されず、OnigRegexType, OnigRegexという + 名前の定義のみが有効になる。 + + Unix/Cygwin上でコンパイル、リンクする場合の例: + (prefixが/usr/localのとき) + cc sample.c -L/usr/local/lib -lonig + + GNU libtoolを使用しているので、プラットフォームが共有ライブラリをサポートして + いれば、使用できるようになっている。 + 静的ライブラリと共有ライブラリのどちらを使用するかを指定する方法、実行時点での + 環境設定方法については、自分で調べて下さい。 + + + Win32でスタティックリンクライブラリ(onig_s.lib)をリンクする場合には、 + コンパイルするときに -DONIG_EXTERN=extern をコンパイル引数に追加すること。 + + +使用例プログラム + + sample/simple.c 最小例 (Oniguruma API) + sample/names.c 名前付きグループコールバック使用例 + sample/encode.c 幾つかの文字エンコーディング使用例 + sample/listcap.c 捕獲履歴機能の使用例 + sample/posix.c POSIX API使用例 + sample/sql.c 可変メタ文字機能使用例 (SQL-like パターン) + +テストプログラム + sample/syntax.c Perl、Java、ASIS文法のテスト + sample/crnl.c --enable-crnl-as-line-terminator テスト + + +ソースファイル + + oniguruma.h 鬼車APIヘッダ (公開) + onig-config.in onig-configプログラム テンプレート + + regenc.h 文字エンコーディング枠組みヘッダ + regint.h 内部宣言 + regparse.h regparse.cとregcomp.cのための内部宣言 + regcomp.c コンパイル、最適化関数 + regenc.c 文字エンコーディング枠組み + regerror.c エラーメッセージ関数 + regext.c 拡張API関数 + regexec.c 検索、照合関数 + regparse.c 正規表現パターン解析関数 + regsyntax.c 正規表現パターン文法関数、組込み文法定義 + regtrav.c 捕獲履歴木巡回関数 + regversion.c 版情報関数 + st.h ハッシュテーブル関数宣言 + st.c ハッシュテーブル関数 + + oniggnu.h GNU regex APIヘッダ (公開) + reggnu.c GNU regex API関数 + + onigposix.h POSIX APIヘッダ (公開) + regposerr.c POSIX APIエラーメッセージ関数 + regposix.c POSIX API関数 + + enc/mktable.c 文字タイプテーブル生成プログラム + enc/ascii.c ASCII エンコーディング + enc/euc_jp.c EUC-JP エンコーディング + enc/euc_tw.c EUC-TW エンコーディング + enc/euc_kr.c EUC-KR, EUC-CN エンコーディング + enc/sjis.c Shift_JIS エンコーディング + enc/big5.c Big5 エンコーディング + enc/gb18030.c GB18030 エンコーディング + enc/koi8.c KOI8 エンコーディング + enc/koi8_r.c KOI8-R エンコーディング + enc/cp1251.c CP1251 エンコーディング + enc/iso8859_1.c ISO-8859-1 (Latin-1) + enc/iso8859_2.c ISO-8859-2 (Latin-2) + enc/iso8859_3.c ISO-8859-3 (Latin-3) + enc/iso8859_4.c ISO-8859-4 (Latin-4) + enc/iso8859_5.c ISO-8859-5 (Cyrillic) + enc/iso8859_6.c ISO-8859-6 (Arabic) + enc/iso8859_7.c ISO-8859-7 (Greek) + enc/iso8859_8.c ISO-8859-8 (Hebrew) + enc/iso8859_9.c ISO-8859-9 (Latin-5 または Turkish) + enc/iso8859_10.c ISO-8859-10 (Latin-6 または Nordic) + enc/iso8859_11.c ISO-8859-11 (Thai) + enc/iso8859_13.c ISO-8859-13 (Latin-7 または Baltic Rim) + enc/iso8859_14.c ISO-8859-14 (Latin-8 または Celtic) + enc/iso8859_15.c ISO-8859-15 (Latin-9 または West European with Euro) + enc/iso8859_16.c ISO-8859-16 + (Latin-10 または South-Eastern European with Euro) + enc/utf8.c UTF-8 エンコーディング + enc/utf16_be.c UTF-16BE エンコーディング + enc/utf16_le.c UTF-16LE エンコーディング + enc/utf32_be.c UTF-32BE エンコーディング + enc/utf32_le.c UTF-32LE エンコーディング + enc/unicode.c Unicode情報 + + win32/Makefile Win32用 Makefile (for VC++) + win32/config.h Win32用 config.h + + + +残件 + + ? case fold flag: Katakana <-> Hiragana + ? ONIG_OPTION_NOTBOS/NOTEOS追加 (\A, \z, \Z) + ?? \X (== \PM\pM*) + ?? 文法要素 ONIG_SYN_CONTEXT_INDEP_ANCHORSの実装 + ?? 検索位置移動停止演算子 (match_at()からONIG_STOPを返す) + +and I'm thankful to Akinori MUSHA. + + +アドレス: K.Kosako <sndgk393 AT ybb DOT ne DOT jp> |