CLion教程-源代码导航
您可以使用不同的操作和弹出窗口在编辑器中快速浏览代码。
使用光标进行导航
- 要向后导航,请按下CtrlAlt+←。要向前导航,请按下CtrlAlt+→。
- 要导航到最后编辑的位置,请按下CtrlShiftBackspace。
- 要查找编辑器中当前插入符位置,请按下Ctrl+M。如果您不想在大文件中滚动,此操作可能会有所帮助。
但是,您可以按下+↑和+↓箭头键来实现相同的结果。 - 要突出显示光标所在位置的单词,请从主菜单中选择编辑 | 查找 | 下一个光标处的单词出现。如果您使用Windows,还可以按下Ctrl+F3键。
- 要查看光标当前所在的元素,请按下Alt+Q。
- 要在匹配的代码块大括号之间移动插入符,请按下CtrlShift+M。
- 要在代码块之间导航,请按下Ctrl+ [ 或 Ctrl+ ]。
移动插入符
您可以使用不同的操作通过代码移动插入符。您还可以配置插入符在单词移动和换行时的停止位置。
要将插入符移到下一个单词或上一个单词,请按下Ctrl+→或Ctrl+←。
- 默认情况下,CLion将插入符移动到当前单词的末尾。
- 当您将插入符移到上一个单词时,插入符将放在当前单词的开头。您可以在使用这些操作时配置插入符的位置。
- 在设置对话框(CtrlAlt+S)中,转到编辑器 | 通用。在Caret Movement部分中,使用“在移动单词时”和“在断行时”选项来配置插入符的行为。
要将插入符向前移到下一个段落或向后移到上一个段落,请按下CtrlShift+A,并搜索“Move Caret Forward a Paragraph”或“Move Caret Backward a Paragraph”操作。
- 您还可以选择一段文本,然后将插入符向前或向后移动到一个段落。按下CtrlShift+A并搜索“Move Caret Forward a Paragraph with Selection”或“Move Caret Backward a Paragraph with Selection”操作。
- 如果需要,您可以为这些操作分配快捷键。
查找最近的位置
您还可以使用“最近的位置”弹出窗口检查您最近查看或更改的代码。
- 要打开“最近的位置”弹出窗口,请按下CtrlShift+E。列表从顶部开始显示最近访问的位置,包含代码片段。
- 在弹出窗口中,使用相同的快捷键,或选择“仅显示更改的位置”复选框,以仅查看具有更改代码的位置。
- 要搜索代码片段,请在“最近的位置”弹出窗口中开始输入搜索查询。您可以按代码文本、文件名或面包屑进行搜索。
- 要从搜索结果中删除位置条目,请同时按下Delete或Backspace键。
请注意,已删除的位置也将从您使用CtrlAlt+←快捷键访问的条目列表中删除。
转到声明或用法
您可以从其用法导航到变量、函数、类或类型的声明:
- 将插入符放在符号上,然后按下Ctrl+B。
- 对于类型声明,按下CtrlShift+B。
- 您还可以在按住Ctrl键的情况下指向符号,当它变为超链接时单击。弹出消息将显示声明信息。再次单击以导航到声明。
转到声明或用法操作(CtrlShift+B)对不同情况的处理方式不同:
- 在符号用法上调用时,它会导航到该用法的声明。
- 在声明上调用时,它会显示该声明的用法列表。
- 在定义上调用时,它会显示关联的声明。
您可以在设置 | 编辑器 | 通用中的开关器之间选择前两个选项:
默认选项是显示用法弹出窗口:
如果选择“跳转到预声明”,该操作将在存在的情况下导航到声明:
转到定义
- 您可以使用 / 、 / gutter 图标或适当的快捷键来跟踪类实现和重写函数。
- 按下CtrlAlt+B,以导航到插入符所在位置的代码实体的定义(变量、函数、类)。
- 按下Ctrl+U,以导航到超级定义。
转到头文件/源文件
要在源文件和头文件之间切换,您可以使用专用的转到头文件/源文件操作,而不是转到相关符号。
要调用转到头文件/源文件,请按下F1+,或从主菜单中选择导航 | 头文件/源文件。
- 该操作会立即在编辑器中打开一个文件,或者显示可用选项的弹出窗口:
- 在搜索目标文件时,转到头文件/源文件使用了一些启发式方法:
- 最近切换的文件始终位于列表顶部。
- 下一个是来自相同目录的具有匹配名称的文件(例如myfile.h / myfile.cpp)。
- 然后,在后台执行基于定义/声明的搜索,并将新项目添加到弹出窗口中。
- 如果在500毫秒内没有找到单个目标,CLion将显示一个交互式弹出窗口,其中添加了新项目,您可以选择要导航到的位置。
- 该操作会立即在编辑器中打开一个文件,或者显示可用选项的弹出窗口:
目前,搜索仅限于直接包含器/包含器,以避免来自不同目标的相同符号的干扰。
- 如果您习惯使用转到相关符号在头文件和源文件之间切换,您可以将其快捷键重新映射到转到头文件/源文件。
每次安装一次,当您在C/C++文件中通过快捷键调用转到相关符号时,CLion都会提示您这样做(如果为转到头文件/源文件尚未设置非默认快捷键):
您还可以在设置 | 键盘映射中配置所需的快捷键。
使用选择功能在项目视图中定位到目标
您可以自动定位到项目工具窗口中的目标。
- 如果文件在编辑器中打开,请按下AltF1以打开选择弹出窗口。
- 在弹出窗口中,选择项目视图并按Enter键。
CLion将在项目视图窗口中定位到您的目标。
单击打开文件并快速定位文件在项目工具窗口中
您可以使用“单击打开文件”和“总是选择已打开文件”操作,将文件定位到项目工具窗口中。
- 在项目工具窗口中,右键单击项目工具栏,从上下文菜单中选择“总是选择已打开文件”。之后,CLion将自动跟踪当前在活动编辑器选项卡中打开的文件,并将其定位到项目工具窗口中。
- 您还可以选择“单击打开文件”选项。在这种情况下,当您单击项目视图中的文件时,CLion将自动在编辑器中打开它。
使用面包屑进行导航
面包屑可帮助您跟踪打开的活动编辑器选项卡中文件的范围层次结构。对于C++,面包屑表示命名空间、类、结构、函数和lambda:
要跳转到代码中的一个元素,请单击带有其名称的面包屑。
- 默认情况下,面包屑显示在编辑器底部并定位。要隐藏或重新定位它们,请右键单击面包屑并选择面包屑 | 顶部或面包屑 | 不显示,或者在设置 | 编辑器 | 通用 | 面包屑中配置其位置。
- 在同一面包屑设置对话框中,您还可以通过选择/清除相应的复选框来为特定语言启用/禁用面包屑。
- 要配置颜色以突出显示面包屑,转到设置 | 编辑器 | 颜色方案 | 通用,然后从列表中选择编辑器 | 面包屑。
使用结构视图弹出窗口定位代码元素
您可以使用结构视图弹出窗口在正在使用的文件中定位代码元素。
- 要打开结构视图弹出窗口,请按下CtrlF12。
- 在弹出窗口中,定位您需要的项。您可以开始键入元素的名称,以便CLion缩小搜索范围。按Enter键返回到编辑器和相应的元素。
浏览方法
- 按下Alt+↓或Alt+↑。
- 要在代码中视觉上分隔方法,请在设置对话框(CtrlAlt+S)中转到编辑器 | 通用 | 外观,并选择“显示方法分隔符”选项。
- 要打开结构工具窗口,请按下Alt+7。
使用镜头模式
镜头模式使您可以在不实际滚动到代码的情况下预览代码。当您将鼠标悬停在滚动条上时,默认情况下,在编辑器中提供此模式。当您悬停在警告或错误消息上时,这将特别有用。
- 要禁用镜头模式,请右键单击编辑器右侧的代码分析标记,然后在上下文菜单中取消选中“在悬停在滚动条上时显示代码镜头”复选框。
- 作为替代方案,在设置对话框(CtrlAlt+S)中,转到编辑器 | 通用 | 外观,并取消选中“在悬停在滚动条上时显示代码镜头”复选框。
查找行或列
- 在编辑器中,按下Ctrl+G。
- 在“转到行/列”对话框中,指定行号或列号,或两者兼而有之,用 : 分隔,然后单击“确定”。
- 如果您不想在编辑器中看到行号,请在设置对话框(CtrlAlt+S)中,转到编辑器 | 通用 | 外观,并取消选中“显示行号”复选框。
为了更快地访问,您可以为显示行号操作分配一个快捷键。
查找文件路径
- 在编辑器中,按下CtrlAltF12,或在上下文菜单中选择“在文件夹中打开”。
- 在“在文件夹中显示”弹出窗口中,选择要在路径查找器中打开的文件或目录,然后按Enter键。
查找最近的文件
您可以使用“最近的文件”弹出窗口搜索最近查看或编辑过的文件。
- 要打开具有最近文件列表的“最近的文件”弹出窗口,请按下Ctrl+E。
- 要仅查看最近编辑过的文件,请再次按下Ctrl+E,或选择“仅显示已更改的”复选框。
- 要在弹出窗口中搜索项目,请使用Speed Search功能。只需开始键入搜索查询,搜索字段就会出现。CLion会根据您的搜索查询显示结果,随着您的输入,列表会缩小。