From 527e025e88fc01c7ed4fc3f951484b051c264d83 Mon Sep 17 00:00:00 2001 From: Marc Coquand Date: Thu, 23 May 2024 14:04:23 -0500 Subject: Fix export with relative line --- lib/export.ml | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'lib/export.ml') diff --git a/lib/export.ml b/lib/export.ml index 3346195..0468e64 100644 --- a/lib/export.ml +++ b/lib/export.ml @@ -1,4 +1,14 @@ let to_path path ~content = - let oc = open_out path in - Printf.fprintf oc "%s" content; - close_out oc + try + let home = Sys.getenv_opt "HOME" in + let path = + match home with + | Some home -> Str.replace_first (Str.regexp "~") home path + | None -> path + in + let oc = open_out path in + Printf.fprintf oc "%s\n" content; + close_out oc; + "Successfully wrote to " ^ path + with + | exn -> "Failed to write to path: " ^ Printexc.to_string exn -- cgit v1.2.3