标签:背景 sign -- 按键 也会 hub scheme nta rev
1 | set nocompatible " 去除对vi的兼容 |
2 | "设置状态栏显示的内容 |
3 | set statusline=%F%m%r%h%w [FORMAT=%{&ff}] [TYPE=%Y] [POS=%l,%v][%p%%] %{strftime("%d/%m/%y - %H:%M")} %{ALEGetStatusLine()} |
4 | set tags+=./tags |
5 | filetype off " 关闭文件类型检测 |
6 | set rtp+=~/.vim/bundle/Vundle.vim " 设置vundle路径 |
7 | call vundle#begin() " 插件管理函数开始 |
8 | Plugin 'VundleVim/Vundle.vim' |
9 | Plugin 'fatih/vim-go' |
10 | "Plugin 'Tagbar' |
11 | Plugin 'Valloric/YouCompleteMe' |
12 | Plugin 'https://github.com/scrooloose/nerdtree.git' |
13 | Plugin 'fatih/molokai' |
14 | Plugin 'majutsushi/tagbar' |
15 | "Plugin 'ctrlpvim/ctrlp.vim' |
16 | Plugin 'morhetz/gruvbox' |
17 | Plugin 'Raimondi/delimitMate' |
18 | "Plugin 'mileszs/ack.vim' |
19 | Plugin 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } |
20 | Plugin 'junegunn/fzf.vim' |
21 | Plugin 'Xuyuanp/nerdtree-git-plugin' |
22 | Plugin 'vim-airline/vim-airline' |
23 | Plugin 'w0rp/ale' |
24 | Plugin 'nsf/gocode', {'rtp': 'vim/'} |
25 | call vundle#end() " 插件管理函数结束 |
26 | "NERDTree config |
27 | "autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") &&b:NERDTreeType == "primary") | q | endif " 当目录树窗口为最后一个窗口时自动退出vim |
28 | "inoremap jj <Esc> |
29 | "let g:go_highlight_types = 1 |
30 | "let g:go_highlight_fields = 1 |
31 | "let g:go_highlight_functions = 1 |
32 | "let g:go_highlight_function_calls = 1 |
33 | "let g:go_highlight_operators = 1 |
34 | "let g:go_highlight_extra_types = 1 |
35 | let mapleader = " " |
36 | let g:quickfix_hight=70 |
37 | "===================== |
38 | "ack |
39 | "===================== |
40 | "map <c-u> :Ack<space> |
41 | nnoremap <c-p> :Files<CR> |
42 | |
43 | " 退出插入模式指定类型的文件自动保存 |
44 | au InsertLeave *.go,*.sh,*.php write |
45 | |
46 | " Tagbar |
47 | " 打开和关闭NERDTree快捷键 |
48 | map <leader>fl :NERDTreeToggle<CR> |
49 | " 显示行号 |
50 | let NERDTreeShowLineNumbers=1 |
51 | " 打开文件时是否显示目录 |
52 | let NERDTreeAutoCenter=1 |
53 | " 是否显示隐藏文件 |
54 | let NERDTreeShowHidden=0 |
55 | " 设置宽度 |
56 | " let NERDTreeWinSize=31 |
57 | " 忽略一下文件的显示 |
58 | let NERDTreeIgnore=['.pyc','~$','.swp'] |
59 | " 打开 vim 文件及显示书签列表 |
60 | let NERDTreeShowBookmarks=2 |
61 | " 在终端启动vim时,共享NERDTree |
62 | let g:nerdtree_tabs_open_on_console_startup=1 |
63 | |
64 | let g:ale_sign_column_always = 1 |
65 | let g:ale_set_highlights = 0 |
66 | "自定义error和warning图标 |
67 | let g:ale_sign_error = '?' |
68 | let g:ale_sign_warning = '?' |
69 | "在vim自带的状态栏中整合ale |
70 | let g:ale_statusline_format = ['? %d', '? %d', '? OK'] |
71 | "显示Linter名称,出错或警告等相关信息 |
72 | let g:ale_echo_msg_error_str = 'E' |
73 | let g:ale_echo_msg_warning_str = 'W' |
74 | let g:ale_echo_msg_format = '[%linter%] %s [%severity%]' |
75 | "let g:ale_linters = { |
76 | "" 'golang': ['gofmt','golint','errorCheck'], |
77 | ""} |
78 | |
79 | let g:ctrlp_match_window = 'bottom,order:btt,min:1,max:10,results:128' |
80 | "============================================================================== |
81 | " majutsushi/tagbar 插件 |
82 | "============================================================================== |
83 | |
84 | " majutsushi/tagbar 插件打开关闭快捷键 |
85 | nmap <leader>f :TagbarToggle<CR> |
86 | |
87 | let g:tagbar_width=65 |
88 | let g:tagbar_type_go = { |
89 | 'ctagstype' : 'go', |
90 | 'kinds' : [ |
91 | 'p:package', |
92 | 'i:imports:1', |
93 | 'c:constants', |
94 | 'v:variables', |
95 | 't:types', |
96 | 'n:interfaces', |
97 | 'w:fields', |
98 | 'e:embedded', |
99 | 'm:methods', |
10 大专栏 vim-config0 | 'r:constructor', |
101 | 'f:functions' |
102 | ], |
103 | 'sro' : '.', |
104 | 'kind2scope' : { |
105 | 't' : 'ctype', |
106 | 'n' : 'ntype' |
107 | }, |
108 | 'scope2kind' : { |
109 | 'ctype' : 't', |
110 | 'ntype' : 'n' |
111 | }, |
112 | 'ctagsbin' : 'gotags', |
113 | 'ctagsargs' : '-sort -silent' |
114 | } |
115 | "============================================================================== |
116 | " nerdtree-git-plugin 插件 |
117 | "============================================================================== |
118 | let g:NERDTreeIndicatorMapCustom = { |
119 | "Modified" : "?", |
120 | "Staged" : "?", |
121 | "Untracked" : "?", |
122 | "Renamed" : "?", |
123 | "Unmerged" : "═", |
124 | "Deleted" : "?", |
125 | "Dirty" : "?", |
126 | "Clean" : "??", |
127 | 'Ignored' : '?', |
128 | "Unknown" : "?" |
129 | } |
130 | autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif |
131 | let g:NERDTreeShowIgnoredStatus = 1 |
132 | |
133 | let g:go_fmt_command = "goimports" |
134 | let g:rehash256 = 1 |
135 | let g:molokai_original = 1 |
136 | |
137 | |
138 | |
139 | |
140 | " YouCompleteMe |
141 | "set runtimepath+=~/.vim/bundle/YouCompleteMe |
142 | "let g:ycm_collect_identifiers_from_tags_files = 1 " 开启 YCM 基于标签引擎 |
143 | let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注释与字符串中的内容也用于补全 |
144 | "let g:syntastic_ignore_files=[".*.py$"] |
145 | let g:ycm_seed_identifiers_with_syntax = 1 " 语法关键字补全 |
146 | "let g:ycm_complete_in_comments = 1 |
147 | "let g:ycm_confirm_extra_conf = 0 |
148 | let g:ycm_key_list_select_completion = ['<c-j>', '<Down>'] " 映射按键, 没有这个会拦截掉tab, 导致其他插件的tab不能用. |
149 | let g:ycm_key_list_previous_completion = ['<c-k>', '<Up>'] |
150 | let g:ycm_complete_in_comments = 1 " 在注释输入中也能补全 |
151 | let g:ycm_complete_in_strings = 1 " 在字符串输入中也能补全 |
152 | let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注释和字符串中的文字也会被收入补全 |
153 | "let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py' |
154 | "let g:ycm_show_diagnostics_ui = 0 " 禁用语法检查 |
155 | inoremap <expr> <CR> pumvisible() ? "<C-y>" : "<CR>" | " 回车即选中当前项 |
156 | let g:ycm_min_num_of_chars_for_completion=2 " 从第2个键入字符就开始罗列匹配项 |
157 | let g:ycm_autoclose_preview_window_after_completion = 1 |
158 | let g:ycm_autoclose_preview_window_after_insertion = 1 |
159 | |
160 | |
161 | |
162 | |
163 | |
164 | |
165 | |
166 | |
167 | "colorscheme molokai |
168 | set bg=dark "设置背景为黑色 |
169 | colorscheme gruvbox "设置主题为 gruvbox |
170 | set guioptions= "去掉两边的scrollbar |
171 | set guifont=Monaco:h17 "设置字体和字的大小 |
172 | |
173 | |
174 | |
175 | |
176 | |
177 | syntax on "显示行号 |
178 | "设置缩进 |
179 | set tabstop=4 |
180 | set softtabstop=4 |
181 | set shiftwidth=4 |
182 | set nu |
183 | set cursorline "突出显示当前行 |
184 | " ==== 系统剪切板复制粘贴 ==== |
185 | " v 模式下复制内容到系统剪切板 |
186 | vmap <Leader>c "+yy |
187 | " n 模式下复制一行到系统剪切板 |
188 | nmap <Leader>c "+yy |
189 | " n 模式下粘贴系统剪切板的内容 |
190 | nmap <Leader>v "+p |
191 | set incsearch |
192 | set ignorecase |
193 | filetype plugin indent on " 必须,作用未知 |
194 | |
195 | let g:go_def_mode='gopls' |
196 | let g:go_info_mode='gopls' |
197 | nmap fs :GoFillStruct<CR> |
198 | nmap fr :YcmCompleter GoToReferences<CR> |
199 | nmap fe :GoIfErr<CR> |
标签:背景 sign -- 按键 也会 hub scheme nta rev
原文地址:https://www.cnblogs.com/lijianming180/p/12389270.html