###########
# EXPORTS #
###########

export GOPATH=~/go
export PATH="$PATH:$GOPATH/bin"
export PATH=~/opt/:$PATH

export PATH=$PATH:/usr/bin/node

export LV2_PATH=~/.lv2

#export NVM_DIR="$HOME/.nvm"
#[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
#[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"


#echo "0" | sudo tee  /sys/module/hid_apple/parameters/fnmode

###########
# ALIASES #
###########

alias fixit='echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p'
alias lll='ls -Alhtr' # sorts files in dir by date 
alias cl='clear'
alias lz='lazygit'

alias reload-polybar='/home/null/Documents/scripts/docked_polybars.sh'

alias btn-light='echo 1 | sudo tee /sys/class/leds/tpacpi::kbd_backlight/brightness'
alias btn-light-off='echo 0 | sudo tee /sys/class/leds/tpacpi::kbd_backlight/brightness'

alias dc='docker-compose '

alias mi='micro '
alias nicer='python -m json.tool'
alias ccat='pygmentize -g -O style=colorful,linenos=1'
alias catline='pygmentize -g -O style=colorful,linenos=1'
alias xx='sudo systemctl start mariadb.service'
alias xxx='sudo systemctl stop mariadb.service'
alias zz='screen -dmS mongod mongod'
alias shh='sudo rmmod pcspkr'

alias cod='conda deactivate'

alias dock_load="sh /home/null/Documents/scripts/reconfig_to_docked.sh"

alias gwa-staging='git add . && git commit -m "new UI staging build" && git push'
alias gwa-production='git add . && git commit -m "new UI production build" && git push'


#############
# FUNCTIONS #
#############

function portkill { kill  $(lsof -t -i:$1) }
function getport() { lsof -t -i:$1 }

function into() {
   docker exec -it $1 /bin/bash
}

function intoo() {
   docker exec -it $1 /bin/sh
}


function cmmt() {
   git commit -m "$1"
}


function hist() {
   history | grep $1
}

function gitter() {
   git add . && git commit -m "$1" && git push
}

function gittag() {
   git tag -a $1 -m 'version $1' && git push origin $1
}

function timezsh() {
  shell=${1-$SHELL}
  for i in $(seq 1 10); do /usr/bin/time $shell -i -c exit; done
}



########
# MISC #
########

# If you come from bash you might have to change your $PATH.
export PATH=$HOME/bin:/usr/local/bin:$PATH

# Path to your oh-my-zsh installation.
export ZSH=/home/null/.oh-my-zsh

# Set name of the theme to load. Optionally, if you set this to "random"
# it'll load a random theme each time that oh-my-zsh is loaded.
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
#ZSH_THEME="xiong-chiamiov"
#ZSH_THEME="crcandy"
ZSH_THEME="sonicradish"

# Uncomment the following line to use case-sensitive completion.
# CASE_SENSITIVE="true"

# Uncomment the following line to use hyphen-insensitive completion. Case
# sensitive completion must be off. _ and - will be interchangeable.
# HYPHEN_INSENSITIVE="true"

# Uncomment the following line to disable bi-weekly auto-update checks.
# DISABLE_AUTO_UPDATE="true"

# Uncomment the following line to change how often to auto-update (in days).
# export UPDATE_ZSH_DAYS=13

# Uncomment the following line to disable colors in ls.
# DISABLE_LS_COLORS="true"

# Uncomment the following line to disable auto-setting terminal title.
# DISABLE_AUTO_TITLE="true"

# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"

# Uncomment the following line to display red dots whilst waiting for completion.
# COMPLETION_WAITING_DOTS="true"

# Uncomment the following line if you want to disable marking untracked files
# under VCS as dirty. This makes repository status check for large repositories
# much, much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"

# Uncomment the following line if you want to change the command execution time
# stamp shown in the history command output.
# The optional three formats: "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
HIST_STAMPS="yyyy-mm-dd"

# Would you like to use another custom folder than $ZSH/custom?
# ZSH_CUSTOM=/path/to/new-custom-folder

# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
#plugins=(git docker node yarn sudo ng wd)


#
#	P L U G I N S
#

plugins=(git sudo screen rsync docker docker-compose zsh-autosuggestions wd)



source $ZSH/oh-my-zsh.sh

# User configuration

# export MANPATH="/usr/local/man:$MANPATH"

# You may need to manually set your language environment
# export LANG=en_US.UTF-8

# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
#   export EDITOR='vim'
# else
#   export EDITOR='mvim'
# fi

# Compilation flags
# export ARCHFLAGS="-arch x86_64"

# ssh
# export SSH_KEY_PATH="~/.ssh/rsa_id"

# Set personal aliases, overriding those provided by oh-my-zsh libs,
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
# For a full list of active aliases, run `alias`.
#
# Example aliases
# alias zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"

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


export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

setxkbmap us

#autoload -U +X bashcompinit && bashcompinit
#complete -o nospace -C /usr/local/bin/bitcomplete bit





# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/null/miniconda3/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/home/null/miniconda3/etc/profile.d/conda.sh" ]; then
        . "/home/null/miniconda3/etc/profile.d/conda.sh"
    else
        export PATH="/home/null/miniconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<



# Load Angular CLI autocompletion.
#source <(ng completion script)
