chrisgrieser / obsidian-divide-and-conquer

An Obsidian plugin that provides commands for bulk enabling/disabling of plugins. Useful for debugging when you have many plugins.
MIT License
57 stars 5 forks source link
debugging-tool obsidian-md obsidian-plugin

⚔️ Divide & Conquer

An Obsidian plugin that provides commands for bulk enabling/disabling of plugins and CSS Snippets. This allows you to quickly find which plugins are causing bugs or performance problems. DAC Snippet Demo

How this helps with Debugging

You have a problem with Obsidian and have confirmed that the issue goes away when enabling safe mode. Now, you have to narrow down which plugin misbehaves. The most efficient method for doing so is called "bisecting", meaning that you disable half of the plugins, and depending on whether the issue still occurs or not, you can rule out one half of plugins.

Even though that process is the quickest method of finding the culprit-plugin, it is still quite cumbersome for power users who have 40, 50 or more plugins. Divide & Conquer provides some useful commands for bulk disabling/enabling of plugins, to make the power user's life easier.

Commands Added

For either Plugin/Snippet:

* After Resetting, DAC won't enable any plugins that you disable manually. Restoring only enables plugins that DAC disabled, and disables any that were already disabled when you last reset

(Note that to be able to fulfill its duty, this plugin will never disable itself. The Hot Reload Plugin will also never be disabled, to avoid interference for developers.)

Settings

The plugin/snippet exclusion is regex enabled, and you can exclude by author or description as well (e.g. 'command palette' to exclude any plugins that modify the command palette) DAC Settings Demo

Installation

The plugin is available via Obsidian's Community Plugin Browser: SettingsCommunity PluginsBrowse → Search for "Divide & Conquer"

Bugs

Credits

Originally created by chrisgrieser aka pseudometa, now maintained by geoffreysflaminglasersword.