1
1
mirror of https://github.com/rywng/dotfiles.git synced 2024-10-30 15:41:50 +08:00
dotfiles/.zshrc

123 lines
4.4 KiB
Bash
Raw Normal View History

2022-06-25 21:26:38 +08:00
cat ~/.config/splash 2> /dev/null || true
echo
echo '\033[0;35m /w '$(awk -F "=" '/^NAME/ {print $2}' 2> /dev/null < /etc/os-release || uname -o)
echo '\033[0;34m @ '$HOST
2023-11-23 12:18:23 +08:00
# Install zinit if no zinit is present
2022-06-25 21:26:38 +08:00
ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git"
if [[ ! -f $ZINIT_HOME/zinit.zsh ]]; then
2023-11-23 12:18:23 +08:00
print -P "%F{33}▓▒░ %F{220}Installing %F{33}DHARMA%F{220} Initiative Plugin Manager (%F{33}zdharma/zinit%F{220})…%f"
mkdir -p "$(dirname $ZINIT_HOME)"
git clone https://github.com/zdharma-continuum/zinit.git "$ZINIT_HOME"
print -P "%F{33}▓▒░ %F{34}Installation successful.%f%b" || \
print -P "%F{160}▓▒░ The clone has failed.%f%b"
2022-06-25 21:26:38 +08:00
fi
source "$ZINIT_HOME/zinit.zsh"
2023-11-23 12:18:23 +08:00
# Zinit packages
zinit wait lucid for \
zdharma-continuum/fast-syntax-highlighting \
agkozak/zsh-z \
zpm-zsh/colorize \
juancldcmt/shortify.zsh
zinit ice as"command" from"gh-r" \
atclone"./starship init zsh > init.zsh; ./starship completions zsh > _starship" \
atpull"%atclone" src"init.zsh"
zinit light starship/starship
2022-06-25 21:26:38 +08:00
zinit light zsh-users/zsh-autosuggestions
zinit light hlissner/zsh-autopair
zinit light zsh-users/zsh-history-substring-search
2023-07-17 21:04:25 +08:00
zinit light zsh-users/zsh-completions
2022-06-25 21:26:38 +08:00
autoload -Uz _zinit
(( ${+_comps} )) && _comps[zinit]=_zinit
# The following lines were added by compinstall
zstyle ':completion:*' auto-description '%F{green}Specify%f: %F{cyan}%d%f'
zstyle ':completion:*' completer _oldlist _expand _complete _ignored _match _correct _approximate _prefix
zstyle ':completion:*' completions 1
zstyle ':completion:*' expand prefix suffix
2022-09-20 13:03:40 +08:00
zstyle ':completion:*' file-sort name
2022-06-25 21:26:38 +08:00
zstyle ':completion:*' format '%F{green}Completing%f %F{yellow}%d%f'
zstyle ':completion:*' glob 1
zstyle ':completion:*' group-name ''
zstyle ':completion:*' ignore-parents parent pwd ..
zstyle ':completion:*' insert-unambiguous true
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
zstyle ':completion:*' list-prompt %S%F{green}At %p%f: Hit TAB for more, or the character to insert%s
2022-09-22 22:59:13 +08:00
zstyle ':completion:*' matcher-list '' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}' 'r:|[._-]=** r:|=**' 'l:|=* r:|=*'
2022-09-20 13:03:40 +08:00
zstyle ':completion:*' max-errors 16 numeric
2022-06-25 21:26:38 +08:00
zstyle ':completion:*' menu select=1
zstyle ':completion:*' original false
zstyle ':completion:*' preserve-prefix '//[^/]##/'
zstyle ':completion:*' prompt '%F{green}Completing%f, with %F{red}%e%f errors'
zstyle ':completion:*' select-prompt %S%F{green}Scrolling%f active: current selection at %F{blue}%p%f%s
zstyle ':completion:*' substitute 1
zstyle ':completion:*' use-compctl true
zstyle :compinstall filename ~/.zshrc
autoload -Uz compinit
compinit
# End of lines added by compinstall
# Lines configured by zsh-newuser-install
HISTFILE=~/.cache/zhistory
HISTSIZE=8192
SAVEHIST=8192
setopt autocd extendedglob nomatch notify auto_pushd
unsetopt beep
bindkey -v
# End of lines configured by zsh-newuser-install
#edit in vim
2022-07-09 21:33:59 +08:00
export KEYTIMEOUT=1
2022-06-25 21:26:38 +08:00
autoload edit-command-line
zle -N edit-command-line
bindkey '' edit-command-line
zmodload zsh/complist
bindkey -M menuselect 'h' vi-backward-char
bindkey -M menuselect 'k' vi-up-line-or-history
bindkey -M menuselect 'l' vi-forward-char
bindkey -M menuselect 'j' vi-down-line-or-history
bindkey '^[[A' history-substring-search-up
bindkey '^[[B' history-substring-search-down
bindkey '' history-substring-search-up
bindkey '' history-substring-search-down
bindkey ' ' magic-space
bindkey '' autosuggest-execute
#config location
export GOPATH=$HOME/.cache/go
export LESSHISTFILE=/dev/null
export LYNX_CFG=$HOME/.config/lynx/lynxrc
export XDG_CACHE_HOME=$HOME/.cache
export XDG_CONFIG_HOME=$HOME/.config
#settings for software
export FZF_DEFAULT_OPTS="--reverse --cycle --height=40% --border sharp --prompt=🔎"
export GPG_TTY=$(tty) # fixes gpg
2023-02-10 15:26:53 +08:00
export JDK_HOME=/usr/lib/jvm/openjdk-17
export _JAVA_AWT_WM_NONREPARENTING=1
2023-11-23 12:18:23 +08:00
export HISTORY_SUBSTRING_SEARCH_FUZZY=1
2022-06-25 21:26:38 +08:00
#colored output
export MANWIDTH=${MANWIDTH:-78}
2023-11-23 12:18:23 +08:00
test -n "$LS_COLORS" || eval $(dircolors) || echo 'Warning: Unable to set LS_COLORS'
2022-06-25 21:26:38 +08:00
export MANLESS="Manual\ \$MAN_PN\ ?ltline\ %lt?L/%L.:byte\ %bB?s/%s..?\:?pB\ %pB\\%.."
2023-11-23 12:18:23 +08:00
export LESS="--use-color -RSM~"
2022-06-25 21:26:38 +08:00
#local path
2023-11-21 10:06:26 +08:00
export PATH="${PATH}:${HOME}/.local/bin:${HOME}/.scripts:${HOME}/cargo/bin:${HOME}/.cache/go/bin:${HOME}/.local/share/nvim/mason/bin"
2022-06-25 21:26:38 +08:00
export MANPATH="${MANPATH}:${HOME}/.local/share/man"
#ccache support
export USE_CCACHE=1
export PATH="/usr/lib/ccache/bin${PATH:+:}$PATH"