linux终端定制
使用terminater,zsh,tmux,spf13-vim定制自己的linux终端。
首先安装terminater: sudo apt-get install terminater。
terminater是一个终端软件,安装后他会替换默认的终端,按快捷键出来的就是terminater。terminater可以进行分屏,但是多终端分屏还是推荐tmux,tmux可以运行在terminater里边。因为tmux真的非常好用,尤其是ssh登录后能够重新attach正在运行的tmux。
安装zsh:https://ohmyz.sh/
安装完zsh之后,进行定制,我的~/.zshrc
export ZSH=/home/xiaozhu/.oh-my-zsh
ZSH_THEME="agoster" #这个是终端显示风格,可以各种选择自己觉得好看的
plugins=(git brew osx zsh-autosuggestions) #这个是设置支持插件尤其zsh-autosuggestions 这个是对使用过的命令进行自动补全
source $ZSH/oh-my-zsh.sh
export LANG=en_US.UTF-8
if [[ $TERM == xterm ]]; then
export TERM=xterm-256color
fi
安装tmux: sudo apt-get install tmux,tmux几个分屏命令,使用一段时间就习惯了。
最后安装spf13-vim,这是一个vim的插件集合,功能很强大,通过它可以管理和使用很多插件。
安装:http://vim.spf13.com
安装之后是定制,sf13-vim因为可用的插件太多,定制化需要根据自己的需要。
定制化涉及到的文件有.vimrc.local 下面记录下我自己的
这里设置的值会覆盖.vimrc中之前设置的值。
colorscheme Monokai
"custom tabstop
set noexpandtab
set shiftwidth=8
set tabstop=8
set softtabstop=0
source ~/.vim/ftplugin/linuxsty.vim
set laststatus=2
set t_Co=256
"custom cscopequickfix
set cscopequickfix=s-,c-,d-,i-,t-,e-,g-
autocmd FileType qf wincmd J
nmap cc :cclose<CR>
"if you project is not a git repo, tags in .git/ toplevel can't work.
set tags+=~/.vim/tags/cpp
"set tags+=~/.vim/tags/testapi
"close the spell check
"highlight SpellBad ctermbg=0 ctermfg=1
autocmd VimEnter * set nospell
"---omnicppcomplete setting -----
imap <F3> <C-X><C-O>
imap <F2> <C-X><C-I>
set completeopt=menu,menuone
let OmniCpp_MayCompleteDot =1
let OmniCpp_MayCompleteArrow =1
let OmniCpp_MayCompleteScope =1
let OmniCpp_SelectFirstItem =2
let OmniCpp_NamespaceSearch =2
let OmniCpp_ShowPrototypeInAbbr=1
let OmniCpp_GlobalScopeSearch=1
let OmniCpp_DefaultNamespaces=["std","MyNamespace"]
let OmniCpp_DisplayMode=1
let OminCpp_ShowScopeInAbbr=1
let OminCpp_ShowAccess=1
"switch to another file
nmap <F8> :bn <CR>
nnoremap <F7> <C-w>w
"compile in vim
autocmd QuickFixCmdPost [^l]* nested cwindow
autocmd QuickFixCmdPost l* nested lwindow
nnoremap <F9> :silent make!\|redraw!\|cw<CR>
"move quikly
imap <C-l> <Right>
imap <C-k> <Down>
.vim.bundles.local 自己在~/.vim/bundle/下添加的插件需要在这边bundle一下
if count(g:spf13_bundle_groups,"custom")
Bundle "autoload_cscope.vim"
Bundle "cscope_macros.vim"
Bundle "OmniCppComplete"
Bundle "now/vim-quit-if-only-quickfix-buffer-left"
Bundle "vim-perl/vim-perl"
Bundle "linuxsty.vim"
Bundle "Shougo/neocomplete.vim"
Bundle "Valloric/YouCompleteMe"
endif
设置tmux,zsh使用powerline的字体的过程忘记了,下回补上。