简介

VIM是一款很高效的编辑工具,所幸的是VS2012以后支持VIM的插件:VsVim。下面介绍插件的安装、配置及简单使用。

1. 下载安装

去官网下载,双击直接安装后,重新打开VS。

https://marketplace.visualstudio.com/items?itemName=JaredParMSFT.VsVim

安装完成后是这个样子的:

会提示快捷键冲突,下面介绍相关配置。

2. 插件配置

2.1 关闭编辑框

Tools -> options:

这时信息会在屏幕的最下方显示:

可以在 View->OtherWindow->Command Window 中,打开命令窗口(ctrl + alt + a):

2.2 快捷键配置

Vim的快捷键与VS的快捷键有很多冲突,这里我仅把自己常用的快捷键改了过来:

2.3  VsVim配置文件

vs中所有可以设置快捷键的命令,都可以被调用。
查看命令:在vs中,选择工具->选项->环境->键盘,
使用英文版vs,命令一目了然,每行都是一个命令,都可以被调用:

使用命令:set可以查看_vimrc的存放路径,一般为:C:\Users\Administrator,在该目录下新建文件“_vimrc”没有后缀名,写入如下内容:

" 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>

重启VS。

VS下使用VIM, Visual Studio 安装 VSvim插件 配置 及使用的更多相关文章

  1. 在Visual Studio 中使用git——给Visual Studio安装 git插件(二)

    在Visual Studio 中使用git--什么是Git(一) 第二部分: 给Visual Studio安装 git插件 如果要使用 git 进行版本管理,其实使用 git 命令行工具就完全足够了, ...

  2. 2022年windows的Visual Studio 安装后初始配置

    目录 前言 1.开发环境设置,修改存储空间 打开编译器,选择工具-->导入和导出设置-->重置所有设置-->下一步 修改盘符-->下一步->选择环境->完成 2.主 ...

  3. Visual Studio安装SVN插件

    VS的SVN插件 材料 VS安装程序. VisualSVN安装程序,点击下载.  VisualSVN-5.0.1 前期准备 在代码管理的服务器上安装SVN server,可参考svn安装部署以及服务器 ...

  4. Visual Studio安装卸载模板

    Visual Studio中有两种类型的模板:项目模板和项模板 一.已安装模板: 默认情况下,与产品一起安装的模板位于以下位置: ①\<Visual Studio 安装目录>\Common ...

  5. Visual Studio 安装 C++

    Visual Studio 安装 C++

  6. Visual Studio 安装 MFC

    **Visual Studio 安装 MFC 库**   打开 Visual Studio Installer //程序   选择对应的版本 (本人 VS2022)->修改   [点击]单个组件 ...

  7. Visual Studio的背景插件

    分享一个Visual Studio的背景插件,让堆码更富情趣..哈哈   忘记一件重要的事情,我使用的是VS 2012版,其他更高版本应该是可以找到的,以下版本就不清楚了.有可能找不到,见谅,也不是我 ...

  8. 【Visual Studio Code】插件

    [Visual Studio Code]插件 转载:https://www.cnblogs.com/yangchongxing/p/10625628.html 目录 ================= ...

  9. Android Studio安装Genymotion插件

    Android Studio安装Genymotion插件 Eclipse就不介绍了,谷歌都已经放弃Eclipse了,你还在坚持什么. 安装Genymotion 官网:https://www.genym ...

随机推荐

  1. 6、基于highcharts实现的线性拟合,计算部分在java中实现,画的是正态概率图

    1.坐标点类 package cn.test.domain; public class Point { double x; double y; public Point(){ } public Poi ...

  2. Oracle 表空间详解

    目录 目录 表空间概述 表空间的分类 默认表空间 查看默认的永久表空间 查看默认的TEMP表空间 查看默认的表空间类型 逻辑结构到物理结构的映射 对表空间的操作 查看表空间使用情况 查看数据库拥有的表 ...

  3. javsscript闭包的一种使用场景--沙箱

    ​ //沙箱:模块化,沙箱是一个隔离的环境,最大的好处就是避免全局变量的污染. var model = (function () {//一个匿名的立即执行函数 var price = 900;//这是 ...

  4. JS对象中属性的增删改查

    对象属于一种复合的数据类型,在对象中可以保存多个不同数据类型的属性 对象的分类:           1.内建对象                 -在ES标准中定义的对象,在任何的ES的实现中都可以 ...

  5. 2019 ACM-ICPC 南京 现场赛 K. Triangle (二分)

    题意 给定一个三角形和一个点 \(p\),如果该点不在三角形边上直接输出 \(-1\),否则在三角形上找一点 \(q\),使得线段 \(pq\) 平分三角形面积. 思路 看完题想都没想直接二分了. 就 ...

  6. Pandas DataFrame操作

    DataFrame的创建 >>> import pandas as pd >>> from pandas import DataFrame #define a di ...

  7. JavaScript中Function函数与Object对象的关系

    函数对象和其他内部对象的关系 除了函数对象,还有很多内部对象,比如:Object.Array.Date.RegExp.Math.Error.这些名称实际上表示一个 类型,可以通过new操作符返回一个对 ...

  8. Python之小测试:用正则表达式写一个小爬虫用于保存贴吧里的所有图片

    很简单的两步: 1.获取网页源代码 2.利用正则表达式提取出图片地址 3.下载 #!/usr/bin/python #coding=utf8 import re # 正则表达式 import urll ...

  9. Groovy学习:第四章 Groovy特性深入

    作者:chszs 1. 断言 Java开发者常常使用JUnit或TestNG做单元测试,所以对断言是很清楚的.断言是用于验证假设的条件是否为真.在Groovy的断言中,如果假设的条件不为真,那么就会抛 ...

  10. Redis事务 和 pipleline

    1.reidis事务 Redis 事务可以一次执行多个命令, 并且带有以下三个重要的保证: 批量操作在发送 EXEC 命令前被放入队列缓存. 收到 EXEC 命令后进入事务执行,事务中任意命令执行失败 ...