Skip to content

Commit

Permalink
Driver: use --home-breadcrumb CLI
Browse files Browse the repository at this point in the history
  • Loading branch information
panglesd committed Feb 10, 2025
1 parent b12876f commit 9d27fd5
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 13 deletions.
11 changes: 6 additions & 5 deletions src/driver/compile.ml
Original file line number Diff line number Diff line change
Expand Up @@ -327,6 +327,7 @@ let html_generate ~occurrence_file ~remaps ~generate_json
fun remap_file l ->
if l.to_output then
let output_dir = Fpath.to_string output_dir in
let home_breadcrumb = "Package index" in
let input_file = l.odocl_file in
match l.kind with
| `Intf { hidden = true; _ } -> ()
Expand All @@ -340,15 +341,15 @@ let html_generate ~occurrence_file ~remaps ~generate_json
(Some search_uris, sidebar)
in
Odoc.html_generate_source ?search_uris ?sidebar ~output_dir
~input_file ~source:src_path ();
~input_file ~home_breadcrumb ~source:src_path ();
Atomic.incr Stats.stats.generated_units;
if generate_json then (
Odoc.html_generate_source ?search_uris ?sidebar ~output_dir
~input_file ~source:src_path ~as_json:true ();
~input_file ~source:src_path ~as_json:true ~home_breadcrumb ();
Atomic.incr Stats.stats.generated_units)
| `Asset ->
Odoc.html_generate_asset ~output_dir ~input_file:l.odoc_file
~asset_path:l.input_file ()
~asset_path:l.input_file ~home_breadcrumb ()
| _ ->
let search_uris, sidebar =
match l.index with
Expand All @@ -359,11 +360,11 @@ let html_generate ~occurrence_file ~remaps ~generate_json
(Some search_uris, sidebar)
in
Odoc.html_generate ?search_uris ?sidebar ?remap:remap_file ~output_dir
~input_file ();
~input_file ~home_breadcrumb ();
Atomic.incr Stats.stats.generated_units;
if generate_json then (
Odoc.html_generate ?search_uris ?sidebar ~output_dir ~input_file
~as_json:true ();
~as_json:true ~home_breadcrumb ();
Atomic.incr Stats.stats.generated_units)
in
if List.length remaps = 0 then Fiber.List.iter (html_generate None) linked
Expand Down
33 changes: 25 additions & 8 deletions src/driver/odoc.ml
Original file line number Diff line number Diff line change
Expand Up @@ -211,19 +211,25 @@ let sidebar_generate ?(ignore_output = false) ~output_file ~json input_file () =
ignore @@ Cmd_outputs.submit log desc cmd (Some output_file)

let html_generate ~output_dir ?sidebar ?(ignore_output = false)
?(search_uris = []) ?remap ?(as_json = false) ~input_file:file () =
?(search_uris = []) ?remap ?(as_json = false) ?home_breadcrumb
~input_file:file () =
let open Cmd in
let index =
match sidebar with None -> empty | Some idx -> v "--sidebar" % p idx
in
let home_breadcrumb =
match home_breadcrumb with
| None -> empty
| Some name -> v "--home-breadcrumb" % name
in
let search_uris =
List.fold_left
(fun acc filename -> acc % "--search-uri" % p filename)
empty search_uris
in
let cmd =
!odoc % "html-generate" % "--home-breadcrumb" % p file %% index
%% search_uris % "-o" % output_dir
!odoc % "html-generate" % p file %% index %% search_uris % "-o" % output_dir
%% home_breadcrumb
in
let cmd =
match remap with None -> cmd | Some f -> cmd % "--remap-file" % p f
Expand All @@ -235,12 +241,17 @@ let html_generate ~output_dir ?sidebar ?(ignore_output = false)
in
ignore @@ Cmd_outputs.submit log desc cmd None

let html_generate_asset ~output_dir ?(ignore_output = false) ~input_file:file
~asset_path () =
let html_generate_asset ~output_dir ?(ignore_output = false) ?home_breadcrumb
~input_file:file ~asset_path () =
let open Cmd in
let home_breadcrumb =
match home_breadcrumb with
| None -> empty
| Some name -> v "--home-breadcrumb" % name
in
let cmd =
!odoc % "html-generate-asset" % "-o" % output_dir % "--asset-unit" % p file
% p asset_path
% p asset_path %% home_breadcrumb
in
let desc = Printf.sprintf "Copying asset %s" (Fpath.to_string file) in
let log =
Expand All @@ -249,20 +260,26 @@ let html_generate_asset ~output_dir ?(ignore_output = false) ~input_file:file
ignore @@ Cmd_outputs.submit log desc cmd None

let html_generate_source ~output_dir ?(ignore_output = false) ~source ?sidebar
?(search_uris = []) ?(as_json = false) ~input_file:file () =
?(search_uris = []) ?(as_json = false) ?home_breadcrumb ~input_file:file ()
=
let open Cmd in
let file = v "--impl" % p file in
let sidebar =
match sidebar with None -> empty | Some idx -> v "--sidebar" % p idx
in
let home_breadcrumb =
match home_breadcrumb with
| None -> empty
| Some name -> v "--home-breadcrumb" % name
in
let search_uris =
List.fold_left
(fun acc filename -> acc % "--search-uri" % p filename)
empty search_uris
in
let cmd =
!odoc % "html-generate-source" %% file %% sidebar % p source %% search_uris
% "-o" % output_dir
% "-o" % output_dir %% home_breadcrumb
in
let cmd = if as_json then cmd % "--as-json" else cmd in

Expand Down
3 changes: 3 additions & 0 deletions src/driver/odoc.mli
Original file line number Diff line number Diff line change
Expand Up @@ -71,13 +71,15 @@ val html_generate :
?search_uris:Fpath.t list ->
?remap:Fpath.t ->
?as_json:bool ->
?home_breadcrumb:string ->
input_file:Fpath.t ->
unit ->
unit

val html_generate_asset :
output_dir:string ->
?ignore_output:bool ->
?home_breadcrumb:string ->
input_file:Fpath.t ->
asset_path:Fpath.t ->
unit ->
Expand All @@ -90,6 +92,7 @@ val html_generate_source :
?sidebar:Fpath.t ->
?search_uris:Fpath.t list ->
?as_json:bool ->
?home_breadcrumb:string ->
input_file:Fpath.t ->
unit ->
unit
Expand Down

0 comments on commit 9d27fd5

Please sign in to comment.