2021-11-03 21:05:39 +08:00
|
|
|
|
echo
|
2021-10-31 10:33:28 +08:00
|
|
|
|
echo '\033[0;36m _ ___ ___ _ '
|
|
|
|
|
echo '\033[0;36m| | | \ \ /\ / / | | |'
|
|
|
|
|
echo '\033[0;36m| |_| |\ V V /| |_| |'
|
|
|
|
|
echo '\033[0;36m \__,_| \_/\_/ \__,_|'
|
2021-09-19 09:06:53 +08:00
|
|
|
|
echo
|
2021-08-16 22:21:31 +08:00
|
|
|
|
echo '\033[0;35m /w '$(awk -F "=" '/^NAME/ {print $2}' < /etc/os-release )
|
|
|
|
|
echo '\033[0;34m @ '$HOST
|
|
|
|
|
|
|
|
|
|
#Install zinit if no zinit is present
|
|
|
|
|
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"
|
|
|
|
|
|
|
|
|
|
zinit ice compile'(pure|async).zsh' pick'async.zsh' src'pure.zsh'
|
|
|
|
|
zinit light sindresorhus/pure
|
|
|
|
|
zinit light zsh-users/zsh-autosuggestions
|
2021-08-29 09:32:43 +08:00
|
|
|
|
zinit light zsh-users/zsh-history-substring-search
|
|
|
|
|
|
2021-08-16 22:21:31 +08:00
|
|
|
|
zinit ice lucid wait
|
|
|
|
|
zinit light zdharma/fast-syntax-highlighting
|
2021-08-23 16:57:24 +08:00
|
|
|
|
zinit ice lucid wait
|
|
|
|
|
zinit light agkozak/zsh-z
|
2021-08-29 09:32:43 +08:00
|
|
|
|
|
2021-08-16 22:21:31 +08:00
|
|
|
|
autoload -Uz _zinit
|
|
|
|
|
(( ${+_comps} )) && _comps[zinit]=_zinit
|
|
|
|
|
|
|
|
|
|
zstyle ':completion:*' auto-description 'specify: %F{magenta}%d%f'
|
|
|
|
|
zstyle ':completion:*' completer _expand _complete _ignored _correct _approximate
|
|
|
|
|
zstyle ':completion:*' expand prefix suffix
|
|
|
|
|
zstyle ':completion:*' file-sort name
|
|
|
|
|
zstyle ':completion:*' format 'Completing %F{magenta}%d%f'
|
|
|
|
|
zstyle ':completion:*' group-name ''
|
|
|
|
|
zstyle ':completion:*' insert-unambiguous true
|
|
|
|
|
zstyle ':completion:*' list-colors ''
|
|
|
|
|
zstyle ':completion:*' list-suffixes true
|
|
|
|
|
zstyle ':completion:*' matcher-list '' 'm:{[:lower:]}={[:upper:]} m:{[:lower:][:upper:]}={[:upper:][:lower:]}' 'r:|[._-]=** r:|=**' 'l:|=* r:|=*'
|
|
|
|
|
zstyle ':completion:*' menu select=1
|
|
|
|
|
zstyle ':completion:*' original true
|
|
|
|
|
zstyle ':completion:*' preserve-prefix '//[^/]##/'
|
|
|
|
|
zstyle ':completion:*' select-prompt %SScrolling active: current selection at %F{blue}%p%s%f %l
|
|
|
|
|
zstyle ':completion:*' verbose true
|
|
|
|
|
zstyle :compinstall filename '/home/juan/.zshrc'
|
|
|
|
|
autoload -Uz compinit
|
|
|
|
|
compinit
|
|
|
|
|
HISTFILE=~/.cache/.zhistory
|
|
|
|
|
HISTSIZE=8192
|
|
|
|
|
SAVEHIST=8192
|
|
|
|
|
setopt autocd extendedglob nomatch notify auto_pushd
|
|
|
|
|
unsetopt beep
|
|
|
|
|
zmodload zsh/complist
|
|
|
|
|
|
|
|
|
|
#vi mone
|
|
|
|
|
bindkey -v
|
|
|
|
|
export KEYTIMEOUT=1
|
|
|
|
|
|
|
|
|
|
#edit in vim
|
|
|
|
|
autoload edit-command-line
|
|
|
|
|
zle -N edit-command-line
|
|
|
|
|
bindkey '' edit-command-line
|
|
|
|
|
|
2021-08-23 16:57:24 +08:00
|
|
|
|
export ZSHZ_CASE=smart
|
|
|
|
|
export ZSHZ_DATA="$HOME/.cache/z"
|
2021-08-19 18:22:02 +08:00
|
|
|
|
zz () {
|
|
|
|
|
cd `z -l $* | fzf | awk '{print $2}'`
|
|
|
|
|
}
|
|
|
|
|
alias zc="z -c"
|
2021-08-18 14:04:17 +08:00
|
|
|
|
|
2021-09-01 14:16:03 +08:00
|
|
|
|
n ()
|
|
|
|
|
{
|
2021-10-17 23:11:38 +08:00
|
|
|
|
if [ -n $NNNLVL ] && [ "${NNNLVL:-0}" -ge 1 ]; then
|
|
|
|
|
echo "nnn is already running"
|
|
|
|
|
return
|
|
|
|
|
fi
|
|
|
|
|
NNN_TMPFILE="${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.lastd"
|
|
|
|
|
nnn "$@"
|
|
|
|
|
if [ -f "$NNN_TMPFILE" ]; then
|
|
|
|
|
. "$NNN_TMPFILE"
|
|
|
|
|
rm -f "$NNN_TMPFILE" > /dev/null
|
|
|
|
|
fi
|
2021-08-16 22:21:31 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# get cheat sheet
|
|
|
|
|
cb () {
|
|
|
|
|
curl -s cht.sh/$* | bat --decorations never
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#start mpv detached
|
|
|
|
|
dmpv () {
|
|
|
|
|
mpv $* &> /dev/null &
|
|
|
|
|
disown
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#config location
|
|
|
|
|
export XDG_CONFIG_HOME=$HOME/.config
|
|
|
|
|
export XDG_CACHE_HOME=$HOME/.cache
|
|
|
|
|
export GOPATH=$HOME/.cache/go
|
|
|
|
|
export LESSHISTFILE=/dev/null
|
|
|
|
|
export LYNX_CFG=$HOME/.config/lynx/lynxrc
|
2021-09-02 13:29:49 +08:00
|
|
|
|
export WINEPREFIX="$HOME/.config/wine"
|
2021-09-19 09:06:53 +08:00
|
|
|
|
export TASKRC=$HOME/.config/task/taskrc
|
2021-08-16 22:21:31 +08:00
|
|
|
|
|
2021-08-25 19:56:23 +08:00
|
|
|
|
#settings for software
|
|
|
|
|
export FZF_DEFAULT_OPTS="--reverse --cycle --height=40% --border sharp --prompt=🔎"
|
2021-09-26 11:28:00 +08:00
|
|
|
|
export GPG_TTY=$(tty) # fixes gpg
|
2021-08-25 19:56:23 +08:00
|
|
|
|
|
2021-08-16 22:21:31 +08:00
|
|
|
|
#colored output
|
|
|
|
|
export LESS_TERMCAP_md=$'\e[01;35m'
|
|
|
|
|
export LESS_TERMCAP_me=$'\e[0m'
|
|
|
|
|
export LESS_TERMCAP_so=$'\e[01;100;37m'
|
|
|
|
|
export LESS_TERMCAP_se=$'\e[0m'
|
|
|
|
|
export LESS_TERMCAP_us=$'\e[01;36m'
|
|
|
|
|
export LESS_TERMCAP_ue=$'\e[0m'
|
|
|
|
|
export MANWIDTH=${MANWIDTH:-78}
|
|
|
|
|
export MANLESS="Manual\ \$MAN_PN\ ?ltline\ %lt?L/%L.:byte\ %bB?s/%s..?\:?pB\ %pB\\%.."
|
|
|
|
|
export LESS="-RSM~"
|
|
|
|
|
|
|
|
|
|
#local path
|
2021-09-26 11:01:11 +08:00
|
|
|
|
export PATH="${PATH}:${HOME}/.local/bin:${HOME}/.scripts:${HOME}/cargo/bin:${HOME}/.cache/go/bin"
|
2021-08-19 18:10:24 +08:00
|
|
|
|
export MANPATH="${MANPATH}:${HOME}/.local/share/man"
|
2021-08-16 22:21:31 +08:00
|
|
|
|
|
|
|
|
|
#ccache support
|
|
|
|
|
export USE_CCACHE=1
|
|
|
|
|
export PATH="/usr/lib/ccache/bin${PATH:+:}$PATH"
|
|
|
|
|
|
2021-09-03 23:08:46 +08:00
|
|
|
|
alias b='bat -n'
|
2021-08-16 22:21:31 +08:00
|
|
|
|
alias btctl='bluetoothctl'
|
|
|
|
|
alias cp='cp -iv'
|
|
|
|
|
alias df='df -h'
|
|
|
|
|
alias diff='diff --color=auto'
|
|
|
|
|
alias e='emerge'
|
|
|
|
|
alias free='free -h'
|
|
|
|
|
alias g='git'
|
|
|
|
|
alias grep='grep --color=auto'
|
2021-09-01 14:16:03 +08:00
|
|
|
|
alias info="info --vi-keys"
|
2021-08-16 22:21:31 +08:00
|
|
|
|
alias ip='ip -color=auto'
|
2021-10-22 18:21:13 +08:00
|
|
|
|
alias la='ls -la --color=auto --human-readable'
|
2021-10-10 09:50:43 +08:00
|
|
|
|
alias ll='ls -l --color=auto --human-readable'
|
2021-10-06 21:43:21 +08:00
|
|
|
|
alias ls='ls --color=auto'
|
2021-08-20 09:24:53 +08:00
|
|
|
|
alias nya='doas'
|
2021-09-01 14:16:03 +08:00
|
|
|
|
alias p='python'
|
2021-08-16 22:21:31 +08:00
|
|
|
|
alias se='doas emerge'
|
|
|
|
|
alias sp='doas pacman'
|
|
|
|
|
alias ssh='TERM="xterm-256color" ssh'
|
|
|
|
|
alias sv='doasedit.sh'
|
2021-09-20 14:21:56 +08:00
|
|
|
|
alias t='task'
|
2021-08-16 22:21:31 +08:00
|
|
|
|
alias v='nvim'
|
|
|
|
|
alias vw='nvim -c VimwikiIndex'
|
2021-09-01 14:16:03 +08:00
|
|
|
|
alias yt-dl='youtube-dl --sub-lang en,zh-Hant --audio-format best'
|
2021-08-16 22:21:31 +08:00
|
|
|
|
|
|
|
|
|
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
|
2021-08-20 09:24:53 +08:00
|
|
|
|
|
|
|
|
|
bindkey ' ' magic-space
|