summary refs log tree commit diff
path: root/mixins/cli.nix
diff options
context:
space:
mode:
Diffstat (limited to 'mixins/cli.nix')
-rw-r--r--mixins/cli.nix14
1 files changed, 14 insertions, 0 deletions
diff --git a/mixins/cli.nix b/mixins/cli.nix
index 8853576..3b331cf 100644
--- a/mixins/cli.nix
+++ b/mixins/cli.nix
@@ -30,6 +30,20 @@
               numpy
               more-itertools
             ]))
+
+          (
+            pkgs.writeShellScriptBin "hs" ''
+              exec ${pkgs.ghc.withPackages (p: with p; [relude pretty-simple])}/bin/ghci -ghci-script ${pkgs.writeText "ghci.conf" ''
+                :set -XNoImplicitPrelude
+                :set -XFlexibleContexts
+                :set -XFlexibleInstances
+                :set -XOverloadedStrings
+                :set prompt "\ESC[38;5;208m\STXλ>\ESC[m\STX "
+                :set -ferror-spans -freverse-errors -fprint-expanded-synonyms
+                :set -interactive-print Text.Pretty.Simple.pPrint
+                import Relude''}
+            ''
+          )
         ];
         sessionVariables = {
           EDITOR = "nvim";