2018-09-21 00:06:12 +01:00
|
|
|
;; -*- lexical-binding: t; no-byte-compile: t; -*-
|
|
|
|
;;; lang/ocaml/doctor.el
|
|
|
|
|
2022-08-12 20:29:19 +02:00
|
|
|
(assert! (or (not (modulep! +lsp))
|
|
|
|
(modulep! :tools lsp))
|
2019-04-22 03:10:25 -04:00
|
|
|
"This module requires (:tools lsp)")
|
|
|
|
|
2022-08-12 20:29:19 +02:00
|
|
|
(assert! (or (not (modulep! +tree-sitter))
|
|
|
|
(modulep! :tools tree-sitter))
|
2021-10-19 19:26:26 +01:00
|
|
|
"This module requires (:tools tree-sitter)")
|
|
|
|
|
2018-09-21 00:06:12 +01:00
|
|
|
(unless (executable-find "ocamlmerlin")
|
2018-10-16 02:45:12 -04:00
|
|
|
(warn! "Couldn't find ocamlmerlin. Lookup, completion and syntax checking won't work"))
|
2018-09-21 00:06:12 +01:00
|
|
|
|
|
|
|
;; Tuareg can still indent
|
|
|
|
(unless (executable-find "ocp-indent")
|
2018-10-16 02:45:12 -04:00
|
|
|
(warn! "Couldn't find ocp-indent. Auto-indentation will be less precise"))
|
2018-09-21 00:06:12 +01:00
|
|
|
|
2022-08-12 20:29:19 +02:00
|
|
|
(when (modulep! :tools eval)
|
2018-09-21 00:06:12 +01:00
|
|
|
(unless (executable-find "utop")
|
|
|
|
(warn! "Couldn't find utop. REPL won't be available")))
|
|
|
|
|
|
|
|
(unless (executable-find "dune")
|
|
|
|
(warn! "Couldn't find dune. Won't be able to highlight dune files"))
|
|
|
|
|
2022-08-12 20:29:19 +02:00
|
|
|
(when (modulep! :editor format)
|
2018-10-16 02:45:12 -04:00
|
|
|
(unless (executable-find "ocamlformat")
|
|
|
|
(warn! "Couldn't find ocamlformat. Code-formatting will be unavailable")))
|