【问题标题】:sublime text 3 sidebar autoupdating not workingsublime text 3侧边栏自动更新不起作用
【发布时间】:2013-09-05 01:15:30
【问题描述】:

我想知道是否有人可以告诉我如何制作,以便当我在 finder (osx) 中将新文件夹/文件添加到当前项目时,sublime text 3 会自动更新侧边栏。

现在,我必须手动转到项目 -> 刷新文件夹

我的用户偏好可能不是问题,因为它们非常基本:

{
    "color_scheme": "Packages/Color Scheme - Default/Solarized (Light).tmTheme",
    "font_size": 18,
    "tab_size": 2,
    "translate_tabs_to_spaces": true
}

如果有人可以提供帮助,那就太好了,因为我尝试过谷歌搜索,寻找答案,但没有找到任何有效的方法。

提前致谢。

【问题讨论】:

  • 我在使用 v3 时也遇到了这个问题,但在 Windows 8 上使用已安装的 Samba 共享工作。我在 Sublime 中创建了该文件夹,但它直到刷新才显示。

标签: text-editor sublimetext auto-update sublimetext3


【解决方案1】:

我最近开始遇到这个问题,结果发现它与 DropBox 相关。一旦我删除了 DropBox 并重新启动了我的机器,文件夹刷新就开始像以前一样工作了。此外,DropBox 还影响了其他几个应用程序,特别是 SourceTree 和 Transmit 以及 Sublime Text 3。

【讨论】:

  • 我绝对可以确认这一点;打开 Dropbox,我什至无法在项目中展开文件夹。
  • 什么? Dropbox 与什么有什么关系?
  • Dropbox 导致大量目录点击,最终导致 Finder 与这些其他应用程序一起调整。
  • 五年后这个问题依然存在。有了 Dropbox 的支持,他们指责 Sublime Text:gist.github.com/JesseAldridge/133dd7e72a1af9de0b69d8dfb2b147cf
【解决方案2】:

我也有同样的问题。你总是可以bind the folder refresh to a hotkey。虽然这不是自动更新的完整修复,但它仍然可以让您免于更长时间的手动刷新。我相信这也是 Dreamweaver 的工作方式。

【讨论】:

    【解决方案3】:

    我在 ST3 (OSX 10.9.2) 上遇到了同样的问题。我的项目的根文件夹有问题。我创建了新文件夹Code1,将我的所有项目移到那里,删除了旧的Code 文件夹并将新的Code1 重命名为Code。这一点魔法让一切恢复了正常。

    【讨论】:

      【解决方案4】:

      打开控制台,看看有没有错误。它记录文件系统何时发生更改。

      【讨论】:

      • 对我来说,对于我的项目中的每个文件夹,显示的错误都是这样的FSEventStreamStart failed on path foo (FSEventStreamCreate returned 0x7f91ad9d8100)
      【解决方案5】:

      我在使用安装了 samba 的磁盘时遇到了这个问题。我最好的猜测是,这与操作系统或文件系统没有触发正确的事件有关,以使 sublime 意识到文件夹中有新内容。

      我猜测您正在处理的项目所在的磁盘属于已安装的磁盘,该磁盘可能具有不同的文件系统。尝试移动项目,看看是否有帮助。如果是这种情况,您可能应该在安装最初存储项目的磁盘时查看使用了哪些标志和内容。

      你将如何解决这个问题,但我不知道,因为我没有任何 OSX 经验。

      【讨论】:

      • 我不确定这是否是事件未触发的问题,因为对我来说,即使我明确点击“刷新”,它也不会更新得更快。但我完全同意它与 Samba 有关;对我来说,只发生在远程安装的文件系统上。
      【解决方案6】:

      这可能是插件 SidebarEnhancements 出错的结果,就像我的情况一样。使用包控制我删除了插件。我无法打包安装插件,因为它不会显示在可用插件列表中。因此,我在 repo 中关注this github issue 并将其克隆到正确的目录中。

      另一个旁注,在崇高我点击“崇高文本”->“首选项”->“浏览包”。打开正确的位置以在 finder 中克隆 repo。如果您单击生成的查找器窗口顶部栏中的文件夹图标,您实际上可以将其拖到 iTerm2 中,这样您就可以在运行下面包含的git clone 命令之前处于正确的位置。

      git clone https://github.com/titoBouzout/SideBarEnhancements.git "SideBarEnhancements" cd "SideBarEnhancements"

      最后,退出 ST3 并重新打开对我有用。希望这会有所帮助。

      【讨论】:

        【解决方案7】:

        我使用的是 Windows,所以不确定我的解决方案是否与确切的问题相关,但由于我在 Google 上找到了这个,我认为它可能会对某人有所帮助。我的问题特别出在 SideBarEnhancements 插件上。

        愚蠢的解决方案(先试试这个):

        1. 关闭 Sublime Text,进入 Packages 目录(在 Windows 中 %HOMEDRIVE%%HOMEPATH%\AppData\Roaming\Sublime Text 3(Win+R,粘贴该路径,回车);
        2. SideBarEnhancements 重命名为其他名称,然后恢复为原来的名称;
        3. 重新打开 Sublime Text。

        不错的解决方案(适用于 Windows 上的 Git Bash):

        如果愚蠢的解决方案没有奏效,继续下去没有意义。

        但是,如果它有效,您可以自动化该过程。

        1. 打开%HOMEDRIVE%%HOMEPATH%\.bashrc,或者换句话说:User\.bashrc(如果没有文件,请创建);

        2. 将以下内容粘贴到文件末尾(最好在新行上):

          touchme() {
              echo 'Killing Sublime Text process..';
              taskkill -IM "sublime_text.exe";
              cd ~/AppData/Roaming/Sublime\ Text\ 3/Packages;
              touch SideBarEnhancements;
              echo 'SideBarEnhancements folder touched;';
              echo 'Returning to original directory..';
              cd -;
              echo 'Reopening Sublime Text..';
              "/L/Program Files/Sublime Text 3/sublime_text.exe"&
          }
          

        1. 将路径更改为sublime_text.exe(函数的最后一行);
        2. 如果打开了Git Bash,执行source ~/.bashrc,转到6;
        3. 如果Git Bash没有打开,打开后转到6;
        4. 不带任何括号执行touchme
        5. 如果您将touchme 命令用于其他用途,或者只是不喜欢它,请随意重命名该函数(我发现它最容易编写和记住:P)。

        我想上面的代码也可以通过一些小的调整来适应 Unix 系统。

        【讨论】:

          【解决方案8】:

          我在重新安装 Sublime Text 2 和符号链接后遇到了这个问题。

          我发现的一种解决方法是将 refresh_folder_list 命令与 cmd+s 绑定,因为这通常是我们看到侧边栏更新的时候。

          为此,您需要安装run_multiple_commands 插件。

          然后您必须更新您的用户键盘映射,告诉它每次保存时刷新文件夹列表。语法相当简单。

          在解决问题后,我也遇到了Synced Side Bar。我不确定这是否是一个解决方案,但听起来很有希望。

          希望这会有所帮助。

          【讨论】:

          • 我有同样的问题并尝试了同步侧边栏,但我没有任何运气。
          【解决方案9】:

          我没有解决方案,但有一个关于为什么会发生这种情况的理论。我最近也注意到它停止了刷新。我还注意到,当我使用查找器打开文件夹或在任何程序中使用“打开”时,当我知道其中有文件时,操作系统只会显示一个空目录。然后我必须选择几个不同的文件夹才能让它识别出我要求它向我显示文件夹中的内容。就好像那个函数已经睡着了,我必须轻推它醒来。

          似乎小牛队正在使用一些强大的睡眠代理,并关闭了所有不需要的幕后功能,也许它也影响了侧边栏的刷新。

          【讨论】:

            【解决方案10】:

            在 OSX 10.7.5 上使用 ST2 对我来说也是同样的问题。我首先打开 Finder 到我遇到问题的文件夹,然后也导航到终端中的那个文件夹。那么:

            1. 创建一个空白文件并观察 Finder 是否刷新。

              echo "" > test.txt

            2. 如果 Finder 未刷新,请导航到 Finder 和终端中的父文件夹。重复步骤 1。

            3. 如果 Finder 确实刷新了,请将您来自的子文件夹重命名为任何名称,然后恢复为原始名称。

              mv folder_name new_folder_name

              mv new_folder_name folder_name

            4. Finder 中的自动刷新以及该文件夹和所有子文件夹的 Sublime 侧边栏再次开始工作。

            我没有解释为什么会出现这个问题。在此解决方案之前,我尝试了以下尝试来解决这个问题。我不知道这些步骤对于解决此问题是否必要。

            1. 我从存在此问题的文件夹中删除了 .DS_Store 文件。

            2. 删除 Finder 首选项文件并重新启动 Finder。如here所述。

              rm ~/Library/Preferences/com.apple.finder.plist ; killall Finder

            3. 退出 Dropbox

            感谢@peresleguine 提出重命名文件夹的建议。

            【讨论】:

              【解决方案11】:

              我遇到了同样的问题,文件夹和文件没有显示。无论我添加什么文件夹都不起作用,刷新文件夹也不起作用,如果我重新启动 Sublime,我会看到我添加的文件夹,但没有任何内容。我最终去了File -> Close Window,然后是File -> New Window,之后当我将文件夹添加到新窗口时,它又开始工作了。似乎它以某种方式损坏了项目文件。无论如何希望这可以帮助某人。

              Mac OSX 小牛队
              崇高 3 构建 3059

              【讨论】:

                【解决方案12】:

                如果您在 OS X 上使用高于 2.7.1 的 python 版本,请尝试将 python 降级到 2.7。这为我解决了多个问题:

                brew update
                brew install pyenv
                echo 'if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi' >> ~/.bashrc
                source ~/.bashrc
                pyenv install 2.7
                pyenv global 2.7
                # now restart ST3
                

                【讨论】:

                  【解决方案13】:

                  我的项目的一个子文件夹包含一个指向项目本身的符号链接,从而形成一个循环。一旦我删除它并重新打开项目,问题就消失了。但是,该符号链接对于我的项目运行是必需的,因此我创建了一个简单的 .sublime-project 文件:

                  {
                    "folders": [{
                      "path": "/",
                      "folder_exclude_patterns": ["symlink-or-one-of-its-parents"]
                    }]
                  }
                  

                  排除模式让 Sublime 忽略了循环,侧边栏立即恢复正常。请注意,folder_exclude_patterns 接受文件夹名称,而不是路径。这意味着它可能会排除您不想排除的内容(即,如果您编写 lib,它将排除项目中的所有 lib 文件夹,无论它们在哪里)。希望这对某人有所帮助。

                  【讨论】:

                    【解决方案14】:

                    在将我的项目文件符号链接到硬盘上的另一个分区后,我遇到了这个问题。我通过编辑从Project > Edit Project 到新位置的每个项目的路径来修复它。

                    【讨论】:

                      【解决方案15】:

                      谈话有点晚了,但我通过关闭 DropBox 的 Finder 集成解决了这个问题。 Yosemite 10.10.x 存在一个已知问题 https://www.dropbox.com/help/7144

                      单击工具栏中的保管箱图标,单击齿轮,然后打开首选项。取消选中启用 Finder 集成。然后重新启动计算机。

                      希望对您有所帮助。

                      【讨论】:

                        【解决方案16】:

                        我刚刚解决了这个问题,我认为原因是因为我use dropbox to sync my ST3 settings

                        前几天我用“重新登录时重新打开窗口”重新启动,发现 sublime 在 dropbox 完成初始化之前打开,导致某些设置无法正确加载。

                        结果是当我使用subl .打开项目时,我发现侧边栏无法正常工作。一开始我只是关闭ST3的窗口,重新运行subl,还是不行。

                        最后我退出了 ST3 (cmd+q),并确保 dropbox 已正确加载,然后再次 subl。这次成功了。

                        希望对您有所帮助。

                        【讨论】:

                          猜你喜欢
                          • 2015-01-12
                          • 1970-01-01
                          • 1970-01-01
                          • 2013-10-29
                          • 2015-06-25
                          • 1970-01-01
                          • 2015-03-11
                          • 1970-01-01
                          相关资源
                          最近更新 更多