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

SmarterLineMoves

作者: trych 全部

一个Sublime Text包,它覆盖了Sublime的默认行交换功能,使其以更可预测的方式工作

详细信息

  • 1.1.1
  • github.com
  • github.com
  • 3年前
  • 49分钟前
  • 3年前

安装次数

  • 总计 319次
  • Win 160次
  • Mac 100次
  • Linux 59次
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 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 1 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0
Mac 1 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 2 0 0 0
Linux 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 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 1

Readme

源代码
raw.githubusercontent.com

Smarter Line Moves

一个Sublime Text包,它覆盖了Sublime的默认行移动功能,以实现更可预测的工作方式。

概述

Sublime的默认移动行的命令 – 向上交换行向下交换行 – 会以一个使用户难以看到文本最终位置的文件方式移动文本。此包通过始终保持窗口边缘和移动文本之间留有少量空间来解决这个问题。这样,移动文本到其指定的位置就更容易了。

Default swapping vs. smart swapping

此外,Sublime的默认交换会在文本缓冲区的顶部或底部停止,并且不允许可用用户进一步移动文本。此包通过插入新的空行解决这个问题,从而允许选定的文本在原始文本之上或之下移动。如果文本已移动过远,此包允许将文本移回,并将自动删除之前添加的所有空行。

Default swapping vs. swapping below

该包提供向上分离文本向下分离文本命令,用于从所选文本的上方或下方“分离”文本。这类似于Sublime Text的默认在之后插入行在之前插入行命令,只不过选定的文本保持选中状态,因此看起来好像你移动了选定的文本。

要同时移动文本的选择之前和之后,包添加了吸引文本排斥文本命令,分别添加或删除所选文本周围的空行。

Separate Up/Down & Attract/Repel Text


安装

通过包控制

安装此包的最佳方法是使用Sublime的包控制。这样,如果有新版本可用,包会自动保持最新。

要通过包控制安装,请打开命令面板,选择命令 包控制:安装包 并搜索 SmarterLineMoves

手动

您可以手动安装该软件包,通过下载仓库并将其放置在Sublime Text的User软件包中,您可以通过使用首选项 > 浏览包...来找到它。只需解压缩文件并将其放置在User文件夹中。这种安装方法不建议使用,因为该软件包不会自动更新。


使用方法

智能交换

由于该软件包覆盖了Sublime的默认交换命令,您可以通过简单地使用常规快捷键:Shift+Ctrl+Up/Down(在Windows/Linux上)或⌘+Ctrl+Up/Down(在macOS上)来使用更智能的交换。该软件包将负责其余工作,保持选定文本与窗口边缘之间的空间,或者让选定文本移动到文本的起始或结束处。

上下分离文本

使用Shift+Ctrl+Alt+Up/Down键(在Windows/Linux上)或⌘+Ctrl+Alt+Up/Down键(在macOS上)可以分别向上或向下分离选定的文本。

吸引/排斥文本

在Windows/Linux上使用Shift+Ctrl+Alt+Right键可以“排斥”文本与当前文本选择的文本,而在macOS上使用⌘+Ctrl+Alt+Left键可以“吸引”文本趋向当前文本选择。


配置

设置

可以通过更改其设置来更改和/或禁用该软件包的功能。

您可以通过选择首选项 > 软件包设置 > SmarterLineMoves菜单项来打开设置文件,查看默认设置或更改自定义设置。设置文件具有以下条目

smart_swap_up: true/false(默认:true)

开启或关闭向上方向的智能交换。如果关闭,将再次使用Sublime的常规交换行上命令。

smart_swap_down: true/false(默认:true)

开启或关闭向下方向的智能交换。如果关闭,将再次使用Sublime的常规交换行下命令。

swap_above: true/false(默认:true)

允许文本在达到文件顶部时通过添加空行来“在”文本缓冲区上方移动,以便在重复命令时持续向上移动。

undo_swap_above: true/false(默认:true)

如果选定的文本已经移动到文本缓冲区“上方”太远,可以使用交换行下快捷键将其移回。如果此设置为true,则之前添加的空行将自动删除。

swap_below: true/false(默认:true)

允许文本在达到文件底部时通过添加空行来“在”文本缓冲区下方移动,以便在重复命令时持续向下移动。

undo_swap_below: true/false(默认:true)

如果选定的文本已经移动到文本缓冲区“下方”太远,可以使用交换行上快捷键将其移回。如果此设置为true,则之前添加的空行将自动删除。

move_up_clearance: 数量(默认:5)

使用软件包的文本移动命令时,在移动文本与窗口顶部之间保持可见的行数。

move_down_clearance: 数量(默认:5)

使用软件包的文本移动命令时,在移动文本与窗口底部之间保持可见的行数。

auto_reindent: true/false(默认:false)

智能交换后将自动重排选定文本。

squash_whitespace_only_lines: true/false(默认:true)

如果使用吸引文本命令,并且此设置为true,则只有空白行的行将被删除,就像它们是空行一样。当此设置为false时,这些行将像常规带文本内容的行一样被保留。

键盘快捷键

您可以更改包的默认键盘快捷键,用于单独上/下移动文本吸引/排斥文本命令,通过更改它们的按键绑定。

Windows/Linux上的默认按键绑定为

{ "keys": ["ctrl+alt+shift+up"], "command": "separate_text_up" },
  { "keys": ["ctrl+alt+shift+down"], "command": "separate_text_down" },
  { "keys": ["ctrl+alt+shift+right"], "command": "repel_text" },
  { "keys": ["ctrl+alt+shift+left"], "command": "attract_text" },

macOS上的默认按键绑定为

{ "keys": ["ctrl+alt+super+up"], "command": "separate_text_up" },
  { "keys": ["ctrl+alt+super+down"], "command": "separate_text_down" },
  { "keys": ["ctrl+alt+super+right"], "command": "repel_text" },
  { "keys": ["ctrl+alt+super+left"], "command": "attract_text" },

如果您想将吸引文本命令的快捷键更改为例如Shift+Ctrl+A,您可以将以下行添加到您的用户键绑定映射中(您可以通过首选项 > 键绑定打开它)

{ "keys": ["ctrl+shift+a"], "command": "attract_text" },

问题和反馈

如果您在使用SmarterLineMoves时遇到任何问题,或者您有关于添加新功能的想法,请随时在包的问题追踪器中提交问题


许可

SmarterLineMoves使用MIT许可证