Blame nkf.doc

Packit Service 949123
NAME
Packit Service 949123
    nkf - ネットワーク用漢字コード変換フィルタ
Packit Service 949123
Packit Service 949123
SYNOPSIS
Packit Service 949123
    nkf [-butjnesliohrTVvwWJESZxXFfmMBOcdILg] [*file ...*]
Packit Service 949123
Packit Service 949123
DESCRIPTION
Packit Service 949123
    nkf はネットワークでメールやニュースの読み書きをするために作られた、漢字コードの変換フィルタである。
Packit Service 949123
Packit Service 949123
    このnkfの特徴としては、入力漢字コード系の統計的な自動認識機能がある。
Packit Service 949123
    このため、利用者は、入力漢字コード系が何であるかを知らなくても、出力漢字コード系のみ指定すれば良いことになる。
Packit Service 949123
    ただ、この判定機構は、理論的には完全ではないが、通常のニュースやメールのメッセージについては確実に動作する安全なものにはなっている。
Packit Service 949123
Packit Service 949123
    現在、nkfが認識できる入力の漢字コード系は、いわゆる JIS コード (ISO-2022-JP に基づくもの)、Shift_JIS (MS
Packit Service 949123
    漢字コード)、 日本語 EUC (AT&T コード)、UTF-8、UTF-16 のいずれかである。 出力する漢字コード系も、これらである。
Packit Service 949123
    入力は、ファイルを指定しなければ、標準入力となる。 出力は標準出力である。
Packit Service 949123
Packit Service 949123
OPTIONS
Packit Service 949123
    指定できるオプションは、以下の通り。 -mu のように続けることができる。
Packit Service 949123
Packit Service 949123
    -j  JIS コードを出力する。
Packit Service 949123
Packit Service 949123
    -e  EUC コードを出力する。
Packit Service 949123
Packit Service 949123
    -s  Shift_JIS コードを出力する。
Packit Service 949123
Packit Service 949123
    -w -w8[0] -w16[BL][0]
Packit Service 949123
        Unicode を出力する。
Packit Service 949123
Packit Service 949123
        -w -w80
Packit Service 949123
            UTF8 コードを出力する。 (BOM 無し)
Packit Service 949123
Packit Service 949123
        -w8 UTF8 コードを出力する。
Packit Service 949123
Packit Service 949123
        -w16 -w16B0
Packit Service 949123
            UTF16 コードを出力する。 (Big Endian / BOM 無し)
Packit Service 949123
Packit Service 949123
        -w16B
Packit Service 949123
            UTF16 コードを出力する。 (Big Endian / BOM 有り)
Packit Service 949123
Packit Service 949123
        -w16L
Packit Service 949123
            UTF16 コードを出力する。 (Little Endian / BOM 有り)
Packit Service 949123
Packit Service 949123
        -w16L0
Packit Service 949123
            UTF16 コードを出力する。 (Little Endian / BOM 無し)
Packit Service 949123
Packit Service 949123
    -m[BQSN0]
Packit Service 949123
        MIME を解読する。(デフォルト) ISO-2022-JP (B encode) と ISO-8859-1 (Q encode)
Packit Service 949123
        のみを解読する。 ISO-8859-1 (Latin-1) を解読する時は、-l フラグも必要である。 -m0 では MIME
Packit Service 949123
        を解読しない。 -mB, -mQ では、BASE64, Q encode されているものとして処理する。
Packit Service 949123
Packit Service 949123
        -mB MIME base64 stream を解読する。 ヘッダなどは取り除くこと。
Packit Service 949123
Packit Service 949123
        -mQ MIME quoted stream を解読する。
Packit Service 949123
Packit Service 949123
        -mS MIME のチェックを厳しくする (デフォルト)
Packit Service 949123
Packit Service 949123
        -mN MIME のチェックを緩くする
Packit Service 949123
Packit Service 949123
        -m0 MIME を解読しない。
Packit Service 949123
Packit Service 949123
        -mS は、宣言の内容と、その後に続く encoded-text の整合性をチェックする。 -mN は、改行で切られた MIME
Packit Service 949123
        なども解読する。解読が止まらないこともある。
Packit Service 949123
Packit Service 949123
    -M[BQ]
Packit Service 949123
        MIME に変換する。
Packit Service 949123
Packit Service 949123
        -M  ヘッダ形式に変換する
Packit Service 949123
Packit Service 949123
        -MB base64 stream に変換する
Packit Service 949123
Packit Service 949123
        -MQ Quoted stream に変換する
Packit Service 949123
Packit Service 949123
    -J -E -S -W
Packit Service 949123
        期待される入力コードの性質を指定する。
Packit Service 949123
Packit Service 949123
        -J  ISO-2022-JP を仮定する。
Packit Service 949123
Packit Service 949123
        -E  日本語 EUC (AT&T) を仮定する。
Packit Service 949123
Packit Service 949123
        -S  Shift_JIS を仮定する。 いわゆる半角カナ (JIS X 0201 片仮名) も受け入れる。
Packit Service 949123
Packit Service 949123
        -W  UTF-8 を仮定する。
Packit Service 949123
Packit Service 949123
        -W8 UTF-8 を仮定する。
Packit Service 949123
Packit Service 949123
        -W16
Packit Service 949123
            UTF-16 (Little Endian)を仮定する。
Packit Service 949123
Packit Service 949123
        -W16B
Packit Service 949123
            UTF-16 (Big Endian)を仮定する。
Packit Service 949123
Packit Service 949123
        -W16L
Packit Service 949123
            UTF-16 (Little Endian)を仮定する。
Packit Service 949123
Packit Service 949123
    -x  通常おこなわれる、いわゆる半角カナ (JIS X 0201 片仮名) からいわゆる全角カナ (JIS X 0208 片仮名)
Packit Service 949123
        への変換を行わず、半角カナを保存する。 入力は、Shift_JIS の 1byte カナ、SO/SI、ESC-(-I, SSO
Packit Service 949123
        を受け付ける。 出力は、日本語 EUC 中では SSO、JIS コード中では ESC-(-I をデフォルトで用いる。
Packit Service 949123
Packit Service 949123
    -X  いわゆる半角カナ (JIS X 0201 片仮名) を いわゆる全角カナ (JIS X 0208 片仮名) へと変換する。
Packit Service 949123
Packit Service 949123
    -B  壊れた (Broken) JIS コード。 ESC がなくなったと仮定する。
Packit Service 949123
Packit Service 949123
        -B1 ESC-(, ESC-$ のあとのコードを問わない
Packit Service 949123
Packit Service 949123
        -B2 改行のあとに強制的に ASCII に戻す
Packit Service 949123
Packit Service 949123
    -f[*m*[-*n*]]
Packit Service 949123
        一行 *m* 文字になるように、マージンを *n* として簡単な整形をおこなう。 デフォルトは文字数は 60、マージンは 10 である。
Packit Service 949123
Packit Service 949123
    -Z[0-3]
Packit Service 949123
        JIS X 0208 英数字と若干の記号を ASCII に変換する。 つまり、全角を半角に変換する。
Packit Service 949123
Packit Service 949123
        -Z -Z0
Packit Service 949123
            Convert X0208 alphabet to ASCII.
Packit Service 949123
Packit Service 949123
        -Z1 JIS X 0208 和字間隔を ASCII space 一つに変換する。
Packit Service 949123
Packit Service 949123
        -Z2 JIS X 0208 和字間隔を ASCII space 二つに変換する。
Packit Service 949123
Packit Service 949123
        -Z3 >、<、”、&、を >、<、"、& に変換する。
Packit Service 949123
Packit Service 949123
    -b  バッファリング出力を行う。(デフォルト)
Packit Service 949123
Packit Service 949123
    -u  出力時に、バッファリングしない。 ssh localhost | nkf -u というように使う。
Packit Service 949123
Packit Service 949123
    -t  何もしない。
Packit Service 949123
Packit Service 949123
    -I  ISO-2022-JP 以外の漢字コードを〓に変換。
Packit Service 949123
Packit Service 949123
    -i[@B]
Packit Service 949123
        JIS 漢字を指示するシーケンスを指定する。
Packit Service 949123
Packit Service 949123
        -i@ JIS X 0208-1978 を用いる。
Packit Service 949123
Packit Service 949123
        -iB JIS X 0208-1983/1990 を用いる。
Packit Service 949123
Packit Service 949123
    -o[BJH]
Packit Service 949123
        1 バイト英数文字セットを指示するシーケンスを指定する。
Packit Service 949123
Packit Service 949123
        -oB 1 バイト英数文字セットとして US-ASCII を用いる。
Packit Service 949123
Packit Service 949123
        -oJ 1 バイト英数文字セットとして JIS X 0201 Roman を用いる。
Packit Service 949123
Packit Service 949123
        -oH ESC ( H は初期の JUNET コードでのみ用いられたもので、現在は使ってはならない。
Packit Service 949123
Packit Service 949123
    -r  ROT13/47 の変換をする。
Packit Service 949123
Packit Service 949123
    -g  自動判別の結果を出力します。
Packit Service 949123
Packit Service 949123
    -T  テキストモードで出力する。(MS-DOS 上でのみ効力を持つ)
Packit Service 949123
Packit Service 949123
    -l  0x80-0xfe のコードを ISO-8859-1 (Latin-1) として扱う。 JIS コードアウトプットとの組合せみのみ有効。
Packit Service 949123
        -s, -e, -x とは両立しない。
Packit Service 949123
Packit Service 949123
    -O  ファイルに出力する。 UNIX では不要な機能だが Windows や MSDOS では必要らしい。
Packit Service 949123
        直後の引き数でなく、最後のファイル名が出力ファイル名となり上書きされてしまうので注意。 ファイル名がない場合は nkf.out。
Packit Service 949123
Packit Service 949123
    -L[uwm] -d -c
Packit Service 949123
        改行コードを変換する。
Packit Service 949123
Packit Service 949123
        -Lu -d
Packit Service 949123
            unix (LF)
Packit Service 949123
Packit Service 949123
        -Lw -c
Packit Service 949123
            windows (CRLF)
Packit Service 949123
Packit Service 949123
        -Lm mac (CR)
Packit Service 949123
Packit Service 949123
        デフォルトでは変換しない。
Packit Service 949123
Packit Service 949123
    --ic=<input_codeset --oc=<output_codeset>>
Packit Service 949123
        入力・出力の漢字コード系を指定します。
Packit Service 949123
Packit Service 949123
        ISO-2022-JP
Packit Service 949123
            いわゆる JIS コード。-j, -J と同じ。
Packit Service 949123
Packit Service 949123
        ISO-2022-JP-1
Packit Service 949123
            RFC 2237 に定められた形式。 JIS X 0212 を含む。
Packit Service 949123
Packit Service 949123
        ISO-2022-JP-3
Packit Service 949123
            RFC 2237 に定められた形式。 JIS X 0213 を含む。
Packit Service 949123
Packit Service 949123
        EUC-JP
Packit Service 949123
            EUC コード。-e, -E と同じ。
Packit Service 949123
Packit Service 949123
        EUC-JISX0213
Packit Service 949123
            文字集合に JIS X 0213:2000 を用いた EUC-JP。
Packit Service 949123
Packit Service 949123
        EUC-JIS-2004
Packit Service 949123
            文字集合に JIS X 0213:2004 を用いた EUC-JP。
Packit Service 949123
Packit Service 949123
        eucJP-ascii
Packit Service 949123
            オープングループ日本ベンダ協議会が定義した eucJP-ascii。 -x が暗黙のうちに指定される。
Packit Service 949123
Packit Service 949123
        eucJP-ms
Packit Service 949123
            オープングループ日本ベンダ協議会が定義した euc-JPms。 -x が暗黙のうちに指定される。
Packit Service 949123
Packit Service 949123
        CP51932
Packit Service 949123
            Micorosft Code Page 51932。 -x が暗黙のうちに指定される。
Packit Service 949123
Packit Service 949123
        Shift_JIS
Packit Service 949123
            Shift_JIS。 -s, -S と同じ。
Packit Service 949123
Packit Service 949123
        Shift_JISX0213
Packit Service 949123
            文字集合に JIS X 0213:2000 を用いた Shift_JIS。
Packit Service 949123
Packit Service 949123
        Shift_JIS-2004
Packit Service 949123
            文字集合に JIS X 0213:2004 を用いた Shift_JIS。
Packit Service 949123
Packit Service 949123
        CP932
Packit Service 949123
            Micorosft Code Page 932。 -x が暗黙のうちに指定される。
Packit Service 949123
Packit Service 949123
        UTF-8 UTF-8N
Packit Service 949123
            BOM 無しの UTF-8。 -w, -W と同じ。
Packit Service 949123
Packit Service 949123
        UTF-8-BOM
Packit Service 949123
            BOM 付きの UTF-8。-w8 または -W と同じ。
Packit Service 949123
Packit Service 949123
        UTF8-MAC
Packit Service 949123
            UTF8-MAC。互換分解されたひらがな・カタカナ等を結合します。 入力のみの対応です。
Packit Service 949123
Packit Service 949123
        UTF-16 UTF-16BE-BOM
Packit Service 949123
            BOM 有りで Big Endian の UTF-16。 -w16B, -W16B と同じ。
Packit Service 949123
Packit Service 949123
        UTF-16BE
Packit Service 949123
            BOM 無しで Big Endian の UTF-16。 -w16B0. -W16B と同じ。
Packit Service 949123
Packit Service 949123
        UTF-16LE-BOM
Packit Service 949123
            BOM 有りで Little Endian の UTF-16。 -w16L, -W16L と同じ。
Packit Service 949123
Packit Service 949123
        UTF-16LE
Packit Service 949123
            BOM 無しで Little Endian の UTF-16。 -w16L0, -W16L と同じ。
Packit Service 949123
Packit Service 949123
    --fj --unix --mac --msdos --windows
Packit Service 949123
        これらのシステムに適した変換をします。
Packit Service 949123
Packit Service 949123
    --jis --euc --sjis --mime --base64
Packit Service 949123
        対応する変換をします。
Packit Service 949123
Packit Service 949123
    --hiragana --katakana
Packit Service 949123
        平仮名、片仮名変換
Packit Service 949123
Packit Service 949123
    --fb-{skip, html, xml, perl, java, subchar}
Packit Service 949123
        Unicode から Shift_JIS, EUC-JP, ISO-2022-JP
Packit Service 949123
        に変換する際に、変換できなかった文字をどう扱うかを指定できます。
Packit Service 949123
Packit Service 949123
    --prefix=*escape character**target character*..
Packit Service 949123
        EUC-JP から Shift_JIS への変換の際、2 バイト目 に現れた文字の前にエスケープ文字をつけることができます。 引数の 1
Packit Service 949123
        文字目がエスケープ文字、2 文字目以降にエスケープされるべき文字を指定します。
Packit Service 949123
Packit Service 949123
        例えば、
Packit Service 949123
Packit Service 949123
        --prefix=\$@ とすると、Shift_JIS の 2 文字目に $ か @ が来たら、その前に \ が挿入されます
Packit Service 949123
        --prefix=@@ とすると、Shift_JIS の 2 文字目に @ が来たら、その前に @ が挿入されます
Packit Service 949123
Packit Service 949123
    --no-cp932ext
Packit Service 949123
        CP932 において拡張された、NEC 特殊文字、NEC 選定 IBM 拡張文字 (89-92 区)、IBM 拡張文字を変換しません。
Packit Service 949123
Packit Service 949123
    --no-best-fit-chars
Packit Service 949123
        Unicode からの変換の際に、往復安全性が確保されない文字の変換を行いません。 Unicode から Unicode の変換の際に
Packit Service 949123
        -x と共に指定すると、nkf を UTF 形式の変換に用いることができます。
Packit Service 949123
        (逆に言えば、これを指定しないと一部の文字が保存されません)
Packit Service 949123
Packit Service 949123
        パスに関わる文字列を変換する際には、このオプションを指定することを強く推奨します。
Packit Service 949123
Packit Service 949123
    --cap-input, --url-input
Packit Service 949123
        それぞれ :、% に続く 16 進数を文字に変換する
Packit Service 949123
Packit Service 949123
    --numchar-input
Packit Service 949123
        &#....; のような Unicode 文字参照を変換する
Packit Service 949123
Packit Service 949123
    --in-place[=*SUFFIX*] --overwrite[=*SUFFIX*]
Packit Service 949123
        元のファイルを変換結果で置き換える。 複数のファイルを書き換えることも可能。 元のファイルのタイムスタンプとパーミッションが保持される。
Packit Service 949123
        現在、作成日時や inode は変更されるが、将来にわたってこの実装のままである保証は無い。
Packit Service 949123
Packit Service 949123
    --guess
Packit Service 949123
        自動判別の結果を出力する
Packit Service 949123
Packit Service 949123
    --help
Packit Service 949123
        コマンドの簡単な説明を表示する。
Packit Service 949123
Packit Service 949123
    -V  nkf の設定を表示する。
Packit Service 949123
Packit Service 949123
    -v --version
Packit Service 949123
        nkf のバージョンを表示する。
Packit Service 949123
Packit Service 949123
    --  これ以降のオプションを無視する
Packit Service 949123
Packit Service 949123
    --exec-in
Packit Service 949123
        nkf [options] --exec-in cmd args... とやると、cmd の出力を nkf の入力とする
Packit Service 949123
        (config.h で EXEC_IO を define してコンパイルした時のみ有効)
Packit Service 949123
Packit Service 949123
    --exec-out
Packit Service 949123
        nkf [options] --exec-out cmd args... とやると、nkf の出力を cmd の入力とする
Packit Service 949123
        (config.h で EXEC_IO を define してコンパイルした時のみ有効)
Packit Service 949123
Packit Service 949123
BUGS
Packit Service 949123
    実は、入力のコード系の判定は、Shift_JIS と EUC との自動判定であり、最初に特定できる文字が来た時点で確定してしまう。
Packit Service 949123
    そして、特定不能の間は保留バッファにためておかれ、確定後に処理される。 このため、7 ビット JIS は常に認識される。
Packit Service 949123
    Shift_JIS、EUC 混合もほとんどの場合は問題がない。 ただし、Shift_JIS のいわゆる半角カナ (JIS X 0201 片仮名)
Packit Service 949123
    と EUC 漢字が識別できない。 したがって、デフォルトでは Shift_JIS のいわゆる半角カナはないと仮定している。
Packit Service 949123
    (つまり、Shift_JIS か EUC か迷った時は EUC とみなす)
Packit Service 949123
Packit Service 949123
    Unicode の日本語以外の部分の変換には対応していないが、--no-best-fit-chars を指定すれば、UTF-8 と UTF-16
Packit Service 949123
    の相互変換をすることは可能である。
Packit Service 949123
Packit Service 949123
ACKNOWLEDGE
Packit Service 949123
    以下のかたがた、どうもありがとうございました。
Packit Service 949123
Packit Service 949123
  nkf 1.4
Packit Service 949123
    morb@fujitsu, kiss@ayumi.stars.flab.fujitsu, cen122@flab.fujitsu,
Packit Service 949123
    yuki@flab.fujitsu 他、fujitsu & flab.fujitsu の皆さんの協力に感謝。
Packit Service 949123
    shinoda@cs.titech, kato@cs.titech, uematsu@cs.titech TNX
Packit Service 949123
    kono@ie.u-ryukyu.ac.jp void@merope.pleiades.or.jp (Kusakabe Youichi)
Packit Service 949123
    NIDE Naoyuki <nide@ics.nara-wu.ac.jp> ohta@src.ricoh.co.jp (Junn Ohta)
Packit Service 949123
    inouet@strl.nhk.or.jp (Tomoyuki Inoue) kiri@pulser.win.or.jp (Tetsuaki
Packit Service 949123
    Kiriyama) Kimihiko Sato <sato@sail.t.u-tokyo.ac.jp>
Packit Service 949123
    a_kuroe@kuroe.aoba.yokohama.jp (Akihiko Kuroe) kono@ie.u-ryukyu.ac.jp
Packit Service 949123
    (Shinji Kono) GHG00637@nifty-serve.or.jp (COW)
Packit Service 949123
Packit Service 949123
  nkf 1.9-
Packit Service 949123
    河野真治
Packit Service 949123
    Akio Furukawa
Packit Service 949123
    Andy Taki
Packit Service 949123
    From: OHARA Shigeki
Packit Service 949123
    Fumitaka Kitagawa
Packit Service 949123
    Hiroaki Sengoku
Packit Service 949123
    Ikuhiro MORITA (森田 育宏)
Packit Service 949123
    Yoshiharu ITO
Packit Service 949123
    Junn Ohta
Packit Service 949123
    KAWAMURA Masao
Packit Service 949123
    Kazuhiko Mori
Packit Service 949123
    Keitaro Isokawa
Packit Service 949123
    Ken-ichi Hirose
Packit Service 949123
    Ki-ichiro SATO
Packit Service 949123
    Kiwamu Aoyama
Packit Service 949123
    Koichi Hirayama
Packit Service 949123
    Mitsuru Hase (長谷 満)
Packit Service 949123
    OHARA Shigeki (大原 重樹)
Packit Service 949123
    Rei FURUKAWA
Packit Service 949123
    Satoru Takabayashi
Packit Service 949123
    Shigeyuki Takagi
Packit Service 949123
    Shin MICHIMUKO
Packit Service 949123
    Tadamasa Teranishi
Packit Service 949123
    TOYODA Jiro
Packit Service 949123
    TSUCHIYA Masatoshi
Packit Service 949123
    Tsutomu Sakai
Packit Service 949123
    YAMASHITA Junji (山下 純司)
Packit Service 949123
    Yasuyuki Sato
Packit Service 949123
    Yoshiaki Yanagihara
Packit Service 949123
    hat@so-net
Packit Service 949123
    DCC技術部渡辺
Packit Service 949123
    かとぺ / 加藤 貴司
Packit Service 949123
    かべdais
Packit Service 949123
    ひろせ まさあき
Packit Service 949123
    イントラネットシステム(株)松尾
Packit Service 949123
    鵜飼文敏
Packit Service 949123
    塩崎 毅彦(SHIOZAKI Takehiko)
Packit Service 949123
    河村雅夫 (Media Lab.)
Packit Service 949123
    河野 康司
Packit Service 949123
    喜瀬“冬猫”浩@南国沖縄
Packit Service 949123
    金井 智彦
Packit Service 949123
    桂田 祐史 (かつらだ まさし)
Packit Service 949123
    高橋宜盟
Packit Service 949123
    国吉
Packit Service 949123
    黒江明彦
Packit Service 949123
    三宅正泰
Packit Service 949123
    山倉 真
Packit Service 949123
    山本 芳人
Packit Service 949123
    山野裕司 (やまのゆうじ)
Packit Service 949123
    重村法克
Packit Service 949123
    小島基靖
Packit Service 949123
    上田 健
Packit Service 949123
    新井 康司 (Koji Arai)
Packit Service 949123
    森 千絵子
Packit Service 949123
    森 和彦
Packit Service 949123
    水野 貴文
Packit Service 949123
    前地和俊
Packit Service 949123
    仲宗根@並列信頼研
Packit Service 949123
    猪谷 英一郎 == Eiichiro Itani
Packit Service 949123
    藤原 秀行
Packit Service 949123
    八田 真行 (Masayuki Hatta)
Packit Service 949123
    尾川敏也
Packit Service 949123
    望月 孝志
Packit Service 949123
    木村 (@筑波大学数学研究科)
Packit Service 949123
    野村俊彰
Packit Service 949123
    有岡@ミノルタ
Packit Service 949123
    有沢 明宏
Packit Service 949123
    落合一喜
Packit Service 949123
    林 亮
Packit Service 949123
    國安 治
Packit Service 949123
    木下 雄介
Packit Service 949123
    田中隆裕
Packit Service 949123
    鶴谷直樹
Packit Service 949123
    中田伸悦
Packit Service 949123
    わたなべひろふみ
Packit Service 949123
    MoonWolf
Packit Service 949123
    sava
Packit Service 949123
Packit Service 949123
AUTHOR
Packit Service 949123
    市川 至 ichikawa@flab.fujitsu.co.jp (was ichikawa@fujitsu.JUNET)
Packit Service 949123
    河野 真治 kono@ie.u-ryukyu.acjp
Packit Service 949123
    Rei FURUKAWA furukawa@tcp-ip.or.jp
Packit Service 949123
    成瀬
Packit Service 949123
    mastodon
Packit Service 949123
Packit Service 949123
    http://sourceforge.jp/projects/nkf/
Packit Service 949123
Packit Service 949123
    Copyright (C) 1987, FUJITSU LTD. (I.Ichikawa).
Packit Service 949123
Packit Service 949123
    Copyright (C) 1996-2013, The nkf Project.
Packit Service 949123