(此文章同时发表在本人微信公众号“dotNET每日精华文章”)

如果你已经在用Resharper这个编程神器(机器杀手)的话,那么为了进一步提高工作效率熟悉它的一些特殊特性和快捷键那是必须的。

Resharper是JetBrains出品的一款Visual Studio插件,它的强大是人所共知的,有了它VS是如虎添翼(当然前提是你的机器要先添内存)。不过很多人其实没有高效的利用它所提供的强大特性,Vladimir Khorikov就在一篇博文中描述了8项人们很少了解和使用但是对日常工作非常有用的特性及它们的快捷键。

1,上下左右移动

VS内置的功能可以方便的移动一行,但是Resharper的移动功能可以移动整个方法的位置,属性的位置,语句行的位置,乃至方法签名中参数的位置。默认的快捷键是:Ctrl + Shift + Alt + Up/Down/Left/Right,不过为了更加方便,作者建议重新映射为Alt + Up/Down/Left/Right。

移动方法的动画如下:

2,导航到下一个和上一个成员

这个特性很适合和上面一个特性配合在一起用,比如先导航到下面一个方法,然后把方法上移。这个特性的快捷键默认是Alt + Up/Down,现在最好映射为Ctrl + Up/Down。

效果如下面动画所示:

3,导航到解决方案中的下一个错误处

接下来一个极有用的特性是导航到解决方案中的下一个错误处,让你可以快速地浏览所有编译错误。默认的快捷键是Shift + Alt + PageDown/PageUp,而作者推荐最方便的快捷键是Ctrl + Shift + Down/Up。

4,导航到所属的方法和类上

这个特性可以让你导航到当前行属于的方法签名处,或者所属类的定义处。它的默认快捷键是Ctrl + [,本身就很顺手了。

这个特性用文字解释起来可能没有这么直观,还是看图就一目了然:

5,选择所属的方法和类

有时候,你可能希望的不是导航到所属的方法和类上,而是希望选择整个方法或类,那么就用Ctrl + Shift + [,如果选择的整个方法还想接着选择整个类,那么就再按一次Ctrl + Shift + [。

6,列出最近编辑位置

我比较常用的一个特性是列出最近编辑的文件,而在一个文件当中想快速回到之前编辑的地方,那么用快捷键Ctrl + Shift + Comma就可以列出最近编辑位置的列表。如下图:

7,在解决方案管理器中定位正在编辑的文件

VS内置类似特性,不过需要点鼠标来操作。使用Resharper后,可以通过快捷键Shift + Alt + L来快速定位。

8,迅速为一行代码加上大括号

我之前要完成这个操作,都是移动到这行的头,然后添加左括号,依靠编辑器自动加上右括号。不过使用Resharper的万能快捷键Alt + Enter后,接着按一下Enter就可以搞定。

比如:

由于Resharper可以使用MVP身份申请到License,所以我很早就开始使用;到目前的9版本,功能越来越强大了。有了它,代码编写效率真的提高很多,且代码规范、重构等都可以依靠它。对于还没有使用过的朋友,真的可以试试;对于已经在使用的朋友,摸透它的快捷键确实很有帮助。JetBrains专门有发布完整快捷键列表的pdf文档,“阅读原文”中就有这个pdf的链接。

原文地址:http://enterprisecraftsmanship.com/2015/03/27/8-resharper-shortcuts-everyone-should-know/

每个人都应该知晓的8项Resharper快捷键的更多相关文章

  1. 移动IP 它最初设想每个人都在编写应用层(7)API而不是传输层(4)API 对于QUIC,连接的标识符不是“套接字”(源/目标端口/地址协议组合)的传统概念,而是分配给连接的64位标识符

    小结: 1. 因为您对OSI模型的教育中缺少的一点是,它最初设想每个人都在编写应用层(7)API而不是传输层(4)API.应该有像应用程序服务元素之类的 东西,它们可以以标准方式处理文件传输和消息传递 ...

  2. Maven系列第8篇:你的maven项目构建太慢了,我实在看不下去,带你一起磨刀!!多数使用maven的人都经常想要的一种功能,但是大多数人都不知道如何使用!!!

    maven系列目标:从入门开始开始掌握一个高级开发所需要的maven技能. 这是maven系列第8篇. 整个maven系列的内容前后是有依赖的,如果之前没有接触过maven,建议从第一篇看起,本文尾部 ...

  3. 年薪100万的人都是怎么玩Excel的?

    年薪100万的人都是怎么玩Excel的? 2017-12-21 13:42美国 作者:珍妮Jenny 来源:一周进步(ID:weekweekup) 本文已获原作者转载授权,如需转载请联系原公号 本文重 ...

  4. 关于DevOps的七大误解,99%的人都曾中过招!

    [摘要] DevOps方法可以为组织带来显著的积极影响,降低成本.提高效率,使开发团队的工作更加精简.为了掌握这个过程的优势,有必要认识到DevOps是什么.不是什么.在本文中,就将讨论一些流传甚广的 ...

  5. 上传伪技术~很多人都以为判断了后缀,判断了ContentType,判断了头文件就真的安全了。是吗?

    今天群里有人聊图片上传,简单说下自己的经验(大牛勿喷) 0.如果你的方法里面是有指定路径的,记得一定要过滤../,比如你把 aa文件夹设置了权限,一些类似于exe,asp,php之类的文件不能执行,那 ...

  6. 99%的人都理解错了HTTP中GET与POST的区别(转载

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...

  7. 99%的人都理解错了HTTP中GET与POST的区别

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...

  8. 身处IT的你对身边人都有哪些影响

    前不久,跟外甥一起吃饭:他明年就要中考了,我就想,这马上就到人生的关键路口了,看他自己对将来有什么想法没:就问了句:勇勇,你以后想学习哪些方面的东西或者想从事什么工作呢?他简单的说了句:我要跟你一样学 ...

  9. 一道月薪3W的java面试题 (小明和小强都是张老师的学生,张老师的生日是某月某日,2人都不知道张老师的生日)

    小明和小强都是张老师的学生,张老师的生日是M月N日,2人都知道张老师的生日 是下列10组中的一天,张老师把M值告诉了小明,把N值告诉了小强,张老师问他们知道他的生日是那一天吗? 3月4日 3月5日 3 ...

随机推荐

  1. centos下使用eclipse jlink 调试uboot

    一.安装java jdk 1.CentOS默认情况下,会安装OpenOffice之类的软件,这些软件需要Java的支持,默认会安装JDK的环境,若需要特定的Java环境,最好将默认的JDK彻底删除: ...

  2. VIM、GVIM在WINDOWS下中文乱码的终极解决方案

    文章转自:http://www.liuhuadong.com/archives/68 vim.gvim在windows下中文乱码的终极解决方案在windows下vim的中文字体显示并不好,所以我们需要 ...

  3. PHP访问数据,增删改

    主页面 <h1>主页面</h1> <table width="100%" border="1" cellpadding=" ...

  4. JAVA经典算法40题及解答

    JAVA经典算法40题 [程序1]   题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分 ...

  5. angular js 自定义指令

    我们有些时候需要把后台返回过来的带有html标签的字符串binding到界面中一个指定的div或者其他的控制器中. 使用普通ng-bind不会自动解析出html语句. js中这样定义: app.dir ...

  6. poj1789 Truck History

    Truck History Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 20768   Accepted: 8045 De ...

  7. python 之验证码

    验证码原理在于后台自动创建一张带有随机内容的图片,然后将内容通过img标签输出到页面. 安装图像处理模块: pip3 install pillow

  8. 用sed删除空行

    用sed删除空行 我的代码如下:class Song def initialize(name)        @name = name    end def tell        puts @nam ...

  9. 【Python】Python XML 读写

    class ACTIVE_FILE_PROTECT_RULE_VIEW(APIView): renderer_classes = (JSONRenderer, BrowsableAPIRenderer ...

  10. mybatis处理集合、循环、数组和in查询等语句的使用

    在Mybatis的xml配置中使用集合,主要是用到了foreach动态语句. foreach的参数: foreach元素的属性主要有 item,index,collection,open,separa ...