多个插入符与选择范围
在 PyCharm 编辑器中输入、复制或粘贴时,您可以切换多个插入符,使您的操作可同时应用于多个位置。 还支持高级编辑器操作,例如 代码补全、 实时模板 ,并将应用于每个插入符。
您在一个文件中可添加的插入符数量最多为 1000 个。 如果您想提高该限制,请打开 自定义 JVM 选项 ,并添加以下行: -Deditor.max.caret.count=<NEW_LIMIT>。
最近添加的插入符被视为 主插入符。 当前编辑器行的高亮、补全列表及其他可视化辅助功能将应用于主插入符。 当您关闭多个插入符时,此插入符也将保留。
添加与移除插入符
关于在代码行中可以添加插入符的位置,有两种选项:
到现有字符 | 使用虚拟空格 |
|---|---|
如果您要添加新插入符的位置没有字符、制表符或空白,新插入符将被添加到目标行的最后一个字符位置。 | 这样,您就可以在任意行的最后一个字符之后的任意位置添加新插入符。 一旦您在行尾之外的位置开始输入,将在行尾与您的输入开始之间添加所需数量的空格。 您可以在 编辑器 | 常规 设置页面  Ctrl+Alt+S 上选中 允许将插入符号放置在行尾之后 复选框来启用虚拟空格。 或者,在 列选择模式 下也会启用虚拟空格。 |
使用鼠标在所选位置添加或移除插入符
在目标位置 Alt+Shift+Click 以添加另一个插入符。
在多个插入符中的某一个上 Alt+Shift+Click 以将其移除。 最后一个插入符不会被移除。
使用键盘在当前插入符的上方或下方添加插入符
在当前文档的每一行添加插入符
按 Ctrl+Home 将插入符置于第一行的行首,启用 列选择模式 (按 Alt+Shift+Insert ),然后按 Ctrl+Shift+End。
在所选块的每一行末尾添加插入符
在编辑器中选择一个代码块,然后按 Alt+Shift+G ,或在主菜单中转到 。
移除多个插入符
按 Esc 可删除除最后添加的那个之外的所有现有插入符。
在多个插入符中的某一个上 Alt+Shift+Click 以将其移除。 最后一个插入符不会被移除。
选择多个非连续范围
选择多个文本范围(非连续选择)时,请注意以下事项:
每个选择范围都与其自己的插入符关联,因此您可以开始输入,以您的输入替换所有已选择的范围;或者按 左箭头 或 右箭头 以移除选择范围,但保留位于这些范围开头/结尾的多个插入符。
一旦选择范围发生重叠,将合并为一个带有单个插入符的选择范围。
选择与代码结构无关。 也就是说,选择范围可以包含任意字符、标识符、字符串字面量中的单词、注释或它们的部分。 因此,在更改已选择的范围时需要小心,因为其中可能包含不同的标识符或它们的部分。
选择多个单词或文本范围
虽然 Alt+Shift+Click 会添加一个新插入符,但双击单词或在按住相同按键的同时拖动鼠标穿过文本范围,将添加带有相应选择的新插入符。
选择某个单词或文本范围的多个匹配项
如果您想选择单词,请将插入符置于所需单词的某个出现位置。 否则,请使用鼠标或 键盘快捷键 选择所需范围。
执行以下任一操作:
连续按 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 在各自的插入符处粘贴每一行。