Adds fish config as home manager module
This commit is contained in:
parent
f1d155e1c8
commit
636416fdbe
4 changed files with 168 additions and 0 deletions
45
home/modules/fish/default.nix
Normal file
45
home/modules/fish/default.nix
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
{
|
||||
programs.fish = {
|
||||
enable = true;
|
||||
|
||||
functions = {
|
||||
ff = ''
|
||||
set RG_PREFIX "rg --column --line-number --no-heading --color=always --smart-case "
|
||||
set INITIAL_QUERY "$argv"
|
||||
fzf --ansi --disabled --query "$INITIAL_QUERY" \
|
||||
--bind "start:reload:$RG_PREFIX {q}" \
|
||||
--bind "change:reload:sleep 0.1; $RG_PREFIX {q} || true" \
|
||||
--delimiter : \
|
||||
--preview 'bat --color=always {1} --highlight-line {2}' \
|
||||
--preview-window 'up,60%,border-bottom,+{2}+3/3,~3' \
|
||||
--bind 'enter:become(nvim {1} +{2})'
|
||||
'';
|
||||
fish_greeting = "fortune -a";
|
||||
};
|
||||
|
||||
interactiveShellInit = ''
|
||||
fish_config theme choose "Rosé Pine"
|
||||
|
||||
set hn (prompt_hostname)
|
||||
set fish_cursor_default block blink
|
||||
set fish_cursor_insert line blink
|
||||
set fish_cursor_replace_one underscore blink
|
||||
set fish_cursor_visual block
|
||||
set fish_vi_force_cursor 1
|
||||
fish_vi_key_bindings
|
||||
|
||||
fish_add_path /run/current-system/sw/bin
|
||||
fish_add_path /opt/homebrew/bin
|
||||
|
||||
fnm env --use-on-cd --shell fish | source
|
||||
'';
|
||||
|
||||
shellAbbrs = {
|
||||
lg = "lazygit";
|
||||
g = "git";
|
||||
frc = "source ~/.config/fish/**/*.fish";
|
||||
};
|
||||
};
|
||||
|
||||
home.file.".config/fish/themes".source = ./themes;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue