I currently have an emacs package conflict occuring. It is a difficult one to pinpoint as it happens occasionally.

I have started using M-x unload-feature to unload packages from memory, get out of the error state and identify the package causing the conflict error.

This is a good start but I have noticed that not all my packages are loaded in memory. As I have 161 packages installed, including dependencies. I do not want to manually go through each one, then run unload feature, only to find out it that package is not loaded.

To start, is there a way to display all packages that are currently loaded?

I was thinking of displaying all major and minor modes as a start. But I cannot even work out how to do that!

Any suggestions?

  • 2
    The variable load-history stores everything. – lawlist Oct 20 '16 at 3:10
  • @lawlist thanks i thought there would be a list somewhere – orion Oct 21 '16 at 0:06
  • @lawlist how does one inspect the load-history variable? – orion Oct 24 '16 at 0:43
  • 1
    M-x describe-variable RET load-history RET. Or, use the keyboard shortcut of C-h v. – lawlist Oct 24 '16 at 2:09

I don't think there's a good way to show all packages that are currently loaded. You can inspect the features variable, but not all loaded files may provide a feature.

You can use describe-mode (by default, C-h m) to view the current major mode and active minor modes. Most conflicts come from minor modes clashing with each other.

Never missing an opportunity to hawk my own wares, I recommend using helm-describe-modes to better search for, view, activate, and deactivate modes.

Having 161 packages seems excessive...though perhaps somewhat understandable if most are from transitive dependencies. As with any technology, try to avoid using what you don't understand (unless it's a very well-maintained package for which the author has made great effort to avoid conflicts, etc.).

If you provide more information about the conflict in question, we can provide more specific advice.

| improve this answer | |
  • xiong I agree it will be a minor mode. Cool helm-describe-modes sounds great. Yes I run a lot of packages, quite a few are a build up from testing packages. So a package spring clean is being done. – orion Oct 21 '16 at 0:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.