工欲善其事,必先利其器。虽然说Vim和Emacs是神器,但是对于使用Visual Studio的程序员来说,我们也可以通过一些快捷键和潜在的一些功能实现脱离鼠标写代码,提高工作效率,像使用Vim一样使用Visual Studio。
当然,如果想真正像使用Vim一样使用Visual Studio可以安装这个插件:,只支持VS2010+。
下面我会总结一些我觉得大家平时可能不怎么知道的但是又很好用的一些VS的快捷键和使用技巧。如果您是大牛那不需要看了,哈哈。个人知识有限如果大家还有什么比较实用的快捷键,欢迎分享。因为不像Vim有Normal,Insert两种模式,所以VS快捷键的特点就是需要很多Ctrl, Shift, Alt的参与。这个缺点就是很可能会跟你电脑上某一些程序的快捷键冲突了。而且不知道为什么Visual Studio在不同电脑上的某一些快捷键有可能是不一样的,所以可能文中会有一些快捷键在你的电脑上无法使用,Google it。我目前用的办法就是将我熟悉的配置同步到所有我使用的Visual Studio中来保证我自己用的各个版本之间的快捷键是一样的。
这些快捷键咋一看挺难记的,但是我的方法是先将觉得有用的记下来,然后下次要使用到这个功能的时候克制住不要用鼠标,去查一下使用快捷键。这么几次以后你就记住了。
一、主题
你可能会很奇怪为什么第一个居然是这么一个东西。当然是这个啦!我们要整天对着VS写代码,debug,面对VS默认的配色你看久了很无聊有木有?眼睛很难受有木有?选择一个合适自己的主题,既可以保护视力,又可以让自己的心情愉悦,心情好了顺便连工作效率也一起提高了不是很好么!
如果你还在用默认的主题,赶紧换掉吧。下面推荐一个提供VS配色方案的一个网站:StudioStyles,域名和网站同名:。下面是,我觉得看着很舒服,很和谐。
二、更有效得使用编辑器
这里指的编辑器就是也就是大家写代码的地方。
更有效的剪切板
1. 循环剪切板: Shift + Ctrl + V 。在VS中多次复制,其实VS都会保存下来,只需要调用这个快捷键就可以把之前多次的复制记录都粘贴出来。
2. 整行剪切:Ctrl + X。光标不要选中任何文字,然后按这个快捷键就可以把整行剪切下来。 Ctrl + L 同样可以实现整行剪切,使用方法也是一样,区别在于使用Ctrl + X后光标会落于下一行的行尾,二使用Ctrl + L光标则会停在下一行的行首。
3. 整行复制:Ctrl + C。这个和Ctrl + X的使用方法一样。
更有效的选择:
1. 基本选择:Shift + 光标(←↓↑→) 。基于光标所在的地点,按住Shift然后使用上下左右光标可以自由选择。
2. 基于单词选择:Shift + Ctrl+(→←)。使用这个可以跳跃单词的选,也可配合Home/End选择整行
3. 基于“方块”选择:Shift + Alt + (←↓↑→) 或者Alt + 鼠标。
4. 选择一个整个单词:Shift + Ctrl + W。把光标放在某个单词中的时候按快捷键即可。
更有效的编辑:
1. 整行删除:Shift + Delete。
2. 删除下一个单词:Ctrl + Delete。
3. 删除上一个单词:Ctrl + 退格(Backspace)
更有效的位置跳转:
1. 基于单词的跳转:Ctrl + (←→)。此快捷键可以让光标以单词为单位左右进行跳转。
2. 跳到上一个本单词: Shift + Ctrl +(↓↑) 。这个功能比较有用,可以将光标移动到光标所在的那个单词上次或者下次在文中出现的地方。
3. 跳到上一个光标停留的地方: Ctrl + -(往前);Ctrl + Shift + - (往后)
4. 快速跳转到某一行: Ctrl + G
5. 快速跳到文件头尾:Ctrl + Home/End
6. 快速跳转到本行第一个非空格开头:Home。如果要到本行最开头则按两下Home即可。
7. 快速跳转到本行结尾:End
8. 匹配括号移动:Ctrl + ],适用于 (), { }, [], “” 。将光标放在需要匹配的括号然后按这个快捷键,光标会跳转到其相对于那个的括号上去。这个功能比较有用,但是我还有一个建议。Visual Studio本来就会将相对应的括号给特别标识出来,只是一般默认的那个颜色和背景颜色比较类似看不出来,建议将其在Font And Colors中设置成醒目的颜色。那个括号匹配设置如图,中文不知道是什么,大家找一下应该就可以找到了。
设置好以后效果如下,是不是很醒目了?这样就可以在括号群中迅速找到和它对应的那一个了。
小结
如果你需要找一个你不知道的快捷键,可以通过在菜单栏上去看,一般常用的都会将快捷键放在菜单边上。或者你可以去MSDN上去查一下: 。我觉得非常有必要去看一些类似于高效使用VS的资料,因为很多时候如果你不知道某一些功能的存在,你根本就不会想到去用更别说去搜这个功能。
编辑器中还有很多其他的技巧,先写一部分吧,这只是很小的一部分,还有很多其他的技巧以后慢慢道来。以后可能还会总结一些关于搜索、编辑、调试、导航、Intellisense等等的内容。