summaryrefslogtreecommitdiff
path: root/common/home/programs/zsh/default.nix
blob: ef08f7f31c30095f3604f28008de49631546171a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{ ... }:
{
  enable = true;
  syntaxHighlighting.enable = true;
  enableCompletion = true;
  defaultKeymap = "viins";
  autocd = true;
  shellAliases = {
    v = "nvim";
  };
  initExtra = ''
    	prompt_git_status() {
    		if [ -n "$(git branch 2>/dev/null)" ]; then
    			sign="";
    		[[ -n "$(git status -s)" ]] && sign="";
    		git_branch=$(git branch);
    		echo "%F{5}%f%F{0}%K{5}''${sign} ''${git_branch##*\* }%k%F{5}%k";
    		fi;
    	}

    update_prompt() {
    	export RPROMPT="$(prompt_git_status)"
    }

    PROMPT="%F{cyan}%F{0}%K{cyan}%n%k%f%F{cyan}%k%f %F{cyan}%f%k%K{cyan}%F{0}%m%k%f%F{cyan}%k %f%k%F{magenta}%F{0}%K{magenta}%~%f%k%F{magenta}%k%f "
  '';
}