mirror of
https://github.com/Cian-H/dotfiles.git
synced 2025-12-26 20:51:56 +00:00
This change allows the dotfiles to work with chezmoi (e.g: on windows) and improves grepability with neovim/telescope
56 lines
1.3 KiB
Nu
56 lines
1.3 KiB
Nu
# ~/.config/nushell/init.nu
|
|
#
|
|
# Init module that exports commands and environment variables wanted at startup
|
|
|
|
# commands
|
|
export def egd [...rest] {
|
|
with-env [GIT_EXTERNAL_DIFF 'difft'] { git diff $rest }
|
|
}
|
|
|
|
# we need to export the env we create with load-env
|
|
# because we are `use`-ing here and not `source`-ing this file
|
|
export-env {
|
|
load-env {
|
|
BROWSER: "firefox"
|
|
CARGO_TARGET_DIR: "~/.cargo/target"
|
|
EDITOR: "nvim"
|
|
VISUAL: "nvim"
|
|
PAGER: "less"
|
|
SHELL: "~/.cargo/bin/nu"
|
|
JULIA_NUM_THREADS: nproc
|
|
HOSTNAME: (hostname | split row '.' | first | str trim)
|
|
SHOW_USER: true
|
|
LS_COLORS: ([
|
|
"di=01;34;2;102;217;239"
|
|
"or=00;40;31"
|
|
"mi=00;40;31"
|
|
"ln=00;36"
|
|
"ex=00;32"
|
|
] | str join (char env_sep))
|
|
}
|
|
}
|
|
|
|
# prompt
|
|
PROMPT_COMMAND: { build-prompt }
|
|
|
|
export def build-prompt [] {
|
|
let usr_str = (if $env.SHOW_USER {
|
|
[
|
|
$env.USER
|
|
'@'
|
|
$env.HOSTNAME
|
|
':'
|
|
] | str join
|
|
} else {
|
|
''
|
|
})
|
|
|
|
let pwd_str = (if (pwd | str starts-with $env.HOME) {
|
|
(pwd | str replace $env.HOME '~' | str trim)
|
|
} else {
|
|
pwd
|
|
})
|
|
|
|
[ $usr_str $pwd_str ' ' ] | str join
|
|
}
|