mirror of
https://github.com/m-housh/dotfiles.git
synced 2026-02-15 06:32:40 +00:00
More zsh config
This commit is contained in:
@@ -30,13 +30,18 @@ autoload -Uz colors && colors
|
|||||||
source "$ZDOTDIR/zsh-functions"
|
source "$ZDOTDIR/zsh-functions"
|
||||||
|
|
||||||
zsh_add_file "zsh-aliases"
|
zsh_add_file "zsh-aliases"
|
||||||
zsh_add_file "zsh-prompt"
|
|
||||||
#zsh_add_file "zsh-zinit"
|
|
||||||
|
|
||||||
# Plugins
|
# Plugins
|
||||||
zsh_add_plugin "zsh-users/zsh-autosuggestions"
|
zsh_add_plugin "zsh-users/zsh-autosuggestions"
|
||||||
zsh_add_plugin "zsh-users/zsh-syntax-highlighting"
|
zsh_add_plugin "zsh-users/zsh-syntax-highlighting"
|
||||||
|
zsh_add_plugin "sindresorhus/pure"
|
||||||
|
|
||||||
|
# Prompt
|
||||||
|
fpath+="$ZDOTDIR/plugins/pure"
|
||||||
|
autoload -U promptinit; promptinit
|
||||||
|
prompt pure
|
||||||
|
|
||||||
export EDITOR="nvim"
|
export EDITOR="nvim"
|
||||||
|
|
||||||
|
|
||||||
cat < "$ZDOTDIR/banner"
|
cat < "$ZDOTDIR/banner"
|
||||||
|
|||||||
@@ -1,42 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
## autoload vcs and colors
|
|
||||||
autoload -Uz vcs_info
|
|
||||||
autoload -U colors && colors
|
|
||||||
|
|
||||||
# enable only git
|
|
||||||
zstyle ':vcs_info:*' enable git
|
|
||||||
|
|
||||||
# setup a hook that runs before every ptompt.
|
|
||||||
precmd_vcs_info() { vcs_info }
|
|
||||||
precmd_functions+=( precmd_vcs_info )
|
|
||||||
setopt prompt_subst
|
|
||||||
|
|
||||||
# add a function to check for untracked files in the directory.
|
|
||||||
# from https://github.com/zsh-users/zsh/blob/master/Misc/vcs_info-examples
|
|
||||||
zstyle ':vcs_info:git*+set-message:*' hooks git-untracked
|
|
||||||
#
|
|
||||||
+vi-git-untracked(){
|
|
||||||
if [[ $(git rev-parse --is-inside-work-tree 2> /dev/null) == 'true' ]] && \
|
|
||||||
git status --porcelain | grep '??' &> /dev/null ; then
|
|
||||||
# This will show the marker if there are any untracked files in repo.
|
|
||||||
# If instead you want to show the marker only if there are untracked
|
|
||||||
# files in $PWD, use:
|
|
||||||
#[[ -n $(git ls-files --others --exclude-standard) ]] ; then
|
|
||||||
hook_com[staged]+='!' # signify new files with a bang
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
zstyle ':vcs_info:*' check-for-changes true
|
|
||||||
# zstyle ':vcs_info:git:*' formats " %r/%S %b %m%u%c "
|
|
||||||
zstyle ':vcs_info:git:*' formats " %{$fg[blue]%}(%{$fg[red]%}%m%u%c%{$fg[yellow]%}%{$fg[magenta]%} %b%{$fg[blue]%})"
|
|
||||||
|
|
||||||
# format our main prompt for hostname current folder, and permissions.
|
|
||||||
PROMPT="%B%{$fg[blue]%}[%{$fg[white]%}%n%{$fg[red]%}@%{$fg[white]%}%m%{$fg[blue]%}] %(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜ )%{$fg[cyan]%}%c%{$reset_color%}"
|
|
||||||
# PROMPT="%{$fg[green]%}%n@%m %~ %{$reset_color%}%#> "
|
|
||||||
PROMPT+="\$vcs_info_msg_0_ "
|
|
||||||
PROMPT+=$'\n > '
|
|
||||||
RPROMPT="%{$fg[blue]%}%w%k %T%{$reset_color%}"
|
|
||||||
# TODO look into this for more colors
|
|
||||||
# https://stevelosh.com/blog/2010/02/my-extravagant-zsh-prompt/
|
|
||||||
# also ascii escape codes
|
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
|
|
||||||
### Added by Zinit's installer
|
|
||||||
if [[ ! -f $HOME/.zinit/bin/zinit.zsh ]]; then
|
|
||||||
print -P "%F{33}▓▒░ %F{220}Installing %F{33}DHARMA%F{220} Initiative Plugin Manager (%F{33}zdharma/zinit%F{220})…%f"
|
|
||||||
command mkdir -p "$HOME/.zinit" && command chmod g-rwX "$HOME/.zinit"
|
|
||||||
command git clone https://github.com/zdharma/zinit "$HOME/.zinit/bin" && \
|
|
||||||
print -P "%F{33}▓▒░ %F{34}Installation successful.%f%b" || \
|
|
||||||
print -P "%F{160}▓▒░ The clone has failed.%f%b"
|
|
||||||
fi
|
|
||||||
|
|
||||||
source "$HOME/.zinit/bin/zinit.zsh"
|
|
||||||
autoload -Uz _zinit
|
|
||||||
(( ${+_comps} )) && _comps[zinit]=_zinit
|
|
||||||
|
|
||||||
# Load a few important annexes, without Turbo
|
|
||||||
# (this is currently required for annexes)
|
|
||||||
zinit light-mode for \
|
|
||||||
zinit-zsh/z-a-rust \
|
|
||||||
zinit-zsh/z-a-as-monitor \
|
|
||||||
zinit-zsh/z-a-patch-dl \
|
|
||||||
zinit-zsh/z-a-bin-gem-node
|
|
||||||
|
|
||||||
### End of Zinit's installer chunk
|
|
||||||
|
|
||||||
# configure pure-prompt
|
|
||||||
zinit ice compile '(pure|async).zsh' pick'async.zsh' src'pure.zsh'
|
|
||||||
zinit light sindresorhus/pure
|
|
||||||
|
|
||||||
|
|
||||||
zinit wait lucid for \
|
|
||||||
atinit"ZINIT[COMPINIT_OPTS]=-C; zicompinit; zicdreplay" \
|
|
||||||
zdharma/fast-syntax-highlighting \
|
|
||||||
blockf \
|
|
||||||
zsh-users/zsh-completions \
|
|
||||||
atload"!_zsh_autosuggest_start" \
|
|
||||||
zsh-users/zsh-autosuggestions
|
|
||||||
Reference in New Issue
Block a user