From a72dd63681f4cbb51a7e84f26b14f3a513afb542 Mon Sep 17 00:00:00 2001 From: katherine Date: Tue, 4 Dec 2018 05:42:02 -0700 Subject: add a nice prompt for utop mimics zsh --- .ocamlinit | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) (limited to '.ocamlinit') diff --git a/.ocamlinit b/.ocamlinit index da23674..67acc2b 100644 --- a/.ocamlinit +++ b/.ocamlinit @@ -1,6 +1,28 @@ #use "topfind";; -#require "core.top";; -#require "core.syntax";; +#require "core";; open Core;; + +#require "lambda-term";; + +let path = Sys.getcwd () in +let home = Sys.home_directory () in +let path = + if Zed_utf8.starts_with path home then + Zed_utf8.replace path 0 (Zed_utf8.length home) "~" + else + path +in +let version = Sys.ocaml_version in +let host = Unix.gethostname () in +let formatted = LTerm_text.eval + [B_bold true; + B_fg (LTerm_style.white); S "ā”Œ["; + B_fg (LTerm_style.lmagenta); S (Printf.sprintf "ocaml-%s" version); + B_fg (LTerm_style.lyellow); S "@"; + B_fg (LTerm_style.lmagenta); S (Printf.sprintf "%s " host); + B_fg (LTerm_style.lcyan); S (Printf.sprintf "%s" path); + B_fg (LTerm_style.white); S "]\nā””: "] +in UTop.prompt := fst (React.S.create formatted);; + -- cgit v1.2.3