+(** {2 GtkSourceLanguagesManager} *)
+
+class source_languages_manager
+ (obj: Gtk_sourceview.source_languages_manager obj) =
+object (self)
+ method get_oid = Gobject.get_oid obj
+ method as_source_languages_manager = obj
+ method get_language_from_mime_type s =
+ match SourceLanguagesManager.get_language_from_mime_type obj s with
+ | None -> None
+ | Some obj -> Some (new source_language obj)
+ method lang_files_dirs = SourceLanguagesManager.get_lang_files_dirs obj
+end
+
+(* let source_languages_manager ?lang_files_dirs () =
+ let properties =
+ match lang_files_dirs with
+ | None -> []
+ | Some dirs ->
+ let list_obj = gslist_of_string_list dirs in
+ [Gobject.param
+ "lang-files-dirs"
+ (`OBJECT (Some list_obj))]
+ in
+ new source_languages_manager (SourceLanguagesManager.create properties) *)
+
+let source_languages_manager () =
+ new source_languages_manager (SourceLanguagesManager.create [])
+
+let source_language_from_file ?languages_manager fname =
+ let languages_manager =
+ match languages_manager with
+ | None -> source_languages_manager ()
+ | Some lm -> lm
+ in
+ let manager_obj = languages_manager#as_source_languages_manager in
+ match SourceLanguage.new_from_file fname manager_obj with
+ | None -> None
+ | Some lang_obj -> Some (new source_language lang_obj)
+