161 lines
4.6 KiB
Bash
161 lines
4.6 KiB
Bash
## Vi keybindings for the shell ##
|
|
bindkey -v
|
|
|
|
## History navigation by search pattern
|
|
bindkey '^[0A' history-beginning-search-backward
|
|
bindkey '^[0B' history-beginning-search-forward
|
|
|
|
## bash history timestamps ##
|
|
export HISTTIMEFORMAT="%a %Y-%m-%d %T "
|
|
|
|
# Path to your oh-my-zsh installation.
|
|
export ZSH=$HOME/.oh-my-zsh
|
|
|
|
# Set name of the theme to load.
|
|
# Look in ~/.oh-my-zsh/themes/
|
|
# Optionally, if you set this to "random", it'll load a random theme each
|
|
# time that oh-my-zsh is loaded.
|
|
ZSH_THEME=""
|
|
|
|
# Suppress display of name of default user in prompt
|
|
DEFAULT_USER=$USER
|
|
prompt_context() {}
|
|
|
|
# Uncomment the following line to use case-sensitive completion.
|
|
# CASE_SENSITIVE="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.
|
|
export 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="mm/dd/yyyy"
|
|
|
|
# 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 zsh-nvm vi-mode)
|
|
|
|
source $ZSH/oh-my-zsh.sh
|
|
|
|
# User configuration
|
|
|
|
export PATH="$HOME/.cargo/env:/usr/local/bin:/opt/local/bin:/opt/local/sbin:/usr/local/go/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH"
|
|
# export PATH="$HOME/.local/bin:/usr/local/bin:/opt/local/bin:/opt/local/sbin:/usr/local/go/bin:$PATH"
|
|
|
|
## Add Visual Studio Code (code)
|
|
# export PATH="$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin"
|
|
|
|
# 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
|
|
export VISUAL=vim
|
|
export EDITOR=$VISUAL
|
|
|
|
export BROWSER=surf-open.sh
|
|
|
|
# Compilation flags
|
|
# export ARCHFLAGS="-arch x86_64"
|
|
|
|
# ssh
|
|
# export SSH_KEY_PATH="~/.ssh/dsa_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"
|
|
|
|
# If not running interactively, don't do anything
|
|
|
|
[ -z "$PS1" ] && return
|
|
|
|
# Why are these not exports?
|
|
# enable git unstaged indicators - set to a non-empty value
|
|
GIT_PS1_SHOWDIRTYSTATE="."
|
|
|
|
# enable showing of untracked files - set to a non-empty value
|
|
GIT_PS1_SHOWUNTRACKEDFILES="."
|
|
|
|
# enable stash checking - set to a non-empty value
|
|
GIT_PS1_SHOWSTASHSTATE="."
|
|
|
|
# enable showing of HEAD vs its upstream
|
|
GIT_PS1_SHOWUPSTREAM="auto"
|
|
|
|
BLACK=$(tput setaf 0)
|
|
RED=$(tput setaf 1)
|
|
GREEN=$(tput setaf 2)
|
|
YELLOW=$(tput setaf 3)
|
|
LIME_YELLOW=$(tput setaf 190)
|
|
POWDER_BLUE=$(tput setaf 153)
|
|
BLUE=$(tput setaf 4)
|
|
MAGENTA=$(tput setaf 5)
|
|
CYAN=$(tput setaf 6)
|
|
WHITE=$(tput setaf 7)
|
|
BRIGHT=$(tput bold)
|
|
NORMAL=$(tput sgr0)
|
|
BLINK=$(tput blink)
|
|
REVERSE=$(tput smso)
|
|
UNDERLINE=$(tput smul)
|
|
|
|
## NVM ##
|
|
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
|
|
|
|
# Starship
|
|
eval "$(starship init zsh)"
|
|
|
|
## FZF ##
|
|
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
|
|
export FZF_DEFAULT_COMMAND="find ." # Includes hidden files
|
|
|
|
# exa colors
|
|
export LS_COLORS="*.md=37"
|
|
export EXA_COLORS="uu=33;45;1"
|
|
|
|
# tmuxp completion
|
|
eval "$(_TMUXP_COMPLETE=source_zsh tmuxp)"
|
|
|
|
source /home/adam/.cargo/env
|
|
source /home/adam/.nvm/nvm.sh
|
|
|
|
# Consolidate PATH
|
|
export PATH="$(consolidate-path "$PATH")"
|