~zsh -> Shell
This commit is contained in:
103
Shell/.config/zsh/.zshrc
Normal file
103
Shell/.config/zsh/.zshrc
Normal file
@@ -0,0 +1,103 @@
|
||||
# zshrc -*- mode: sh; lexical-binding: t; -*-
|
||||
|
||||
## ZSH
|
||||
export ZSH_THEME="af-magic"
|
||||
PS1="%F{8}[δx@%m%k] %B%F{14}[%(4~|...|)%3~]%F{white}
|
||||
λ %b%f%k"
|
||||
setopt histignorealldups sharehistory
|
||||
|
||||
autoload -U colors && colors
|
||||
autoload -U compinit
|
||||
HISTSIZE=10000
|
||||
SAVEHIST=10000
|
||||
zstyle ':completion:*' menu select
|
||||
zmodload zsh/complist
|
||||
compinit
|
||||
_comp_options+=(globdots)
|
||||
|
||||
zstyle ':completion:*' auto-description 'specify: %d'
|
||||
zstyle ':completion:*' completer _expand _complete _correct _approximate
|
||||
zstyle ':completion:*' format 'Completing %d'
|
||||
zstyle ':completion:*' group-name ''
|
||||
zstyle ':completion:*' menu select=2 eval "$(dircolors -b)"
|
||||
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
|
||||
zstyle ':completion:*' list-colors ''
|
||||
zstyle ':completion:*' matcher-list '' 'm:{a-z}={A-Z}' 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=* l:|=*'
|
||||
zstyle ':completion:*' menu select=long
|
||||
zstyle ':completion:*' select-prompt %SScrolling active: current selection at %p%s
|
||||
zstyle ':completion:*' use-compctl false
|
||||
zstyle ':completion:*' verbose true
|
||||
zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31'
|
||||
zstyle ':completion:*:kill:*' command 'ps -u $USER -o pid,%cpu,tty,'
|
||||
|
||||
## Vim binds
|
||||
bindkey -v
|
||||
# Menu
|
||||
bindkey -M menuselect 'h' vi-backward-char
|
||||
bindkey -M menuselect 'j' vi-up-line-or-history
|
||||
bindkey -M menuselect 'k' vi-down-line-or-history
|
||||
bindkey -M menuselect 'l' vi-forward-char
|
||||
|
||||
# Cursor
|
||||
function zle-keymap-select {
|
||||
if [[ ${KEYMAP} == vicmd ]] ||
|
||||
[[ $1 = 'block' ]]; then
|
||||
echo -ne '\e[1 q'
|
||||
elif [[ ${KEYMAP} == main ]] ||
|
||||
[[ ${KEYMAP} == viins ]] ||
|
||||
[[ ${KEYMAP} = '' ]] ||
|
||||
[[ $1 = 'beam' ]]; then
|
||||
echo -ne '\e[5 q'
|
||||
fi
|
||||
}
|
||||
|
||||
zle -N zle-keymap-select
|
||||
zle-line-init() {
|
||||
zle -K viins # initiate `vi insert` as keymap (can be removed if `bindkey -V` has been set elsewhere)
|
||||
echo -ne "\e[5 q"
|
||||
}
|
||||
zle -N zle-line-init
|
||||
echo -ne '\e[5 q' # Use beam shape cursor on startup.
|
||||
preexec() { echo -ne '\e[5 q' ;} # Use beam shape cursor for each new prompt.
|
||||
|
||||
## Programming
|
||||
editor() {
|
||||
nohup emacs $@ > /dev/null &
|
||||
}
|
||||
|
||||
gentemplate() {
|
||||
for var in ${@:2}; do
|
||||
case $1 in
|
||||
'c') git clone https://github.com/Oreodave/CTemplate $var;;
|
||||
'cpp') git clone https://github.com/Oreodave/CPPTemplate $var;;
|
||||
'python') git clone https://github.com/Oreodave/PythonTemplate $var;;
|
||||
'node') git clone https://github.com/Oreodave/NodeTemplate $var;;
|
||||
'ard') git clone https://github.com/Oreodave/ArduinoTemplate $var;;
|
||||
'java') git clone https://github.com/Oreodave/JavaTemplate $var;;
|
||||
*) return;;
|
||||
esac
|
||||
rm -rf $var/.git;
|
||||
done
|
||||
}
|
||||
|
||||
gentemplateoff () {
|
||||
for var in ${@:2}; do
|
||||
case $1 in
|
||||
'c') cp -r ~/Code/Templates/CTemplate $var;;
|
||||
'cpp') cp -r ~/Code/Templates/CPPTemplate $var;;
|
||||
'python') cp -r ~/Code/Templates/PythonTemplate $var;;
|
||||
'node') cp -r ~/Code/Templates/NodeTemplate $var;;
|
||||
'ard') cp -r ~/Code/Templates/ArduinoTemplate $var;;
|
||||
'java') cp -r ~/Code/Templates/JavaTemplate $var;;
|
||||
*) return;;
|
||||
esac
|
||||
rm -rf $var/.git;
|
||||
done
|
||||
}
|
||||
|
||||
## NVM config
|
||||
export NVM_DIR="$HOME/.nvm"
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||
|
||||
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||
40
Shell/.zprofile
Normal file
40
Shell/.zprofile
Normal file
@@ -0,0 +1,40 @@
|
||||
# .zprofile -*- mode: sh; lexical-binding: t; -*-
|
||||
|
||||
# Standard Variables
|
||||
export EDITOR="nvim"
|
||||
export TERMINAL="st"
|
||||
export BROWSER="qutebrowser"
|
||||
export PF_INFO="ascii title os memory uptime editor wm shell"
|
||||
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:~/.local/bin:~/.emacs.d/bin:~/.cargo/bin:~/.local/scripts
|
||||
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
|
||||
export DOTNET_CLI_TELEMTRY_OPTOUT=1
|
||||
export force_color_prompt=yes
|
||||
export guile=guile2.2
|
||||
|
||||
# Aliases
|
||||
alias yapf='python2 -m yapf'
|
||||
alias clip="xclip -sel clip"
|
||||
alias paste="xclip -o"
|
||||
alias ls="ls --color=auto"
|
||||
alias l="ls -la"
|
||||
alias md="mkdir"
|
||||
alias fzf="fzf --layout=reverse --height=20"
|
||||
alias suctl="systemctl --user"
|
||||
|
||||
# XDG variables
|
||||
export XDG_CONFIG_HOME="$HOME/.config"
|
||||
export XDG_DATA_HOME="$HOME/.local/share"
|
||||
export XDG_CACHE_HOME="$HOME/.cache"
|
||||
export XDG_RUNTIME_DIR=/run/user/`id -u`
|
||||
|
||||
# Dotfolders
|
||||
export ZDOTDIR="${XDG_CONFIG_HOME:-$HOME/.config}/zsh"
|
||||
export CARGO_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/cargo"
|
||||
|
||||
# Run some programs
|
||||
setxkbmap gb
|
||||
figlet dx
|
||||
/usr/bin/pfetch
|
||||
if systemctl -q is-active graphical.target && [[ ! $DISPLAY && $XDG_VTNR -eq 1 ]]; then
|
||||
exec startx
|
||||
fi
|
||||
Reference in New Issue
Block a user