10 Changing the Prompt

By default the poke command line interface uses a very simple prompt when waiting for commands:

(poke) _

This prompt never changes.

However, it is possible to customize the prompt by defining a function called pk_prompt, that gets no arguments and returns a string. poke invokes that function every time it needs to print the prompt; the default version of the function just returns "(poke) ").

This is an example of customization:

fun pk_prompt = string:
{
  var prompt = "(";

  prompt += get_endian == ENDIAN_BIG ? "big:" : "little:";
  try
    prompt += iohandler (get_ios);
  catch if E_no_ios
    {
      prompt += "poke";
    };

  return prompt + ") ";
}

Once the function above gets defined, the prompt will reflect both the current endianness and the currently selected IO space, if there is any:

(big:poke) .file /bin/ls
(big:/bin/ls)