每个人都应该知晓的8项Resharper快捷键
(此文章同时发表在本人微信公众号“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快捷键的更多相关文章
- 移动IP 它最初设想每个人都在编写应用层(7)API而不是传输层(4)API 对于QUIC,连接的标识符不是“套接字”(源/目标端口/地址协议组合)的传统概念,而是分配给连接的64位标识符
小结: 1. 因为您对OSI模型的教育中缺少的一点是,它最初设想每个人都在编写应用层(7)API而不是传输层(4)API.应该有像应用程序服务元素之类的 东西,它们可以以标准方式处理文件传输和消息传递 ...
- Maven系列第8篇:你的maven项目构建太慢了,我实在看不下去,带你一起磨刀!!多数使用maven的人都经常想要的一种功能,但是大多数人都不知道如何使用!!!
maven系列目标:从入门开始开始掌握一个高级开发所需要的maven技能. 这是maven系列第8篇. 整个maven系列的内容前后是有依赖的,如果之前没有接触过maven,建议从第一篇看起,本文尾部 ...
- 年薪100万的人都是怎么玩Excel的?
年薪100万的人都是怎么玩Excel的? 2017-12-21 13:42美国 作者:珍妮Jenny 来源:一周进步(ID:weekweekup) 本文已获原作者转载授权,如需转载请联系原公号 本文重 ...
- 关于DevOps的七大误解,99%的人都曾中过招!
[摘要] DevOps方法可以为组织带来显著的积极影响,降低成本.提高效率,使开发团队的工作更加精简.为了掌握这个过程的优势,有必要认识到DevOps是什么.不是什么.在本文中,就将讨论一些流传甚广的 ...
- 上传伪技术~很多人都以为判断了后缀,判断了ContentType,判断了头文件就真的安全了。是吗?
今天群里有人聊图片上传,简单说下自己的经验(大牛勿喷) 0.如果你的方法里面是有指定路径的,记得一定要过滤../,比如你把 aa文件夹设置了权限,一些类似于exe,asp,php之类的文件不能执行,那 ...
- 99%的人都理解错了HTTP中GET与POST的区别(转载
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...
- 99%的人都理解错了HTTP中GET与POST的区别
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...
- 身处IT的你对身边人都有哪些影响
前不久,跟外甥一起吃饭:他明年就要中考了,我就想,这马上就到人生的关键路口了,看他自己对将来有什么想法没:就问了句:勇勇,你以后想学习哪些方面的东西或者想从事什么工作呢?他简单的说了句:我要跟你一样学 ...
- 一道月薪3W的java面试题 (小明和小强都是张老师的学生,张老师的生日是某月某日,2人都不知道张老师的生日)
小明和小强都是张老师的学生,张老师的生日是M月N日,2人都知道张老师的生日 是下列10组中的一天,张老师把M值告诉了小明,把N值告诉了小强,张老师问他们知道他的生日是那一天吗? 3月4日 3月5日 3 ...
随机推荐
- WebSocket 是什么原理?为什么可以实现持久连接?
https://www.zhihu.com/question/20215561 作者:Ovear链接:https://www.zhihu.com/question/20215561/answer/ ...
- C语言时间函数
#include "time.h" #include "stdio.h" #include "stdlib.h" int main() { ...
- Java-TCP Socket编程
TCP 的 Java 支持 协议相当于相互通信的程序间达成的一种约定,它规定了分组报文的结构.交换方式.包含的意义以及怎样对报文所包含的信息进行解析,TCP/IP 协议族有 IP 协议.TCP 协议和 ...
- 根据ID获取CEdit的句柄实例
MyApp.h和MyApp.cpp #ifndef MY_APP_H_ #define MY_APP_H_ #include <afxwin.h> class CMyApp:public ...
- Spring各个jar包的简介
spring.jar是包含有完整发布的单个jar 包,spring.jar中包含除了spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到 spring-m ...
- App开发到App Store上架,发布流程。
http://blog.csdn.net/wojsg001/article/details/12005887 App开发到App Store上架,发布流程. 分类: IOS2013-09-25 11 ...
- scrollview里面多张图片,每张都能放大缩小
http://blog.sina.com.cn/s/blog_5d68044001018s1n.html scrollview里面多张图片,每张都能放大缩小 - (void)viewDidLoad{ ...
- [Educational Codeforces Round 16]A. King Moves
[Educational Codeforces Round 16]A. King Moves 试题描述 The only king stands on the standard chess board ...
- zookeeper 用法和日常运维
本文以ZooKeeper3.4.3版本的官方指南为基础:http://zookeeper.apache.org/doc/r3.4.3/zookeeperAdmin.html,补充一些作者运维实践中的要 ...
- Linux upstart启动方式详解
Ubuntu从6.10开始逐步用Upstart()代替原来的SysVinit进行服务进程的管理.RHEL(CentOS)也都从版本6开始转用Upstart代替以往的init.d/rcX.d的线性启动 ...