# Nushell Environment Config File # # version = "0.100.0" $env.STARSHIP_SHELL = "nu" def create_left_prompt [] { starship prompt --cmd-duration $env.CMD_DURATION_MS $'--status=($env.LAST_EXIT_CODE)' } # Use nushell functions to define your right and left prompt $env.PROMPT_COMMAND = { || create_left_prompt } $env.PROMPT_COMMAND_RIGHT = "" $env.PROMPT_INDICATOR = "" $env.PROMPT_INDICATOR_VI_INSERT = ": " $env.PROMPT_INDICATOR_VI_NORMAL = "〉" $env.PROMPT_MULTILINE_INDICATOR = "::: " # Specifies how environment variables are: # - converted from a string to a value on Nushell startup (from_string) # - converted from a value back to a string when running external commands (to_string) # Note: The conversions happen *after* config.nu is loaded $env.ENV_CONVERSIONS = { "PATH": { from_string: { |s| $s | split row (char esep) | path expand --no-symlink } to_string: { |v| $v | path expand --no-symlink | str join (char esep) } } "XDG_DATA_DIRS": { from_string: { |s| $s | split row (char esep) | path expand --no-symlink } to_string: { |v| $v | path expand --no-symlink | str join (char esep) } } "Path": { from_string: { |s| $s | split row (char esep) | path expand --no-symlink } to_string: { |v| $v | path expand --no-symlink | str join (char esep) } } } # Directories to search for scripts when calling source or use # The default for this is $nu.default-config-dir/scripts $env.NU_LIB_DIRS = [ ($nu.default-config-dir | path join 'scripts') # add /scripts ($nu.data-dir | path join 'completions') # default home for nushell completions ] # Directories to search for plugin binaries when calling register # The default for this is $nu.default-config-dir/plugins $env.NU_PLUGIN_DIRS = [ # add /plugins ($nu.default-config-dir | path join 'plugins') ] $env.PATH = [ ($'($env.HOME)/.local/bin') ($'($env.CARGO_HOME?)' | path join "bin") ($'($env.HOME)/go/bin') ($'($env.HOME)/.rbenv/shims') ($'($env.HOME)/.local/share/JetBrains/Toolbox/scripts') ...($env.PATH | split row (char esep)) '/snap/bin' ] | each {|p| if ($p | path exists) { $p } else { null }} | uniq source ($nu.default-config-dir | path join 'xdg.nu')