These are environment variables and options that uses may set, to modify the behavior of cli.
User facing environment variables
R_CLI_HYPERLINK_MODE
Set to posix
to force generating POSIX compatible ANSI
hyperlinks. If not set, then RStudio compatible links are generated.
This is a temporary crutch until RStudio handles POSIX hyperlinks
correctly, and after that it will be removed.
ESS_BACKGROUND_MODE
Set this environment variable to light
or
dark
to indicate dark mode in Emacs. Once https://github.com/emacs-ess/ESS/pull/1178 is merged,
ESS will set this automatically.
R_CLI_DYNAMIC
Set to true
, TRUE
or True
to
assume a dynamic terminal, that supports \r
. Set to
anything else to assume a non-dynamic terminal. See
[is_dynamic_tty()].
User facing options
cli.ansi
Set to true
, TRUE
or True
to
assume a terminal that supports ANSI control sequences. Set to anything
else to assume a non-ANSI terminal. See [is_ansi_tty()].
cli.condition_unicode_bullets
TRUE
or FALSE
to force turn on or off the
Unicode symbols when printing conditions. E.g. in
format_error()
, format_warning()
,
format_message()
and also in cli_abort()
,
cli_warn()
and cli_inform()
.
cli.condition_width
Integer scalar (or Inf
) to set the console width when
cli is formatting errors, warnings or messages in
format_error()
, format_warning()
and
format_message()
. When formatting conditions this option
takes precedence over cli.width
.
cli.default_handler
General handler function for all cli conditions. See https://cli.r-lib.org/articles/semantic-cli.html#cli-messages-1
cli.default_num_colors
Default number of ANSI colors. This value is used if the number of
colors is not already set by * the cli.num_colors
option, *
the R_CLI_NUM_COLORS
environment variable, * the
crayon.enabled
and crayon.colors
options, *
the NO_COLOR
environment variable, * the
knitr.in.progress
option, * a sink()
call for
the stream.
You can also use this option if color support is detected correctly,
but you want to adjust the number of colors. E.g. * if
crayon.enabled
is TRUE
, but
crayon.colors
is not, * in Emacs on Windows, * in
terminals.
See [num_ansi_colors()]. See also the cli.num_colors
option.
cli.dynamic
Set to TRUE
to assume a dynamic terminal, that supports
\r
. Set to anything else to assume a non-dynamic terminal.
See [is_dynamic_tty()].
cli.hide_cursor
Whether the cli status bar should try to hide the cursor on
terminals. Set the FALSE
if the hidden cursor causes
issues.
cli.hyperlink
Set to true
, TRUE
or True
to
tell cli that the terminal supports ANSI hyperlinks. Set to anything
else to assume no hyperlink support. See [style_hyperlink()].
cli.ignore_unknown_rstudio_theme
Set to TRUE
to omit a warning for an unknown RStudio
theme in code_highlight()
.
cli.num_colors
Number of ANSI colors. See [num_ansi_colors()]. See also the
cli.default_num_colors
option.
cli.progress_bar_style_unicode
Progress bar style on Unicode (UTF-8) consoles; See [cli_progress_styles()].
cli.progress_clear
Whether to clear terminated progress bar from the screen on dynamic terminals. See [cli_progress_bar()].
cli.progress_demo_live
Whether cli_progress_demo()
should show a live demo, or
just record the progress bar frames.
cli.progress_format_download_nototal
Default format string for download
progress bars with
unknown totals.
cli.progress_format_iterator_nototal
Default format string for iterator
progress bars with
unknown total number of progress units.
cli.progress_format_tasks_nototal
Default format string for tasks
progress bars with
unknown totals.
cli.progress_handlers_force
Progress handlers that will always be used, even if another handler was already selected. See [cli_progress_builtin_handlers()].
cli.progress_handlers_only
Progress handlers to force, ignoring handlers set in
cli.progress_handlers
and
cli.progress_handlers_force
. See
[cli_progress_builtin_handlers()].
cli.progress_say_args
Command line arguments for the say
progress handlers.
See [cli_progress_builtin_handlers()].
cli.progress_say_command
External command to use in the say
progress handler. See
[cli_progress_builtin_handlers()].
cli.progress_say_frequency
Minimum delay between say
calls in the say
progress handler. say
ignores very frequent updates, to
keep the speech comprehensible. See
[cli_progress_builtin_handlers()].
cli.progress_show_after
Delay before showing a progress bar, in seconds. Progress bars that finish before this delay are not shown at all. cli also shows progress bars that have more than 50% to go after half of this delay has passed.
cli.theme
Default cli theme, in addition to the built-in theme. This option in intended for the package developers. See [themes] and [start_app()].
cli.unicode
Whether to assume a Unicode terminal. If not set, then it is auto-detected. See [is_utf8_output()].