Search code examples
sublimetext3sublimetext

Exclude unpacked packages from Package Control menu


Is there a way to exclude packages in Packages directory from being visible in Package Control menu? I'm afraid of accidentally delete them.


Solution

  • I'm assuming you're referring to the PackageControl: RemovePackage command here, in which case unfortunately the answer is No (or Yes, with hackery as outlined below).

    When displaying the list of packages to remove, PackageControl gathers the list of all packages and excludes from it the User and Default packages as well as any package that ships with Sublime (most notably it doesn't remove itself from the list of packages that it will remove).

    As such, outside of that all packages will be offered for removal.

    In theory you can add an empty sublime-package file to the Packages folder alongside the binary, which is where the packages that ship with Sublime are stored. Since PackageControl removes those packages from the list of packages to remove, that would stop it from offering it for removal.

    If the package is question is a sublime-package file natively, then the version in Installed Packages will override it completely as if it was not there (except that it's listed as a shipped package in tools like OverrideAudit and PackageControl). If it is installed as a folder in Packages, then technically the contents of that folder are treated as overrides for the shipped package, but since that package is empty this should have no effect.

    Having said that, although simple testing shows that this works, it may or may not have other consequences.