diff options
author | Jesse Duffield <jessedduffield@gmail.com> | 2021-10-18 09:21:33 +1100 |
---|---|---|
committer | Jesse Duffield <jessedduffield@gmail.com> | 2021-10-18 09:21:33 +1100 |
commit | 71fdc5c03885bfabc50ccd6bfe0f83637a6cd4cc (patch) | |
tree | c233a890f9e0942ad93a17cc8f343aaaea5cc832 | |
parent | a05f22efa2288b4d05ab2d884590565853dc6b9f (diff) |
better title rendering
-rw-r--r-- | go.mod | 2 | ||||
-rw-r--r-- | go.sum | 2 | ||||
-rw-r--r-- | vendor/github.com/jesseduffield/gocui/gui.go | 14 | ||||
-rw-r--r-- | vendor/modules.txt | 2 |
4 files changed, 13 insertions, 7 deletions
@@ -20,7 +20,7 @@ require ( github.com/imdario/mergo v0.3.11 github.com/integrii/flaggy v1.4.0 github.com/jesseduffield/go-git/v5 v5.1.2-0.20201006095850-341962be15a4 - github.com/jesseduffield/gocui v0.3.1-0.20211017091015-8bf4a4666b77 + github.com/jesseduffield/gocui v0.3.1-0.20211017220056-b2fc03c74a6f github.com/jesseduffield/yaml v2.1.0+incompatible github.com/kardianos/osext v0.0.0-20190222173326-2bc1f35cddc0 github.com/konsorten/go-windows-terminal-sequences v1.0.2 // indirect @@ -77,6 +77,8 @@ github.com/jesseduffield/gocui v0.3.1-0.20211017063715-c74848d8ad00 h1:5TusU8ir9 github.com/jesseduffield/gocui v0.3.1-0.20211017063715-c74848d8ad00/go.mod h1:znJuCDnF2Ph40YZSlBwdX/4GEofnIoWLGdT4mK5zRAU= github.com/jesseduffield/gocui v0.3.1-0.20211017091015-8bf4a4666b77 h1:MQUxSxVBTZQpSYybEiFA4+oIi02ycTKGCqgHItYi/20= github.com/jesseduffield/gocui v0.3.1-0.20211017091015-8bf4a4666b77/go.mod h1:znJuCDnF2Ph40YZSlBwdX/4GEofnIoWLGdT4mK5zRAU= +github.com/jesseduffield/gocui v0.3.1-0.20211017220056-b2fc03c74a6f h1:JHrb78pj+gYC3KiJKL1WW6lYzlatBIF46oREn68plTM= +github.com/jesseduffield/gocui v0.3.1-0.20211017220056-b2fc03c74a6f/go.mod h1:znJuCDnF2Ph40YZSlBwdX/4GEofnIoWLGdT4mK5zRAU= github.com/jesseduffield/yaml v2.1.0+incompatible h1:HWQJ1gIv2zHKbDYNp0Jwjlj24K8aqpFHnMCynY1EpmE= github.com/jesseduffield/yaml v2.1.0+incompatible/go.mod h1:w0xGhOSIJCGYYW+hnFPTutCy5aACpkcwbmORt5axGqk= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= diff --git a/vendor/github.com/jesseduffield/gocui/gui.go b/vendor/github.com/jesseduffield/gocui/gui.go index 7bd764346..957a9fe62 100644 --- a/vendor/github.com/jesseduffield/gocui/gui.go +++ b/vendor/github.com/jesseduffield/gocui/gui.go @@ -15,6 +15,7 @@ import ( "github.com/gdamore/tcell/v2" "github.com/go-errors/errors" + "github.com/mattn/go-runewidth" ) // OutputMode represents an output mode, which determines how colors @@ -921,8 +922,8 @@ func (g *Gui) drawTitle(v *View, fgColor, bgColor Attribute) error { str := strings.Join(tabs, separator) + x := v.x0 + 2 for i, ch := range str { - x := v.x0 + i + 2 if x < 0 { continue } else if x > v.x1-2 || x >= g.maxX { @@ -948,6 +949,7 @@ func (g *Gui) drawTitle(v *View, fgColor, bgColor Attribute) error { if err := g.SetRune(x, v.y0, ch, currentFgColor, currentBgColor); err != nil { return err } + x += runewidth.RuneWidth(ch) } return nil } @@ -962,14 +964,15 @@ func (g *Gui) drawSubtitle(v *View, fgColor, bgColor Attribute) error { if start < v.x0 { return nil } - for i, ch := range v.Subtitle { - x := start + i + x := start + for _, ch := range v.Subtitle { if x >= v.x1 { break } if err := g.SetRune(x, v.y0, ch, fgColor, bgColor); err != nil { return err } + x += runewidth.RuneWidth(ch) } return nil } @@ -990,14 +993,15 @@ func (g *Gui) drawListFooter(v *View, fgColor, bgColor Attribute) error { if start < v.x0 { return nil } - for i, ch := range message { - x := start + i + x := start + for _, ch := range message { if x >= v.x1 { break } if err := g.SetRune(x, v.y1, ch, fgColor, bgColor); err != nil { return err } + x += runewidth.RuneWidth(ch) } return nil } diff --git a/vendor/modules.txt b/vendor/modules.txt index 966a9cf2b..78e996bd5 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -152,7 +152,7 @@ github.com/jesseduffield/go-git/v5/utils/merkletrie/filesystem github.com/jesseduffield/go-git/v5/utils/merkletrie/index github.com/jesseduffield/go-git/v5/utils/merkletrie/internal/frame github.com/jesseduffield/go-git/v5/utils/merkletrie/noder -# github.com/jesseduffield/gocui v0.3.1-0.20211017091015-8bf4a4666b77 +# github.com/jesseduffield/gocui v0.3.1-0.20211017220056-b2fc03c74a6f ## explicit github.com/jesseduffield/gocui # github.com/jesseduffield/yaml v2.1.0+incompatible |