diff options
author | cvs2svn <cvs2svn@FreeBSD.org> | 2008-11-19 10:43:57 +0000 |
---|---|---|
committer | cvs2svn <cvs2svn@FreeBSD.org> | 2008-11-19 10:43:57 +0000 |
commit | f982be45e81588a27383cd1a3eb12789b8498904 (patch) | |
tree | 07be283d015b2c39f95e655cb7328ff355bc47fa /lang/erlang14/files/patch-lib_gs_src_tool__utils.erl | |
parent | - Fix modes of the temp directory [1] (diff) |
This commit was manufactured by cvs2svn to create tag 'RELEASE_6_4_0'.release/6.4.0
Diffstat (limited to 'lang/erlang14/files/patch-lib_gs_src_tool__utils.erl')
-rw-r--r-- | lang/erlang14/files/patch-lib_gs_src_tool__utils.erl | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/lang/erlang14/files/patch-lib_gs_src_tool__utils.erl b/lang/erlang14/files/patch-lib_gs_src_tool__utils.erl deleted file mode 100644 index ddc1ecb98b12..000000000000 --- a/lang/erlang14/files/patch-lib_gs_src_tool__utils.erl +++ /dev/null @@ -1,87 +0,0 @@ - -$FreeBSD$ - ---- lib/gs/src/tool_utils.erl.orig -+++ lib/gs/src/tool_utils.erl -@@ -27,6 +27,9 @@ - -export([file_dialog/1]). - -export([notify/2, confirm/2, confirm_yesno/2, request/2]). - -+%% Browser executable list (openURL command line protocol required) -+-define(BROWSERS, ["netscape", "mozilla", "MozillaFirebird", "opera"]). -+ - %%---------------------------------------------------------------------- - %% open_help(GS, File) - %% GS = gsobj() (GS root object returned by gs:start/0,1) -@@ -67,7 +70,7 @@ - {unix,Type} -> - case Type of - darwin -> "open " ++ File; -- _Else -> "netscape -remote \"openURL(file:" ++ File ++ ")\"" -+ _Else -> unix_url_command("file:" ++ File) - end; - {win32,_AnyType} -> - "start " ++ filename:nativename(File); -@@ -82,7 +85,7 @@ - {unix,Type} -> - case Type of - darwin -> "open " ++ File; -- _Else -> "netscape -remote \"openURL(file:" ++ File ++ ")\"" -+ _Else -> unix_url_command("file:" ++ File) - end; - {win32,_AnyType} -> - "netscape.exe -h " ++ regexp:gsub(File,"\\\\","/"); -@@ -342,3 +345,53 @@ - [Last]; - insert_newlines(Other) -> - Other. -+ -+%% find_browser(BrowserList) => string() | false -+%% BrowserList - [string()] -+%% Given a list of basenames, find the first available executable. -+ -+find_browser([]) -> -+ false; -+ -+find_browser([H | T]) -> -+ case os:find_executable(H) of -+ false -> -+ find_browser(T); -+ Browser -> -+ Browser -+ end. -+ -+%% unix_url_command(URL) => string() -+%% URL - string() -+%% Open an URL, using a browser which supports the openURL command -+%% line protocol. If no browser is found, the empty string will be -+%% returned. -+ -+unix_url_command(URL) -> -+ Template = "BROWSER -remote \"openURL(" ++ URL ++ ")\" || BROWSER " ++ URL ++ "&", -+ -+ case os:getenv("BROWSER") of -+ false -> -+ %% look for a compatible browser -+ case find_browser(?BROWSERS) of -+ false -> -+ ""; -+ Browser -> -+ case regexp:gsub(Template, "BROWSER", Browser) of -+ {ok, Command, 0} -> -+ %% Template does not contain "BROWSER" placeholder -+ ""; -+ {ok, Command, _} -> -+ Command -+ end -+ end; -+ -+ Value -> -+ case regexp:gsub(Template, "BROWSER", Value) of -+ {ok, Command2, 0} -> -+ %% no placeholder -+ ""; -+ {ok, Command2, _} -> -+ Command2 -+ end -+ end. |