2025-08-12 22:06:16 +02:00
|
|
|
let fish_completer = {|spans|
|
|
|
|
|
fish --command $"complete '--do-complete=($spans | str replace --all "'" "\\'" | str join ' ')'"
|
|
|
|
|
| from tsv --flexible --noheaders --no-infer
|
|
|
|
|
| rename value description
|
|
|
|
|
| update value {|row|
|
|
|
|
|
let value = $row.value
|
|
|
|
|
let need_quote = ['\' ',' '[' ']' '(' ')' ' ' '\t' "'" '"' "`"] | any {$in in $value}
|
|
|
|
|
if ($need_quote and ($value | path exists)) {
|
|
|
|
|
let expanded_path = if ($value starts-with ~) {$value | path expand --no-symlink} else {$value}
|
|
|
|
|
$'"($expanded_path | str replace --all "\"" "\\\"")"'
|
|
|
|
|
} else {$value}
|
|
|
|
|
}
|
2025-08-12 21:00:01 +02:00
|
|
|
}
|
|
|
|
|
$env.config = {
|
|
|
|
|
show_banner: false,
|
|
|
|
|
completions: {
|
2025-08-12 22:06:16 +02:00
|
|
|
case_sensitive: false # case-sensitive completions
|
|
|
|
|
quick: true # set to false to prevent auto-selecting completions
|
|
|
|
|
partial: true # set to false to prevent partial filling of the prompt
|
|
|
|
|
algorithm: "fuzzy" # prefix or fuzzy
|
|
|
|
|
external: {
|
|
|
|
|
# set to false to prevent nushell looking into $env.PATH to find more suggestions
|
|
|
|
|
enable: true
|
|
|
|
|
# set to lower can improve completion performance at the cost of omitting some options
|
|
|
|
|
max_results: 100
|
|
|
|
|
completer: $fish_completer
|
2025-08-12 21:00:01 +02:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$env.PATH = ($env.PATH |
|
|
|
|
|
split row (char esep) |
|
|
|
|
|
prepend /home/myuser/.apps |
|
|
|
|
|
append /usr/bin/env
|
|
|
|
|
)
|