feat: add zsh config files and setup script
This commit is contained in:
commit
72eb9d6c72
34
setup.sh
Executable file
34
setup.sh
Executable file
|
@ -0,0 +1,34 @@
|
||||||
|
# /bin/sh
|
||||||
|
|
||||||
|
verify () {
|
||||||
|
yesexpr="^[yY1+是]|^\s*$"
|
||||||
|
while true; do
|
||||||
|
read -p "$1" yn
|
||||||
|
if [[ "$yn" =~ $yesexpr ]]; then
|
||||||
|
return 1
|
||||||
|
else
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
# ---------------- zshrc start ----------------
|
||||||
|
echo "setting up zsh"
|
||||||
|
if [ -e ~/.zshrc ]
|
||||||
|
then
|
||||||
|
echo "~/.zshrc exists, backup to ./zshrc_backup"
|
||||||
|
mv ~/.zshrc ./zshrc_backup
|
||||||
|
fi
|
||||||
|
ln ./zshrc ~/.zshrc
|
||||||
|
|
||||||
|
# comment the following line if not running on arch-based linux
|
||||||
|
verify "Are you running on arch-based linux? (Y/n)"
|
||||||
|
if [[ $? == 1 ]]
|
||||||
|
then
|
||||||
|
sudo pacman -Syu zsh-syntax-highlighting
|
||||||
|
else
|
||||||
|
echo -e "\e[1;31mPlease find zsh-syntax-highlighting https://github.com/zsh-users/zsh-syntax-highlighting suitable for your distro\e[0m"
|
||||||
|
fi
|
||||||
|
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.zsh/zsh-autosuggestions
|
||||||
|
git clone https://github.com/qndydyhm/zsh-ssh ~/.zsh/zsh-ssh
|
||||||
|
# ---------------- zshrc end ----------------
|
46
zshrc
Normal file
46
zshrc
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
# Lines configured by zsh-newuser-install
|
||||||
|
HISTFILE=~/.histfile
|
||||||
|
HISTSIZE=10000
|
||||||
|
SAVEHIST=10000
|
||||||
|
bindkey -v
|
||||||
|
# End of lines configured by zsh-newuser-install
|
||||||
|
# The following lines were added by compinstall
|
||||||
|
zstyle :compinstall filename '~/.zshrc'
|
||||||
|
|
||||||
|
autoload -Uz compinit
|
||||||
|
compinit
|
||||||
|
# End of lines added by compinstall
|
||||||
|
|
||||||
|
setopt HIST_IGNORE_DUPS
|
||||||
|
|
||||||
|
PROMPT='%F{#f0c0e0}%n%f@%F{#c0f0e0}%m%f %F{#c0e0f0}%B%~%b%f %# '
|
||||||
|
RPROMPT='[%F{yellow}%?%f]'
|
||||||
|
|
||||||
|
# Auto refresh package name
|
||||||
|
zstyle ':completion:*' rehash true
|
||||||
|
|
||||||
|
# Syntax highlight (need zsh-syntax-highlighting package)
|
||||||
|
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||||
|
|
||||||
|
# Auto suggestion https://github.com/zsh-users/zsh-autosuggestions
|
||||||
|
source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
|
||||||
|
|
||||||
|
# SSH auto completion https://github.com/qndydyhm/zsh-ssh
|
||||||
|
source ~/.zsh/zsh-ssh/zsh-ssh.zsh
|
||||||
|
|
||||||
|
# History search
|
||||||
|
autoload -U history-search-end
|
||||||
|
zle -N history-beginning-search-backward-end history-search-end
|
||||||
|
zle -N history-beginning-search-forward-end history-search-end
|
||||||
|
bindkey "^[[A" history-beginning-search-backward-end
|
||||||
|
bindkey "^[[B" history-beginning-search-forward-end
|
||||||
|
|
||||||
|
alias ls='ls --color=always'
|
||||||
|
alias ll='ls --color=always -lh'
|
||||||
|
alias ra='ranger'
|
||||||
|
alias open='xdg-open'
|
||||||
|
alias vimf='vim "$(fzf --height 40%)"'
|
||||||
|
|
||||||
|
#
|
||||||
|
zstyle ':completion:*:(ssh|scp|ftp|sftp):*' hosts $hosts
|
||||||
|
zstyle ':completion:*:(ssh|scp|ftp|sftp):*' users $users
|
Loading…
Reference in New Issue
Block a user