From 568b0b82e229535ce1355dcc4f959ac8f4f13921 Mon Sep 17 00:00:00 2001 From: sacerdot Date: Thu, 26 May 2005 11:54:30 +0000 Subject: New environment variable COQREMOTEBROWSER to set the command used by Coq and coqide to control a remote browser. It uses the standard syntax where "%s" is the placeholder for the URL. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@7077 85f007b7-540e-0410-9357-904b9bb8a0f7 --- lib/options.ml | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/options.ml b/lib/options.ml index 45f27107e3..17e8af1820 100644 --- a/lib/options.ml +++ b/lib/options.ml @@ -120,7 +120,20 @@ let boxed_definitions _ = !boxed_definitions (* Options for external tools *) let browser_cmd_fmt = - if Sys.os_type = "Win32" - then "C:\\PROGRA~1\\INTERN~1\\IEXPLORE ", "" - else "netscape -remote \"OpenURL(", ")\"" - + try + let coq_netscape_remote_var = "COQREMOTEBROWSER" in + let coq_netscape_remote = Sys.getenv coq_netscape_remote_var in + let i = Util.string_index_from coq_netscape_remote 0 "%s" in + let pre = String.sub coq_netscape_remote 0 i in + let post = String.sub coq_netscape_remote (i + 2) + (String.length coq_netscape_remote - (i + 2)) in + if Util.string_string_contains ~where:post ~what:"%s" then + error ("The environment variable \"" ^ + coq_netscape_remote_var ^ + "\" must contain exactly one placeholder \"%s\".") + else pre,post + with + Not_found -> + if Sys.os_type = "Win32" + then "C:\\PROGRA~1\\INTERN~1\\IEXPLORE ", "" + else "netscape -remote \"OpenURL(", ")\"" -- cgit v1.2.3