亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 操作系統 > 正文

vim配置文件

2024-06-28 16:04:37
字體:
來源:轉載
供稿:網友

預覽

這里寫圖片描述

~/.vimrc

" basic {{set numberset rulerset showcmdset nobackupset noswapfileset cursorlineset autoindentset cindentset smarttabset expandtabset smartindentset wildmenuset hlsearchset nowrapset guifont=monacoset encoding=utf-8set mouse=aset tabstop=4set shiftwidth=4set softtabstop=4set history=1000" }}" leader {{let mapleader=","nmap <leader>w :w<CR>nmap <leader>q :q<CR>nmap <leader>q1 :q!<CR>nmap <leader>wq :wq<CR>nmap <leader>y "+ynmap <leader>p "+pnmap <space> :nmap <C-l> :noh<CR>"buffernmap <leader><Tab> :bn<CR>"strip all trailing whitespace in the current filennoremap <leader>w :%s//s/+$//<cr>:let @/=''<CR>" }}" hightlightsyntax enablesyntax on" color" airline can be display when set thisset t_Co=256set laststatus=2"set background=darkcolorscheme molokai"color molokaifiletype onfiletype indent onfiletype plugin onfiletype plugin indent on" for vundle {{set nocompatiblefiletype offset rtp+=~/.vim/bundle/Vundle.vimcall vundle#rc()" add plugin at therePlugin 'VundleVim/Vundle.vim'Plugin 'vim-airline/vim-airline'Plugin 'vim-airline/vim-airline-themes'Plugin 'scrooloose/nerdtree'Plugin 'nathanaelkane/vim-indent-guides'Plugin 'tpope/vim-fugitive'Plugin 'djoshea/vim-matlab'Plugin 'djoshea/vim-matlab-fold'Plugin 'dracula/vim'Plugin 'terryma/vim-multiple-cursors'Plugin 'kien/ctrlp.vim'Plugin 'majutsushi/tagbar'Plugin 'Valloric/YouCompleteMe'Plugin 'Raimondi/delimitMate'Plugin 'docunext/closetag.vim'Plugin 'scrooloose/nerdcommenter'Plugin 'SirVer/ultisnips'Plugin 'honza/vim-snippets'Plugin 'scrooloose/syntastic'" Plugin 'jeaye/color_coded'Bundle 'ShowTrailingWhitespace'Bundle 'molokai'" plugin end herecall vundle#end()filetype plugin indent on" }}" settings for airlinelet g:airline_theme='luna'let g:airline_powerline_fonts=1let g:solarized_termcolors=16let g:airline#extensions#tabline#enabled = 1let g:airline#extensions#tagbar#enabled = 1let g:airline#extensions#syntastic#enabled = 1let g:airline#extensions#tabline#buffer_idx_mode = 1" tarbarnmap <leader>tb :Tagbar<CR>" settings for nerdtreemap <C-b> :NERDTreeToggle<CR>autocmd StdinReadPRe * let s:std_in=1autocmd StdinReadPre * let s:std_in=1autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endiflet g:NERDTreeDirArrowExpandable = '?'let g:NERDTreeDirArrowCollapsible = '?'" settings for IndentGuideslet g:indent_guides_enable_on_vim_startup = 1let g:indent_guides_auto_colors = 0let g:indent_guides_guide_size = 1autocmd VimEnter,Colorscheme * :hi IndentGuidesOdd guibg=red ctermbg=3autocmd VimEnter,Colorscheme * :hi IndentGuidesEven guibg=green ctermbg=4hi IndentGuidesOdd guibg=red ctermbg=3hi IndentGuidesEven guibg=green ctermbg=4" settings for youcompleteme" highlight Pmenu ctermfg=2 ctermbg=3 guifg=#005f87 guibg=#EEE8D5" highlight PmenuSel ctermfg=2 ctermbg=3 guifg=#AFD700 guibg=#106900let g:ycm_global_ycm_extra_conf = '~/.ycm_extra_conf.py'set completeopt=longest,menu "讓Vim的補全菜單行為與一般IDE一致(參考VimTip1228)autocmd InsertLeave * if pumvisible() == 0|pclose|endif "離開插入模式后自動關閉預覽窗口inoremap <expr> <CR> pumvisible() ? "/<C-y>" : "/<CR>" "回車即選中當前項" youcompleteme 默認tab s-tab 和自動補全沖突let g:ycm_key_list_select_completion=['<c-n>']" let g:ycm_key_list_select_completion = ['Down']let g:ycm_key_list_previous_completion=['<c-p>']" let g:ycm_key_list_previous_completion = ['<Up>']let g:ycm_confirm_extra_conf=0 "關閉加載.ycm_extra_conf.py提示let g:ycm_key_invoke_completion = '<C-a>' " 強制補全let g:ycm_collect_identifiers_from_tags_files=1 " 開啟 YCM 基于標簽引擎let g:ycm_min_num_of_chars_for_completion=2 " 從第2個鍵入字符就開始羅列匹配項let g:ycm_cache_omnifunc=0 " 禁止緩存匹配項,每次都重新生成匹配項let g:ycm_seed_identifiers_with_syntax=1 " 語法關鍵字補全nnoremap <F5> :YcmForceCompileAndDiagnostics<CR> "force recomile with syntastic" nnoremap <leader>lo :lopen<CR> "open locationlist" nnoremap <leader>lc :lclose<CR> "close locationlistinoremap <leader><leader> <C-x><C-o>let g:ycm_complete_in_comments = 1let g:ycm_complete_in_strings = 1let g:ycm_collect_identifiers_from_comments_and_strings = 0nnoremap <leader>jd :YcmCompleter GoToDefinitionElseDeclaration<CR> " 跳轉到定義處" imap { {}<ESC>i<CR><ESC>V<O" settings for nerdcommenter" Add spaces after comment delimiters by defaultlet g:NERDSpaceDelims = 1" Use compact syntax for prettified multi-line commentslet g:NERDCompactSexyComs = 1" Align line-wise comment delimiters flush left instead of following code indentationlet g:NERDDefaultAlign = 'left'" Set a language to use its alternate delimiters by defaultlet g:NERDAltDelims_java = 1" Add your own custom formats or override the defaultslet g:NERDCustomDelimiters = { 'c': { 'left': '/**','right': '*/' } }" Allow commenting and inverting empty lines (useful when commenting a region)let g:NERDCommentEmptyLines = 1" Enable trimming of trailing whitespace when uncommentinglet g:NERDTrimTrailingWhitespace = 1" for ultisnipslet g:UltiSnipsExpandTrigger="<tab>"let g:UltiSnipsJumpForwardTrigger="<c-b>"let g:UltiSnipsJumpBackwardTrigger="<c-z>"" syntasticlet g:syntastic_error_symbol = '?'let g:syntastic_warning_symbol = '?'" color code" hi link StructDecl Type" hi link UnionDecl Type" hi link ClassDecl Type" hi link EnumDecl Type

youcompleteme配置文件

# Copyright (C) 2014 Google Inc.## This file is part of ycmd.## ycmd is free software: you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation, either version 3 of the License, or# (at your option) any later version.## ycmd is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the# GNU General Public License for more details.## You should have received a copy of the GNU General Public License# along with ycmd. If not, see <http://www.gnu.org/licenses/>.import osimport ycm_core# These are the compilation flags that will be used in case there's no# compilation database set (by default, one is not set).# CHANGE THIS LIST OF FLAGS. YES, THIS IS THE DROID YOU HAVE BEEN LOOKING FOR.flags = ['-Wall','-Wextra','-Werror','-fexceptions','-DNDEBUG',# THIS IS IMPORTANT! Without a "-std=<something>" flag, clang won't know which# language to use when compiling headers. So it will guess. Badly. So C++# headers will be compiled as C headers. You don't want that so ALWAYS specify# a "-std=<something>".# For a C project, you would set this to something like 'c99' instead of# 'c++11'.'-std=c++11',# ...and the same thing goes for the magic -x option which specifies the# language that the files to be compiled are written in. This is mostly# relevant for c++ headers.# For a C project, you would set this to 'c' instead of 'c++'.'-x','c++','-isystem','/usr/include','-isystem','/usr/local/include','-isystem','/applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1','-isystem','/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include',# 注意下面把的庫文件根據你的系統修改# 格式和下面類似一個'-isystem'一個庫地址'-isystem','/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/6.3.1/../../../../include/c++/6.3.1','-isystem','/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/6.3.1/../../../../include/c++/6.3.1/x86_64-pc-linux-gnu','-isystem','/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/6.3.1/../../../../include/c++/6.3.1/backward','-isystem','/usr/local/include','-isystem','/usr/bin/../lib/clang/3.9.1/include','-isystem','/usr/include',]# Set this to the absolute path to the folder (NOT the file!) containing the# compile_commands.json file to use that instead of 'flags'. See here for# more details: http://clang.llvm.org/docs/JSONCompilationDatabase.html## Most projects will NOT need to set this to anything; you can just change the# 'flags' list of compilation flags.compilation_database_folder = ''if os.path.exists( compilation_database_folder ): database = ycm_core.CompilationDatabase( compilation_database_folder )else: database = NoneSOURCE_EXTENSIONS = [ '.cpp', '.cxx', '.cc', '.c', '.m', '.mm' ]def DirectoryOfThisScript(): return os.path.dirname( os.path.abspath( __file__ ) )def MakeRelativePathsInFlagsAbsolute( flags, working_directory ): if not working_directory: return list( flags ) new_flags = [] make_next_absolute = False path_flags = [ '-isystem', '-I', '-iquote', '--sysroot=' ] for flag in flags: new_flag = flag if make_next_absolute: make_next_absolute = False if not flag.startswith( '/' ): new_flag = os.path.join( working_directory, flag ) for path_flag in path_flags: if flag == path_flag: make_next_absolute = True break if flag.startswith( path_flag ): path = flag[ len( path_flag ): ] new_flag = path_flag + os.path.join( working_directory, path ) break if new_flag: new_flags.append( new_flag ) return new_flagsdef IsHeaderFile( filename ): extension = os.path.splitext( filename )[ 1 ] return extension in [ '.h', '.hxx', '.hpp', '.hh' ]def GetCompilationInfoForFile( filename ): # The compilation_commands.json file generated by CMake does not have entries # for header files. So we do our best by asking the db for flags for a # corresponding source file, if any. If one exists, the flags for that file # should be good enough. if IsHeaderFile( filename ): basename = os.path.splitext( filename )[ 0 ] for extension in SOURCE_EXTENSIONS: replacement_file = basename + extension if os.path.exists( replacement_file ): compilation_info = database.GetCompilationInfoForFile( replacement_file ) if compilation_info.compiler_flags_: return compilation_info return None return database.GetCompilationInfoForFile( filename )# This is the entry point; this function is called by ycmd to produce flags for# a file.def FlagsForFile( filename, **kwargs ): if database: # Bear in mind that compilation_info.compiler_flags_ does NOT return a # python list, but a "list-like" StringVec object compilation_info = GetCompilationInfoForFile( filename ) if not compilation_info: return None final_flags = MakeRelativePathsInFlagsAbsolute( compilation_info.compiler_flags_, compilation_info.compiler_working_dir_ ) else: relative_to = DirectoryOfThisScript() final_flags = MakeRelativePathsInFlagsAbsolute( flags, relative_to ) return { 'flags': final_flags }

安裝命令如下

# 首先安裝cmake和clang # 把上面的vimrc復制到你的vimrc # 編輯.ycm_extra_conf.py到$HOME/ git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim # 第一次進入會因為找不到mololai而報錯,忽略即可 vim +PluginInstall +qall cp -r $HOME/.vim/bundle/molokai/colors ../../ $HOME/.vim/bundle/YouCompleteMe/install.sh --clang-completer --system-libclang
上一篇:awk總結

下一篇:linux 分區理解

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美性xxxx18| 欧美一级在线亚洲天堂| 日韩电影中文 亚洲精品乱码| 亚洲国内精品在线| 国产91精品视频在线观看| 中文字幕亚洲天堂| 亚洲一区美女视频在线观看免费| 亚洲aⅴ男人的天堂在线观看| 亚洲va欧美va国产综合剧情| 亚洲**2019国产| 亚洲欧美国产精品va在线观看| 亚洲人午夜精品免费| 精品久久久久久久中文字幕| 欧美性受xxxx白人性爽| 欧美日韩福利电影| 欧美日韩加勒比精品一区| 草民午夜欧美限制a级福利片| 97香蕉超级碰碰久久免费的优势| 国产精品久久久久久久天堂| 亚洲色图13p| 亚洲国产小视频| 久久久久久久香蕉网| 国产91|九色| 亚洲国产日韩欧美在线图片| 国产免费一区二区三区在线能观看| 国产精品久久综合av爱欲tv| 成人免费福利在线| 欧美激情喷水视频| 中文字幕日韩欧美在线| 91国产在线精品| 亚洲爱爱爱爱爱| 欧美大全免费观看电视剧大泉洋| 一本色道久久综合狠狠躁篇的优点| 国产日韩换脸av一区在线观看| 欧美老女人性视频| 亚洲国产成人爱av在线播放| 日韩中文字在线| 国产一区二区激情| 色综合天天综合网国产成人网| 国产精品美乳一区二区免费| 国产精品视频地址| 久热在线中文字幕色999舞| 中文字幕自拍vr一区二区三区| 欧美福利视频在线观看| 91在线高清免费观看| 在线视频欧美日韩精品| 国产91精品久久久久| 九色精品美女在线| 韩日精品中文字幕| 成人黄色网免费| 国产综合在线看| 91美女片黄在线观看游戏| 欧美日韩精品中文字幕| 欧美日韩在线视频首页| 亚洲乱码av中文一区二区| 一本一本久久a久久精品综合小说| 韩国19禁主播vip福利视频| 国产精品一区二区三区免费视频| 日韩人在线观看| 国内久久久精品| 亚洲精品视频网上网址在线观看| 91中文在线观看| 国产美女直播视频一区| 91中文字幕在线| 成人黄色av免费在线观看| 亚洲午夜女主播在线直播| 人人做人人澡人人爽欧美| 最近2019年中文视频免费在线观看| 中文字幕日韩有码| 亚洲成人精品在线| 麻豆精品精华液| 日本sm极度另类视频| 国产在线精品成人一区二区三区| 成人黄色免费片| 社区色欧美激情 | 另类天堂视频在线观看| 久久精彩免费视频| 亚洲肉体裸体xxxx137| 激情成人中文字幕| 91精品国产综合久久男男| 亚洲第一福利网站| 亚洲精品一区二区久| 亚洲国产日韩一区| 777777777亚洲妇女| 国内外成人免费激情在线视频网站| 亚洲天堂网在线观看| 中文字幕精品一区久久久久| 国产精品女主播视频| 狠狠久久五月精品中文字幕| 欧美黑人一级爽快片淫片高清| 国产丝袜一区视频在线观看| 综合久久五月天| 久久久久久久久久国产精品| 狠狠色香婷婷久久亚洲精品| 欧美性极品少妇精品网站| 国产不卡精品视男人的天堂| 亚洲国产精品悠悠久久琪琪| 成人妇女免费播放久久久| 538国产精品视频一区二区| 精品爽片免费看久久| 欧美俄罗斯乱妇| 九九视频这里只有精品| 欧美成人四级hd版| 亚洲国产精品va| 久久久99久久精品女同性| 插插插亚洲综合网| 狠狠久久亚洲欧美专区| 国产精品亚洲欧美导航| 久久久在线观看| 精品色蜜蜜精品视频在线观看| 亚洲国产精品成人va在线观看| 91亚洲国产精品| 亚洲欧美另类自拍| 国产日韩中文字幕在线| 国产精品青草久久久久福利99| 欧美激情综合亚洲一二区| 中文字幕最新精品| 国产主播精品在线| 日本午夜在线亚洲.国产| 在线播放亚洲激情| 亚洲香蕉成视频在线观看| 国产精品久久久久久久久久| 日韩av在线看| 成人a免费视频| 亚洲欧洲国产一区| 欧美成人亚洲成人| 91夜夜未满十八勿入爽爽影院| 日韩中文视频免费在线观看| 日韩在线视频国产| 国产日韩欧美综合| 91精品国产电影| 精品视频中文字幕| 国产精品视频99| 久久99国产精品久久久久久久久| 国产精品久久久精品| 日本一欧美一欧美一亚洲视频| 91经典在线视频| 国产精品a久久久久久| 日本一本a高清免费不卡| 97涩涩爰在线观看亚洲| 久久影视电视剧免费网站| 久久人人爽人人| 亚洲第一页中文字幕| 欧美床上激情在线观看| 91av在线精品| 国产婷婷97碰碰久久人人蜜臀| 97超级碰在线看视频免费在线看| 国产97在线|日韩| 日韩高清免费在线| 欧美日韩高清在线观看| 日韩国产精品一区| 亚洲一区二区三区香蕉| 社区色欧美激情 | 国产精品日韩在线观看| 欧美性猛交xxxx久久久| 亚洲天堂av综合网| 欧美精品在线观看91| 成人激情视频网| 国产成人精品免高潮在线观看| 亚洲天堂开心观看| 91精品视频在线免费观看| 久久久av一区| 日韩一区二区欧美| 欧美一级在线亚洲天堂|