Determine the width of the consoleSource:
It uses the
cli.width option, if set. Otherwise it tries to
determine the size of the terminal or console window.
These are the exact rules:
cli.widthoption is set to a positive integer, it is used.
cli.widthoption is set, but it is not a positive integer, and error is thrown.
Then we try to determine the size of the terminal or console window:
If we are not in RStudio, or we are in an RStudio terminal, then we try to use the
tty_size()function to query the terminal size. This might fail if R is not running in a terminal, but failures are ignored.
If we are in the RStudio build pane, then the
RSTUDIO_CONSOLE_WIDTHenvironment variable is used. If the build pane is resized, then this environment variable is not accurate any more, and the output might get garbled.
We are not using the
RSTUDIO_CONSOLE_WIDTHenvironment variable if we are in the RStudio console.
If we cannot determine the size of the terminal or console window, then
we use the
width option. If the
width option is not set, then
we return 80L.