release notes
release notes
Published 5/2/2024
MinorContains breaking changesWhat do tapioca balls, IBM mainframes, and the Microsoft Windows Console API have in common? Bubble Tea v0.26.0, that’s what. Let’s get to it.
A few years ago @erikgeiser, a penetration tester and ex-particle physicist, wrote this awesome library called coninput to majorly improve Bubble Tea input on Windows. @aymanbagabas has implemented the library in Bubble Tea and input on Windows is roughly 1000 times better now. In the short term, this means that for Windows users inputting non-Latin characters (like Greek, Cyrillic, Korean, Chinese and so on) stuff will “just work.”
The bigger news, however, is that this paves the way for Windows parity with our forthcoming support for super high fidelity input via Kitty Keyboard and Fixterms.
Terminal emulators on Windows don’t support the SIGWINCH signal, which is sent when the terminal is resized. It’s been a huge bummer for a really long time. Thanks (again) to @erikgeiser and @aymanbagabas, we’re now able to reach deep into Windows’ underpinnings, detect window resizes, and send tea.WindowSizeMsgs accordingly! This is a glorious moment for Bubble Tea on Windows indeed.
While building a query editor for a CockroachDB client, @knz noticed that Bubble Tea didn't support Bracketed Paste. Performance-wise, that sucks because it means pasting large bodies of text (like SQL queries) will normally be seen as a bunch of little successive keypresses. That’s where Bracketed Paste comes in. When enabled at the terminal-level Bracketed Paste lets you slam down a bunch of text with one big, fat input event.
Bubble Tea enables bracketed paste by default, however you can opt out of it with the WithoutBracketedPaste() program option:
p := tea.NewProgram(myCuteModel, tea.WithoutBracketedPaste())
You can also enable and disable it on demand with the EnableBracketedPaste() and DisableBracketedPaste() commands.
tea.PrintlnIn case you forgot, tea.Println (and it’s brother tea.Printf) is a Cmd that lets you print unmanaged output above a Bubble Tea program, similar to what you see with package managers like apt-get. Thanks to @Adjective-Object (who also implemented tea.Println in the first place) now you can send multi-line output, too. For a tea.Println refresher see the package manager example.
Don’t you think it’s about time we all ran Bubble Tea apps on our mainframes? Thanks to @dustin-ward that dream is now a reality, so long as you have a z/OS mainframe. We're thrilled to announce that Bubble Tea is now fully supported on z/OS.
Bugfixes are the unsung heroes that sometimes get buried below the feature listings. This release has them and they’re good ones; see the changelog below for details.
tea.Println() messages by @Adjective-Object in https://github.com/charmbracelet/bubbletea/pull/490Full Changelog: https://github.com/charmbracelet/bubbletea/compare/v0.25.0...v0.25.1
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or Discord.
release notes
Published 5/2/2024
MinorContains breaking changesWhat do tapioca balls, IBM mainframes, and the Microsoft Windows Console API have in common? Bubble Tea v0.26.0, that’s what. Let’s get to it.
A few years ago @erikgeiser, a penetration tester and ex-particle physicist, wrote this awesome library called coninput to majorly improve Bubble Tea input on Windows. @aymanbagabas has implemented the library in Bubble Tea and input on Windows is roughly 1000 times better now. In the short term, this means that for Windows users inputting non-Latin characters (like Greek, Cyrillic, Korean, Chinese and so on) stuff will “just work.”
The bigger news, however, is that this paves the way for Windows parity with our forthcoming support for super high fidelity input via Kitty Keyboard and Fixterms.
Terminal emulators on Windows don’t support the SIGWINCH signal, which is sent when the terminal is resized. It’s been a huge bummer for a really long time. Thanks (again) to @erikgeiser and @aymanbagabas, we’re now able to reach deep into Windows’ underpinnings, detect window resizes, and send tea.WindowSizeMsgs accordingly! This is a glorious moment for Bubble Tea on Windows indeed.
While building a query editor for a CockroachDB client, @knz noticed that Bubble Tea didn't support Bracketed Paste. Performance-wise, that sucks because it means pasting large bodies of text (like SQL queries) will normally be seen as a bunch of little successive keypresses. That’s where Bracketed Paste comes in. When enabled at the terminal-level Bracketed Paste lets you slam down a bunch of text with one big, fat input event.
Bubble Tea enables bracketed paste by default, however you can opt out of it with the WithoutBracketedPaste() program option:
p := tea.NewProgram(myCuteModel, tea.WithoutBracketedPaste())
You can also enable and disable it on demand with the EnableBracketedPaste() and DisableBracketedPaste() commands.
tea.PrintlnIn case you forgot, tea.Println (and it’s brother tea.Printf) is a Cmd that lets you print unmanaged output above a Bubble Tea program, similar to what you see with package managers like apt-get. Thanks to @Adjective-Object (who also implemented tea.Println in the first place) now you can send multi-line output, too. For a tea.Println refresher see the package manager example.
Don’t you think it’s about time we all ran Bubble Tea apps on our mainframes? Thanks to @dustin-ward that dream is now a reality, so long as you have a z/OS mainframe. We're thrilled to announce that Bubble Tea is now fully supported on z/OS.
Bugfixes are the unsung heroes that sometimes get buried below the feature listings. This release has them and they’re good ones; see the changelog below for details.
tea.Println() messages by @Adjective-Object in https://github.com/charmbracelet/bubbletea/pull/490Full Changelog: https://github.com/charmbracelet/bubbletea/compare/v0.25.0...v0.25.1
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or Discord.