Browse Source

Update zsh config

ubuntu_ci
Ein Verne 4 years ago
parent
commit
c5a7c02e37
No known key found for this signature in database
GPG Key ID: 926634D64ACAD792
  1. 42
      .vim/startup/vundle_vimrc
  2. 181
      .zshrc
  3. 1
      Brewfile
  4. 42
      idea/.ideavimrc
  5. 3226
      idea/actionlist

42
.vim/startup/vundle_vimrc

@ -33,7 +33,7 @@ Plug 'plasticboy/vim-markdown'
Plug 'scrooloose/nerdtree'
Plug 'scrooloose/nerdcommenter'
" 目录树美化
Plug 'tiagofumo/vim-nerdtree-syntax-highlight'
" Plug 'tiagofumo/vim-nerdtree-syntax-highlight'
Plug 'davidhalter/jedi-vim'
Plug 'ervandew/supertab'
Plug 'Raimondi/delimitMate'
@ -202,3 +202,43 @@ let g:fzf_layout = { 'down': '~40%' }
let g:fzf_history_dir = '~/.local/share/fzf-history'
" https://github.com/tiagofumo/vim-nerdtree-syntax-highlight
let g:WebDevIconsDisableDefaultFolderSymbolColorFromNERDTreeDir = 1
let g:WebDevIconsDisableDefaultFileSymbolColorFromNERDTreeFile = 1
let g:NERDTreeDisableFileExtensionHighlight = 1
let g:NERDTreeDisableExactMatchHighlight = 1
let g:NERDTreeDisablePatternMatchHighlight = 1
" you can add these colors to your .vimrc to help customizing
let s:brown = "905532"
let s:aqua = "3AFFDB"
let s:blue = "689FB6"
let s:darkBlue = "44788E"
let s:purple = "834F79"
let s:lightPurple = "834F79"
let s:red = "AE403F"
let s:beige = "F5C06F"
let s:yellow = "F09F17"
let s:orange = "D4843E"
let s:darkOrange = "F16529"
let s:pink = "CB6F6F"
let s:salmon = "EE6E73"
let s:green = "8FAA54"
let s:lightGreen = "31B53E"
let s:white = "FFFFFF"
let s:rspec_red = 'FE405F'
let s:git_orange = 'F54D27'
let g:NERDTreeExtensionHighlightColor = {} " this line is needed to avoid error
let g:NERDTreeExtensionHighlightColor['css'] = s:blue " sets the color of css files to blue
let g:NERDTreeExactMatchHighlightColor = {} " this line is needed to avoid error
let g:NERDTreeExactMatchHighlightColor['.gitignore'] = s:git_orange " sets the color for .gitignore files
let g:NERDTreePatternMatchHighlightColor = {} " this line is needed to avoid error
let g:NERDTreePatternMatchHighlightColor['.*_spec\.rb$'] = s:rspec_red " sets the color for files ending with _spec.rb
let g:WebDevIconsDefaultFolderSymbolColor = s:beige " sets the color for folders that did not match any rule
let g:WebDevIconsDefaultFileSymbolColor = s:blue " sets the color for files that did not match any rule

181
.zshrc

@ -1,16 +1,6 @@
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
if type brew &>/dev/null; then
echo "brew completion"
FPATH=$(brew --prefix)/share/zsh/site-functions:$FPATH
fpath=($HOME/.asdf/completions $fpath)
autoload -Uz compinit
compinit
fi
autoload -Uz compinit && compinit
# you need to git clone [email protected]:zsh-users/antigen.git to $HOME
if [[ -d $HOME/antigen ]]; then
source $HOME/antigen/antigen.zsh
@ -26,11 +16,14 @@ if [[ -f "$HOME/dotfiles/wp-completion.bash" ]]; then
source $HOME/dotfiles/wp-completion.bash
fi
export ASDF_DIR=$(brew --prefix asdf)
# Load the oh-my-zsh's library.
antigen use oh-my-zsh
# Bundles from the default repo (robbyrussell's oh-my-zsh).
antigen bundle asdf
antigen bundle gem
antigen bundle git
antigen bundle git-extras
antigen bundle git-flow
@ -72,28 +65,26 @@ case `uname` in
Darwin)
antigen bundle brew
antigen bundle brew-cask
antigen bundle gem
antigen bundle osx
;;
FreeBSD)
;;
esac
if [[ $CURRENT_OS == 'OS X' ]]; then
antigen bundle brew
antigen bundle brew-cask
antigen bundle gem
antigen bundle osx
elif [[ $CURRENT_OS == 'Linux' ]]; then
# None so far...
if [[ $DISTRO == 'CentOS' ]]; then
antigen bundle centos
fi
elif [[ $CURRENT_OS == 'Cygwin' ]]; then
antigen bundle cygwin
if type brew &>/dev/null; then
echo "brew completion"
FPATH=$(brew --prefix)/share/zsh/site-functions:$FPATH
#fpath=$(brew --prefix)/share/zsh-completions:$fpath
fpath=($HOME/.asdf/completions $fpath)
fi
autoload -Uz compinit && compinit
. $(brew --prefix asdf)/asdf.sh
. $(brew --prefix asdf)/etc/bash_completion.d/asdf.bash
# Load the theme.
# antigen theme agnoster
# workaround for https://github.com/zsh-users/antigen/issues/675
@ -140,6 +131,7 @@ source $HOME/dotfiles/zsh/common.zsh
source $HOME/dotfiles/zsh/keybindings.zsh
source $HOME/dotfiles/zsh/alias.zsh
source $HOME/dotfiles/zsh/env.zsh
source $HOME/dotfiles/zsh/fzf.zsh
case `uname` in
Darwin)
@ -155,7 +147,7 @@ fi
ZSH_DISABLE_COMPFIX=true
fpath=(~/.zsh/completions $fpath)
fpath=(~/.zsh/completions $fpath)
# space
SPACESHIP_DIR_SHOW="${SPACESHIP_DIR_SHOW=true}"
@ -170,143 +162,4 @@ SPACESHIP_DIR_COLOR="${SPACESHIP_DIR_COLOR="cyan"}"
# usage adb-screencap > screen.png
alias adbcap="adb shell screencap -p"
# fzf config
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
# export FZF_DEFAULT_COMMAND='ag --hidden --ignore .git --ignore .idea -l -g ""'
export FZF_DEFAULT_COMMAND='fd --type f --hidden --exclude .git --exclude .idea ""'
#export FZF_DEFAULT_OPTS="--reverse --inline-info"
export FZF_DEFAULT_OPTS="--height 40% --layout=reverse --preview '(highlight -O ansi {} || cat {}) 2> /dev/null | head -500'"
# fe [FUZZY PATTERN] - Open the selected file with the default editor
# - Bypass fuzzy finder if there's only one match (--select-1)
# - Exit if there's no match (--exit-0)
fe() {
local files
IFS=$'\n' files=($(fzf-tmux --query="$1" --multi --select-1 --exit-0))
[[ -n "$files" ]] && ${EDITOR:-vim} "${files[@]}"
}
# Modified version where you can press
# - CTRL-O to open with `open` command,
# - CTRL-E or Enter key to open with the $EDITOR
fo() {
local out file key
IFS=$'\n' out=("$(fzf-tmux --query="$1" --exit-0 --expect=ctrl-o,ctrl-e)")
key=$(head -1 <<< "$out")
file=$(head -2 <<< "$out" | tail -1)
if [ -n "$file" ]; then
[ "$key" = ctrl-o ] && open "$file" || ${EDITOR:-vim} "$file"
fi
}
# Use fd and fzf to get the args to a command.
# Works only with zsh
# Examples:
# f mv # To move files. You can write the destination after selecting the files.
# f 'echo Selected:'
# f 'echo Selected music:' --extention mp3
# fm rm # To rm files in current directory
f() {
sels=( "${(@f)$(fd "${fd_default[@]}" "${@:2}"|fz)}" )
test -n "$sels" && print -z -- "$1 ${sels[@]:q:q}"
}
# Like f, but not recursive.
fm() f "$@" --max-depth 1
# Deps
alias fz="fzf-noempty --bind 'tab:toggle,shift-tab:toggle+beginning-of-line+kill-line,ctrl-j:toggle+beginning-of-line+kill-line,ctrl-t:top' --color=light -1 -m"
fzf-noempty () {
local in="$(</dev/stdin)"
test -z "$in" && (
exit 130
) || {
ec "$in" | fzf "$@"
}
}
ec () {
if [[ -n $ZSH_VERSION ]]
then
print -r -- "$@"
else
echo -E -- "$@"
fi
}
# fd - cd to selected directory
fd() {
local dir
dir=$(find ${1:-.} -path '*/\.*' -prune \
-o -type d -print 2> /dev/null | fzf +m) &&
cd "$dir"
}
# fh - repeat history
fh() {
print -z $( ([ -n "$ZSH_NAME" ] && fc -l 1 || history) | fzf +s --tac | sed -r 's/ *[0-9]*\*? *//' | sed -r 's/\\/\\\\/g')
}
# fkill - kill process
fkill() {
local pid
pid=$(ps -ef |grep -v ^root | sed 1d | fzf -m | awk '{print $2}')
if [ "x$pid" != "x" ]
then
echo $pid | xargs kill -${1:-9}
fi
}
# tm - create new tmux session, or switch to existing one. Works from within tmux too. (@bag-man)
# `tm` will allow you to select your tmux session via fzf.
# `tm irc` will attach to the irc session (if it exists), else it will create it.
tm() {
[[ -n "$TMUX" ]] && change="switch-client" || change="attach-session"
if [ $1 ]; then
tmux $change -t "$1" 2>/dev/null || (tmux new-session -d -s $1 && tmux $change -t "$1"); return
fi
session=$(tmux list-sessions -F "#{session_name}" 2>/dev/null | fzf --exit-0) && tmux $change -t "$session" || echo "No sessions found."
}
# fs [FUZZY PATTERN] - Select selected tmux session
# - Bypass fuzzy finder if there's only one match (--select-1)
# - Exit if there's no match (--exit-0)
fs() {
local session
session=$(tmux list-sessions -F "#{session_name}" | \
fzf --query="$1" --select-1 --exit-0) &&
tmux switch-client -t "$session"
}
unalias z 2> /dev/null
z() {
[ $# -gt 0 ] && _z "$*" && return
cd "$(_z -l 2>&1 | fzf --height 40% --nth 2.. --reverse --inline-info +s --tac --query "${*##-* }" | sed 's/^[0-9,.]* *//')"
}
#alias lp="lpass show -c --password $(lpass ls | fzf | awk '{print $(NF)}' | sed 's/\]//g')"
gcbr() {
result=$(git branch -a --color=always | grep -v '/HEAD\s' | sort |
fzf --height 50% --border --ansi --tac --preview-window right:70% \
--preview 'git log --oneline --graph --date=short --pretty="format:%C(auto)%cd %h%d %s" $(sed s/^..// <<< {} | cut -d" " -f1) | head -'$LINES |
sed 's/^..//' | cut -d' ' -f1)
if [[ $result != "" ]]; then
if [[ $result == remotes/* ]]; then
git checkout --track $(echo $result | sed 's#remotes/##')
else
git checkout "$result"
fi
fi
}
gfs() {
git -c color.status=always status --short |
fzf --height 50% --border --ansi --multi --ansi --nth 2..,.. \
--preview '(git diff --color=always -- {-1} | sed 1,4d; cat {-1}) | head -500' |
cut -c4- | sed 's/.* -> //'
}

1
Brewfile

@ -22,6 +22,7 @@ brew "fzf"
brew "the_silver_searcher"
brew "hub"
brew "tmux"
brew "trash"
brew "tree"
brew "wget"
brew "rsync"

42
idea/.ideavimrc

@ -1,33 +1,43 @@
" enable plugin
set easymotion
set surround
set clipboard=unnamed,autoselect
let mapleader = ","
let g:mapleader = ","
" set clipboard=unnamed,autoselect
set hlsearch
set scrolloff=3
set incsearch
set scrolloff=5
set ignorecase
set smartcase
set showmode
set incsearch
set history=1000
set history=10000
" source ~/.vimrc
" general
nnoremap ,a :<C-u>action GotoAction<CR>
vnoremap ,a :<C-u>action GotoAction<CR>
nnoremap ,e :<C-u>action SearchEverywhere<CR>
vnoremap ,e :<C-u>action SearchEverywhere<CR>
nnoremap ,s :<C-u>action FileStructurePopup<CR>
nnoremap ,g :<C-u>action FindInPath<CR>
vnoremap ,g :<C-u>action FindInPath<CR>
nnoremap ,r :<C-u>action RenameElement<CR>
nnoremap <Leader>e :<C-u>action SearchEverywhere<CR>
vnoremap <Leader>e :<C-u>action SearchEverywhere<CR>
nnoremap <Leader>s :<C-u>action FileStructurePopup<CR>
" nnoremap <Leader>g :<C-u>action FindInPath<CR>
" vnoremap <Leader>g :<C-u>action FindInPath<CR>
nnoremap <Leader>r :<C-u>action RenameElement<CR>
" Vertical split screen
nnoremap <Leader>wv <C-W>v
vnoremap <Leader>wv <C-W>v
nnoremap <Leader>ws <C-W>s
nnoremap <C-h> <C-W>h
nnoremap <C-l> <C-W>l
nnoremap <C-j> <C-W>j
nnoremap <C-k> <C-W>k
" vnoremap ,r :<C-u>action RecentFiles<CR>
" jump on code
" Redo
nnoremap U <C-r>
" go to somewhere
nnoremap ga :<C-u>action GotoAction<CR>
nnoremap gc :<C-u>action GotoClass<CR>
nnoremap gd :<C-u>action GotoDeclaration<CR>
nnoremap gs :<C-u>action GotoSuperMethod<CR>
@ -42,11 +52,11 @@ nnoremap gp :<C-u>action FindInPath<CR>
" nnoremap gl :<C-u>action Forward<CR>
" code editing
nnoremap \f :<C-u>action ReformatCode<CR>
nnoremap <Leader>f :<C-u>action ReformatCode<CR>
nnoremap == :<C-u>action ReformatCode<CR>
vnoremap == :<C-u>action ReformatCode<CR>
nnoremap \i :<C-u>action OptimizeImports<CR>
vnoremap \i :<C-u>action OptimizeImports<CR>
" nnoremap \i :<C-u>action OptimizeImports<CR>
" vnoremap \i :<C-u>action OptimizeImports<CR>
" nnoremap \r :<C-u>action RenameElement<CR>
nnoremap q :<C-u>action ShowIntentionActions<CR>
nnoremap cc :<C-u>action CommentByLineComment<CR>

3226
idea/actionlist

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save