Module Fmt_cli
Contents
Instructions: Use this module in your project
In the IDE (CLion, Visual Studio Code, Xcode, etc.) you use for your DkSDK project:
Add the following to your project's
dependencies/CMakeLists.txt
:DkSDKProject_DeclareAvailable(fmt CONSTRAINT "= 0.9.0+dune" FINDLIBS fmt fmt.cli fmt.top fmt.tty) DkSDKProject_MakeAvailable(fmt)
Add the
Findlib::fmt
library to any desired targets insrc/*/CMakeLists.txt
:target_link_libraries(YourPackage_YourLibraryName # ... existing libraries, if any ... Findlib::fmt)
Click your IDE's
Build
button
Not using DkSDK?
FIRST, do one or all of the following:
Run:
opam install fmt.0.9.0+dune
Edit your
dune-project
and add:(package (name YourExistingPackage) (depends ; ... existing dependenices ... (fmt (>= 0.9.0+dune))))
Then run:
dune build *.opam # if this fails, run: dune build
Edit your
<package>.opam
file and add:depends: [ # ... existing dependencies ... "fmt" {>= "0.9.0+dune"} ]
Then run:
opam install . --deps-only
FINALLY, add the fmt.cli
library to any desired (library)
and/or (executable)
targets in your **/dune
files:
(library
(name YourLibrary)
; ... existing library options ...
(libraries
; ... existing libraries ...
fmt.cli))
(executable
(name YourExecutable)
; ... existing executable options ...
(libraries
; ... existing libraries ...
fmt.cli))
Option for setting the style renderer
val
style_renderer : ``?env:
Cmdliner.Arg.env
->
``?docs:string
->
``unit
->
Fmt.style_renderer
option``
Cmdliner.Term.t
style_renderer ?env ?docs ()
is a
Cmdliner
option --color
that can be
directly used with the optional arguments of TTY
setup or to control style
rendering. The option is documented
under docs
(defaults to the default in
Cmdliner.Arg.info
).
The option is a tri-state enumerated value that when used with TTY setup takes over the automatic setup:
--color=never
, the value isSome `None
, forces no styling.--color=always
, the value isSome `Ansi
, forces ANSI styling.--color=auto
or absent, the value isNone
, automatic setup takes place.
If env
is provided, the option default value (None
) can be
overridden by the corresponding environment variable.