Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sublimetext3 如何将升华默认视图设置为2行_Sublimetext3 - Fatal编程技术网

Sublimetext3 如何将升华默认视图设置为2行

Sublimetext3 如何将升华默认视图设置为2行,sublimetext3,Sublimetext3,每次打开sublime时,我都会执行以下操作: 布局 然后 行数:2 我是否可以更改设置,以便在打开sublime时这是默认设置?尝试将您的版本更新为3.0 build 3143!我有这个版本,当我打开它时,我有上一次使用的布局第2行(如果以前选择了),或者在上一次升华关闭之前选择了其他布局。我知道没有设置来控制新创建窗口的布局;它们始终创建为单个文件组。最好/最简单的方法可能是使用默认键绑定来设置所需的布局,或者将其绑定到另一个更容易访问的键,而不是通过菜单 正如在关于你的问题的评论中提到的,

每次打开sublime时,我都会执行以下操作:

布局

然后

行数:2


我是否可以更改设置,以便在打开sublime时这是默认设置?

尝试将您的版本更新为3.0 build 3143!我有这个版本,当我打开它时,我有上一次使用的布局第2行(如果以前选择了),或者在上一次升华关闭之前选择了其他布局。

我知道没有设置来控制新创建窗口的布局;它们始终创建为单个文件组。最好/最简单的方法可能是使用默认键绑定来设置所需的布局,或者将其绑定到另一个更容易访问的键,而不是通过菜单

正如在关于你的问题的评论中提到的,可能是源代码,也可以使用插件代码来解决这个特别的问题

如链接答案和上述注释所示,升华启动时活动窗口的布局将切换为两行布局

这是次优的,因为它将强制更改活动窗口的布局,即使它已经包含可能不是您想要的文件,它只会影响活动窗口,即使有许多可能不是您想要的,它不会影响插件加载后创建的窗口,这绝对不是您想要的

下面是一个解决一些限制的版本。但是请注意,在MacOS上,有些情况下会创建插件无法检测到的新窗口,因此根据您的操作系统,这仍然可能无法实现您想要的功能

在下面的代码中,对plugin_loaded的调用将查找当前存在的所有窗口并更改其布局,但前提是这些窗口当前使用的是单窗格布局

此外,它还可以在运行时侦听新窗口的创建时间,并将其布局设置为所需的默认值

要使用它,请从菜单中选择工具>开发人员>新插件,将存根代码替换为以下代码,然后将其另存为Python文件,保存在升华默认为用户包的文件夹中

进口升华 导入升华插件 def set_default_布局窗口: 将提供的窗口的布局更改为所需的默认值。 window.run_命令集_布局{ 单元格:[[0,0,1,1],[0,1,1,2], 科尔斯:[0.0,1.0], 行:[0.0,0.5,1.0]} 确保最高层的团队得到关注 window.focus\u组0 def插件已加载: 使具有单个文件组的所有窗口都具有默认布局。 对于sublime.windows中的窗口: 如果window.num_groups==1: 设置默认布局窗口 类DefaultPaneSettersublime_plugin.EventListener: 将新创建窗口的布局更改为默认布局。 发布窗口命令自身、窗口、命令、参数上的定义: 如果命令==新窗口: 设置\u默认\u布局sublime.active\u窗口 如上所述,在MacOS下,有些情况下创建新窗口时不调用插件正在监视的new_window命令,例如在没有窗口的情况下启动Sublime并创建默认值,或者在打开new_window中的open_files_时将新文件拖到dock以打开它

据我所知,除了不断检查现在是否有比几秒钟前更多的窗口外,无法检测何时发生这种情况,但这似乎相当具有侵入性,并可能导致性能下降

另外请注意,如果您正在使用以任何方式创建新窗口的任何软件包,此代码可能会干扰这些软件包,因为当软件包不需要时,会将默认布局强制到窗口上。

如前所述,使用2列而不是2行,您也可以通过命令行选项而不是插件来实现这一点:

subl -n --command "set_layout {\"cells\": [[0, 0, 1, 1], [0, 1, 1, 2]], \"cols\": [0.0, 1.0], \"rows\": [0.0, 0.5, 1.0]}" file1 && subl --command "focus_group {\"group\": 1}" && subl file2

我使用的是那个版本,但没有你描述的行为。在默认布局中,你可以定义你的自定义插件。转到Preferences->Browse Package并定义一个新的python代码文件,其中加载了以下行导入升华定义插件:升华.active\u window.run\u commandset\u布局,{cols:[0.0,0.5,1.0],行:[0.0,1.0],单元格:[[0,0,1,1],[1,0,2,1]}在从菜单打开的包文件夹中保存.py,并加载上述内容导入升华def插件:升华.active\u window.run\u commandset\u布局,{cols:[0.0,0.5,1.0],行:[0.0,1.0],单元格:[[0,0,1,1],[1,0,2,1]]