2.4.7 Customizing the Prompt

The following variables are available for customizing the appearance of
the command-line prompts. Octave allows the prompt to be customized by
inserting a number of backslash-escaped special characters that are
decoded as follows:

‘\t’

The time.

‘\d’

The date.

‘\n’

Begins a new line by printing the equivalent of a carriage return
followed by a line feed.

‘\s’

The name of the program (usually just ‘octave’).

‘\w’

The current working directory.

‘\W’

The basename of the current working directory.

‘\u’

The username of the current user.

‘\h’

The hostname, up to the first ‘.’.

‘\H’

The hostname.

‘\#’

The command number of this command, counting from when Octave starts.

‘\!’

The history number of this command. This differs from ‘\#’ by the
number of commands in the history list when Octave starts.

‘\$’

If the effective UID is 0, a ‘#’, otherwise a ‘$’.

‘\nnn’

The character whose character code in octal is nnn.

‘\\’

A backslash.

Built-in Function: val =PS1()

Built-in Function: old_val =PS1(new_val)

Built-in Function: PS1(new_val, "local")

Query or set the primary prompt string. When executing interactively,
Octave displays the primary prompt when it is ready to read a command.

The default value of the primary prompt string is "octave:\#> ".
To change it, use a command like

PS1 ("\\u@\\H> ")

which will result in the prompt ‘boris@kremvax> ’ for the user
‘boris’ logged in on the host ‘kremvax.kgb.su’. Note that two
backslashes are required to enter a backslash into a double-quoted
character string. See Strings.

You can also use ANSI escape sequences if your terminal supports them.
This can be useful for coloring the prompt. For example,

PS1 ("\\[\\033[01;31m\\]\\s:\\#> \\[\\033[0m\\]")

will give the default Octave prompt a red coloring.

When called from inside a function with the "local" option, the
variable is changed locally for the function and any subroutines it calls.
The original variable value is restored when exiting the function.

Query or set the secondary prompt string. The secondary prompt is
printed when Octave is expecting additional input to complete a
command. For example, if you are typing a for loop that spans several
lines, Octave will print the secondary prompt at the beginning of
each line after the first. The default value of the secondary prompt
string is "> ".

When called from inside a function with the "local" option, the
variable is changed locally for the function and any subroutines it calls.
The original variable value is restored when exiting the function.

Query or set the character string used to prefix output produced
when echoing commands is enabled.
The default value is "+ ".
See Diary and Echo Commands, for a description of echoing commands.

When called from inside a function with the "local" option, the
variable is changed locally for the function and any subroutines it calls.
The original variable value is restored when exiting the function.