Skip to content

Commit

Permalink
all the updates
Browse files Browse the repository at this point in the history
Signed-off-by: Carlos Alexandro Becker <[email protected]>
  • Loading branch information
caarlos0 committed Nov 14, 2024
1 parent c71ad13 commit a07eb04
Show file tree
Hide file tree
Showing 7 changed files with 92 additions and 86 deletions.
13 changes: 7 additions & 6 deletions examples/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@ go 1.23.1
require (
github.com/charmbracelet/bubbles/v2 v2.0.0-alpha.2
github.com/charmbracelet/bubbletea/v2 v2.0.0-alpha.2
github.com/charmbracelet/colorprofile v0.1.7
github.com/charmbracelet/colorprofile v0.1.8-0.20241114170416-4ca4b7121c58
github.com/charmbracelet/glamour v0.8.0
github.com/charmbracelet/harmonica v0.2.0
github.com/charmbracelet/lipgloss/v2 v2.0.0-alpha.2
github.com/charmbracelet/x/ansi v0.4.6-0.20241110171603-a30b032a5ae2
github.com/charmbracelet/x/ansi v0.4.6-0.20241114164159-aea15a2cc929
github.com/charmbracelet/x/exp/teatest/v2 v2.0.0-20241016014612-3b4d04043233
github.com/fogleman/ease v0.0.0-20170301025033-8da417bf1776
github.com/lucasb-eyer/go-colorful v1.2.0
Expand All @@ -23,10 +23,11 @@ require (
github.com/aymanbagabas/go-udiff v0.2.0 // indirect
github.com/aymerick/douceur v0.2.0 // indirect
github.com/charmbracelet/lipgloss v0.13.0 // indirect
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241110171603-a30b032a5ae2 // indirect
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241114164159-aea15a2cc929 // indirect
github.com/charmbracelet/x/exp/golden v0.0.0-20241011142426-46044092ad91 // indirect
github.com/charmbracelet/x/term v0.2.0 // indirect
github.com/charmbracelet/x/wcwidth v0.0.0-20241011142426-46044092ad91 // indirect
github.com/charmbracelet/x/term v0.2.1 // indirect
github.com/charmbracelet/x/vt v0.0.0-20241114164159-aea15a2cc929 // indirect
github.com/charmbracelet/x/wcwidth v0.0.0-20241113152101-0af7d04e9f32 // indirect
github.com/charmbracelet/x/windows v0.2.0 // indirect
github.com/dlclark/regexp2 v1.11.0 // indirect
github.com/dustin/go-humanize v1.0.1 // indirect
Expand All @@ -45,7 +46,7 @@ require (
golang.org/x/sync v0.9.0 // indirect
golang.org/x/sys v0.27.0 // indirect
golang.org/x/term v0.22.0 // indirect
golang.org/x/text v0.19.0 // indirect
golang.org/x/text v0.20.0 // indirect
)

replace github.com/charmbracelet/bubbletea/v2 => ../
26 changes: 14 additions & 12 deletions examples/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ github.com/aymerick/douceur v0.2.0 h1:Mv+mAeH1Q+n9Fr+oyamOlAkUNPWPlA8PPGR0QAaYuP
github.com/aymerick/douceur v0.2.0/go.mod h1:wlT5vV2O3h55X9m7iVYN0TBM0NH/MmbLnd30/FjWUq4=
github.com/charmbracelet/bubbles/v2 v2.0.0-alpha.2 h1:Oevn3XNNcccbI8m6cOI6rAMsY1niKsDMv55qtejWRXE=
github.com/charmbracelet/bubbles/v2 v2.0.0-alpha.2/go.mod h1:BWGE1i9NQA60C720gn2FYOyRyJp2BVtQNVfai7wcMoM=
github.com/charmbracelet/colorprofile v0.1.7 h1:q7PtMQrRBBnLNE2EbtbNUtouu979EivKcDGGaimhyO8=
github.com/charmbracelet/colorprofile v0.1.7/go.mod h1:d3UYToTrNmsD2p9/lbiya16H1WahndM0miDlJWXWf4U=
github.com/charmbracelet/colorprofile v0.1.8-0.20241114170416-4ca4b7121c58 h1:O7ZVm7uxDSU06e5+Ps5c3bC5zWkqfRUKsH4M3/taYq8=
github.com/charmbracelet/colorprofile v0.1.8-0.20241114170416-4ca4b7121c58/go.mod h1:Fenu2dAsg1m0qWUHcsOwjr12BuDyMaUP6UCQjAUFVrg=
github.com/charmbracelet/glamour v0.8.0 h1:tPrjL3aRcQbn++7t18wOpgLyl8wrOHUEDS7IZ68QtZs=
github.com/charmbracelet/glamour v0.8.0/go.mod h1:ViRgmKkf3u5S7uakt2czJ272WSg2ZenlYEZXT2x7Bjw=
github.com/charmbracelet/harmonica v0.2.0 h1:8NxJWRWg/bzKqqEaaeFNipOu77YR5t8aSwG4pgaUBiQ=
Expand All @@ -26,18 +26,20 @@ github.com/charmbracelet/lipgloss v0.13.0 h1:4X3PPeoWEDCMvzDvGmTajSyYPcZM4+y8sCA
github.com/charmbracelet/lipgloss v0.13.0/go.mod h1:nw4zy0SBX/F/eAO1cWdcvy6qnkDUxr8Lw7dvFrAIbbY=
github.com/charmbracelet/lipgloss/v2 v2.0.0-alpha.2 h1:Gp+S9hMymU6HmxD1dihbnoMOGwt6wDMMvf0jyw3gEc0=
github.com/charmbracelet/lipgloss/v2 v2.0.0-alpha.2/go.mod h1:72/7KVsLdRldv/CeBjZx6igXIZ9CFtBzQUmDEbhXZ3w=
github.com/charmbracelet/x/ansi v0.4.6-0.20241110171603-a30b032a5ae2 h1:iW1rX9FDCWBSIusGCmCLQdd2f9gN9c88KJyvCt1EsRA=
github.com/charmbracelet/x/ansi v0.4.6-0.20241110171603-a30b032a5ae2/go.mod h1:dk73KoMTT5AX5BsX0KrqhsTqAnhZZoCBjs7dGWp4Ktw=
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241110171603-a30b032a5ae2 h1:Tya33mYdX3mi/BAWaw3M2CB8gq6OoZOEiDCTYW25lqg=
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241110171603-a30b032a5ae2/go.mod h1:+a10wKGeO6TKYBbvxCfQEEgn5knWzoZtLf00oiXgvBg=
github.com/charmbracelet/x/ansi v0.4.6-0.20241114164159-aea15a2cc929 h1:CxDzlAZwEEcq5DNjRlx+RQ0acLKBg/J5ZmvW+db9kAc=
github.com/charmbracelet/x/ansi v0.4.6-0.20241114164159-aea15a2cc929/go.mod h1:dk73KoMTT5AX5BsX0KrqhsTqAnhZZoCBjs7dGWp4Ktw=
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241114164159-aea15a2cc929 h1:3WICEOCsGzB3TAj9nYj64ojaWl8HpUGxagmVKiiBDXA=
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241114164159-aea15a2cc929/go.mod h1:OJj3QVur0XOJQgNCsE1Q4xdFLgXeQhWkchE8zYzlbMs=
github.com/charmbracelet/x/exp/golden v0.0.0-20241011142426-46044092ad91 h1:payRxjMjKgx2PaCWLZ4p3ro9y97+TVLZNaRZgJwSVDQ=
github.com/charmbracelet/x/exp/golden v0.0.0-20241011142426-46044092ad91/go.mod h1:wDlXFlCrmJ8J+swcL/MnGUuYnqgQdW9rhSD61oNMb6U=
github.com/charmbracelet/x/exp/teatest/v2 v2.0.0-20241016014612-3b4d04043233 h1:2bTR/MtnJuq9RrCZSPwCOO34YSDByKL6nzXQMnsKK6U=
github.com/charmbracelet/x/exp/teatest/v2 v2.0.0-20241016014612-3b4d04043233/go.mod h1:cw9df32BXdkcd0LzAHsFMmvXOsrrlDKazIW8PCq0cPM=
github.com/charmbracelet/x/term v0.2.0 h1:cNB9Ot9q8I711MyZ7myUR5HFWL/lc3OpU8jZ4hwm0x0=
github.com/charmbracelet/x/term v0.2.0/go.mod h1:GVxgxAbjUrmpvIINHIQnJJKpMlHiZ4cktEQCN6GWyF0=
github.com/charmbracelet/x/wcwidth v0.0.0-20241011142426-46044092ad91 h1:D5OO0lVavz7A+Swdhp62F9gbkibxmz9B2hZ/jVdMPf0=
github.com/charmbracelet/x/wcwidth v0.0.0-20241011142426-46044092ad91/go.mod h1:Ey8PFmYwH+/td9bpiEx07Fdx9ZVkxfIjWXxBluxF4Nw=
github.com/charmbracelet/x/term v0.2.1 h1:AQeHeLZ1OqSXhrAWpYUtZyX1T3zVxfpZuEQMIQaGIAQ=
github.com/charmbracelet/x/term v0.2.1/go.mod h1:oQ4enTYFV7QN4m0i9mzHrViD7TQKvNEEkHUMCmsxdUg=
github.com/charmbracelet/x/vt v0.0.0-20241114164159-aea15a2cc929 h1:/xi/eowrQ14ihrKyr9mBdOuKK02QfgPAo0vrKK9OIJc=
github.com/charmbracelet/x/vt v0.0.0-20241114164159-aea15a2cc929/go.mod h1:mMsiDODOSTc241mLfeVdqqHYhuzjSP5uEPcJDGScsRg=
github.com/charmbracelet/x/wcwidth v0.0.0-20241113152101-0af7d04e9f32 h1:14czE6R5CgOlvONsJYa2B1uTyLvXzGXpBqw2AyZeTh4=
github.com/charmbracelet/x/wcwidth v0.0.0-20241113152101-0af7d04e9f32/go.mod h1:hyua5CY63kyl7IfyIxv1SjVEqoKze/XmDkEglItuVjA=
github.com/charmbracelet/x/windows v0.2.0 h1:ilXA1GJjTNkgOm94CLPeSz7rar54jtFatdmoiONPuEw=
github.com/charmbracelet/x/windows v0.2.0/go.mod h1:ZibNFR49ZFqCXgP76sYanisxRyC+EYrBE7TTknD8s1s=
github.com/dlclark/regexp2 v1.11.0 h1:G/nrcoOa7ZXlpoa/91N3X7mM3r8eIlMBBJZvsz/mxKI=
Expand Down Expand Up @@ -91,5 +93,5 @@ golang.org/x/sys v0.27.0 h1:wBqf8DvsY9Y/2P8gAfPDEYNuS30J4lPHJxXSb/nJZ+s=
golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.22.0 h1:BbsgPEJULsl2fV/AT3v15Mjva5yXKQDyKf+TbDz7QJk=
golang.org/x/term v0.22.0/go.mod h1:F3qCibpT5AMpCRfhfT53vVJwhLtIVHhB9XDjfFvnMI4=
golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM=
golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/text v0.20.0 h1:gK/Kv2otX8gz+wn7Rmb3vT96ZwuoxnQlY+HlJVj7Qug=
golang.org/x/text v0.20.0/go.mod h1:D4IsuqiFMhST5bX19pQ9ikHC2GsaKyk/oF+pn3ducp4=
37 changes: 17 additions & 20 deletions ferocious_renderer.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,11 @@ type cursor struct {

// screen represents a terminal screen.
type screen struct {
dirty map[int]int // keeps track of dirty cells
linew []int // keeps track of the width of each line
cellbuf.Buffer // the cell buffer
cur cursor // cursor state
dirty map[int]int // keeps track of dirty cells
linew []int // keeps track of the width of each line
cur cursor // cursor state
cellbuf.Buffer // the cell buffer
cellbuf.Resizable // make it resizeable
}

// isDirty returns true if the cell at the given position is dirty.
Expand All @@ -37,25 +38,21 @@ func (s *screen) isDirty(x, y int) bool {

// reset resets the screen to its initial state.
func (s *screen) reset() {
s.Buffer = cellbuf.Buffer{}
s.Buffer = cellbuf.NewBuffer(0, 0)
s.dirty = make(map[int]int)
s.cur = cursor{}
s.linew = make([]int, 0)
}

// Set implements [cellbuf.Grid] and marks changed cells as dirty.
func (s *screen) SetCell(x, y int, cell cellbuf.Cell) (v bool) {
c, ok := s.Cell(x, y)
if !ok {
return
}

func (s *screen) SetCell(x, y int, cell *cellbuf.Cell) (v bool) {
c := s.Cell(x, y)
if c.Equal(cell) {
// Cells are the same, no need to update.
return
}

v = s.Buffer.Draw(x, y, cell)
v = s.Buffer.SetCell(x, y, cell)
if v {
// Mark the cell as dirty. You nasty one ;)
idx := y*s.Width() + x
Expand Down Expand Up @@ -366,7 +363,7 @@ func (c *ferociousRenderer) update(msg Msg) {
}
}

var spaceCell = cellbuf.Cell{Content: " ", Width: 1}
var spaceCell = &cellbuf.Cell{Content: " ", Width: 1}

// changes commits the changes from the cell buffer using the dirty cells map
// and writes them to the internal buffer.
Expand Down Expand Up @@ -403,14 +400,15 @@ func (c *ferociousRenderer) changes() {
var segX int // The start position of the current segment.
var eraser bool // Whether we're erasing using spaces and no styles or links.
for x := 0; x < width; x++ {
cell, ok := c.scr.Cell(x, y)
if !ok || cell.Width == 0 {
cell := c.scr.Cell(x, y)
if cell.Width == 0 {
continue
}

// Convert the cell to respect the current color profile.
cell.Style = cell.Style.Convert(c.profile)
cell.Link = cell.Link.Convert(c.profile)
// TODO: ??
// cell.Style = cell.Style.Convert(c.profile)
// cell.Link = cell.Link.Convert(c.profile)

if !c.scr.isDirty(x, y) {
if seg != nil {
Expand Down Expand Up @@ -563,9 +561,8 @@ func (c *ferociousRenderer) moveCursor(x, y int) {
// OPTIM: We write the cell content under the cursor if it's the same
// style and link. This is more efficient than moving the cursor which
// costs at least 3 bytes [ansi.CursorRight].
cell, ok := c.scr.Cell(c.scr.cur.X, c.scr.cur.Y)
if ok &&
(cell.Style.Equal(c.pen) && cell.Link == c.link) {
cell := c.scr.Cell(c.scr.cur.X, c.scr.cur.Y)
if cell.Style.Equal(c.pen) && cell.Link == c.link {
c.buf.WriteString(cell.Content)
break
}
Expand Down
17 changes: 9 additions & 8 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,21 @@ module github.com/charmbracelet/bubbletea/v2
go 1.18

require (
github.com/charmbracelet/colorprofile v0.1.7
github.com/charmbracelet/x/ansi v0.4.6-0.20241110171603-a30b032a5ae2
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241110171603-a30b032a5ae2
github.com/charmbracelet/x/term v0.2.0
github.com/charmbracelet/colorprofile v0.1.8-0.20241114170416-4ca4b7121c58
github.com/charmbracelet/x/ansi v0.4.6-0.20241114164159-aea15a2cc929
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241114164159-aea15a2cc929
github.com/charmbracelet/x/term v0.2.1
github.com/charmbracelet/x/windows v0.2.0
github.com/muesli/cancelreader v0.2.2
github.com/rivo/uniseg v0.4.7
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e
golang.org/x/sync v0.8.0
golang.org/x/sys v0.26.0
golang.org/x/sync v0.9.0
golang.org/x/sys v0.27.0
)

require (
github.com/charmbracelet/x/wcwidth v0.0.0-20241011142426-46044092ad91 // indirect
github.com/charmbracelet/x/vt v0.0.0-20241114164159-aea15a2cc929 // indirect
github.com/charmbracelet/x/wcwidth v0.0.0-20241113152101-0af7d04e9f32 // indirect
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
golang.org/x/text v0.19.0 // indirect
golang.org/x/text v0.20.0 // indirect
)
34 changes: 18 additions & 16 deletions go.sum
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
github.com/charmbracelet/colorprofile v0.1.7 h1:q7PtMQrRBBnLNE2EbtbNUtouu979EivKcDGGaimhyO8=
github.com/charmbracelet/colorprofile v0.1.7/go.mod h1:d3UYToTrNmsD2p9/lbiya16H1WahndM0miDlJWXWf4U=
github.com/charmbracelet/x/ansi v0.4.6-0.20241110171603-a30b032a5ae2 h1:iW1rX9FDCWBSIusGCmCLQdd2f9gN9c88KJyvCt1EsRA=
github.com/charmbracelet/x/ansi v0.4.6-0.20241110171603-a30b032a5ae2/go.mod h1:dk73KoMTT5AX5BsX0KrqhsTqAnhZZoCBjs7dGWp4Ktw=
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241110171603-a30b032a5ae2 h1:Tya33mYdX3mi/BAWaw3M2CB8gq6OoZOEiDCTYW25lqg=
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241110171603-a30b032a5ae2/go.mod h1:+a10wKGeO6TKYBbvxCfQEEgn5knWzoZtLf00oiXgvBg=
github.com/charmbracelet/x/term v0.2.0 h1:cNB9Ot9q8I711MyZ7myUR5HFWL/lc3OpU8jZ4hwm0x0=
github.com/charmbracelet/x/term v0.2.0/go.mod h1:GVxgxAbjUrmpvIINHIQnJJKpMlHiZ4cktEQCN6GWyF0=
github.com/charmbracelet/x/wcwidth v0.0.0-20241011142426-46044092ad91 h1:D5OO0lVavz7A+Swdhp62F9gbkibxmz9B2hZ/jVdMPf0=
github.com/charmbracelet/x/wcwidth v0.0.0-20241011142426-46044092ad91/go.mod h1:Ey8PFmYwH+/td9bpiEx07Fdx9ZVkxfIjWXxBluxF4Nw=
github.com/charmbracelet/colorprofile v0.1.8-0.20241114170416-4ca4b7121c58 h1:O7ZVm7uxDSU06e5+Ps5c3bC5zWkqfRUKsH4M3/taYq8=
github.com/charmbracelet/colorprofile v0.1.8-0.20241114170416-4ca4b7121c58/go.mod h1:Fenu2dAsg1m0qWUHcsOwjr12BuDyMaUP6UCQjAUFVrg=
github.com/charmbracelet/x/ansi v0.4.6-0.20241114164159-aea15a2cc929 h1:CxDzlAZwEEcq5DNjRlx+RQ0acLKBg/J5ZmvW+db9kAc=
github.com/charmbracelet/x/ansi v0.4.6-0.20241114164159-aea15a2cc929/go.mod h1:dk73KoMTT5AX5BsX0KrqhsTqAnhZZoCBjs7dGWp4Ktw=
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241114164159-aea15a2cc929 h1:3WICEOCsGzB3TAj9nYj64ojaWl8HpUGxagmVKiiBDXA=
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241114164159-aea15a2cc929/go.mod h1:OJj3QVur0XOJQgNCsE1Q4xdFLgXeQhWkchE8zYzlbMs=
github.com/charmbracelet/x/term v0.2.1 h1:AQeHeLZ1OqSXhrAWpYUtZyX1T3zVxfpZuEQMIQaGIAQ=
github.com/charmbracelet/x/term v0.2.1/go.mod h1:oQ4enTYFV7QN4m0i9mzHrViD7TQKvNEEkHUMCmsxdUg=
github.com/charmbracelet/x/vt v0.0.0-20241114164159-aea15a2cc929 h1:/xi/eowrQ14ihrKyr9mBdOuKK02QfgPAo0vrKK9OIJc=
github.com/charmbracelet/x/vt v0.0.0-20241114164159-aea15a2cc929/go.mod h1:mMsiDODOSTc241mLfeVdqqHYhuzjSP5uEPcJDGScsRg=
github.com/charmbracelet/x/wcwidth v0.0.0-20241113152101-0af7d04e9f32 h1:14czE6R5CgOlvONsJYa2B1uTyLvXzGXpBqw2AyZeTh4=
github.com/charmbracelet/x/wcwidth v0.0.0-20241113152101-0af7d04e9f32/go.mod h1:hyua5CY63kyl7IfyIxv1SjVEqoKze/XmDkEglItuVjA=
github.com/charmbracelet/x/windows v0.2.0 h1:ilXA1GJjTNkgOm94CLPeSz7rar54jtFatdmoiONPuEw=
github.com/charmbracelet/x/windows v0.2.0/go.mod h1:ZibNFR49ZFqCXgP76sYanisxRyC+EYrBE7TTknD8s1s=
github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY=
Expand All @@ -19,9 +21,9 @@ github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUc
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e h1:JVG44RsyaB9T2KIHavMF/ppJZNG9ZpyihvCd0w101no=
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e/go.mod h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM=
golang.org/x/exp v0.0.0-20220909182711-5c715a9e8561 h1:MDc5xs78ZrZr3HMQugiXOAkSZtfTpbJLDr/lwfgO53E=
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo=
golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM=
golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/sync v0.9.0 h1:fEo0HyrW1GIgZdpbhCRO0PkJajUS5H9IFUztCgEo2jQ=
golang.org/x/sync v0.9.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.27.0 h1:wBqf8DvsY9Y/2P8gAfPDEYNuS30J4lPHJxXSb/nJZ+s=
golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/text v0.20.0 h1:gK/Kv2otX8gz+wn7Rmb3vT96ZwuoxnQlY+HlJVj7Qug=
golang.org/x/text v0.20.0/go.mod h1:D4IsuqiFMhST5bX19pQ9ikHC2GsaKyk/oF+pn3ducp4=
17 changes: 9 additions & 8 deletions tutorials/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,20 @@ go 1.18
require github.com/charmbracelet/bubbletea/v2 v2.0.0-20240918180721-14cb6b5de1d2

require (
github.com/charmbracelet/colorprofile v0.1.7 // indirect
github.com/charmbracelet/x/ansi v0.4.6-0.20241110171603-a30b032a5ae2 // indirect
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241110171603-a30b032a5ae2 // indirect
github.com/charmbracelet/x/term v0.2.0 // indirect
github.com/charmbracelet/x/wcwidth v0.0.0-20241011142426-46044092ad91 // indirect
github.com/charmbracelet/colorprofile v0.1.8-0.20241114170416-4ca4b7121c58 // indirect
github.com/charmbracelet/x/ansi v0.4.6-0.20241114164159-aea15a2cc929 // indirect
github.com/charmbracelet/x/cellbuf v0.0.6-0.20241114164159-aea15a2cc929 // indirect
github.com/charmbracelet/x/term v0.2.1 // indirect
github.com/charmbracelet/x/vt v0.0.0-20241114164159-aea15a2cc929 // indirect
github.com/charmbracelet/x/wcwidth v0.0.0-20241113152101-0af7d04e9f32 // indirect
github.com/charmbracelet/x/windows v0.2.0 // indirect
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
github.com/muesli/cancelreader v0.2.2 // indirect
github.com/rivo/uniseg v0.4.7 // indirect
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.26.0 // indirect
golang.org/x/text v0.19.0 // indirect
golang.org/x/sync v0.9.0 // indirect
golang.org/x/sys v0.27.0 // indirect
golang.org/x/text v0.20.0 // indirect
)

replace github.com/charmbracelet/bubbletea/v2 => ../
Loading

0 comments on commit a07eb04

Please sign in to comment.