Hot-reload every installed plugin, not just local clones
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
19144983e5
commit
2050f28d55
+1
-1
@@ -155,7 +155,7 @@ the interactive picker, then opens the new `local.*` directory in `$EDITOR`.
|
||||
Existing shortcuts and shell IPC calls made to the built-in id are routed to
|
||||
the enabled clone, so cloning does not require changing its callers. Removing
|
||||
an active clone switches back to its built-in source.
|
||||
Saving a file anywhere inside a `local.*` plugin reloads plugin code
|
||||
Saving a file anywhere under `~/.config/omarchy/plugins/` reloads plugin code
|
||||
automatically; `omarchy-shell shell rescanPlugins` remains available to force a reload.
|
||||
|
||||
First-party plugins under `shell/plugins/` are discovered the same way and load
|
||||
|
||||
@@ -668,9 +668,11 @@ QtObject {
|
||||
function localPluginIdForPath(filePath) {
|
||||
var base = pluginsDir.replace(/\/$/, "") + "/"
|
||||
var path = String(filePath || "").trim()
|
||||
if (path.indexOf(base + "local.") !== 0) return ""
|
||||
if (path.indexOf(base) !== 0) return ""
|
||||
|
||||
var relative = path.slice(base.length)
|
||||
// Hidden entries are not plugins: clone staging dirs, remove backups.
|
||||
if (relative.indexOf(".") === 0) return ""
|
||||
if (relative.indexOf("/.git/") !== -1 || relative.endsWith("/.git")) return ""
|
||||
|
||||
var slash = relative.indexOf("/")
|
||||
|
||||
Reference in New Issue
Block a user