let show_documentation () =
let rules = Rule.get_rules () in
let flags = Flags.get_flags () in
let pp fmt = Log.raw_dprintf (-1) fmt in
List.iter begin fun rule ->
pp "%a@\n@\n" (Rule.pretty_print Resource.print_pattern) rule
end rules;
List.iter begin fun (tags, flag) ->
let sflag = Command.string_of_command_spec flag in
pp "@[<2>flag@ {. %a .}@ %S@]@\n@\n" Tags.print tags sflag
end flags;
pp "@."