let get_font (tag : string) (choices : string list) : Tk.font =
  let all = Font.families () in
  let rec find ch =
    match ch with
    | [] -> ""
    | f::tail ->
      ( try (List.find (( = ) f) all)
        with Not_found -> find tail ) in
  match find choices with
  | "" -> Font.create ~name:tag ~size:10 ()
  | fam -> Font.create ~name:tag ~family:fam ~size:10 ()