本文整理汇总了Golang中github.com/limetext/lime-backend/lib/log.Error函数的典型用法代码示例。如果您正苦于以下问题:Golang Error函数的具体用法?Golang Error怎么用?Golang Error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了Error函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: onInit
func onInit() {
l := py.NewLock()
defer l.Unlock()
m, err := py.Import("sublime_plugin")
if err != nil {
panic(err)
}
sys, err := py.Import("sys")
if err != nil {
log.Debug(err)
} else {
defer sys.Decref()
}
if watcher, err = watch.NewWatcher(); err != nil {
log.Error("Couldn't create watcher: %s", err)
}
// TODO: add all plugins after supporting all commands
// plugins := packages.ScanPlugins(backend.LIME_PACKAGES_PATH, ".py")
// for _, p := range plugins {
// newPlugin(p, m)
// }
newPlugin(packages.NewPlugin(path.Join(backend.LIME_PACKAGES_PATH, "Vintageous"), ".py"), m)
go watcher.Observe()
}
开发者ID:sivaramanr,项目名称:lime-backend,代码行数:27,代码来源:sublime_manual.go
示例2: loadPlugin
func (p *plugin) loadPlugin() {
fi := p.Get().([]os.FileInfo)
for _, f := range fi {
fn := f.Name()
s, err := py.NewUnicode(path.Base(p.Name()) + "." + fn[:len(fn)-3])
if err != nil {
log.Error(err)
return
}
if r, err := p.m.Base().CallMethodObjArgs("reload_plugin", s); err != nil {
log.Error(err)
} else if r != nil {
r.Decref()
}
}
}
开发者ID:modulexcite,项目名称:lime-backend,代码行数:16,代码来源:sublime_manual.go
示例3: main
func main() {
flag.Parse()
log.AddFilter("file", log.FINEST, log.NewFileLogWriter("debug.log", *rotateLog))
defer func() {
py.NewLock()
py.Finalize()
}()
if err := termbox.Init(); err != nil {
log.Error(err)
log.Close()
return
}
defer func() {
termbox.Close()
log.Debug(util.Prof)
if err := recover(); err != nil {
log.Critical(err)
panic(err)
}
}()
t := createFrontend()
go t.renderthread()
go t.editor.Init()
t.loop()
}
开发者ID:shawnps,项目名称:lime-termbox,代码行数:29,代码来源:main.go
示例4: renderthread
func (t *tbfe) renderthread() {
pc := 0
dorender := func() {
defer func() {
if r := recover(); r != nil {
log.Error("Panic in renderthread: %v\n%s", r, string(debug.Stack()))
if pc > 1 {
panic(r)
}
pc++
}
}()
termbox.Clear(defaultFg, defaultBg)
t.lock.Lock()
vs := make([]*backend.View, 0, len(t.layout))
ls := make([]layout, 0, len(t.layout))
for v, l := range t.layout {
vs = append(vs, v)
ls = append(ls, l)
}
t.lock.Unlock()
for i, v := range vs {
t.renderView(v, ls[i])
}
termbox.Flush()
}
for range t.dorender {
dorender()
}
}
开发者ID:shawnps,项目名称:lime-termbox,代码行数:34,代码来源:main.go
示例5: OpenFile
func (w *Window) OpenFile(filename string, flags int) *View {
v := w.NewFile()
v.SetScratch(true)
e := v.BeginEdit()
if fn, err := filepath.Abs(filename); err != nil {
v.Buffer().SetFileName(filename)
} else {
v.Buffer().SetFileName(fn)
}
if d, err := ioutil.ReadFile(filename); err != nil {
log.Error("Couldn't load file %s: %s", filename, err)
} else {
v.Insert(e, 0, string(d))
}
v.EndEdit(e)
v.selection.Clear()
v.selection.Add(text.Region{A: 0, B: 0})
v.Settings().Set("lime.last_save_change_count", v.buffer.ChangeCount())
v.SetScratch(false)
OnLoad.Call(v)
w.SetActiveView(v)
return v
}
开发者ID:yzq1979,项目名称:lime-backend,代码行数:26,代码来源:window.go
示例6: loadSettings
// Will load view settings respect to current syntax
// e.g if current syntax is Python settings order will be:
// Packages/Python/Python.sublime-settings
// Packages/User/Python.sublime-settings
// <Buffer Specific Settings>
func (v *View) loadSettings() {
syntax := v.Settings().Get("syntax", "").(string)
if syntax == "" {
v.Settings().SetParent(v.window)
return
}
defSettings, usrSettings := &HasSettings{}, &HasSettings{}
defSettings.Settings().SetParent(v.window)
usrSettings.Settings().SetParent(defSettings)
v.Settings().SetParent(usrSettings)
ed := GetEditor()
if r, err := rubex.Compile(`([A-Za-z]+?)\.(?:[^.]+)$`); err != nil {
log.Error(err)
return
} else if s := r.FindStringSubmatch(syntax); s != nil {
p := path.Join(LIME_PACKAGES_PATH, s[1], s[1]+".sublime-settings")
ed.load(packages.NewPacket(p, defSettings.Settings()))
p = path.Join(LIME_USER_PACKAGES_PATH, s[1]+".sublime-settings")
ed.load(packages.NewPacket(p, usrSettings.Settings()))
}
}
开发者ID:sivaramanr,项目名称:lime-backend,代码行数:31,代码来源:view.go
示例7: Line
func (fv *frontendView) Line(index int) *lineStruct {
if index < 0 || index >= len(fv.FormattedLine) {
log.Error("Error? Line index out of bounds: %v %v\n", index, len(fv.FormattedLine))
return nil
}
return fv.FormattedLine[index]
}
开发者ID:ricochet1k,项目名称:lime-qml,代码行数:7,代码来源:view.go
示例8: GetEditor
func GetEditor() *Editor {
edl.Lock()
defer edl.Unlock()
if ed == nil {
ed = &Editor{
cmdHandler: commandHandler{
ApplicationCommands: make(appcmd),
TextCommands: make(textcmd),
WindowCommands: make(wndcmd),
verbose: true,
},
frontend: &DummyFrontend{},
console: &View{
buffer: NewBuffer(),
scratch: true,
},
keyInput: make(chan keys.KeyPress, 32),
}
var err error
if ed.Watcher, err = watch.NewWatcher(); err != nil {
log.Error("Couldn't create watcher: %s", err)
}
ed.console.Settings().Set("is_widget", true)
ed.defaultSettings = new(HasSettings)
ed.platformSettings = new(HasSettings)
ed.Settings() // Just to initialize it
ed.defaultBindings = new(keys.HasKeyBindings)
ed.platformBindings = new(keys.HasKeyBindings)
ed.userBindings = new(keys.HasKeyBindings)
log.AddFilter("console", log.DEBUG, log.NewLogWriter(ed.handleLog))
go ed.inputthread()
go ed.Observe()
}
return ed
}
开发者ID:yzq1979,项目名称:lime-backend,代码行数:35,代码来源:editor.go
示例9: register
func register(cmds []backend.Command) {
ch := backend.GetEditor().CommandHandler()
for _, cmd := range cmds {
if err := ch.RegisterWithDefault(cmd); err != nil {
log.Error("Failed to register command: %s", err)
}
}
}
开发者ID:sivaramanr,项目名称:lime-backend,代码行数:8,代码来源:register.go
示例10: registerByName
func registerByName(cmds []namedCmd) {
ch := backend.GetEditor().CommandHandler()
for _, cmd := range cmds {
if err := ch.Register(cmd.name, cmd.cmd); err != nil {
log.Error("Failed to register command %s: %s", cmd.name, err)
}
}
}
开发者ID:sivaramanr,项目名称:lime-backend,代码行数:8,代码来源:register.go
示例11: SetClipboard
func (e *Editor) SetClipboard(n string) {
if err := e.clipboardSetter(n); err != nil {
log.Error("Could not set clipboard: %v", err)
}
// Keep a local copy in case the system clipboard isn't working
e.clipboard = n
}
开发者ID:yzq1979,项目名称:lime-backend,代码行数:8,代码来源:editor.go
示例12: runCommand
func (w *Window) runCommand(c WindowCommand, name string) error {
defer func() {
if r := recover(); r != nil {
log.Error("Paniced while running window command %s %v: %v\n%s", name, c, r, string(debug.Stack()))
}
}()
return c.Run(w)
}
开发者ID:yzq1979,项目名称:lime-backend,代码行数:8,代码来源:window.go
示例13: setColorMode
func setColorMode() {
var (
mode256 bool
pal = make([]termbox.RGB, 0, 256)
)
if err := termbox.SetColorMode(termbox.ColorMode256); err != nil {
log.Error("Unable to use 256 color mode: %s", err)
} else {
log.Debug("Using 256 color mode")
mode256 = true
}
if !mode256 {
pal = pal[:10] // Not correct, but whatever
pal[termbox.ColorBlack] = termbox.RGB{R: 0, G: 0, B: 0}
pal[termbox.ColorWhite] = termbox.RGB{R: 255, G: 255, B: 255}
pal[termbox.ColorRed] = termbox.RGB{R: 255, G: 0, B: 0}
pal[termbox.ColorGreen] = termbox.RGB{R: 0, G: 255, B: 0}
pal[termbox.ColorBlue] = termbox.RGB{R: 0, G: 0, B: 255}
pal[termbox.ColorMagenta] = termbox.RGB{R: 255, G: 0, B: 255}
pal[termbox.ColorYellow] = termbox.RGB{R: 255, G: 255, B: 0}
pal[termbox.ColorCyan] = termbox.RGB{R: 0, G: 255, B: 255}
diff := func(i, j byte) int {
v := int(i) - int(j)
if v < 0 {
return -v
}
return v
}
palLut = func(col textmate.Color) termbox.Attribute {
mindist := 10000000
mini := 0
for i, c := range pal {
if dist := diff(c.R, col.R) + diff(c.G, col.G) + diff(c.B, col.B); dist < mindist {
mindist = dist
mini = i
}
}
return termbox.Attribute(mini)
}
} else {
palLut = func(col textmate.Color) termbox.Attribute {
tc := termbox.RGB{R: col.R, G: col.G, B: col.B}
for i, c := range pal {
if c == tc {
return termbox.Attribute(i)
}
}
l := len(pal)
log.Debug("Adding colour: %d %+v %+v", l, col, tc)
pal = append(pal, tc)
termbox.SetColorPalette(pal)
return termbox.Attribute(l)
}
}
}
开发者ID:shawnps,项目名称:lime-termbox,代码行数:58,代码来源:main.go
示例14: GetClipboard
func (e *Editor) GetClipboard() string {
if n, err := e.clipboardGetter(); err == nil {
return n
} else {
log.Error("Could not get clipboard: %v", err)
}
return e.clipboard
}
开发者ID:yzq1979,项目名称:lime-backend,代码行数:9,代码来源:editor.go
示例15: load
func (e *Editor) load(pkg *packages.Packet) {
if err := pkg.Load(); err != nil {
log.Error("Failed to load packet %s: %s", pkg.Name(), err)
} else {
log.Info("Loaded %s", pkg.Name())
if err := e.Watch(pkg.Name(), pkg); err != nil {
log.Warn("Couldn't watch %s: %s", pkg.Name(), err)
}
}
}
开发者ID:yzq1979,项目名称:lime-backend,代码行数:10,代码来源:editor.go
示例16: newPlugin
func newPlugin(pl *packages.Plugin, m *py.Module) (p *plugin) {
p = &plugin{pl, m}
p.FileChanged(p.Name())
if err := watcher.Watch(p.Name(), p); err != nil {
log.Error("Couldn't watch %s: %s", p.Name(), err)
}
p.loadKeyBindings()
p.loadSettings()
return
}
开发者ID:sivaramanr,项目名称:lime-backend,代码行数:10,代码来源:sublime_manual.go
示例17: removeDir
// Put back watchers on watching files under the directory
func (w *Watcher) removeDir(name string) {
for p, _ := range w.watched {
if filepath.Dir(p) == name {
if err := w.watch(p); err != nil {
log.Error("Could not watch: %s", err)
continue
}
}
}
w.dirs = remove(w.dirs, name)
}
开发者ID:sivaramanr,项目名称:lime-backend,代码行数:12,代码来源:watch.go
示例18: Reload
// On plugin reload we will scan for plugin files
// and packets in plugin path
func (p *Plugin) Reload() {
var files []os.FileInfo
log.Info("Reloading plugin %s", p.Name())
f, err := os.Open(p.path)
if err != nil {
log.Error("Couldn't open dir: %s", err)
return
}
defer f.Close()
fi, err := f.Readdir(-1)
if err != nil {
log.Error("Couldn't read dir: %s", err)
return
}
for _, f := range fi {
if p.suffix != "" && strings.HasSuffix(f.Name(), p.suffix) {
files = append(files, f)
}
}
p.files = files
}
开发者ID:sivaramanr,项目名称:lime-backend,代码行数:23,代码来源:plugin.go
示例19: onClose
// called when a view is closed
func (t *qmlfrontend) onClose(v *backend.View) {
w2 := t.windows[v.Window()]
for i := range w2.views {
if w2.views[i].bv == v {
w2.window.ObjectByName("tabs").Call("removeTab", i)
copy(w2.views[i:], w2.views[i+1:])
w2.views = w2.views[:len(w2.views)-1]
return
}
}
log.Error("Couldn't find closed view...")
}
开发者ID:yzq1979,项目名称:lime-qml,代码行数:13,代码来源:qml_frontend.go
示例20: flushDir
// Remove watchers created on files under this directory because
// one watcher on the parent directory is enough for all of them
func (w *Watcher) flushDir(name string) {
if exist(w.dirs, name) {
return
}
w.dirs = append(w.dirs, name)
for _, p := range w.watchers {
if filepath.Dir(p) == name && !exist(w.dirs, p) {
if err := w.removeWatch(p); err != nil {
log.Error("Couldn't unwatch file %s: %s", p, err)
}
}
}
}
开发者ID:sivaramanr,项目名称:lime-backend,代码行数:15,代码来源:watch.go
注:本文中的github.com/limetext/lime-backend/lib/log.Error函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论