return buffer.NewBufferFromFile(path, buffer.BTDefault)
}))
ulua.L.SetField(pkg, "ByteOffset", luar.New(ulua.L, buffer.ByteOffset))
+ ulua.L.SetField(pkg, "Log", luar.New(ulua.L, buffer.WriteLog))
+ ulua.L.SetField(pkg, "LogBuf", luar.New(ulua.L, buffer.GetLogBuf))
return pkg
}
flagVersion = flag.Bool("version", false, "Show the version number and information")
flagConfigDir = flag.String("config-dir", "", "Specify a custom location for the configuration directory")
flagOptions = flag.Bool("options", false, "Show all option help")
+ flagDebug = flag.Bool("debug", false, "Enable debug mode (prints debug info to ./log.txt)")
optionFlags map[string]*string
)
fmt.Println(" \tThis can also be done by opening file:LINE:COL")
fmt.Println("-options")
fmt.Println(" \tShow all option help")
+ fmt.Println("-debug")
+ fmt.Println(" \tEnable debug mode (enables logging to ./log.txt)")
fmt.Println("-version")
fmt.Println(" \tShow the version number and information")
}
os.Exit(0)
}
+
+ if util.Debug == "OFF" && *flagDebug {
+ util.Debug = "ON"
+ }
}
// LoadInput determines which files should be loaded into buffers
var err error
- InitLog()
-
InitFlags()
+ InitLog()
+
err = config.InitConfigDir(*flagConfigDir)
if err != nil {
screen.TermMessage(err)
func WriteLog(s string) {
LogBuf.EventHandler.Insert(LogBuf.End(), s)
}
+
+// GetLogBuf returns the log buffer
+func GetLogBuf() *Buffer {
+ return LogBuf
+}