备份一下vimrc
备份一下vimrc
备份一下vimrc
001
" ========== 全局基本设置 ==========
002
source /usr/share/vim/vim73/gvimrc_example.vim
003
" 兼容Windows系统的方案
004
" source $VIMRUNTIME/mswin.vim
005
" behave mswin
006
007
" ====== 重新设置 ======
008
set nocompatible " 使用Vim方式
009
syntax on " 打开语法支持
010
011
" ============== 公共函数 ============
012
" 获取当前工作目录
013
function! GetPWD()
014
return substitute(getcwd(),"","","g")
015
endfunction
016
017
" 获取当前编辑文件的目录
018
func! GetFilePWD()
019
return expand("%:p:h")
020
endf
021
" =========================================
022
023
024
" 设置标签页
025
set tabpagemax=9 " 标签页最多9个
026
set showtabline=2 " 一直显示标签
027
set guioptions -=e " tab标签不用Gui提供
028
029
" 显示行号和标尺
030
set number
031
set ruler
032
set rulerformat =%15(%c%V\ %p%%%)
033
034
" 命令行 状态行
035
set cmdheight =1
036
"set stl =\ [File]\ %F%m%r%h%y[%{&fileformat},%{&fileencoding}]\ %w\ \ [PWD]\ %r%{GetPWD()}%h\ %=\ [Line]%l/%L\ %=\[%P]
037
set stl =[File]%f%m%r%h%y[%{&fileformat},%{&fileencoding}]%w\ \ %r[PWD]%{GetPWD()}%h%=\ [Line]%l/%L%=[%P]
038
set laststatus =2 " 始终显示状态行
039
set wildmenu " 命令行补全以增强模式运行
040
041
set bsdir=buffer "设定文件浏览器目录为当前目录
042
043
set display=lastline " 不显示@
044
045
" 搜索设置
046
set hlsearch
047
set magic
048
set noincsearch
049
050
set showmatch " 显示匹配
051
set matchtime=1 " 显示匹配的闪烁时间
052
053
" 在屏幕最后一行显示 (部分的) 命令
054
set showcmd
055
056
set autoindent " 自动缩进
057
set smartindent " 智能缩进
058
059
060
" ==== 制表符 TAB \t ====
061
set tabstop=4
062
set expandtab
063
set smarttab
064
set shiftwidth=4
065
set softtabstop=4
066
067
068
set autoread " 已经修改时自动载入
069
070
set history =1000 " 保留历史记录
071
072
set autochdir " 自动切换当前工作目录
073
074
set nobackup " 不启用备份文件
075
set noswapfile " 不启用交换文件
076
077
set nowrap " 默认设置文本不按照屏幕自动换行显示
078
079
" 当前列高亮
080
" set cuc
081
082
"让光标可以在编辑区域的任何地方,默认的效果是,光标只能停在有字符的区域
083
":set ve=all
084
085
" ======== 自动完成 =========
086
set complete=.,w,b,k,t,i
087
set completeopt=longest,menu
088
" ===========================
089
090
" 多字节字符编码设置,主要针对汉语
091
if has('multi_byte')
092
set fenc=utf-8 " fileencoding 默认文件编码
093
set fencs=utf-8,gbk,big5,latin1 " fileencodings 文件编码自动匹配列表
094
set formatoptions+=mM
095
set nobomb
096
set ambiwidth=double
097
else
098
echoerr "Sorry, this version of (g)vim was not compiled with +multi_byte"
099
endif
100
101
102
"============== GVim 特殊设置 ===================
103
if has('gui_running')
104
set cursorline " 高亮当前行
105
set guioptions -=e " 标签页显示为终端模式,不用gui标签
106
set mouse=a " 鼠标在所有情况下皆可用
107
set guifont=Ubuntu\ Mono\ 12 " 字体设置 Linux
108
colorscheme desert " 颜色配置
109
set guioptions-=T " 默认去掉工具栏
110
111
" 工具栏和菜单栏 显示/隐藏 快捷键
112
" F2 显示或隐藏菜单栏
113
map <silent> <F2> :if &guioptions =~# 'T' <Bar>
114
\set guioptions-=T <Bar>
115
\else <Bar>
116
\set guioptions+=T <Bar>
117
\endif<CR>
118
" F3 显示或隐藏工具栏
119
map <silent> <F3> :if &guioptions =~# 'm' <Bar>
120
\set guioptions-=m <Bar>
121
\else <Bar>
122
\set guioptions+=m <Bar>
123
\endif<CR>
124
125
" 自动最大化
126
"au GUIEnter * simalt ~x
127
endif
128
129
130
"=============== 一些源码文件的字符编码 ===============
131
au FileType xml set fenc=utf8
132
au FileType html set fenc=utf8
133
au FileType xhtml set fenc=utf8
134
au FileType css set fenc=utf8
135
au FileType javascript set fenc=utf8
136
au FileType jsp set fenc=utf8
137
au FileType php set fenc=utf8
138
139
140
" ================= 定义 <Leader> 为分号 ==============
141
let mapleader =";"
142
let maplocalleader =";"
143
144
145
" ================= 自定义快捷键 ======================
146
147
" Ctrl+Alt+上下 将当前行移到上一行下一行 (Eclipse)
148
map <C-A-Up> :<ESC>kddp<ESC>k
149
map <C-A-Down> :<ESC>ddp
150
" Ctrl+D 删除当前行 (Eclipse)
151
map <C-d> :<ESC>dd
152
153
" 快速设置当前工作目录为用户桌面
154
nmap <Leader>CD :cd ~/桌面<CR>
155
" nmap <Leader>CD :cd ~/Desktop<CR>
156
157
" 标签操作的映设
158
nmap <Leader>tt :tabnew<CR>
159
nmap <Leader>tn :tabNext<CR>
160
nmap <Leader>tf :tabfirst<CR>
161
nmap <Leader>tl :tablast<CR>
162
163
" 快速打开浏览器查看当前文件(html等) Linux
164
nmap <Leader>ff :update<CR>:silent !firefox -f file://%:p<CR>
165
nmap <Leader>cm :update<CR>:silent !chrome -f file://%:p<CR>
166
167
" Zen-Coding 快捷键
168
let g:user_zen_expandabbr_key = '<c-e>' " 展开标签快捷键
169
" 跳到下一个标记点
170
nmap <Leader>zn <c-y>n<ESC>
171
" 跳到上一个标记点
172
nmap <Leader>zN <c-y>N<ESC>
173
" 跳到下一个标签
174
nmap <Leader>zd <c-y>d<ESC>
175
" 跳到上一个标签
176
nmap <Leader>zD <c-y>D<ESC>
177
178
" F4 用竖线显示tab制表符
179
set listchars=tab:\|\ ,
180
map <silent> <F4> :if &list <Bar>
181
\ set nolist <Bar>
182
\ echo "不显示tab" <Bar>
183
\ else <Bar>
184
\ set list <Bar>
185
\ echo "显示tab" <Bar>
186
\ endif<CR>
187
188
" 自动插入注释 /**/, <!-- -->
189
nmap <Leader>/* a/**/<ESC>hi
190
nmap <Leader>-- a<!-- --><ESC>4ha <ESC>a
191
192
" =================== 一些插件的设置 ===================
193
" 设置MRU
194
" let MRU_Max_Entries=10
评论暂时关闭