func layout(g *gocui.Gui) error { maxX, maxY := g.Size() if _, err := g.SetView("center", 0, 0, maxX*4/5, maxY-Padding); err != nil { if err != gocui.ErrorUnkView { return err } } if v, err := g.SetView("side", maxX*4/5+1, 0, maxX-Padding, maxY-Padding); err != nil { if err != gocui.ErrorUnkView { return err } _, height := g.Size() if height-2*Padding > len(files) { height = len(files) } for i := 0; i < height; i++ { name := filepath.Base(files[i]) if i == 0 { fmt.Fprintln(v, PrefixArrow+name) } else { fmt.Fprintln(v, PrefixEmpty+name) } } } return nil }