let lang_of_filename filename =
  try
    let (_,mime) =
      List.find
        (fun (re,_) ->
           let re = Str.regexp re in
           Str.string_match re filename 0
        )
        Ed_sourceview_rc.filename_language_patterns#get
    in
    languages_manager#get_language_from_mime_type mime
  with
    Not_found ->
      None