Sublime Text 3 自定义布局
Sublime Text 3 Custom Layout
我想要我的 ST3 的自定义布局 - 具体来说,我想要这个布局结构。
谁能告诉我该怎么做?
第一个选项:
安装更多布局包并按 ALT + SHIFT + 6
在这里你可以看到包装和一些布局的例子:
https://packagecontrol.io/packages/More%20Layouts
我的 sublime text 3 示例:
如果您不知道如何在此处安装软件包,您可以查看方法:
https://packagecontrol.io/installation
第二个选项:
使用 CTRL + `
打开控制台
然后键入此命令:
window.set_layout({'cols': [0.0, 0.5, 1.0], 'cells': [[0, 0, 1, 1], [1, 0, 2, 1], [0, 1, 2, 2]], 'rows': [0.0, 0.5, 1.0]})
对于那个确切的布局,这应该可以解决问题。
虽然手动创建这样的布局可能会弄脏您的手,但实现这一目标的最简单方法可能是使用包来完成。 Origami 包就是其中一个例子。
使用该包,您可以按照以下步骤获得您感兴趣的布局:
- Select
Origami: Create Pane Below
命令(或使用标准 View > Layout > Rows: 2
菜单项)创建两行
- 聚焦底部窗格并 select
Origami: Create Pane on the Right
完成此布局后,您可以使用命令面板中的 Origami: Save Current Layout
保存它,然后根据需要轻松调用它。
假设您不想to/can安装第三方软件包,您也可以制作自己的自定义菜单项and/or键绑定,它会为您设置此布局。
为了向菜单添加新项目,请将以下文本另存为 Main.sublime-menu
在您的 User
包中(如果您不知道它在哪里,请使用 Preferences > Browse Packages
):
[
{
"caption": "View",
"mnemonic": "V",
"id": "view",
"children":
[
{ "caption": "-", "id": "groups" },
{
"caption": "Layout",
"mnemonic": "L",
"id": "layout",
"children":
[
{
"caption": "Three Pane",
"command": "set_layout",
"args":
{
"cols": [0.0, 0.5, 1.0 ],
"rows": [0.0, 0.5, 1.0 ],
"cells": [
[0, 0, 2, 1 ],
[0, 1, 1, 2 ],
[1, 1, 2, 2 ]
]
}
}
]
},
]
}
]
这将在 View > Layout
下添加一个名为 Three Pane
的新菜单条目,当 selected 时,它将设置您想要的布局。根据需要更改 caption
字符串的值以更改布局的名称。
此外,您可以将以下键绑定添加到您的自定义键绑定(Preferences > Key Bindings
来自菜单),以便拥有一个执行相同操作的热键:
{
"keys": ["alt+shift+3"],
"command": "set_layout",
"args":
{
"cols": [0.0, 0.5, 1.0 ],
"rows": [0.0, 0.5, 1.0 ],
"cells": [
[0, 0, 2, 1 ],
[0, 1, 1, 2 ],
[1, 1, 2, 2 ]
]
}
},
如果这是您的第一个自定义键绑定,请确保将整个文本包装在一对 [
和 ]
中,因为键绑定是一个项目列表,这仅代表键绑定本身。
这会为三列重复使用默认的 Windows/Linux 键绑定,因此您可以根据需要进行更改。如果您结合上面的菜单更改执行此操作,菜单将自动显示您正在使用的键绑定作为提醒,以防您忘记。
作为参考,set_layout
命令采用与(官方未记录的)window.set_layout()
API 调用相同的 layout
参数。有 unofficial documentation on that method 解释了这是如何工作的,尽管我在这里作弊并使用 Origami 来创建布局。
我制作了一个图表,让我了解 set_layout
如何根据给定的值构造布局,并认为我会分享。
是的,X 确实是 cols
,Y 确实是 rows
。这是不直观的。
可以这样想:垂直线(列)从水平轴上的点增长,水平线(行)从垂直轴上的点增长。
我希望它可以理解并有所帮助。
我想要我的 ST3 的自定义布局 - 具体来说,我想要这个布局结构。
谁能告诉我该怎么做?
第一个选项:
安装更多布局包并按 ALT + SHIFT + 6
在这里你可以看到包装和一些布局的例子:
https://packagecontrol.io/packages/More%20Layouts
我的 sublime text 3 示例:
如果您不知道如何在此处安装软件包,您可以查看方法:
https://packagecontrol.io/installation
第二个选项:
使用 CTRL + `
打开控制台然后键入此命令:
window.set_layout({'cols': [0.0, 0.5, 1.0], 'cells': [[0, 0, 1, 1], [1, 0, 2, 1], [0, 1, 2, 2]], 'rows': [0.0, 0.5, 1.0]})
对于那个确切的布局,这应该可以解决问题。
虽然手动创建这样的布局可能会弄脏您的手,但实现这一目标的最简单方法可能是使用包来完成。 Origami 包就是其中一个例子。
使用该包,您可以按照以下步骤获得您感兴趣的布局:
- Select
Origami: Create Pane Below
命令(或使用标准View > Layout > Rows: 2
菜单项)创建两行 - 聚焦底部窗格并 select
Origami: Create Pane on the Right
完成此布局后,您可以使用命令面板中的 Origami: Save Current Layout
保存它,然后根据需要轻松调用它。
假设您不想to/can安装第三方软件包,您也可以制作自己的自定义菜单项and/or键绑定,它会为您设置此布局。
为了向菜单添加新项目,请将以下文本另存为 Main.sublime-menu
在您的 User
包中(如果您不知道它在哪里,请使用 Preferences > Browse Packages
):
[
{
"caption": "View",
"mnemonic": "V",
"id": "view",
"children":
[
{ "caption": "-", "id": "groups" },
{
"caption": "Layout",
"mnemonic": "L",
"id": "layout",
"children":
[
{
"caption": "Three Pane",
"command": "set_layout",
"args":
{
"cols": [0.0, 0.5, 1.0 ],
"rows": [0.0, 0.5, 1.0 ],
"cells": [
[0, 0, 2, 1 ],
[0, 1, 1, 2 ],
[1, 1, 2, 2 ]
]
}
}
]
},
]
}
]
这将在 View > Layout
下添加一个名为 Three Pane
的新菜单条目,当 selected 时,它将设置您想要的布局。根据需要更改 caption
字符串的值以更改布局的名称。
此外,您可以将以下键绑定添加到您的自定义键绑定(Preferences > Key Bindings
来自菜单),以便拥有一个执行相同操作的热键:
{
"keys": ["alt+shift+3"],
"command": "set_layout",
"args":
{
"cols": [0.0, 0.5, 1.0 ],
"rows": [0.0, 0.5, 1.0 ],
"cells": [
[0, 0, 2, 1 ],
[0, 1, 1, 2 ],
[1, 1, 2, 2 ]
]
}
},
如果这是您的第一个自定义键绑定,请确保将整个文本包装在一对 [
和 ]
中,因为键绑定是一个项目列表,这仅代表键绑定本身。
这会为三列重复使用默认的 Windows/Linux 键绑定,因此您可以根据需要进行更改。如果您结合上面的菜单更改执行此操作,菜单将自动显示您正在使用的键绑定作为提醒,以防您忘记。
作为参考,set_layout
命令采用与(官方未记录的)window.set_layout()
API 调用相同的 layout
参数。有 unofficial documentation on that method 解释了这是如何工作的,尽管我在这里作弊并使用 Origami 来创建布局。
我制作了一个图表,让我了解 set_layout
如何根据给定的值构造布局,并认为我会分享。
cols
,Y 确实是 rows
。这是不直观的。
可以这样想:垂直线(列)从水平轴上的点增长,水平线(行)从垂直轴上的点增长。
我希望它可以理解并有所帮助。