2021-07-04 21:32:58 +02:00
|
|
|
let-env STARSHIP_SHELL = "nu"
|
2021-07-10 12:14:42 +02:00
|
|
|
let-env STARSHIP_SESSION_KEY = (random chars -l 16)
|
2022-03-24 20:06:24 +01:00
|
|
|
let-env PROMPT_MULTILINE_INDICATOR = (^::STARSHIP:: prompt --continuation)
|
2021-07-04 21:32:58 +02:00
|
|
|
|
2022-03-24 20:06:24 +01:00
|
|
|
# Does not play well with default character module.
|
|
|
|
# TODO: Also Use starship vi mode indicators?
|
|
|
|
let-env PROMPT_INDICATOR = ""
|
|
|
|
|
|
|
|
let-env PROMPT_COMMAND = {
|
2021-07-04 21:32:58 +02:00
|
|
|
# jobs are not supported
|
2022-10-22 12:17:33 +00:00
|
|
|
let width = (term size).columns
|
2022-04-04 20:03:43 +02:00
|
|
|
^::STARSHIP:: prompt $"--cmd-duration=($env.CMD_DURATION_MS)" $"--status=($env.LAST_EXIT_CODE)" $"--terminal-width=($width)"
|
2021-07-04 21:32:58 +02:00
|
|
|
}
|
2022-03-24 20:06:24 +01:00
|
|
|
|
2022-12-02 19:40:36 +08:00
|
|
|
# Whether we have config items
|
|
|
|
let has_config_items = (not ($env | get -i config | is-empty))
|
|
|
|
|
2023-02-11 14:05:39 +01:00
|
|
|
let-env config = if $has_config_items {
|
2023-01-07 03:13:04 +09:00
|
|
|
$env.config | upsert render_right_prompt_on_last_line true
|
2022-12-02 19:40:36 +08:00
|
|
|
} else {
|
2023-01-07 03:13:04 +09:00
|
|
|
{render_right_prompt_on_last_line: true}
|
|
|
|
}
|
2022-12-02 19:40:36 +08:00
|
|
|
|
|
|
|
let-env PROMPT_COMMAND_RIGHT = {
|
2023-01-07 03:13:04 +09:00
|
|
|
let width = (term size).columns
|
|
|
|
^::STARSHIP:: prompt --right $"--cmd-duration=($env.CMD_DURATION_MS)" $"--status=($env.LAST_EXIT_CODE)" $"--terminal-width=($width)"
|
2022-12-02 19:40:36 +08:00
|
|
|
}
|