mirror of
https://github.com/Cian-H/dotfiles.git
synced 2025-12-22 19:31:57 +00:00
Fixed shell prompt config property
This commit is contained in:
@@ -5,6 +5,7 @@
|
|||||||
use ~/.config/nushell/prompt.nu *
|
use ~/.config/nushell/prompt.nu *
|
||||||
|
|
||||||
# Use nushell functions to define your right and left prompt
|
# Use nushell functions to define your right and left prompt
|
||||||
|
$env.STARSHIP_SHELL = "nu"
|
||||||
$env.PROMPT_COMMAND = {|| create_left_prompt }
|
$env.PROMPT_COMMAND = {|| create_left_prompt }
|
||||||
$env.PROMPT_COMMAND_RIGHT = {|| create_right_prompt }
|
$env.PROMPT_COMMAND_RIGHT = {|| create_right_prompt }
|
||||||
|
|
||||||
|
|||||||
@@ -1,24 +1,21 @@
|
|||||||
def get_env [s: string]: string -> string {
|
def get_env [s: string]: string -> any {
|
||||||
try { $env | get --ignore-errors $s } catch { "" }
|
try { $env | get --ignore-errors $s } catch { "" }
|
||||||
}
|
}
|
||||||
|
|
||||||
def get_status []: nothing -> string {
|
export def was_successful []: nothing -> bool {
|
||||||
match (get_env "LAST_EXIT_CODE") {
|
(get_env "LAST_EXIT_CODE") == 0
|
||||||
"0" => "0",
|
|
||||||
_ => "1",
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export def create_left_prompt []: nothing -> string {
|
export def create_left_prompt []: nothing -> string {
|
||||||
^starship prompt --cmd-duration (get_env "CMD_DURATION_MS") --status (get_status) --terminal-width (term size).columns
|
^starship prompt --cmd-duration (get_env "CMD_DURATION_MS") $'--status=($env.LAST_EXIT_CODE)' --terminal-width (term size).columns
|
||||||
}
|
}
|
||||||
|
|
||||||
export def create_right_prompt []: nothing -> string {
|
export def create_right_prompt []: nothing -> string {
|
||||||
^starship prompt --right --cmd-duration (get_env "CMD_DURATION_MS") --status (get_status) --terminal-width (term size).columns
|
^starship prompt --right --cmd-duration (get_env "CMD_DURATION_MS") $'--status=($env.LAST_EXIT_CODE)' --terminal-width (term size).columns
|
||||||
}
|
}
|
||||||
|
|
||||||
export def create_continuation_prompt []: nothing -> string {
|
export def create_continuation_prompt []: nothing -> string {
|
||||||
^starship prompt --continuation --cmd-duration (get_env "CMD_DURATION_MS") --status (get_status) --terminal-width (term size).columns
|
^starship prompt --continuation --cmd-duration (get_env "CMD_DURATION_MS") $'--status=($env.LAST_EXIT_CODE)' --terminal-width (term size).columns
|
||||||
}
|
}
|
||||||
|
|
||||||
def parse_ms_to_human_readable [ms: string]: string -> string {
|
def parse_ms_to_human_readable [ms: string]: string -> string {
|
||||||
@@ -41,12 +38,12 @@ def parse_ms_to_human_readable [ms: string]: string -> string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export def create_transient_prompt_left []: nothing -> string {
|
export def create_transient_prompt_left []: nothing -> string {
|
||||||
if (get_env "LAST_EXIT_CODE") == "0" {
|
if (was_successful) {
|
||||||
$"(ansi green_bold)(ansi reset)"
|
$"(ansi green_bold)(ansi reset)"
|
||||||
} else {
|
} else {
|
||||||
$"(ansi red_bold)(ansi reset)"
|
$"(ansi red_bold)(ansi reset)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
export def create_transient_prompt_indicator []: nothing -> string {
|
export def create_transient_prompt_indicator []: nothing -> string {
|
||||||
$"(ansi blue_bold) (parse_ms_to_human_readable (get_env "CMD_DURATION_MS")) (if (get_env "LAST_EXIT_CODE") == "0" { ansi green_bold } else { ansi red_bold })(ansi reset) "
|
$"(ansi blue_bold) (parse_ms_to_human_readable (get_env "CMD_DURATION_MS")) (if (was_successful) { ansi green_bold } else { ansi red_bold })(ansi reset) "
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user