【问题标题】:Opening a Sublime project from the command line without opening a blank window从命令行打开 Sublime 项目而不打开空白窗口
【发布时间】:2013-06-23 23:59:15
【问题描述】:

我正在尝试弄清楚如何从命令行打开 Sublime Text 项目。

如果我为未打开的项目键入subl foo.project,它将打开该项目。但是,如果我为一个已经打开的项目执行此操作,它会由于某种原因打开一个空白窗口。我不知道这是错误还是预期行为。

是否有可能想出一个命令或shell脚本,它接受一个项目文件名,如果它没有打开则打开它,但如果它打开则聚焦它?如果是这样,我该怎么做?

我正在使用 Sublime Text 2.0.1 和 OS X 10.8.4。我有subl 符号链接到/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl

我找到了this post on UserEchothis post on the forum,但没有任何有意义的回复。除此之外,我还没有发现关于这个错误的任何其他信息。

编辑:我更新到了 Sublime Text 3 测试版,但我仍然遇到这个错误。我还没有找到修复或解决方法。

【问题讨论】:

  • 这是一种奇怪的行为,也许是一个错误?我在 Linux 上,当我为一个开放项目这样做时,它只是专注于。
  • 您是否偶然安装了 MacPorts?
  • 我不认为我有 MacPorts。我使用的是最近的 Mac(不超过几个月),我不记得曾经安装过它。
  • Sublime Text 的开发者很少经常使用 UserEcho。你更有可能在官方论坛sublimetext.com/forum得到回复

标签: bash sublimetext2 sublimetext sublimetext3


【解决方案1】:

这是 OSX 上 Sublime Text 2/3 中的 known 错误。开发人员并没有为此制作很多 cmets,因此他们可能不会在不久的将来从事这项工作。

至于 bash 脚本,您可能需要转到 'Ask Ubuntu'。那里有很多 Unix 大师,他们可能会为您提供快速解决方案。

【讨论】:

  • 我为什么要去“问 Ubuntu”解决 OS X 上的问题?
  • 因为他们处理大量的 Bash 脚本。 OSX 基于 Unix。
  • 如果我想问一个基于 Unix 的问题,最好在Unix & Linux 上提问?
  • 是的,你也可以这样做。我只提到了那个链接,因为它涉及一个 bash 脚本,它完全符合您的要求。
  • 我尝试了xdg-open 命令,但没有成功。由于这应该是一个已知的错误,我可能会等着看他们是否修复它。
【解决方案2】:

我正在使用这种组合在项目之间切换

alias sp='subl --command "close_project"; subl --project'
sp myproject.sublime-project

虽然有时还是会出现空窗口,但我认为您可能需要延迟

alias sp='subl --command "close_project"; sleep 0.2; subl --project'

【讨论】:

    【解决方案3】:

    它是bug,仍然存在于我的构建 3059 中。解决方法是等到 Sublime 窗口打开,然后打开文件。

    例如。将以下内容放入您的.bash_profile

    alias edit='subl && sleep 0.1 && subl'
    

    (别忘了运行 source .bash_profile 来刷新。)在我的电脑上 0.1 秒已经足够快了,但在速度较慢的电脑上这个值可能会更大。

    【讨论】:

      【解决方案4】:

      我目前不在我的 Mac 上进行测试,但请尝试使用 Packages/User/Preferences.sublime-settings 文件中的 "open_files_in_new_window" 和/或 "create_window_at_startup" 设置。如果此行为不是 OSX 上的错误,则应该使用其中一项或两项设置来修复它。

      【讨论】:

      • 我尝试了所有设置为 true、设置为 false 和未设置的设置组合,但没有解决任何问题。
      【解决方案5】:

      我遇到了类似的问题,subl 命令会打开空白窗口,非常烦​​人。我在 Github 问题 here 上发布了一个修复程序。


      这里是:

      如果有人遇到此问题并且无法让subl 命令停止打开空白窗口,我通过以下步骤解决了它:

      1. 将“用户设置”复制到文件中(稍后需要粘贴)
      2. 按照here 的描述找到您的数据文件夹
      3. 将该数据文件夹移至您仍可访问但不在默认位置的位置
      4. 退出 Sublime Text
      5. 打开 Sublime 文本
      6. (此时您的subl 命令应该可以工作了,您只需要恢复您的设置/包等...)
      7. 您应该会看到 Sublime Text 现在在旧文件夹所在的位置创建了一个新文件夹
      8. 文件夹中的Installed PackagesLocalPackages文件夹替换为文件夹中的文件夹
      9. 将您的“用户设置”粘贴回您的用户设置的 JSON 文件中
      10. 退出 Sublime Text 并重新启动,您现在应该可以恢复原来的设置了

      希望对你有帮助

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-04-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-09
        相关资源
        最近更新 更多