ctrl+shift+p filters: :st2 :st3 :win :osx :linux
浏览

扩展选择

aanchev 全部

Sublime Text 2/3 插件,可以快速将任意选择添加到当前选择中。

详细信息

  • 1.3.0
  • github.com
  • github.com
  • 9年前
  • 1小时前
  • 9年前

安装

  • 总计 822
  • Win 487
  • Mac 189
  • Linux 146
8月6日 8月5日 8月4日 8月3日 8月2日 8月1日 7月31日 7月30日 7月29日 7月28日 7月27日 7月26日 7月25日 7月24日 7月23日 7月22日 7月21日 7月20日 7月19日 7月18日 7月17日 7月16日 7月15日 7月14日 7月13日 7月12日 7月11日 7月10日 7月9日 7月8日 7月7日 7月6日 7月5日 7月4日 7月3日 7月2日 7月1日 6月30日 6月29日 6月28日 6月27日 6月26日 6月25日 6月24日 6月23日
Windows 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mac 1 1 0 0 0 0 0 1 0 0 0 0 1 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
Linux 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

自述文件

源代码
raw.githubusercontent.com

Sublime ExtendSelection

ExtendSelection 是一个 Sublime Text 2/3 插件,允许您更轻松地进行多重选择。

在触发“扩展选择”命令(无论是通过使用快捷键,还是通过“选择”菜单中的菜单项)之后,您只需创建一个新的选择,它将被添加到当前选择中,而不是替换它。您可以以您喜欢的任何方式创建新的选择(任何导航方法都应得到良好处理)。

推荐

在您继续之前,请考虑使用 MultiEditUtils 软件包。它提供更多功能,可用于实现与该插件相同的功能。

用法

将下一个选择添加到当前选择中

alt+shift+m

它将监听选择中的下一个变化,并将其附加到前面的选择中(在按下 alt+shift+m 时为“当前选择”)。

示例

例如,如果我想保持我的当前选择在 行15,列10,并添加到其中一行12处的插入符,我会触发“扩展选择”命令(默认 alt+shift+m),然后调用“转到行”,输入“:12”并按回车。这会将我的插入符移动到行12的开头,但因为我已经触发了“扩展选择”,所以新的选择将添加到前面的选择中,而不是替换它。因此,我将有一个多选择 行12,列0行15,列10

手动完成“扩展选择”

您还可以使用多个新选择来扩展当前选择。默认情况下,通过按 ctrl+alt+m 触发“开始扩展选择”。然后,进行任意数量的选择。它们将添加到当前选择而不是覆盖它。完成选择后,通过调用“完成扩展选择”(同样按 ctrl+alt+m,或按 Esc)来完成命令。

您还可以查看以下描述的“持续活动,直到超时过期”设置。

示例

第9行第5列 进行选择
触发“开始扩展选择”(ctrl+alt+m
第10列第0行到第12列第51行 进行选择
第0列第0行到第0列第27行 进行选择
调用“完成扩展选择”(再次按 ctrl+alt+m,或按 Esc
现在选择的也是多选,在 9:510:0 to 12:510:0 to 0:27

设置

合并'单步'更改事件

"combine_onemove_events": true

该插件默认尝试处理拖动选择(鼠标拖动)。这是通过组合最近一次新选择一移动之内的所有新选择来实现的。虽然这确实有效,但这也意味着使用箭头键等进行的选择也将与最新的选择“合并”。

以下是不想要此行为的示例

第10行第2列 进行选择
触发 ExtendSelection(《alt+shift+m)
第15行第5列 拖动选择到 第15行第20列
shift+右键
这将添加到最后的选择中,而不是为每一个选择执行 shift+右键

请注意这一点,并禁用该功能,如果不喜欢这种行为。

持续活动,直到超时过期

"active_until_timeout": 0 //ms

命令的完成可以延迟指定的时间。这意味着即使在第一次之后,选择更改仍将由该命令处理,直到超时结束。每次选择更改后都会刷新超时,因此如果频繁更改,所有更改都将由命令处理。

即使超时延迟很小,这也可能令人困惑。因此,此功能默认已禁用。

该设置指定了延迟完成的時間。值以毫秒计。负值和零实际上将禁用该行为。

示例

“active_until_timeout”设置为500
第11行第3列 进行选择
触发 ExtendSelection(《alt+shift+m)
第16行第6列 进行选择
在0.5秒内,在 第17行第7列 进行选择
实际选择现在也是多选,在 11:316:617:7
等待0.5秒,然后命令完成

安装

通过PackageControl进行安装

如果您已经安装了 PackageControl 插件,可以使用它来安装 ExtendSelection

只需按 cmd-shift-p (在 Windows/Linux 上按 ctrl-shift-p)打开命令面板,然后输入 install 并从下拉菜单中选择 Package Control: Install Package

然后输入 ExtendSelection 并从下拉菜单中选择 ExtendSelection 插件。按 enter 并安装。

手动安装

手动安装应与在 Sublime Text 的 Packages 目录中克隆此 Git 仓库一样简单。
(注意 sublime 的版本)

在 Windows 上

cd "%AppData%\Sublime Text 2\Packages"
git clone git://github.com/anly2/sublime-extend-selection.git ExtendSelection

或者,您可以直接手动将文件复制到文件夹 \Packages\ExtendSelection 中,如果您没有 git 或不习惯使用它。

版本

[1.2.0] - 发布于 15/12/15
添加
  • 一个名为 'active_until_timeout' 的功能,该功能可以延迟命令的实际完成
[1.1.1] - 发布于 14/12/15
添加
  • 一个名为 'combine_onemove_events' 的功能,该功能可以处理拖动选择
[1.0.0] - 发布于 24/10/15

初始版本,具有基本功能。