utop/man/utop.1

236 lines
5.1 KiB
Groff
Raw Normal View History

\" utop.1
\" ------
\" Copyright : (c) 2011, Jeremie Dimino <jeremie@dimino.org>
\" Licence : BSD3
\"
\" This file is a part of utop.
.TH UTOP 1 "August 2011"
.SH NAME
utop \- Universal toplevel for OCaml
.SH SYNOPSIS
.B utop
[
.I options
]
[
.I object-files
]
[
.I script-file
]
.SH DESCRIPTION
.B utop
is a enhanced toplevel for OCaml with many features, including context
sensitive completion.
When you start
.B utop
what you see is the prompt followed by a bar containing words. This is
the completion bar, it contains the possible completion and is updated
as you type. The highlighted word in the completion bar is the
selected word. You can navigate using the keys Alt+Left and Alt+Right
and you can complete using the currently selected word by pressing
Alt+Tab (you can configure these bindings in the file
.I ~/.config/lambda-term-inputrc
, see
.BR lambda-term-inputrc (5)
for details).
utop supports completion on:
* directives and directive arguments
* identifiers
* record fields
* variants
* function labels
* object methods
Colors are by default configured for terminals with dark colors, such
as white on black, so the prompt may looks too bright on light colors
terminals. You can change that by setting the color profile of
utop. For that type:
UTop.set_profile UTop.Light;;
You can then add this line to your
.I ~/.config/utop/init.ml
file.
2020-03-18 02:43:05 +00:00
To turn off utop's advanced prompt features, add the following to init.ml
to turn off respectively (a) colors and the upper information line, and
(b) the lower boxed list of possible completions:
2020-03-18 02:43:05 +00:00
#utop_prompt_dummy;;
UTop.set_show_box false
You can enable basic syntax highlighting in utop by writing a
.I ~/.utoprc
file. See
.BR utoprc (5)
for that.
Finally utop can run in emacs. For that you have to add the following line to your
.I ~/.emacs
file:
(autoload 'utop "utop" "Toplevel for OCaml" t)
then you can run utop by pressing M-x and typing "utop". utop support
completion in emacs mode. Just press Tab to complete a word. You can
2015-01-12 10:06:08 +00:00
also integrate it with the tuareg, caml or typerex mode. For that add
the following lines to your
.I ~/.emacs
file:
2015-01-12 10:06:08 +00:00
(autoload 'utop-minor-mode "utop" "Minor mode for utop" t)
(add-hook 'tuareg-mode-hook 'utop-minor-mode)
.SH OPTIONS
See
.B utop --help
for the the list of available options. There is considerable overlap
with options available for
.BR ocaml (1).
A commonly used option is
\fB-require\fI package\fR
to load \fIpackage\fR into the execution environment. It is equivalent
to using \fb#require\fR from inside
.BR utop (1).
.PP
.TP
.BI -absname
Show absolute filenames in error message.
.TP
.BI -I " dir"
Add \fIdir\fR to the list of include directories.
.TP
.BI -init " file"
Load \fIfile\fR instead of default init file.
.TP
.BI -labels
Use commuting label mode.
.TP
.BI -no-app-funct
Deactivate applicative functors.
.TP
.BI -noassert
Do not compile assertion checks.
.TP
.BI -nolabels
Ignore non-optional labels in types.
.TP
.BI -nostdlib
Do not add default directory to the list of include directories.
.TP
.BI -ppx " command"
Pipe abstract syntax trees through preprocessor \fIcommand\fR.
.TP
.BI -principal
Check principality of type inference.
.TP
.BI -safe-string
Make strings immutable.
.TP
.BI -short-paths
Shorten paths in types (the default).
.TP
.BI -no-short-paths
Do not shorten paths in types.
.TP
.BI -rectypes
Allow arbitrary recursive types.
.TP
.BI -stdin
Read script from standard input.
.TP
.BI -strict-sequence
Left-hand part of a sequence must have type unit.
.TP
.BI -unsafe
Do not compile bounds checking on array and string access.
.TP
.BI -version
Print version and exit.
.TP
.BI -vnum
Print version number and exit.
.TP
.BI -w " list"
Enable or disable warnings according to \fIlist\fR.
.TP
.BI -warn-error " list"
Enable or disable error status for warnings according to \fIlist\fR.
See option \fB-w\fR for the syntax of \fIlist\fR.
Default setting is \fB-a+31\fR.
.TP
.BI -warn-help
Show description of warning numbers.
.TP
.BI -emacs
Run in emacs mode.
.TP
.BI -hide-reserved
Hide identifiers starting with a '_' (the default).
.TP
.BI -show-reserved
Show identifiers starting with a '_'.
.TP
.BI -no-implicit-bindings
Don't add implicit bindings for expressions (the default).
.TP
.BI -implicit-bindings
Add implicit bindings: \fIexpr\fR;; -> let _0 = \fIexpr\fR;;
.TP
.BI -no-autoload
Disable autoloading of files in
.I $OCAML_TOPLEVEL_PATH/autoload.
.TP
.BI -require " package"
Load this package.
.TP
.BI -dparsetree
Dump OCaml AST after rewriting.
.TP
.BI -dsource
Dump OCaml source after rewriting.
.TP
.BI -help
Display this list of options.
.TP
.BI --help
Display this list of options.
.SH FILES
.I ~/.config/utop/init.ml
.RS
The initialization file of the toplevel.
.RE
.I ~/.ocamlinit
.RS
The alternative initialization file of the toplevel.
.RE
.I ~/.utoprc
.RS
The configuration file for utop. See
.BR utoprc (5).
.RE
.I ~/.config/lambda-term-inputrc
.RS
The file containing key bindings. See
.BR lambda-term-inputrc (5).
.SH AUTHOR
Jérémie Dimino <jeremie@dimino.org>
.SH "SEE ALSO"
.BR utoprc (5),
.BR lambda-term-inputrc (5),
.BR ocaml (1).