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