let non_env_cmd_of_name name args =
  let module C = Names in
  let ios s = try int_of_string s with e -> 0 in
  let (env:Stack.environment) =
    match name with
    | s when C.is_paragraph s        ->  `paragraph          
    | s when C.is_new_line s         ->  `new_line          
    | s when C.is_non_break_space s  ->  `non_break_space          
    | s when C.is_ellipsis s  ->  `horizontal_ellipsis          
    | s when C.is_en_dash s  ->  `en_dash          
    | s when C.is_em_dash s  ->  `em_dash          
    | s when C.is_open_brace s       ->  `open_brace          
    | s when C.is_close_brace s      ->  `close_brace          
    | s when C.is_sharp s            ->  `sharp          
    | s when C.is_utf8_char s        -> 
        (try `utf8_char (ios (List.hd args)) with e -> `unknown (s, args))
    | s -> `unknown (s, args)
  in
  env