如何在 macOS 上的 Sublime Text 中在同一窗口中打开文件和文件夹?

Posted

技术标签:

【中文标题】如何在 macOS 上的 Sublime Text 中在同一窗口中打开文件和文件夹?【英文标题】:How to Open files and folders in same window in Sublime Text on macOS? 【发布时间】:2014-01-28 04:46:46 【问题描述】:

如果我打开 ~/foo.txt 然后从终端打开 ~/baz/bar.txt,Sublime Text 总是打开 2 个不同的窗口。打开所有这些不同的窗口令人恼火..

我已经尝试更改了一堆 ST 的设置,但似乎没有任何解决办法。

有没有办法让所有文件和文件夹在同一个窗口中打开,就像我手动将所有这些文件夹添加到项目中一样?

【问题讨论】:

【参考方案1】:

在 Sublime 文本菜单中:

Preferences ->  Settings - User

寻找“open_files_in_new_window

并将 'true' 更改为 'false'

【讨论】:

我认为这就是答案,这是我更改的众多设置之一,但它似乎没有帮助。不过还是谢谢。 哦,对不起,我现在才测试它,重新启动我的 sublime,它对我有用:( .... 我也可以确认它有效。在 OS X 上运行 ST3。但是,与其更改默认设置文件中的值,不如将设置复制到用户设置文件并在那里更改值。这样,如果默认设置被覆盖,您就可以保留设置。 嗯。如果它对你们有用,那对我来说就足够了。 但我猜这个open_files_in_new_window 是特定于操作系统的,它仅适用于 OSX,或者至少这是默认设置所声称的 // OS X only: When files are opened from finder, or by dragging onto the // dock icon, this controls if a new window is created or not.【参考方案2】:

而不是编辑 SublimeText 默认设置(如 Jahnux73 建议的那样),您应该转到 Preferences -> Settings - User,并添加以下内容:

"open_files_in_new_window": false,

不应修改 SublimeText 默认设置文件,因为它可能会被 Sublime 更新覆盖,因此您将始终能够恢复默认设置。 Sublime 的工作方式是在运行时读取并应用默认设置,然后读取并应用 Settings - User 文件。如果发生冲突,用户设置优先。这样,您可以在不修改默认配置的情况下添加自己的设置。

【讨论】:

是的,对不起,我应该在他的回答中提到这一点,但是是的,我知道如何安全地设置设置。 =) @CorySimmons:好的,只是想确保您没有弄乱您的 Sublime 安装。 :) 实际上,在 Sublime Text 3 上,默认设置是只读的,所以你不会像在 Sublime 2 中那样不小心弄乱它们。 @MattDMo:哦,是的,我没注意到他把他的帖子标记为sublimetext3。 Ugggh,这仅适用于从 Finder 或其他系统文件打开文件时,而不是内置的 subl 控制台命令。 ??‍♂️【参考方案3】:

文件夹可以直接拖到侧边栏,也可以从菜单栏选择

Project --> Add Folder to Project.

而且更好,因为它与File -> Open folder 具有相同的功能,默认情况下不会映射到快捷方式。您可以通过转到

来使其成为键映射

File -> Preferences -> Key bindings 并附加

"keys": ["ctrl+shift+o"], "command": "prompt_add_folder" ,

那么你可以使用CTRL+SHIFT+O来添加一个文件夹。

【讨论】:

"open_files_in_new_window": false, 对我不起作用。所以这个答案是金! tks,这就是我想要的,地狱耶【参考方案4】:

拖动文件或目录到 sublime 窗口会将它们添加到当前窗口而不是打开新窗口。

【讨论】:

【参考方案5】:

以上所有答案仅表示参数文件,但这不适用于文件夹。 我找到了这个解决方案:

    需要进入注册表路径HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 3\command 更改命令添加参数-a,得到:C:\Program Files\Sublime Text\sublime_text.exe "%1" -a

另外,如果您有控制台的自定义别名,您可以像这样使用它:subl . -a

【讨论】:

【参考方案6】:

对于 ma​​c OS,需要进行两项更改

1- 首选项 -> 设置 - 用户

寻找“open_files_in_new_window”

把“真”换成“假”

2-

在系统偏好设置中找到 Dock,然后更改“打开文档时首选选项卡”选项的设置并选择始终。

然后做:

subl 文件夹_1

subl 文件夹_2

subl 文件夹_3

我详细解释了here

【讨论】:

【参考方案7】:

以上所有回复均无效。在这里我找到了解决这个问题的真正方法:-

点击偏好

 > Settings - Distraction Free

然后在用户面板中添加这些行:"open_files_in_new_window": false,

然后点击保存。

给你!!

【讨论】:

【参考方案8】:

以上答案都不适合我。

我有一个 Sublime 应用程序图标固定在 Dock 上,每次我通过 Finder 上下文菜单(打开方式 > Sublime Text.app)打开一个新文件时,它都会转到一个新打开的 Sublime 实例,该实例显示在“最近的应用程序”中“码头区。所以我在 Dock 中总是有 2 个图标,每个图标都有不同的选项卡集。

我只是从 Dock 中删除了第一个图标,并将其从“最近的应用程序”区域固定,然后将其拖到第一个图标所在的位置。

如果您按照其他答案中的建议将“open_files_in_new_window”设置为“false”(首选项 > 设置),这似乎可以正常工作。

【讨论】:

以上是关于如何在 macOS 上的 Sublime Text 中在同一窗口中打开文件和文件夹?的主要内容,如果未能解决你的问题,请参考以下文章

如何破解sublime text 2 mac

MacOS | Sublime Text 3.2.2

Sublime-Text macOS 编译运行armadillo

[环境配置] macOS配置基于sublime text4的c++开发环境(clangd)

MacOS中创建Sublime Text3快捷方式返回Operation not permitted的原因及解决

Sublime Text编译运行C语言程序出现无法输入解决办法(WindowsLinuxMacOS均适用)