(2)はbuild は出来たがインストール出来ない・・・まででした。
インストールが出来ないのはライセンスファイルの問題。
そこで、正常にインストール出来たcabalのライセンスの行をコピー。
ライセンスファイルもそのファイルをコピーすると入ったけれど、ライセンスが気になる・・・Orz( ファイル名をlicense -> LICENSE と大文字に変更すればOKです。)
-- C のnkfを呼んで与えられたパラメータの最初をnkfのパラメータとし、次の文字列を -- パラメータで指示されたコードに変換して表示する。 module Main where import System.Environment import Cinnamon.Nkf main = do cs <- getArgs putStrLn $ nkf (head cs) (head (tail cs))
> ghc --make ghc_nkf.hs
[1 of 1] Compiling Main ( ghc_nkf.hs, ghc_nkf.o )
Linking ghc_nkf.exe ...
「| nkf -g」はエンコードされた文字列を受け取って、外部のnkf でエンコード判定している。
>ghc_nkf "-m0 -s" 日本語 |nkf -g
Shift_JIS
>ghc_nkf "-m0 -u" 日本語 |nkf -g
ISO-2022-JP
>ghc_nkf "-m0 -w" 日本語 |nkf -g
UTF-8
Cinnamon\Nkf.hs で nkfにパラメータを与え、toJis などが定義されている。
toJis :: String -> String
toJis = nkf "-m0 -j"
toEuc :: String -> String
toEuc = nkf "-m0 -e"
toSjis :: String -> String
toSjis = nkf "-m0 -s"
toUtf8 :: String -> String
toUtf8 = nkf "-m0 -w"
toUtf16 :: String -> String
toUtf16 = nkf "-m0 -w16"