+ path, Some (T.Coercion (b, Filename.concat base_uri s))
+ | T.Section (b, id, _) as item ->
+ let path = if b then id :: path else List.tl path in
+ path, Some item
+ | T.Verbatim s ->
+ let pat, templ = st.input_base_uri, st.output_base_uri in
+ path, Some (T.Verbatim (Pcre.replace ~pat ~templ s))
+ | item -> path, Some item
+ in
+ let set_includes st name =
+ try require st name (List.assoc name st.includes)
+ with Not_found -> ()
+ in
+ let rec remove_lines ich n =
+ if n > 0 then let _ = input_line ich in remove_lines ich (pred n)