mirror of
https://github.com/zyedidia/micro.git
synced 2026-03-29 22:27:13 +09:00
allow plugins to have a help file
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"errors"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
"github.com/layeh/gopher-luar"
|
||||
@@ -126,8 +127,9 @@ func LoadPlugins() {
|
||||
pluginName := plugin.Name()
|
||||
files, _ := ioutil.ReadDir(configDir + "/plugins/" + pluginName)
|
||||
for _, f := range files {
|
||||
fullPath := filepath.Join(configDir, "plugins", pluginName, f.Name())
|
||||
if f.Name() == pluginName+".lua" {
|
||||
data, _ := ioutil.ReadFile(configDir + "/plugins/" + pluginName + "/" + f.Name())
|
||||
data, _ := ioutil.ReadFile(fullPath)
|
||||
pluginDef := "\nlocal P = {}\n" + pluginName + " = P\nsetmetatable(" + pluginName + ", {__index = _G})\nsetfenv(1, P)\n"
|
||||
|
||||
if err := L.DoString(pluginDef + string(data)); err != nil {
|
||||
@@ -135,6 +137,8 @@ func LoadPlugins() {
|
||||
continue
|
||||
}
|
||||
loadedPlugins = append(loadedPlugins, pluginName)
|
||||
} else if f.Name() == "help.md" {
|
||||
AddPluginHelp(pluginName, fullPath)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user