a_m*_*m0d 4 gtk ocaml gtksourceview mime-types
如何确定文件的 mime 类型(在 OCaml 中)?
我正在尝试为 GtkSourceView 控件设置语言,但为此,我需要首先确定语言。我能看到执行此操作的唯一方法是使用 mime-type - 有一个函数将返回正确的语言,如下所示:
GSourceView.source_languages_manager#get_language_from_mime_type : string -> source_language option
Run Code Online (Sandbox Code Playgroud)
我真的不想将语言硬编码到我的源代码中。如果无法确定 OCaml 中的 mime 类型(在搜索文档后我还没有找到方法),是否有另一种方法可以确定源语言?
在研究了包含此功能的 gedit 的源代码之后,我在 glib 中发现了一种可以为我完成此操作的方法。 这个答案提供了该方法的使用示例g_file_info_get_content_type()。还有g_content_type_get_mime_type()方法,glib中也有。
不幸的是,这些函数还没有可用的包装,这意味着我可能必须为它们生成自己的包装。