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

SimpleMovements

添加移动光标和换行命令。

详细信息

安装次数

  • 总计 8K
  • Win 7K
  • Mac 1K
  • Linux 349
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 0 0 0 1 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 1 0
Mac 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 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
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

SimpleMovement 插件

这个插件最初非常简陋,现在是我的所有移动、选择和非常简单的插入命令的仓库。

如果您充分利用它,您将拥有我认为的更好的换行符、选择和移动命令。

换行
  • 在编写注释时按下回车键 继续 编写注释
  • super+alt+enter 在需要分号的语言中插入分号;在Python中,它在以def/for/while/etc开头的行的末尾插入冒号
  • alt+enter 插入“\n”并从行首开始
  • super+shift+enter 在当前行之上插入一行
行首/行尾

super+left 前往非常开头,除非您已经在那里,然后再到第一个非空白字符。

super+right 以类似的方式执行,但用于行尾。

转到行

super+l 具有超级力量。您可以选择一个范围(12,20)、一行(40,)或使用相对位置(-1,+1)。

复制行

super+shift+d 使用与转到行的相同的行解析,但在当前的游标位置处插入您选择的行。

选择/光标操作
  • 选择“块”:使用键盘选择一些文本,然后按 ctrl+shift+b 将其转换为单独的选择。在ASCII艺术等方面非常有用。
  • 选择字符:将选择转换为单字符选择;用于选择空白并将其转换为句点或破折号。
  • 选择下一个:这是我的内置且方便的 super+d 版本。我的版本不会“包装”到开头,并且在选择空白时的一个错误,我的版本没有。
  • 快速查找:我并不喜欢Sublime Text中“增量查找”的工作方式。我更倾向于TextMate通过ctrl+s提供的快速直接搜索。然后我添加了正则搜索、搜索+扩展选择(支持多光标)和反向搜索。你应该掌握这些,它们真的是非常、非常实用!
  • 多光标 => 更少的鼠标:我非常喜欢Sublime Text的多光标功能。simple_movement_one_selection 命令可以删除一个光标,或者选择一个光标。例如,我可能会选择五样东西,然后使用super+1..5遍历它们。或者选择文档中所有内容,转到第一行或最后一行。或者取消选择第一行和最后一行,或者选择奇数行或偶数行。再次强调,这些功能非常实用,但你需要学会它们。
插入文本

有时你可能只需要插入一些文本。我将ctrl+v,(绑定到插入一个字面字符'(',否则直接输入'('将会自动插入一对括号(感谢SublimeBracketeer)。

此外,还有启动调色板来选择要插入的文本的命令也非常方便。simple_movement_snippet_picker 命令另外有用,因为它实际上使用insert_snippet命令来插入,这意味着你可以将一组相关片段绑定到一个按键上,并通过快速搜索选择它们。我用它来轻松找到⌘⇧⌃⌥。

对齐光标

实际上,wbond有一个更好的插件,但这个插件也是使用多光标工作的。

移动视口

我在TextMate中使用了很多这个功能,并希望在Sublime Text中也有。这个功能基本是通过键盘滚动,可以是一小点或一大截。

选择重复项

选择一些可能相似的事物,然后激活这个命令。它将取消选择每个唯一项目的第一个项目,至于重复项的处理由您自己决定。

安装

  1. 使用Package Control安装“SimpleMovement”

命令

simple_movement_bol

将插入符移到行首。- 如果光标已经在行首,则将其移动到该行的第一个非空白字符。- 接受一个extend选项,该选项在从先前的光标位置选择时移动光标。

simple_movement_eol

将插入符移到行尾。- 如果光标已经在行尾,则将其后退到该行的第一个非空白字符。- 接受一个extend选项,该选项在从先前的光标位置选择时移动光标。

simple_movement_insert

插入一个字符。用于插入字面引号、制表符等。- 如果你使用智能引号插件,这可以作为一个绕过插件的方式。例如,我使用ctrl+v,"来插入单个" - 你必须提供给此命令的insert: "text"选项。

simple_movement_select_block

将多行选择转换为多个块选择。每个块将从头到尾在同一列开始和结束,由原始区域的起点和终点决定。

选择一个文本块,激活此插件,现在每行都将被选中。我经常用这个功能来选择整个文件,然后这个命令会给我每行一个光标。比如我编辑一个日志文件时。

simple_movement_select_chars

将选择更改为多个单字符选择。我用这个将一些空白或减号转换为句号,或将减号转换为下划线。

选择一些减号或空白(或任何内容),激活simple_movement_select_chars,然后按_.。每个字符都将被替换。

simple_movement_align_cursor

在每一列插入空格,使所有光标都在同一列。如果 moveleft,则删除空格(使文本向左移动)而不是添加它们。 - 这种方法在完成时对要给出的光标很聪明。例如,如果第一行看起来像“标题”,它将取消选中该行。这适用于任何代码编辑,还支持“ObjC样式对齐”,其中希望所有 : 都对齐 - 接受 move: 'left'|'right'|'align' 选项,默认为 right。将所有文本都向左移动、向右移动或对齐当前光标(ObjC样式 : 对齐)

simple_movement_goto_line

可以指定行号或行号,然后将它们成为选择区域。- 这是一个优秀的“转到行”替代方案。它可以解析“转到”多行,在这种情况下也会选择这些行。- 当您输入行号时跳转到行号,按esc键返回,因此这是一种预览代码段的好方法,然后返回到您原来所在的位置

simple_movement_duplicate_line

接受与 simple_movement_goto_line 相同的参数,并将这些行复制到当前光标处。尝试 -1 以复制上一行的文本。 - 使用与 simple_movement_goto_line 相同的行号解析。在当前光标(光标组)处插入指定的行。

goto_line 和 duplicate_line 都支持酷炫的行选择技巧

  • 123:转到第 123 行
  • 123,:转到第 123 行并选择它
  • 123,,,,:转到第 123 行并选择它和接下来的 3 行
  • 123,125:选择第 123-125 行
  • -1,+1:选择上一行、当前行和下一行
  • ,,:选择当前行和接下来的 2 行

duplicate_line 命令支持所有这些,但会在当前光标位置而非移动光标的位置复制那些行。

simple_movement_nl

插入换行符或将光标移动到行尾。还可以插入行终止符并缩进。有很多选项

  1. hard_nl true|false:插入换行符,并将光标保持在第一位置;不尝试匹配空白字符
  2. with_terminator true|false:在以分号作为行终止符的语言中,此选项将在当前行末尾插入终止符。
  3. insert_nl true|false:如果为 false,则不会插入换行符!听起来很奇怪,但与 with_terminator 结合使用时很有意义。如果没有分号,则插入分号,然后转到行尾。
  4. unindent: true|false:在 Python 中很有用,因为编辑器没有真正的检测缩进的方式,因此您可以使用此选项明确提出缩进。
  5. with_comment: true|false:如果为 true,则它会将注释考虑在内 - 例如它会“继续”注释块,或者如果 unindent 为 true,它还会“结束”注释块。

实际上,这个命令做了很多事情。查看我的配置的示例键绑定,然后练习它们,看看它们是如何运行的。

simple_movement_select_next

Sublime Text 的某个版本曾经改变过“快速查找下一个” (super+d) 的行为。此命令使 super+d 成为它应该成为的简单强大的命令。- 与多个光标直观工作 - 有一个 select_all 选项用于选择当前选择的 所有 实例。

simple_movement_one_selection

此命令用于选择或取消选择您的一个光标。我经常与多个光标一起工作,我真的很喜欢这个命令。我将其绑定到 super+1..0,但 super+0 选择最后一个光标,这通常非常方便。

super+shift+1..0 取消选择光标,通常我只需要使用 super+shift+1super+shift+0 来取消选择第一个或最后一个光标。