move zshrc into home-manager config
This commit is contained in:
parent
903e30368a
commit
1158a1ecfe
|
@ -378,4 +378,70 @@ in
|
||||||
};
|
};
|
||||||
lfs.enable = true;
|
lfs.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# shell config
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
enableSyntaxHighlighting = true;
|
||||||
|
history.ignoreSpace = true;
|
||||||
|
initExtra = ''
|
||||||
|
# Uncomment following line if you want red dots to be displayed while waiting for completion
|
||||||
|
COMPLETION_WAITING_DOTS="true"
|
||||||
|
### Fix slowness of pastes with zsh-syntax-highlighting.zsh
|
||||||
|
pasteinit() {
|
||||||
|
OLD_SELF_INSERT=$\{$\{(s.:.)widgets[self-insert]}[2,3]}
|
||||||
|
zle -N self-insert url-quote-magic # I wonder if you'd need `.url-quote-magic`?
|
||||||
|
}
|
||||||
|
|
||||||
|
pastefinish() {
|
||||||
|
zle -N self-insert $OLD_SELF_INSERT
|
||||||
|
}
|
||||||
|
zstyle :bracketed-paste-magic paste-init pasteinit
|
||||||
|
zstyle :bracketed-paste-magic paste-finish pastefinish
|
||||||
|
|
||||||
|
# automatic rehash of path completion
|
||||||
|
zstyle ':completion:*' rehash true
|
||||||
|
|
||||||
|
eval "$(${pkgs.thefuck}/bin/thefuck --alias)"
|
||||||
|
|
||||||
|
## helper functions
|
||||||
|
nixify() {
|
||||||
|
if [ ! -e ./.envrc ]; then
|
||||||
|
echo "eval \"$(lorri direnv)\"" > .envrc
|
||||||
|
direnv allow
|
||||||
|
fi
|
||||||
|
if [ ! -e shell.nix ]; then
|
||||||
|
cat > shell.nix <<'EOF'
|
||||||
|
with import <nixpkgs> {};
|
||||||
|
mkShell {
|
||||||
|
buildInputs = [
|
||||||
|
bashInteractive
|
||||||
|
];
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
${EDITOR:-vim} default.nix
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
binpath() {
|
||||||
|
realpath $(${pkgs.which}/bin/which $1)
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
|
||||||
|
|
||||||
|
oh-my-zsh = {
|
||||||
|
enable = true;
|
||||||
|
theme = "bira";
|
||||||
|
plugins = [ "git" "python" "systemd" "gpg-agent" "zsh-syntax-highlighting"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
home.shellAliases = {
|
||||||
|
ip = "ip --color";
|
||||||
|
ipb = "ip --color --brief";
|
||||||
|
ll = "ls -l";
|
||||||
|
wavesynth = "nix-shell -p sox --run 'play -n synth brownnoise synth pinknoise mix synth 0 0 0 15 40 80 trapezium amod 0.2 20'";
|
||||||
|
};
|
||||||
|
home.sessionVariables = {
|
||||||
|
EDITOR = "vim";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue