Skip to content

Instantly share code, notes, and snippets.

@mikowl
Last active April 23, 2019 02:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mikowl/88b674937f265d1b372083f2fbf16d22 to your computer and use it in GitHub Desktop.
Save mikowl/88b674937f265d1b372083f2fbf16d22 to your computer and use it in GitHub Desktop.
My .zshrc powerline9k config
export TERM="xterm-256color"
# Path to your oh-my-zsh installation.
export ZSH=$HOME/.oh-my-zsh
# Set name of the theme to load --- if set to "random", it will
# load a random theme each time oh-my-zsh is loaded, in which case,
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
KEYTIMEOUT=1
ZSH_THEME="powerlevel9k/powerlevel9k"
POWERLEVEL9K_MODE='awesome-fontconfig'
# Left hand
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(vi_mode dir_writable dir vcs)
POWERLEVEL9K_PROMPT_ON_NEWLINE=true
#POWERLEVEL9K_DIR_HOME_BACKGROUND='x'
#POWERLEVEL9K_DIR_HOME_FOREGROUND='219'
POWERLEVEL9K_DIR_HOME_BACKGROUND='x'
POWERLEVEL9K_DIR_HOME_FOREGROUND='43'
POWERLEVEL9K_DIR_HOME_SUBFOLDER_BACKGROUND='x'
POWERLEVEL9K_DIR_HOME_SUBFOLDER_FOREGROUND='146'
POWERLEVEL9K_DIR_ETC_BACKGROUND='x'
POWERLEVEL9K_DIR_DEFAULT_BACKGROUND='x'
POWERLEVEL9K_VCS_BACKGROUND='x'
POWERLEVEL9K_VCS_FOREGROUND='red'
# Right hand stuff
# POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status root_indicator background_jobs time)
# POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(date vi_mode)
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=()
POWERLEVEL9K_STATUS_OK_BACKGROUND='x'
POWERLEVEL9K_STATUS_OK_FOREGROUND='078'
POWERLEVEL9K_STATUS_ERROR_BACKGROUND='x'
POWERLEVEL9K_STATUS_ERROR_FOREGROUND='203'
POWERLEVEL9K_TIME_BACKGROUND='x'
POWERLEVEL9K_TIME_FOREGROUND='143'
POWERLEVEL9K_DATE_BACKGROUND='x'
POWERLEVEL9K_DATE_FOREGROUND='175'
POWERLEVEL9K_DIR_PATH_ABSOLUTE=false
# POWERLEVEL9K_SHORTEN_DIR_LENGTH=43
POWERLEVEL9K_SHORTEN_DIR_LENGTH=2
# POWERLEVEL9K_SHORTEN_STRATEGY="truncate_absolute"
POWERLEVEL9K_SHORTEN_STRATEGY="truncate_to_first_and_last"
POWERLEVEL9K_SHORTEN_DELIMITER="…"
# Git stuff
POWERLEVEL9K_VCS_CLEAN_BACKGROUND='x'
POWERLEVEL9K_VCS_CLEAN_FOREGROUND='115'
POWERLEVEL9K_VCS_UNTRACKED_BACKGROUND='x'
POWERLEVEL9K_VCS_UNTRACKED_FOREGROUND='161'
POWERLEVEL9K_VCS_MODIFIED_BACKGROUND='x'
POWERLEVEL9K_VCS_MODIFIED_FOREGROUND='229'
# Vi mode
POWERLEVEL9K_VI_INSERT_MODE_STRING="ⓘ"
POWERLEVEL9K_VI_COMMAND_MODE_STRING="ⓝ"
POWERLEVEL9K_VI_MODE_INSERT_BACKGROUND='x'
POWERLEVEL9K_VI_MODE_INSERT_FOREGROUND='114'
POWERLEVEL9K_VI_MODE_NORMAL_BACKGROUND='x'
POWERLEVEL9K_VI_MODE_NORMAL_FOREGROUND='230'
# Set list of themes to pick from when loading at random
# Setting this variable when ZSH_THEME=random will cause zsh to load
# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/
# If set to an empty array, this variable will have no effect.
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
# Uncomment the following line to disable auto-setting terminal title.
DISABLE_AUTO_TITLE="true"
function precmd() {
echo ""
echo -ne "\e]1;${PWD##*/}\a"
}
# Uncomment the following line to display red dots whilst waiting for completion.
# COMPLETION_WAITING_DOTS="true"
# Which plugins would you like to load?
# Standard cdplugins 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=(
autojump brew bundler catimg colored-man-pages colorize command-not-found fzf git gitfast node npm osx rbenv thefuck tmux vi-mode vscode web-search zsh-autosuggestions z
)
source $ZSH/oh-my-zsh.sh
source $HOME/.todoist/todoist_functions.sh
ZSH_TMUX_AUTOSTART=true
ZSH_TMUX_AUTOSTART_ONCE=true
# ZSH_TMUX_AUTOCONNECT
ZSH_TMUX_AUTOQUIT=false
# ZSH_TMUX_FIXTERM=true
# ZSH_TMUX_ITERM2=true
ZSH_TMUX_FIXTERM_WITHOUT_256COLOR=true
ZSH_TMUX_FIXTERM_WITH_256COLOR=true
# Bind Ctrl + space to complete autosuggest
bindkey '^ ' autosuggest-accept
# Preferred editor for local and remote sessions
if [[ -n $SSH_CONNECTION ]]; then
export EDITOR='vim'
else
export EDITOR='code'
fi
# ssh
export SSH_KEY_PATH="~/.ssh/rsa_id"
# My personal aliases are set in ~/.oh-my-zsh/custom/myaliases.zshexport
PATH="/usr/local/sbin:$PATH"
# Ruby exports
#export GEM_HOME=$HOME/gems
#export PATH=$HOME/gems/bin:$PATH
#export PATH="$HOME/.rbenv/bin:$PATH"
#export PATH=/usr/local/lib/ruby/gems/2.6.0/bin:$PATH
# or export PATH="$HOME/.node/bin:$HOME/.rbenv/shims:$PATH"
# rbenv init
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
test -e "${HOME}/.iterm2_shell_integration.zsh" && source "${HOME}/.iterm2_shell_integration.zsh"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment