diff --git a/.gitignore b/.gitignore index a53da3b3e..63dbaf729 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,3 @@ -# custom files -custom/ - # temp files directories cache/ log/ diff --git a/custom/plugins/arc/arc.plugin.zsh b/custom/plugins/arc/arc.plugin.zsh new file mode 100644 index 000000000..3f520314c --- /dev/null +++ b/custom/plugins/arc/arc.plugin.zsh @@ -0,0 +1,19 @@ +function arc_prompt_info() { + arcStatus=$(arc status 2>/dev/null) + arcBranch=$(echo $arcStatus | sed -n 's/^On branch \(.*\)$/\1/p') + arcStatus=$([ -z "$(arc status --short 2>/dev/null)" ] && echo "true" || echo "false") + arcBranchPrefix="${ARC_BRANCH_PREFIX:-}" + arcBranchSuffix="${ARC_BRANCH_SUFFIX:-}" + arcBranchOutput="" + if [[ -n "$arcBranch" ]]; then + arcBranchOutput=" $arcBranchPrefix$arcBranch" + if [[ "$arcStatus" == "true" ]]; then + arcBranchOutput+="${ARC_PROMPT_CLEAN:-}" + else + arcBranchOutput+="${ARC_PROMPT_DIRTY:-}" + fi + arcBranchOutput+="$arcBranchSuffix" + fi + + echo $arcBranchOutput +} \ No newline at end of file diff --git a/custom/themes/cbist.zsh-theme b/custom/themes/cbist.zsh-theme new file mode 100644 index 000000000..a3b9b0035 --- /dev/null +++ b/custom/themes/cbist.zsh-theme @@ -0,0 +1,7 @@ +PROMPT='%B%F{1}[%D{%Y-%m-%d %H:%M:%S}]%b%F{226} %~%f$(arc_prompt_info): ' + +ARC_BRANCH_PREFIX="%{$fg_bold[blue]%}(" +ARC_BRANCH_SUFFIX="%{$fg_bold[blue])%f%b%}" +ARC_PROMPT_DIRTY=" %{$fg[red]%}✗%f" +ARC_PROMPT_CLEAN=" %{$fg[green]%}✔%f" +