summaryrefslogtreecommitdiff
path: root/src/sail.ml
diff options
context:
space:
mode:
authorJessica Clarke2020-10-07 00:29:43 +0100
committerJessica Clarke2020-10-07 00:29:43 +0100
commit28e18d39774079c9434439b35d967cb352ef41c8 (patch)
treec2a73d0399b0813e19b57675558b1db787f90331 /src/sail.ml
parent8b6a4923645c733af26d0650617844200996b350 (diff)
latex: Guard abbreviations with \@
Otherwise they will be typeset as if the end of a sentence, causing additional spacing after the '.' when not using \frenchspacing.
Diffstat (limited to 'src/sail.ml')
-rw-r--r--src/sail.ml8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/sail.ml b/src/sail.ml
index 38d4c2e8..5a1ad096 100644
--- a/src/sail.ml
+++ b/src/sail.ml
@@ -166,6 +166,14 @@ let options = Arg.align ([
( "-latex_full_valspecs",
Arg.Clear Latex.opt_simple_val,
" print full valspecs in LaTeX output");
+ ( "-latex_abbrevs",
+ Arg.String (fun s ->
+ let abbrevs = String.split_on_char ';' s in
+ let filtered = List.filter (fun abbrev -> not (String.equal "" abbrev)) abbrevs in
+ match List.find_opt (fun abbrev -> not (String.equal "." (String.sub abbrev (String.length abbrev - 1) 1))) filtered with
+ | None -> Latex.opt_abbrevs := filtered
+ | Some abbrev -> raise (Arg.Bad (abbrev ^ " does not end in a '.'"))),
+ " semicolon-separated list of abbreviations to fix spacing for in LaTeX output (default 'e.g.;i.e.')");
( "-marshal",
Arg.Tuple [set_target "marshal"; Arg.Set Initial_check.opt_undefined_gen],
" OCaml-marshal out the rewritten AST to a file");