多个光标和选区
在 GoLand 编辑器中输入、复制或粘贴时,您可以启用多个光标,使您的操作可同时应用于多个位置 高级编辑操作(如 代码补全 和 实时模板 )也受支持,并将应用于每个光标
您可以在文件中添加的光标数量限制为 1000 个 如果希望增加该限制,请打开 custom JVM options ,然后添加以下行: -Deditor.max.caret.count=<NEW_LIMIT>
最近添加的光标被视为 主光标 当前编辑器行的高亮、补全列表和其他视觉辅助功能将会应用于主光标 关闭多个光标时,该光标仍将保留
添加和移除光标
光标在代码行中可添加的位置有两种选择:
在现有字符上 | 使用虚拟空格 |
|---|---|
如果在目标位置没有字符、制表符或空格,则新光标将添加到该行最后一个字符位置 | 这样,您可以在任意一行的最后一个字符之后添加新光标 一旦在行末位置开始输入,将自动添加所需数量的空格,以连接行尾和您的输入起始位置 您可以在 编辑器 | 常规 设置页面中选中 允许插入光标至行尾后 复选框以启用虚拟空格 Ctrl+Alt+S 您也可以在 column selection mode 中启用虚拟空格 |
使用鼠标在选定位置添加或移除光标
在目标位置按下 Alt+Shift+Click 可添加另一个光标
在多个光标之一上按下 Alt+Shift+Click 以将其移除 最后一个光标不会被移除
使用键盘在当前光标的上方或下方添加光标
双击 Ctrl ,然后在不松开它的情况下按上下箭头键
如果启用了 virtual spaces ,新光标将精确添加在当前光标的正上方或正下方 否则,在比当前偏移位置短的行中,光标将添加在行尾
启用 column selection mode (按 Alt+Shift+Insert ),然后按 Shift+Up/Shift+Down
按 Ctrl+Shift+A ,输入 Clone caret ,并在建议列表中选择所需操作

在当前文档的每一行添加光标
按 Ctrl+Home 将光标置于第一行开头,启用 column selection mode (按 Alt+Shift+Insert ),然后按 Ctrl+Shift+End
在所选代码块的每一行末尾添加光标
在编辑器中选择代码块,然后按 Alt+Shift+G 或前往主菜单中的
移除多个光标
按 Esc 删除所有现有光标,保留最后添加的一个
在多个光标之一上按下 Alt+Shift+Click 以将其移除 最后一个光标不会被移除
选择多个非连续区域
当您选择多个文本区域(非连续选择)时,请注意以下事项:
每个选区都关联一个光标,因此您可以开始输入以替换所有选中的区域,也可以按下 Left Arrow 或 Right Arrow 移除选区但保留多个光标于区域开始或结束处
一旦选区重叠,它们将合并为一个选区并仅保留一个光标
选择操作与代码结构无关 即选区可以包含任意字符、标识符、字符串字面值中的单词、注释或其部分内容 因此更改选区时需要特别小心,因为其中可能包含不同的标识符或其部分内容
选择多个单词或文本区域
Alt+Click 可添加新光标,双击单词或在按住相同键的同时拖动鼠标选择文本时,将添加带有相应选区的新光标
选择某个单词或文本区域的多个出现位置
如需选择单词,请将光标放置在目标单词的一次出现上 否则,请通过鼠标或 keyboard shortcuts 选择目标区域
请执行以下操作之一:
连续按 Alt+J ,查找并选择大小写匹配的下一个单词或文本区域
按 Ctrl+Alt+Shift+J 选择文档中所有大小写匹配的单词或文本区域
按 Alt+Shift+J 取消最后一个被选中的位置
使用 Alt+J 添加第二个或后续选区后,您可以使用 F3 跳过该选区并选择下一个匹配项 要返回到上一次跳过的匹配项,请按 Shift+F3。
查找并选择字符串的多个出现位置
按 Ctrl+F ,或从主菜单中选择 编辑 | 查找 | 查找。 搜索面板将显示在活动编辑器的顶部。
输入要查找并选中的字符串。 在搜索字符串的右侧,您将看到当前文档中匹配项的数量。
您还可以选择通过大小写
Alt+C 或仅匹配整个单词
Alt+W 来限制搜索范围。
按 Ctrl+Alt+Shift+J 或单击工具栏上的 选择所有匹配项
。
在普通选择模式下使用鼠标选择矩形文本片段
请确保已 禁用 列选择模式。
要将范围选择为一个矩形,请执行以下任一操作:
将光标放在矩形的一角,然后在对角线另一角按 Alt+Shift+Middle-Click。
Alt+Click 并拖动鼠标以进行选择。
要将范围选择为多个矩形选择区域,请 Ctrl+Alt+Shift+Click 并拖动鼠标覆盖代码中的所需部分。
这样,在每个受影响的文档行中都会有多个选择区域。 在长度短于矩形的行上,选择将仅延伸至最后一个字符。

列选择模式
在普通模式与列选择模式之间切换
按 Alt+Shift+Insert。
在主菜单中,转到 。
在编辑器的上下文菜单中,选择 列选择模式。
在 列选择模式下,当前文档中的键盘导航和选择快捷键的行为会有所不同,以简化添加多个光标和进行矩形选择操作:
您可以将光标放置在任意一行最后一个字符之后的任何位置。 当您在超出该行末尾的位置开始输入时,系统将自动在行尾与输入起始之间插入所需数量的空格。
按下 Shift+Up/ Shift+Down 或上下拖动鼠标时,将会在当前光标上方/下方添加新光标,而不是创建连续选择。
启用的列选择模式仅影响当前编辑器选项卡。 如果关闭或重新打开该选项卡,将会恢复为普通模式。
如果当前文档启用了列选择模式,则 列 指示器会显示在 状态栏上。
使用多个光标进行复制和粘贴
使用多个光标选中的文本范围在复制 Ctrl+C 或剪切 Ctrl+X 时,每个光标的选择内容都会作为单独的行放入剪贴板,即使原始选择位于同一行。
如果启用了 列选择模式 ,选择内容还可能包括行尾后的空白区域。 复制选择内容时,这些空白区域将在剪贴板中替换为空格。
从剪贴板粘贴任何多行内容时,您可以在目标位置为每行添加多个光标,然后按 Ctrl+V 将每行内容粘贴到自己的光标位置。