From 98778a80c21f82280d8c1a34deac6e17813e17db Mon Sep 17 00:00:00 2001 From: Zachary Yedidia Date: Sun, 3 Dec 2017 15:15:07 -0500 Subject: [PATCH] Allow plugins to create view types Closes #904 --- cmd/micro/micro.go | 1 + cmd/micro/view.go | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/cmd/micro/micro.go b/cmd/micro/micro.go index b74cf672..275f58ce 100644 --- a/cmd/micro/micro.go +++ b/cmd/micro/micro.go @@ -403,6 +403,7 @@ func main() { L.SetGlobal("Reload", luar.New(L, LoadAll)) L.SetGlobal("ByteOffset", luar.New(L, ByteOffset)) L.SetGlobal("ToCharPos", luar.New(L, ToCharPos)) + L.SetGlobal("NewViewType", luar.New(L, NewViewType)) // Used for asynchronous jobs L.SetGlobal("JobStart", luar.New(L, JobStart)) diff --git a/cmd/micro/view.go b/cmd/micro/view.go index 5bab40bd..d20ef3ce 100644 --- a/cmd/micro/view.go +++ b/cmd/micro/view.go @@ -18,6 +18,11 @@ type ViewType struct { scratch bool // The file cannot be saved } +// NewViewType creates a new ViewType - useful for plugins +func NewViewType(kind int, readonly, scratch bool) ViewType { + return ViewType{kind, readonly, scratch} +} + var ( vtDefault = ViewType{0, false, false} vtHelp = ViewType{1, true, true} -- 2.44.0