package forester

  1. Overview
  2. Docs
A tool for tending mathematical forests

Install

Dune Dependency

Authors

Maintainers

Sources

4.3.0.tar.gz
md5=4cf7ec6a0a36810572f8b3a2af58631c
sha512=818f859dac00a18807563fd79663ec54232c8df196a8dc2de5e269a1d0c71085b1b490297ea0ecf3ef9cd32e40fb05ad2e10c241b03958c15e25c2942271eede

doc/src/forester.render/Build_latex.ml.html

Source file Build_latex.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
open Eio.Std
open Forester_core
open Forester_prelude

type 'a env = 'a constraint 'a = <
    cwd : Eio.Fs.dir_ty Eio.Path.t;
    process_mgr : _ Eio.Process.mgr;
    stdout : _ Eio.Flow.sink;
    ..
  > as 'a

let resources_dir cwd =
  Eio.Path.(cwd/"build"/"resources")

let build_latex ~env ~ignore_tex_cache ~name ~source : unit =
  let cwd = Eio.Stdenv.cwd env in
  let svg_path = Eio.Path.(resources_dir cwd / name) in

  if ignore_tex_cache || not @@ Eio_util.file_exists svg_path then
    begin
      Reporter.emitf Log "Building %s" (Eio.Path.native_exn svg_path);
      let svg_code = LaTeX_pipeline.latex_to_svg ~env source in
      Eio.Path.save ~create:(`Or_truncate 0o644) svg_path svg_code
    end
OCaml

Innovation. Community. Security.