You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
167 lines
4.5 KiB
167 lines
4.5 KiB
## Settings |
|
|
|
# Directories |
|
export PATH="$PATH:$HOME/.scripts" |
|
export XDG_CACHE_HOME="$HOME/.cache" |
|
export XDG_CONFIG_HOME="$HOME/.config" |
|
export XDG_DATA_HOME="$HOME/.local/share" |
|
|
|
# Files |
|
export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/gtkrc" |
|
export PLATFORMIO_HOME_DIR="$XDG_DATA_HOME/platformio" |
|
|
|
# Qt5 |
|
export QT_QPA_PLATFORMTHEME="qt5ct" |
|
|
|
# VIM |
|
export EDITOR="vim" |
|
export VIMINIT="source $XDG_CONFIG_HOME/vim/vimrc" |
|
|
|
# X11 |
|
export XINITRC="$XDG_CONFIG_HOME/xorg/xinitrc" |
|
export XAUTHORITY="$XDG_DATA_HOME/xorg/Xauthority" |
|
|
|
# General |
|
export LESSHISTFILE=- |
|
|
|
## Terminal |
|
|
|
stty -ixon |
|
|
|
## ZSH |
|
|
|
autoload -Uz promptinit colors vcs_info compinit history-search-end |
|
|
|
# Prompt |
|
promptinit |
|
colors |
|
setopt INTERACTIVE_COMMENTS |
|
setopt PROMPT_SUBST |
|
|
|
precmd() { |
|
vcs_info |
|
|
|
print -Pn "\e]0;%n@%m %~\a" |
|
} |
|
|
|
# ZSH parameters |
|
USR_HOST="%F{cyan}%n%f@%F{cyan}%m%f" |
|
DIRECTORY="%F{green}%~%f" |
|
ARROW="%(?..%F{red})➤%f" |
|
PROMPT='╭─${USR_HOST} ${DIRECTORY} ${vcs_info_msg_0_} |
|
╰─${ARROW} ' |
|
RPROMPT='%t' |
|
TIMEFMT=$'\nreal\t%*Es\nuser\t%*Us\nsys\t%*Ss' |
|
|
|
# Git |
|
zstyle ':vcs_info:*' enable git |
|
zstyle ':vcs_info:*' check-for-changes true |
|
zstyle ':vcs_info:*' stagedstr "%F{green}A%f" |
|
zstyle ':vcs_info:*' unstagedstr "%F{red}M%f" |
|
zstyle ':vcs_info:*' formats '%F{cyan}(%F{red}%b%F{cyan})%f %c%u' |
|
|
|
# Autocompletion |
|
compinit -d $XDG_CACHE_HOME/zcompdump |
|
zstyle ':completion::complete:*' use-cache 1 |
|
zstyle ':completion::complete:*' cache-path $XDG_CACHE_HOME/zcache |
|
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' 'r:|=*' 'l:|=* r:|=*' |
|
zstyle ':completion:*' list-colors '' |
|
zstyle ':completion:*' menu select |
|
|
|
# Bind keys |
|
zle -N history-beginning-search-backward-end history-search-end |
|
zle -N history-beginning-search-forward-end history-search-end |
|
|
|
bindkey '\eOd' backward-word |
|
bindkey '\eOc' forward-word |
|
bindkey '\e[7~' beginning-of-line |
|
bindkey '\e[3~' delete-char |
|
bindkey '\e[8~' end-of-line |
|
bindkey '\e[A' history-beginning-search-backward-end |
|
bindkey '\e[B' history-beginning-search-forward-end |
|
bindkey '^R' history-incremental-pattern-search-backward |
|
|
|
# History |
|
setopt APPEND_HISTORY |
|
setopt EXTENDED_HISTORY |
|
setopt HIST_FIND_NO_DUPS |
|
setopt HIST_IGNORE_ALL_DUPS |
|
setopt HIST_IGNORE_DUPS |
|
setopt HIST_REDUCE_BLANKS |
|
setopt HIST_SAVE_NO_DUPS |
|
HISTFILE=$ZDOTDIR/.zsh_history |
|
HISTSIZE=10000 |
|
SAVEHIST=10000 |
|
|
|
## Aliases |
|
|
|
# General |
|
alias q="exit" |
|
alias la="ls -laGh --color --group-directories-first" |
|
alias ls="ls --color --group-directories-first" |
|
alias grep="grep --color" |
|
alias md="mkdir -p" |
|
alias rm="rm -i" |
|
alias vim="vim --servername VIM" |
|
alias svim="sudoedit" |
|
alias fuck='sudo $(fc -ln -1)' |
|
|
|
# Config |
|
alias i3b="$EDITOR $XDG_CONFIG_HOME/i3/blocks" |
|
alias i3c="$EDITOR $XDG_CONFIG_HOME/i3/config" |
|
alias vrc="$EDITOR $XDG_CONFIG_HOME/vim/vimrc" |
|
alias xrc="$EDITOR $XDG_CONFIG_HOME/xorg/xinitrc" |
|
alias Xr="$EDITOR $XDG_CONFIG_HOME/xorg/Xresources" |
|
alias zrc="$EDITOR $ZDOTDIR/.zshrc && source $ZDOTDIR/.zshrc" |
|
|
|
alias li3="i3-msg restart" |
|
alias lXr="xrdb $XDG_CONFIG_HOME/xorg/Xresources" |
|
alias lzrc="source $ZDOTDIR/.zshrc" |
|
|
|
# Pacman |
|
alias install="sudo pacman -S --needed" |
|
alias remove="sudo pacman -Rns" |
|
alias update="sudo pacman -Syyu" |
|
alias clean="sudo pacman -Rns $(pacman -Qtdq)" |
|
alias cache="sudo paccache -r -k 2" |
|
alias depend="$HOME/.scripts/alias.sh depend" |
|
|
|
# Programming |
|
alias jdoc="$HOME/.scripts/alias.sh java-doc" |
|
alias jr="$HOME/.scripts/alias.sh java-run" |
|
alias raspbian="$HOME/.scripts/alias.sh raspbian" |
|
alias ser="pio serialports monitor -b 9600" |
|
alias upl="pio run -t upload" |
|
alias qmake="qmake -makefile ../ && make" |
|
|
|
# Git |
|
alias g="git" |
|
alias ga="git add" |
|
alias gs="git status" |
|
alias gc="git commit" |
|
alias gp="git pull" |
|
alias gps="git push" |
|
alias gd="git diff" |
|
alias gdc="git diff --cached" |
|
alias gl="git log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(bold yellow)%d %C(reset)%n'' %C(white)%s%C(reset) %C(dim white)- %an%C(reset)' --all" |
|
|
|
# Scripts |
|
alias mc="$HOME/.scripts/mediacontrol.sh" |
|
alias nw="$HOME/.scripts/network.sh" |
|
alias vp="$HOME/.scripts/vimplugin.sh" |
|
|
|
# Laptop |
|
alias offtouchpad='sudo rmmod i2c_hid' |
|
alias ontouchpad="sudo modprobe i2c_hid && $HOME/.scripts/touchscreen.sh 0" |
|
|
|
# Other |
|
alias man="$HOME/.scripts/alias.sh man" |
|
alias mysql-workbench="GDK_SCALE=1 GDK_DPI_SCALE=1 mysql-workbench 1>/dev/null 2>&1 &; disown" |
|
alias weather="curl -s 'http://wttr.in/dordrecht?q&n&p' | head -n -3" |
|
alias mpvshuffle='mpv "$(xclip -o)" --no-video --shuffle --ytdl-format="bestaudio[ext=m4a]"' |
|
|
|
source $ZDOTDIR/.zshrc_extended |
|
|
|
## Login |
|
|
|
[[ $USER == "rick" ]] && [ "$(tty)" = "/dev/tty1" ] && exec xinit -- vt1 &> /dev/null
|
|
|