ZSH
Install zim
curl -fsSL https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
# or
wget -nv -O - https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
# Set zsh as default shell
chsh -s /usr/bin/zsh
.zshrc
vim ~/.zshrc
-----
# Alias
alias en = 'export LANG=C'
alias zh = 'export LANG="zh_CN.UTF-8"'
alias gst = 'git status'
alias gcl = 'git clone'
alias gc1 = 'git clone --depth=1'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'
alias la = 'eza -aloF --header --icons --sort=type --time-style "+%Y-%m-%d %H:%M"'
alias ll = 'eza -loF --header --icons --sort=type --time-style "+%Y-%m-%d %H:%M"'
alias ls = 'eza --sort=type --color'
alias bat = 'bat --style=full'
alias ip = "ip -color=auto"
alias grep = "grep --color=auto"
alias diff = "diff --color=auto"
# Editor
export EDITOR = "vim"
# Nali functions
function dig () {
q $1 $2 $3 $4 $5 | nali
}
function ping () {
/usr/bin/ping $1 $2 $3 | nali
}
# Disable Bracketed Paste Mode
unset zle_bracketed_paste
-----
.zimrc
vim ~/.zimrc
-----
zmodule Aloxaf/fzf-tab
zmodule greymd/docker-zsh-completion
zmodule SuLingGG/steeef
zmodule ohmyzsh/ohmyzsh --root plugins/sudo
zmodule ohmyzsh/ohmyzsh --root plugins/z
zmodule ohmyzsh/ohmyzsh --root plugins/extract
-----
Zim configuration
# Added new modules to .zimrc`:
zimfw install
# Removed modules from .zimrc:
zimfw uninstall
# Update modules to latest revisions:
zimfw update
# Upgrade zimfw to latest version:
zimfw upgrade
FISH
Install oh-my-fish
curl https://raw.githubusercontent.com/oh-my-fish/oh-my-fish/master/bin/install | fish
Install omf plugins
omf install z extract sudope
Install fish theme
omf install https://github.com/SuLingGG/theme-kawasaki-ys
Install Dracula theme
mkdir -p ~/.config/fish/themes
wget https://raw.githubusercontent.com/dracula/fish/master/themes/Dracula%20Official.theme -O ~/.config/fish/themes/Dracula \ Official.theme
wget https://raw.githubusercontent.com/dracula/fish/master/conf.d/dracula.fish -O ~/.config/fish/conf.d/dracula.fish
# Add this line to the top of `config.fish`
vim ~/.config/fish/config.fish
-------
# Dracula color theme
fish_config theme choose "Dracula Official"
-------
Full ~/.config/fish/config.fish
content
cat ~/.config/fish/config.fish
-------
# Fish color theme
fish_config theme choose "Dracula Official"
# Alias
alias en = 'export LANG=C'
alias zh = 'export LANG="zh_CN.UTF-8"'
alias gst = 'git status'
alias gcl = 'git clone'
alias gc1 = 'git clone --depth=1'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'
alias bbdown = 'BBDown --config-file ~/.config/bbdown/bbdown.conf'
alias la = 'eza -aloF --header --icons --sort=type --time-style "+%Y-%m-%d %H:%M"'
alias ll = 'eza -loF --header --icons --sort=type --time-style "+%Y-%m-%d %H:%M"'
alias ls = 'eza --sort=type --color'
alias bat = 'bat --style=full'
# Editor
export EDITOR = "vim"
# export LS_COLORS="$(vivid generate molokai)"
# PATH
fish_add_path $HOME /.local/bin
# Atuin
atuin init fish | source
# Nali function
function dig
q $argv | nali
end
function ping
/usr/bin/ping $argv | nali
end
-------
Start tmux when connect ssh
# Zsh
vim ~/.zshrc
-------
if [ -z " $TMUX " ]; then
tmux attach-session || tmux new -s Debian
fi
-------
# Fish
vim ~/.config/fish/config.fish
-------
if status is-interactive
and not set -q TMUX
if tmux has-session -t ArchLinux
exec tmux attach-session -t ArchLinux
else
tmux new-session -s ArchLinux
end
end
-------
Tmux plugins
mkdir -p ~/.tmux/plugins
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
vim ~/.tmux.conf
-------
# Tmux auto save & restore
set -g @continuum-restore 'on'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
-------