aboutsummaryrefslogtreecommitdiff
path: root/ide/ideutils.ml
diff options
context:
space:
mode:
authorfilliatr2003-02-24 16:52:14 +0000
committerfilliatr2003-02-24 16:52:14 +0000
commit3ae01fb7081658f9c2efaa24f4a7f69925dd6e95 (patch)
treedc7732e22471a3dd4baf0335f96694a2a4350b24 /ide/ideutils.ml
parentedca82b2ff6721b69c49533c40aadf10e5987816 (diff)
aide contextuelle / menus compilation + print + export
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@3698 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'ide/ideutils.ml')
-rw-r--r--ide/ideutils.ml30
1 files changed, 30 insertions, 0 deletions
diff --git a/ide/ideutils.ml b/ide/ideutils.ml
index 9999e576b9..09b8c408a8 100644
--- a/ide/ideutils.ml
+++ b/ide/ideutils.ml
@@ -1,4 +1,8 @@
+open Preferences
+
+let lib_ide = Filename.concat Coq_config.coqlib "ide"
+
let get_insert input_buffer = input_buffer#get_iter_at_mark `INSERT
let is_char_start c = let code = Char.code c in code < 0x80 || code >= 0xc0
@@ -43,3 +47,29 @@ let try_export file_name s =
output_string oc s;
close_out oc
with e -> prerr_endline (Printexc.to_string e)
+
+let browse url =
+ let l,r = Preferences.current.cmd_browse in
+ ignore (Sys.command (l ^ url ^ r))
+
+let url_for_keyword =
+ let ht = Hashtbl.create 97 in
+ begin try
+ let cin = open_in (Filename.concat lib_ide "index_urls.txt") in
+ try while true do
+ let s = input_line cin in
+ try
+ let i = String.index s ',' in
+ let k = String.sub s 0 i in
+ let u = String.sub s (i + 1) (String.length s - i - 1) in
+ Hashtbl.add ht k u
+ with _ ->
+ ()
+ done with End_of_file ->
+ close_in cin
+ with _ ->
+ ()
+ end;
+ (Hashtbl.find ht : string -> string)
+
+