mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-03-13 03:12:21 +01:00
add zshrc
This commit is contained in:
parent
5a367dfaa6
commit
26903c3d24
3 changed files with 182 additions and 126 deletions
182
zshrc
Normal file
182
zshrc
Normal file
|
|
@ -0,0 +1,182 @@
|
|||
# ezzsh - zshrc
|
||||
|
||||
# path to your zsh configuration.
|
||||
ZSH="$HOME/.zsh"
|
||||
|
||||
# export ZSH_THEME="random"
|
||||
# export ZSH_THEME="ezzsh" # name of zsh theme
|
||||
export ZSH_THEME="powerline" # name of zsh theme
|
||||
|
||||
# Set this to true to use case-sensitive completion
|
||||
CASE_SENSITIVE="false" # bool
|
||||
|
||||
# Comment this out to disable weekly auto-update checks
|
||||
DISABLE_AUTO_UPDATE="true" # bool
|
||||
|
||||
# Uncomment following line if you want to disable colors in ls
|
||||
DISABLE_LS_COLORS="false" # bool
|
||||
|
||||
# Uncomment following line if you want to disable autosetting terminal title.
|
||||
DISABLE_AUTO_TITLE="false" # bool
|
||||
|
||||
# Uncomment following line if you want disable red dots displayed while waiting for completion
|
||||
DISABLE_COMPLETION_WAITING_DOTS="true" # bool
|
||||
|
||||
# plugins to load (array)
|
||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||
plugins=(git)
|
||||
|
||||
|
||||
# Customize to your needs...
|
||||
source $ZSH/zsh
|
||||
|
||||
|
||||
# workaround for broken xfce4 terminal to force $TERM:
|
||||
if [[ "$COLORTERM" == "xfce4-terminal" ]]; then
|
||||
export TERM="xterm-256color"
|
||||
fi
|
||||
|
||||
# workaround for rxvt
|
||||
if [[ "$COLORTERM" == "rxvt-xpm" ]]; then
|
||||
export TERM="rxvt-unicode-256color"
|
||||
fi
|
||||
|
||||
# set $OS_TYPE to "osx" / "linux":
|
||||
if [[ "$(uname)" == "Darwin" ]]; then
|
||||
export OS_TYPE="osx"
|
||||
else
|
||||
export OS_TYPE="linux"
|
||||
fi
|
||||
|
||||
# $ZSH - Path to your zsh installation.
|
||||
export ZSH=$HOME/.zsh/
|
||||
|
||||
export PATH=$HOME/bin:/usr/local/bin:/usr/local/sbin:/usr/sbin:/sbin$PATH
|
||||
|
||||
# set $EDITOR
|
||||
export EDITOR='vim'
|
||||
|
||||
# man pages: color
|
||||
export LESS_TERMCAP_mb=$'\E[01;31m'
|
||||
export LESS_TERMCAP_md=$'\E[01;33m'
|
||||
export LESS_TERMCAP_me=$'\E[0m'
|
||||
export LESS_TERMCAP_se=$'\E[0m'
|
||||
export LESS_TERMCAP_so=$'\E[01;44;33m'
|
||||
export LESS_TERMCAP_ue=$'\E[0m'
|
||||
export LESS_TERMCAP_us=$'\E[01;32m'
|
||||
|
||||
# zsh fix for ssh host completion from ~/.ssh/config
|
||||
[ -f ~/.ssh/config ] && : ${(A)ssh_config_hosts:=${${${${(@M)${(f)"$(<~/.ssh/config)"}:#Host *}#Host }:#*\**}:#*\?*}}
|
||||
|
||||
# needed to keep backgrounded jobs running when exiting zsh:
|
||||
setopt NO_HUP
|
||||
|
||||
# homebrew
|
||||
# githup api token, in the format, example:
|
||||
# > export HOMEBREW_GITHUB_API_TOKEN=XXXXX
|
||||
if [[ -e ~/.homebrew-github-api-token ]]; then
|
||||
source ~/.homebrew-github-api-token
|
||||
fi
|
||||
|
||||
# mosh setup
|
||||
# export MOSH_TITLE_NOPREFIX=1
|
||||
|
||||
# jump/mark/unmark/marks stuff (make sure to load the "jump" plugin in plugins=() )
|
||||
function _completemarks {
|
||||
reply=($(ls $MARKPATH))
|
||||
}
|
||||
compctl -K _completemarks jump
|
||||
compctl -K _completemarks unmark
|
||||
|
||||
# force english locales
|
||||
export LC_CTYPE="en_US.UTF-8"
|
||||
export LC_NUMERIC="en_US.UTF-8"
|
||||
export LC_TIME="en_US.UTF-8"
|
||||
export LC_COLLATE="en_US.UTF-8"
|
||||
export LC_MONETARY="en_US.UTF-8"
|
||||
export LC_MESSAGES="en_US.UTF-8"
|
||||
export LC_PAPER="en_US.UTF-8"
|
||||
export LC_NAME="en_US.UTF-8"
|
||||
export LC_ADDRESS="en_US.UTF-8"
|
||||
export LC_TELEPHONE="en_US.UTF-8"
|
||||
export LC_MEASUREMENT="en_US.UTF-8"
|
||||
export LC_IDENTIFICATION="en_US.UTF-8"
|
||||
export LC_ALL="en_US.UTF-8"
|
||||
|
||||
# set ls options
|
||||
LS_OPTIONS="--color=auto --group-directories-first -F"
|
||||
alias ls="ls $LS_OPTIONS"
|
||||
alias l="ls $LS_OPTIONS -al"
|
||||
|
||||
# Mac OS X specific stuff:
|
||||
if [[ "$OS_TYPE" == "osx" ]]; then
|
||||
# preceed path with homebrew stuff:
|
||||
export PATH="/usr/local/sbin:/usr/local/bin:$PATH"
|
||||
# ipython on mac:
|
||||
alias ipython='/Users/armin/git/ipython/bin/ipython'
|
||||
# homebrew verbosity / emoji icon removal:
|
||||
export HOMEBREW_VERBOSE=1
|
||||
export HOMEBREW_CURL_VERBOSE=1
|
||||
export HOMEBREW_NO_EMOJI=1
|
||||
# let's use ls from gnu utils because the bsd ls doesn't know long options:
|
||||
if hash gls; then
|
||||
LS_COMMAND="gls"
|
||||
else
|
||||
LS_COMMAND="ls"
|
||||
fi
|
||||
# homebrew verbose and without annoying emoji icon:
|
||||
export HOMEBREW_VERBOSE=1
|
||||
export HOMEBREW_CURL_VERBOSE=1
|
||||
export HOMEBREW_NO_EMOJI=1
|
||||
# let's use dircolors from gnu utils because the osx version is buggy:
|
||||
alias dircolors="gdircolors"
|
||||
# Linux specific stuff
|
||||
else
|
||||
LS_COMMAND="ls"
|
||||
fi
|
||||
|
||||
# enable ls colorization:
|
||||
if [ "$TERM" != "dumb" ]; then
|
||||
eval "$(dircolors "$ZSH"/dircolors)"
|
||||
alias ls="$LS_COMMAND $LS_OPTIONS"
|
||||
fi
|
||||
|
||||
# set $SHELL:
|
||||
export SHELL="$(which zsh)"
|
||||
|
||||
# keychain stuff
|
||||
if [[ "$OS_TYPE" == "linux" ]]; then
|
||||
ssh_cmd="$(which ssh)"
|
||||
function ssh () {
|
||||
echo "$@" >> $HOME/.keychain-args
|
||||
echo "$(date)" > $HOME/.keychain-output
|
||||
# using keychain for gpg made problems, so we only use the id_rsa SSH key here:
|
||||
# keychain id_rsa 44248BA0
|
||||
keychain id_rsa >> $HOME/.keychain-output 2>&1
|
||||
[ -z "$HOSTNAME" ] && HOSTNAME=`uname -n`
|
||||
[ -f $HOME/.keychain/$HOSTNAME-sh ] && \
|
||||
. $HOME/.keychain/$HOSTNAME-sh
|
||||
[ -f $HOME/.keychain/$HOSTNAME-sh-gpg ] && \
|
||||
. $HOME/.keychain/$HOSTNAME-sh-gpg
|
||||
"$ssh_cmd" "$@"
|
||||
}
|
||||
fi
|
||||
|
||||
# grep with color
|
||||
alias grep='grep --color=auto'
|
||||
|
||||
# enable ls colorization:
|
||||
if [ "$TERM" != "dumb" ]; then
|
||||
eval "$(dircolors "$ZSH"/dircolors)"
|
||||
alias ls="$LS_COMMAND $LS_OPTIONS"
|
||||
fi
|
||||
|
||||
# do not autocorrect sudo commands (fixes "zsh: correct 'vim' to '.vim' [nyae]?")
|
||||
# alias sudo='nocorrect sudo'
|
||||
|
||||
# or, the more brutal attempt:
|
||||
unsetopt correct{,all}
|
||||
|
||||
|
||||
alias sd='ssh deep'
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue