#### 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)

> 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 `"\s:\#> "`. 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.

> See also: PS2, PS4.

— Built-in Function: val = PS2 ()
— Built-in Function: old_val = PS2 (new_val)

> 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 `"> "`.

> See also: PS1, PS4.

— Built-in Function: val = PS4 ()
— Built-in Function: old_val = PS4 (new_val)

> 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.

> See also: echo, echo_executing_commands, PS1, PS2.