zsh/.zshrc (view raw)
1# __
2# ____ _____/ /_ __________
3# /_ / / ___/ __ \/ ___/ ___/
4# _ / /_(__ ) / / / / / /__
5#(_)___/____/_/ /_/_/ \___/
6#
7
8# export thingys
9export ZSH=/home/icyphox/.oh-my-zsh
10export BROWSER=/usr/bin/firefox-nightly
11export EDITOR=/usr/bin/nvim
12export SSH_KEY_PATH="~/.ssh/id_rsa"
13export GOROOT=$HOME/go
14export PATH=$PATH:$GOROOT/bin
15export PATH=$PATH:$HOME/bin
16export GPG_TTY=$(tty)
17export INPUTRC=~/.inputrc
18
19# theme specefic
20ZSH_THEME="simple"
21
22# plugins
23plugins=(git zsh-autosuggestions zsh-syntax-highlighting)
24
25# sourced scripts
26source $ZSH/oh-my-zsh.sh
27source /usr/share/autojump/autojump.zsh
28
29# aliases
30alias icysite="cd ~/leet/icysite"
31alias scrot="~/bin/scrot.sh"
32alias icyinfo="~/bin/icyinfo.sh"
33alias gah='sudo $(fc -ln -1)'
34alias nvime='nvim ~/.config/nvim/init.vim'
35alias up="~/bin/icyup.sh"
36alias vim="nvim"
37alias vi="nvim"
38alias sxiv="sxiv -b"
39alias todo="todo.sh"
40alias ls="exa"
41alias la="exa -al"
42
43# end and home keys
44bindkey "^[[1~" beginning-of-line
45bindkey "^[[4~" end-of-line
46
47[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
48
49# Defer initialization of nvm until nvm, node or a node-dependent command is
50# run. Ensure this block is only run once if .bashrc gets sourced multiple times
51# by checking whether __init_nvm is a function.
52if [ -s "$HOME/.nvm/nvm.sh" ] && [ ! "$(type __init_nvm)" = function ]; then
53 export NVM_DIR="$HOME/.nvm"
54 [ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"
55 declare -a __node_commands=('nvm' 'node' 'npm' 'yarn' 'gulp' 'grunt' 'webpack')
56 function __init_nvm() {
57 for i in "${__node_commands[@]}"; do unalias $i; done
58 . "$NVM_DIR"/nvm.sh
59 unset __node_commands
60 unset -f __init_nvm
61 }
62 for i in "${__node_commands[@]}"; do alias $i='__init_nvm && '$i; done
63fi
64
65# base16-shell
66BASE16_SHELL=$HOME/.config/base16-shell/
67[ -n "$PS1" ] && [ -s $BASE16_SHELL/profile_helper.sh ] && eval "$($BASE16_SHELL/profile_helper.sh)"
68