@@ -7,6 +7,7 @@ import (
77 tea "github.com/charmbracelet/bubbletea/v2"
88 "github.com/charmbracelet/crush/internal/tui/styles"
99 "github.com/charmbracelet/crush/internal/tui/util"
10+ "github.com/charmbracelet/lipgloss/v2"
1011 "github.com/charmbracelet/x/ansi"
1112)
1213
@@ -72,13 +73,19 @@ func (m *statusCmp) infoMsg() string {
7273 switch m.info.Type {
7374 case util.InfoTypeError:
7475 infoType = t.S().Base.Background(t.Red).Padding(0, 1).Render("ERROR")
75− message = t.S().Base.Background(t.Error).Width(m.width).Foreground(t.White).Padding(0, 1).Render(m.info.Msg)
76+ widthLeft := m.width - (lipgloss.Width(infoType) + 2)
77+ info := ansi.Truncate(m.info.Msg, widthLeft, "…")
78+ message = t.S().Base.Background(t.Error).Width(widthLeft+2).Foreground(t.White).Padding(0, 1).Render(info)
7679 case util.InfoTypeWarn:
7780 infoType = t.S().Base.Foreground(t.BgOverlay).Background(t.Yellow).Padding(0, 1).Render("WARNING")
78− message = t.S().Base.Foreground(t.BgOverlay).Width(m.width).Background(t.Warning).Padding(0, 1).Render(m.info.Msg)
81+ widthLeft := m.width - (lipgloss.Width(infoType) + 2)
82+ info := ansi.Truncate(m.info.Msg, widthLeft, "…")
83+ message = t.S().Base.Foreground(t.BgOverlay).Width(widthLeft+2).Background(t.Warning).Padding(0, 1).Render(info)
7984 default:
8085 infoType = t.S().Base.Foreground(t.BgOverlay).Background(t.Green).Padding(0, 1).Render("OKAY!")
81− message = t.S().Base.Background(t.Success).Width(m.width).Foreground(t.White).Padding(0, 1).Render(m.info.Msg)
86+ widthLeft := m.width - (lipgloss.Width(infoType) + 2)
87+ info := ansi.Truncate(m.info.Msg, widthLeft, "…")
88+ message = t.S().Base.Background(t.Success).Width(widthLeft+2).Foreground(t.White).Padding(0, 1).Render(info)
8289 }
8390 return ansi.Truncate(infoType+message, m.width, "…")
8491}