键盘快捷键、宏列表、表达式
附录 A:SnapDevelop 的键盘快捷键
下表列出了 SnapDevelop 的所有键盘快捷键。
类别 | 功能 | 键盘快捷键 |
---|---|---|
菜单栏 | 文件 | |
新建 > 项目 | Ctrl + Shift + N | |
新建 > 文件 | Ctrl + N | |
打开 > 项目/解决方案 | Ctrl + Shift + O | |
打开 > 文件 | Ctrl + O | |
打开 > 文件夹 | Ctrl + Shift + Alt + O | |
保存 | Ctrl + S | |
保存全部 | Ctrl + Shift + S | |
退出 | Ctrl + F4 | |
编辑 | ||
快速查找 | Ctrl + F | |
快速替换 | Ctrl + H | |
在文件中查找 | Ctrl + Shift + F | |
在文件中替换 | Ctrl + Shift + H | |
视图 | ||
数据库服务器资源管理器 | Ctrl + Alt + B | |
错误列表 | Ctrl + W, E | |
输出 | Ctrl + W, O | |
编译 | ||
编译解决方案 | Ctrl + Shift + B | |
编译 | Ctrl + B | |
调试 | ||
开始调试 | F5 | |
停止调试 | Shift + F5 | |
断点 | Ctrl + D, B | |
异常设置 | Ctrl + Alt + E | |
调用堆栈 | Ctrl + D, C | |
线程 | Ctrl + D, T | |
模块 | Ctrl + D, M | |
进程 | Ctrl + D, P | |
监视 | Ctrl + D, W | |
自动窗口 | Ctrl + D, A | |
局部变量 | Ctrl + D, L | |
中断全部 | Ctrl + Alt + Break | |
不调试启动 | Ctrl + F5 | |
附加到进程 | Ctrl + Alt + P | |
逐语句 | F11 | |
逐过程 | F10 | |
切换断点 | F9 | |
跳出 | Shift + F11 | |
工具栏 | 标准工具栏选项 | |
向后导航 | Ctrl + "-" | |
向前导航 | Ctrl + Shift + "-" | |
新建项目 | Ctrl + Shift + N | |
保存 | Ctrl + S | |
保存全部 | Ctrl + Shift + S | |
开始调试 | F5 | |
开始(不调试) | Ctrl + F5 | |
编译工具栏选项 | ||
编译 | Ctrl + B | |
取消 | Ctrl + Break | |
调试器工具栏选项 | ||
中断全部 | Ctrl + Alt + Break | |
停止调试 | Shift + F5 | |
显示下一条语句 | Alt + 数字键 * | |
逐语句 | F11 | |
逐过程 | F10 | |
跳出 | Shift + F11 | |
文本编辑器工具栏选项 | ||
显示快速信息 | Ctrl + K , Ctrl + I | |
注释选定行 | Ctrl + K , Ctrl + C | |
取消选定行注释 | Ctrl + K , Ctrl + U | |
解决方案资源管理器 | 解决方案的右键菜单 | |
编译解决方案 | Ctrl + Shift + B | |
新建项... | Ctrl + Shift + A | |
现有项... | Shift + Alt + A | |
粘贴 | Ctrl + V | |
移除 | Del | |
重命名 | F2 | |
属性 | Alt + Enter | |
项目的右键菜单 | ||
编译 | Ctrl + B | |
剪切 | Ctrl + X | |
粘贴 | Ctrl + V | |
重命名 | F2 | |
属性 | Alt + Enter | |
删除 | Del | |
代码编辑器 | .cs 文件的右键菜单 | |
剪切 | Ctrl + X | |
复制 | Ctrl + C | |
粘贴 | Ctrl + V | |
删除 | Del | |
重命名 | F2 | |
输出 | 右键菜单 | |
剪切 | Ctrl + X | |
复制 | Ctrl + C | |
粘贴 | Ctrl + V | |
全选 | Ctrl + A | |
错误列表 | 右键菜单 | |
复制 | Ctrl + C | |
下一个错误 | Ctrl + Shift + F12 | |
查找和替换 | 查找和替换 | |
在文件中查找 | Ctrl + Shift + F | |
在文件中替换 | Ctrl + Shift + H | |
快速查找 | Ctrl + F | |
找下一个 | F3 | |
查找上一个 | Shift + F3 | |
快速替换 | Ctrl + H | |
调试 | 工具栏的调试 | |
断点 | Ctrl + D, B | |
异常设置 | Ctrl + Alt + E | |
局部变量 | ||
复制 | Ctrl+C | |
监视 | ||
复制 | Ctrl+C | |
删除 | Del | |
调用栈 | ||
复制 | Ctrl+C |
附录 B:Pre-build 和 Post-build 的宏列表
下表列出了宏并说明了各个宏的含义。
宏 | 意义 |
---|---|
OutDir | 输出文件目录的路径,相对于项目目录。 |
ConfigurationName | 当前项目配置的名称。 |
PlatformName | 目标平台的名称。 |
TargetName | 生成的主要输出文件的基本名称。 |
TargetExt | 生成的主要输出文件的文件扩展名。 |
TargetFileName | 生成的主要输出文件的文件名(定义为基本名称和文件扩展名)。 |
TargetPath | 生成的主要输出文件的绝对路径名(使用驱动器、路径、基本名称和文件扩展名定义)。 |
TargetDir | 生成的主要输出文件的目录(使用驱动器和路径定义)。 |
ProjectPath | 项目的绝对路径名(使用驱动器、路径、基本名称和文件扩展名定义)。 |
ProjectExt | 项目的文件扩展名。 |
ProjectDir | 项目的目录(用驱动器和路径定义)。 |
ProjectFileName | 项目的文件名(使用基本名称和文件扩展名定义)。 |
ProjectName | 项目的基本名称。 |
Configuration | 当前项目配置的名称。 |
Platform | 当前目标平台的名称。 |
SolutionFileName | 解决方案的文件名(使用基本名称和文件扩展名定义)。 |
SolutionPath | 解决方案的绝对路径名(使用驱动器、路径、基本名称和文件扩展名定义)。 |
SolutionDir | 解决方案的目录(用驱动器和路径定义)。 |
SolutionName | 解决方案的基本名称。 |
SolutionExt | 解决方案的文件扩展名。 |
附录 C:正则表达式示例
下表包含一些正则表达式字符、运算符、构造和模式示例。
表达 | 描述 | 示例 |
---|---|---|
. | 匹配任何单个字符(换行符除外)。 | a.o 匹配 "around" 中的 "aro" 和 "about" 中的 "abo",但不匹配 "across" 中的 "acro"。 |
* | 匹配前面表达式的零次或多次出现(匹配尽可能多的字符)。 | a*r 匹配 "rack" 中的 "r"、 "ark" 中的 "ar" 和 "aardvark" 中的 "aar"。 |
.* | 匹配任何字符零或多次。 | c.*e 匹配 "racket" 中的 "cke"、 "comment" 中的 "comme" 和 "code" 中的 "code"。 |
+ | 匹配前面表达式的一次或多次出现(匹配尽可能多的字符)。 | e+d 匹配 "feeder" 中的 "eed" 和 "faded" 中的 "ed"。 |
.+ | 匹配任何字符一次或多次。 | e.+e 匹配 "feeder" 中的 "eede",但在 "feed" 中找不到匹配项。 |
*? | 匹配前面表达式的零次或多次出现(匹配尽可能少的字符)。 | \w*?d 匹配 "faded" 中的 "fad" 和 "ed",但由于惰性匹配而不匹配整个单词 "faded"。 |
+? | 匹配前面表达式的一次或多次出现(匹配尽可能少的字符)。 | e\w+? 匹配 "sleep" 中的 "ee" 和 "faded" 中的 "ed",但在 "fade" 中找不到匹配项。 |
\^ | 将匹配字符串锚定到行或字符串的开头。 | \^car 仅在出现在行首时才匹配单词 "car"。 |
\r?$ | 将匹配字符串锚定到行尾。 | car\r?$ 仅在出现在行尾时才匹配 "car"。 |
$ | 将匹配字符串锚定到文件末尾。 | car$ 仅在出现在文件末尾时才匹配 "car"。 |
[abc] | 匹配集合中的任何单个字符。 | b[abc] 匹配 "ba"、"bb" 和 "bc"。 |
[a-f] | 匹配字符范围内的任何字符。 | be[n-t] 匹配 "between" 中的 "bet"、"beneath" 中的 "ben" 和 "beside" 中的 "bes",但在 "below" 中找不到匹配项。 |
() | 捕获并隐性编号括号内包含的表达式。 | ([a-z])X\1 匹配 "aXa" 和 "bXb",但不匹配 "aXb"。"\1" 指的是第一个表达式组 "[a-z]"。 |
(?!abc) | 使匹配无效。 | real(?!ity) 匹配 "realty" 和 "really" 中的 "real",但不匹配 "reality"。它可以在 "realityreal" 中找到第二个 "real" (但不是第一个 "real" )。 |
[\^abc] | 匹配给定字符集外的任何字符。 | be[\^n-t] 匹配 "before" 中的 "bef"、 "behind" 中的 "beh" 和 "below" 中的 "bel",但在 "beneath" 中找不到匹配项。 |
` | ` | 匹配符号之前或之后的表达式。 |
\ | 将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。 | \\^ 匹配字符 \^ 。 |
{n} ,其中 "n" 表示出现次数 | 指定前一个字符或组的出现次数。 | x(ab){2}x 匹配 "xababx"。x(ab){2,3}x 匹配 "xababx" 和 "xabababx",但不匹配 "xababababx"。 |
\p{X} ,其中 "X" 是 Unicode 编号。 | 匹配 Unicode 类别中的文本。 | \p{Lu} 匹配 "Thomas Doe" 中的 "T" 和 "D"。 |
\b (在字符类外 \b 指定单词边界,字符类内 \b 指定退格。) | 匹配单词边界。 | \bin 匹配 "inside" 中的 "in",但在 "pinto" 中找不到匹配项。 |
\r?\n | 匹配换行符(即回车后跟新行)。 | End\r?\nBegin 仅在 "End" 是一行中的最后一个字符串并且 "Begin" 是下一行中的第一个字符串时才匹配 "End" 和 "Begin"。 |
\w | 匹配任何单词字符。 | a\wd 匹配 "add" 和 "a1d" 但不匹配 "a d"。 |
\s | 匹配任何空白字符。 | Public\sInterface 匹配短语 "Public Interface"。 |
\d | 匹配任何十进制数字字符。 | \d 匹配 "wd40" 中的 "4" 和 "0"。 |