このブログの例に従って、コマンドラインからHaskell実行可能ファイルを実行しようとしています。私のマシンはNixOSを実行しています。
ブログは、ブログ投稿を公開するために、マークダウンの読み書きができるhaskellをhtmlにコンパイルすることについてです。そのプロセスの1つのステップはhscolour
、.lhsファイルでhaskellプログラムを実行して、コード構文を使用して.mkdファイルを作成することです-htmlとcssで強調表示されます。
cat blah.lhs | hscolour -lit -css > blah.mkd
ただし、このコマンドを実行しようとすると、次のcommand not found
エラーが発生します。
$ cat blah.lhs | hscolour -lit -css > blah.mkd
hscolour: command not found
私が抱えているこの問題がNixOSに固有のものなのか、それともコマンドラインでhaskell実行可能ファイルをより広く利用できるようにするためのものなのかはわかりません。コマンドラインから利用できるようなhaskell実行可能ファイルを作成するにはどうすればよいhscolour
ですか?
ビルドさnix-shell
れた内からこのコマンドを実行してみhscolour
ました。hscolour
コマンドはまだ見つかりませんでした。
$ nix-shell -p "haskellPackages.ghcWithPackages (pkgs: with pkgs; [hscolour])"
$ cat functor-proofs.lhs | hscolour -li
hscolour: command not found
知っておくべき2つのこと:
GHCは必要ありません。必要なのは、hscolourから実行可能ファイルを取得することだけhaskell.lib.justStaticExecutables haskellPackages.hscolour
です。
hscolourのバイナリはHsColour
、ではなくと呼ばれhscolour
ます。
実証するために:
$ nix-shell -p 'haskell.lib.justStaticExecutables haskellPackages.hscolour' --run 'HsColour --version'
HsColour 1.24
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加