參考這個帖子:
VS下使用VIM, Visual Studio 安裝 VSvim插件 配置 及使用 - QIYUEXIN - 博客園 (cnblogs.com)
下載鏈接:
VsVim - Visual Studio Marketplace
稍微與上貼不同,安裝完打開vs后會顯示如下,直接點擊那個“configure”
直接進入keyboard,打鈎,handled all with vsvim
在normal模式輸入:set
可以得到如下信息,可在相應目錄里,比如C:\Users\Administrator\vimfiles里面新建一個_vsvimrc(無后綴)的配置文件
配置文件內容如下:
" 1. 注釋 :vnoremap ci :s/^/\/\/<cr> :vnoremap cu :s/\/\//<cr> :nnoremap ci :s/^/\/\/<cr> :nnoremap cu :s/\/\//<cr> " 2.相關配置 " 單個文件中: ":noremap gd <c-]>zz "跳轉到定義" :nnoremap gc :vsc Build.Compile "編譯" :nnoremap gb :vsc Build.BuildSolution "build the solution" :nnoremap gs :vsc Debug.StopDebugging "結束調試" :nnoremap gr :vsc Debug.Start "開始調試" ":vnoremap gq == ":nnoremap <space> za "折疊" :nnoremap zm :vsc VAssistX.ListMethodsInCurrentFile<cr> "函數列表" :nnoremap cj :vsc VAssistX.FindReferencesinFile<CR> "當前文件中的引用" :nnoremap ca :vsc VAssistX.FindReferences<CR> "查看所有引用" :nnoremap cm :vsc File.OpenContainingFolder<CR> "打開所在文件夾" :nnoremap zj :vsc Edit.QuickInfo<CR> "查看函數定義文檔" :nnoremap zp :vsc VAssistX.RefactorImplementInterface<CR> "實現接口" "visual模式中的查找" :vnoremap * "/y/<C-r>/<CR> :vnoremap # "/y?<C-r>/<CR> .多文件 :nnoremap <c-o> :vsc View.NavigateBackward<CR> :nnoremap <c-i> :vsc View.NavigateForward<CR> "打開查看類的對話框 :nnoremap cs :vsc VAssistX.FindSymbolDialog<CR> "打開查看文件的對話框 :nnoremap cf :vsc VAssistX.OpenFileInSolutionDialog<CR> "open VAOutline :nnoremap co :vsc VAssistX.VAOutline<CR> "打開解決方案資源管理器 :nnoremap cv :vsc View.SolutionExplorer<CR> "在文件中查找 :nnoremap ck :vsc Edit.FindinFiles<CR>
以下是最新的配置
""" General filetype plugin indent on set autoread let mapleader="\<space>" "let mapleader=";" set relativenumber set clipboard=unnamed set showcmd " show command in bottom bar set cursorline " highlight current line set laststatus=2 "execute pathogen#infect() "call pathogen#helptags() """ VIM UI " Always show current position set ruler " Height of the command bar set cmdheight=2 " Ignore case when searching set ignorecase " This makes the search case sensitive if uppercase is entered set smartcase " Highlight search results set hlsearch " Makes search act like search in modern browsers set incsearch " Show matching brackets set showmatch " Turn on wild menu set wildmenu """ Colors and Fonts " Enable syntax highlighting syntax enable set guifont=Sauce_Code_Powerline:h10 """ Text, tab and indent related " Use spaces instead of tabs set expandtab " Be smart when using tabs set smarttab " 1 tab == 4 spaces set shiftwidth=4 set tabstop=4 " Linebreak on 500 characters set lbr set tw=500 " Auto indent, smart indent, wrap lines set ai set si set wrap """ Visual mode related " Commenting """ Moving around, tabs, windows and buffers " Treat long lines as break lines (useful when moving around in them) noremap j gj noremap k gk " format nnoremap <leader>fm :vsc Edit.FormatDocument<CR> vnoremap <leader>fm :vsc Edit.FormatSelection<CR> inoremap jk <esc> nmap <leader>s :w<cr> imap <leader>e <esc> vmap <leader>e <esc> vnoremap <leader>zs :s/^/\/\/<cr> vnoremap <leader>zS :s/\/\//<cr> nnoremap <leader>zs :s/^/\/\/<cr> nnoremap <leader>zS :s/\/\//<cr> nmap <leader>ma :vsc Build.Compilie<cr> nmap <leader>mr :vsc Debug.StartWithoutDebugging<cr> "Useful mappings for managing tabs "noremap <leader>tn :tabnew<cr> "noremap <leader>to :tabonly<cr> "noremap <leader>tc :tabclose<cr> "noremap <leader>tm :tabmove "nnoremap <leader>su :vsc Edit.FindAllReferences<cr> "nnoremap <leader>fu :vsc Edit.FindAllReferences<cr> " cut "vnoremap <C-x> :vsc Edit.Cut<cr> "nnoremap <C-x> :vsc Edit.LineCut<cr> " <C-P> " nnoremap <C-P> :vsc Edit.ParameterInfo<cr> " inoremap <C-P> <C-o>:vsc Edit.ParameterInfo<cr> " <C-Q> " nnoremap <C-q> :action QuickJavaDoc<CR> " as mouse clicked "nnoremap <leader>gd :vsc Edit.GoToDeclaration <C-r><C-w><cr> "inoremap <leader>gd <ESC>:vsc Edit.GoToDeclaration <C-r><C-w><cr> " back "nnoremap <leader>gb :vsc View.NavigateBackward<CR> " forward "nnoremap <leader>fw :vsc View.NavigateForward<cr> " built in search looks better "nnoremap <C-f> :vsc Edit.FindinFiles<cr>