# ------------------------------------------------------------------------------ # You'll need to install oh-my-zsh and alien # # 1. oh-my-zsh # # sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" # # 2. alien # # git clone https://github.com/eendroroy/alien.git && cd alien && git submodule update --init --recursive # ------------------------------------------------------------------------------ # If you come from bash you might have to change your $PATH. # export PATH=$HOME/bin:/usr/local/bin:$PATH export ZSH="/home/kamen/.oh-my-zsh" ZSH_THEME="gruvbox" SOLARIZED_THEME="dark" # Which plugins would you like to load? # Standard plugins can be found in $ZSH/plugins/ # Custom plugins may be added to $ZSH_CUSTOM/plugins/ # Example format: plugins=(rails git textmate ruby lighthouse) # Add wisely, as too many plugins slow down shell startup. plugins=(git) source $ZSH/oh-my-zsh.sh # User configuration # Preferred editor for local and remote sessions if [[ -n $SSH_CONNECTION ]]; then export EDITOR='vim' else export EDITOR='vim' fi 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 # Disables Software Flow Control stty -F/dev/tty -ixon -ixoff # ------------------------------------------------------------------------------ # Alien theme config # ------------------------------------------------------------------------------ source ~/alien/alien.zsh # colors export ALIEN_THEME="gruvbox" export ALIEN_SECTION_BATTERY_FG=223 export ALIEN_SECTION_PATH_FG=178 export ALIEN_SECTION_USER_FG=223 export ALIEN_SECTION_USER_BG=66 export ALIEN_GIT_TRACKED_COLOR=196 export ALIEN_GIT_UN_TRACKED_COLOR=214 # custom symbols export ALIEN_PROMPT_SYM=" " export ALIEN_GIT_SYM= export ALIEN_BRANCH_SYM= export ALIEN_GIT_ADD_SYM=ﰂ export ALIEN_GIT_DEL_SYM=ﯰ export ALIEN_GIT_MOD_SYM=﯂ export ALIEN_GIT_NEW_SYM=? # sections export ALIEN_SECTION_TIME_FORMAT=%H:%M:%S export ALIEN_SECTIONS_LEFT=( left_cap ssh user path git_branch:async git_status:async left_end_cap newline prompt ) export ALIEN_SECTIONS_RIGHT=( exit time battery right_end_cap ) # custom sections alien_prompt_section_left_cap() { __section=( content " %B%b" foreground $ALIEN_SECTION_USER_BG ) } alien_prompt_section_right_end_cap() { __section=( content "%B%b" foreground $ALIEN_SECTION_BATTERY_BG ) } alien_prompt_section_git_branch() { local __branch_info= if [[ $(alien_is_git) == 1 ]]; then __branch_info=$(alien_git_branch) else return 1 fi __section=( content " ${__branch_info}" foreground $ALIEN_SECTION_VCS_BRANCH_BG background $ALIEN_SECTION_EXIT_BG ) } alien_prompt_section_git_status() { local __stash_info= local __lr_info= local __dirty_info= if [[ $(alien_is_git) == 1 ]]; then __stash_info=$(alien_git_stash) __lr_info=$(alien_git_lr) __dirty_info=$(alien_git_dirty) else return 1 fi __section=( content " ${__stash_info}${__lr_info}${__dirty_info}" foreground 214 background $ALIEN_SECTION_EXIT_BG separator 1 ) } # default section overrides (for stuff that can only be changed by changing the source) alien_user_info() { whoami } alien_prompt_section_exit() { __section=( content "%(?.  . %? )" foreground "%(?.$ALIEN_SECTION_VCS_BRANCH_BG.$ALIEN_SECTION_EXIT_FG)" background "%(?.$ALIEN_SECTION_EXIT_BG.$ALIEN_SECTION_EXIT_BG_ERROR)" separator 1 ) } alien_prompt_section_prompt() { __section=( content "%B${ALIEN_PROMPT_SYM}%b " foreground "%(?.$ALIEN_PROMPT_FG.$ALIEN_SECTION_EXIT_BG_ERROR)" ) } alien_battery_stat(){ echo " " } alien_prompt_section_battery() { __section=( content " " foreground $ALIEN_SECTION_BATTERY_FG background $ALIEN_SECTION_BATTERY_BG separator 1 ) } # ------------------------------------------------------------------------------ # Aliases # ------------------------------------------------------------------------------ alias ydl="youtube-dl" alias ydlba="youtube-dl --audio-format best -x" # apt aliases alias sasy="apt install -y" alias sary="apt remove -y" alias saty="apt autoremove -y" alias sagt="apt update && apt upgrade -y && apt autoremove -y && youtube-dl --update" if [[ -x "$(command -v exa)" ]]; then alias ll="exa --icons --group-directories-first --git --time-style long-iso -labh" alias lk="exa --icons --group-directories-first --git --time-style long-iso -labhTL" alias l.="exa --icons --group-directories-first --git --time-style long-iso -labhTL 2" alias l="exa --icons --group-directories-first --time-style long-iso -abh" else alias ll="la -alF" alias la="ls -A" alias l="ls -CF" fi alias lg="lazygit" alias q="exit" alias x="exit" if [[ -x "$(command -v vimx)" ]]; then alias vim='vimx'; fi alias v="vim" alias cdp="cd ~/Programming/GitHub-repos/"