vs使用vim模式vsvim


參考這個帖子:

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>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM