AlignTab
适用于Sublime Text的正则表达式对齐插件
详细信息
安装
- 总数 168K
- Win 99K
- Mac 42K
- Linux 27K
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日 | 6月22日 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 13 | 4 | 5 | 5 | 12 | 4 | 9 | 4 | 4 | 1 | 6 | 1 | 4 | 2 | 4 | 11 | 5 | 4 | 6 | 10 | 6 | 2 | 5 | 3 | 3 | 4 | 2 | 4 | 3 | 2 | 5 | 2 | 6 | 4 | 4 | 6 | 6 | 7 | 5 | 4 | 7 | 5 | 9 | 7 | 7 | 5 |
Mac | 7 | 3 | 0 | 1 | 1 | 4 | 4 | 2 | 4 | 0 | 1 | 2 | 2 | 5 | 7 | 5 | 1 | 1 | 2 | 4 | 1 | 2 | 5 | 0 | 1 | 2 | 7 | 3 | 4 | 5 | 0 | 0 | 2 | 2 | 3 | 4 | 2 | 1 | 2 | 4 | 1 | 1 | 6 | 3 | 1 | 0 |
Linux | 0 | 2 | 0 | 1 | 3 | 1 | 0 | 1 | 0 | 1 | 2 | 2 | 1 | 2 | 2 | 4 | 0 | 0 | 4 | 3 | 0 | 2 | 1 | 0 | 1 | 2 | 5 | 4 | 2 | 3 | 1 | 0 | 0 | 1 | 1 | 0 | 6 | 2 | 1 | 5 | 1 | 2 | 1 | 2 | 2 | 0 |
README
AlignTab
Sublime Text 3最灵活的对齐插件,本插件灵感来源于优秀的VIM插件tabular。
因弃用ST2支持,但无论如何,您仍然可以通过Package Control在ST2上安装AlignTab。
特点
- 使用正则表达式对齐
- 自定义间距、填充和对齐方式。
- 如果没有选择行,则可智能检测对齐。
- 支持多光标
- 表格模式和实时预览模式
入门指南
- 如果您只想进行简单快捷的对齐,预定义的对齐功能将帮助您。
更复杂的用法
- 在命令面板中打开
AlignTab
(快捷键C+Shift+p
)并输入格式为<regex>/<option>
的输入。 - 要了解更多关于正则表达式的信息,请访问这里和这里。
- 选项控制列对齐、填充以及最大分割数。选项的一般语法为
([rlc][0-9]*)*(f[0-9]*)?
。 - 数字跟在
r
、c
或l
之后决定了在每列之后添加多少空格,而数字跟在f
之后控制了基于<regex>
进行的匹配次数。 - 例如,
c2r3f1
表示- 第一列居中,后面跟2个空格
- 第二列右对齐,后面跟3个空格
- 仅使用第一个匹配项
- 如果省略了
[rlc]
后面的数字,则每列之后将添加1个空格。 - 如果省略了
f
后面的数字,则仅使用第一个匹配项。 - 整个选项可以省略(即仅输入正则表达式)。在这种情况下,将使用默认选项
l1f0
。意味着- 所有列左对齐。
- 每列之后添加1个空格。
- 所有匹配的定界符将对齐。
关于正则表达式和选项的更多内容
- 使用非捕获括号
(?:regex)
而不是捕获括号。 - 分隔符也被视为列。
- 例如,
=/rcl
表示=
之前列右对齐,之后列左对齐。而=
将居中(然而,由于=
长度为1,因此这无关紧要)。
- 例如,
- 对齐选项会遍历各个列。
- 例如,
regex/rl
表示所有奇数列右对齐,所有偶数列左对齐。
- 例如,
- 符号
*
将重复之前的对齐标志。- 例如
r*3
等于rrr
,而(cr3)*2
等于cr3cr3
。
- 例如
- (实验性)除了
r
、c
和l
以外,还有一个新的u
标志,表示“不对齐”。
实时预览模式
表格模式
按ESC键或使用命令AlignTab: Exit Table Mode
退出表格模式。
安装
示例
一些简单示例。您也可以在这里贡献示例 [链接]。
快捷键
如果您想为实时预览模式获取一个快捷键,请在您的用户快捷键文件中添加以下内容。
{
"keys": ["super+shift+a"], "command": "align_tab",
"args" : {"live_preview" : true}
}
对于频繁的模式,您可以在您的用户快捷键文件中考虑以下内容。更改快捷键和user_input
以满足您的需求。
//align =
{
"keys": ["super+shift+a"], "command": "align_tab",
"args" : {"user_input" : "=/f"}
}
或特定于syntex的快捷键。
// latex align keybind, to align & and \\, but not \&
{
"keys": ["super+shift+a"], "command": "align_tab",
"args" : {"user_input" : "(?<!\\\\)&|\\\\\\\\"},
"context":[
{ "key": "selector", "operator": "equal", "operand": "text.tex.latex" }
]
}
命名模式
为了更容易记住复杂的模式,您可以在设置文件中的字典中保存它们。要编辑模式,启动Preferences: AlignTab Settings
。使用名称作为键,使用正则表达式作为值。例如,
"named_patterns": {
"eq" : "=/f",
// right hand side could also be an array of inputs
"ifthen" : ["=/f", "\\?/f", ":/f"]
}
然后您只需在输入字段中使用名称而不是模式。
自定义上下文菜单
要定义上下文菜单中的新项,启动Preferences: AlignTab Context Menu
并添加,例如
[
{"caption" : "-"},
{
"id": "aligntab",
"caption": "AlignTab",
"children": [
{
"caption" : "{",
"command" : "align_tab",
"args" : {"user_input" : "\\{"}
}
]
}
]
CJK 支持
AlignTab支持CJK字符,但您必须选择正确的字体和字号。据我所知,MinCho
适用于所有中文、日文和韩文。
许可协议
AlignTab采用MIT许可协议。