当我在 Sublime Text 窗口中设置了 2 列时,我可以在两列中显示相同的文件吗?
9 回答
编辑
随着 Sublime Text 4 的发布,现在有一个名为 Split View 的功能,您可以通过几种不同的方式访问它。通过菜单系统,您可以简单地使用File -> Split View
. 您也可以右键单击选项卡并Split View
从上下文菜单中选择。它会自动打开一个新窗格,其中包含当前所选文件的新视图。
您应该知道,与下面描述的新窗格不同,新的拆分视图窗格是临时的。这意味着如果您单击另一个选项卡或打开一个新文件,拆分视图就会消失。但是,文件的新视图仍作为单独的选项卡打开,因此要重新打开窗格(或比较任何打开的文件),请在左侧选择所需的选项卡,然后Ctrl单击 (Command ⌘</kbd>-click on macOS) on the other tab(s) you want to compare, and each one will be displayed in its own pane.
如果想要有两个(或更多)“永久”窗格,无论您单击哪个选项卡,它们都将保持打开状态,只需按照以下说明进行操作。
原始答案
(对于崇高文本 3)
是的你可以。打开文件后,单击File -> New View Into File
。然后,您可以将新选项卡拖到另一个窗格并查看该文件两次。
有几种方法可以创建新窗格。如其他答案中所述,在 Linux 和 Windows 上,您可以使用AltShift2(Option ⌥</kbd>Command ⌘</kbd>2 on OS X), which corresponds to View → Layout → Columns: 2
in the menu. If you have the excellent Origami
plugin installed, you can use View → Origami → Pane → Create → Right
, or the CtrlK, Ctrl→</kbd> chord on Windows/Linux (replace Ctrl with ⌘</kbd> on OS X).
它的Shift++分成 2 个屏幕Alt。2在菜单项 View -> Layout 下可以找到更多选项。
屏幕分割后,您可以使用快捷方式打开文件:
1. Ctrl+ P(从 sublime 中的现有目录)或
2. Ctrl+ O(浏览目录)
在 sublime 编辑器中,找到名为的选项卡View
,
View --> Layout --> "select your need"
这是一个简单的插件,用于“打开/关闭拆分器”到当前文件中,如其他编辑器中所示:
import sublime_plugin
class SplitPaneCommand(sublime_plugin.WindowCommand):
def run(self):
w = self.window
if w.num_groups() == 1:
w.run_command('set_layout', {
'cols': [0.0, 1.0],
'rows': [0.0, 0.33, 1.0],
'cells': [[0, 0, 1, 1], [0, 1, 1, 2]]
})
w.focus_group(0)
w.run_command('clone_file')
w.run_command('move_to_group', {'group': 1})
w.focus_group(1)
else:
w.focus_group(1)
w.run_command('close')
w.run_command('set_layout', {
'cols': [0.0, 1.0],
'rows': [0.0, 1.0],
'cells': [[0, 0, 1, 1]]
})
将其另存为Packages/User/split_pane.py
并将其绑定到某个热键:
{"keys": ["f6"], "command": "split_pane"},
如果要更改为垂直拆分更改,请执行以下操作
"cols": [0.0, 0.46, 1.0],
"rows": [0.0, 1.0],
"cells": [[0, 0, 1, 1], [1, 0, 2, 1]]
我经常在 2 个不同的位置处理同一个文件。我在 Sublime Text 3 中使用折纸和链解决了这个问题,并带有一些额外的配置。
我的工作流程是Ctrl++将文件视图拆分为两个(水平k)2窗格,下方的窗格处于活动状态。使用Ctrl+ k+o在窗格之间切换。完成后确保下部窗格处于活动状态,然后按Ctrl+F4关闭重复的视图和窗格。
在崇高的全局设置(不是折纸设置!)添加
"origami_auto_close_empty_panes": true,
添加以下快捷方式
{ "keys": ["ctrl+k", "2"],
"command": "chain",
"args": {
"commands": [
["create_pane", {"direction": "down"}],
["clone_file_to_pane", {"direction": "down"}],
],
}
},
{ "keys": ["ctrl+k", "o"], "command": "focus_neighboring_group" },
我建议你使用Origami。它是一个很好的分屏插件。有关键盘快捷方式的更多信息,请安装它并在重新启动 Sublime 文本后打开Preferences ->
Package Settings ->
Origami ->
Key Bindings - Default
对于您的问题,我建议您查看与上述文件中的文件克隆相关的快捷方式。
可以在拆分模式下编辑相同的文件。最好在以下 youtube 视频中进行解释。
有点晚了,但我尝试扩展@Tobia 的答案以设置由命令参数驱动的布局“水平”或“垂直”,例如
{"keys": ["f6"], "command": "split_pane", "args": {"split_type": "vertical"} }
插件代码:
import sublime_plugin
class SplitPaneCommand(sublime_plugin.WindowCommand):
def run(self, split_type):
w = self.window
if w.num_groups() == 1:
if (split_type == "horizontal"):
w.run_command('set_layout', {
'cols': [0.0, 1.0],
'rows': [0.0, 0.33, 1.0],
'cells': [[0, 0, 1, 1], [0, 1, 1, 2]]
})
elif (split_type == "vertical"):
w.run_command('set_layout', {
"cols": [0.0, 0.46, 1.0],
"rows": [0.0, 1.0],
"cells": [[0, 0, 1, 1], [1, 0, 2, 1]]
})
w.focus_group(0)
w.run_command('clone_file')
w.run_command('move_to_group', {'group': 1})
w.focus_group(1)
else:
w.focus_group(1)
w.run_command('close')
w.run_command('set_layout', {
'cols': [0.0, 1.0],
'rows': [0.0, 1.0],
'cells': [[0, 0, 1, 1]]
})