Commit Graph

736 Commits

Author SHA1 Message Date
Sebastian Spaink 6faba760c2 docs: example interacting with tabs using lipgloss 2022-08-18 14:46:28 -04:00
Michele Filadelfia 9b459e503e
docs: Add `mandelbrot-cli` to Bubble Tea in the Wild (#385)
* docs: Add `mandelbrot-cli` to Bubble Tea in the Wild (#385)
2022-08-18 13:56:42 -04:00
Jerome Fitzgerald ae6fcd395e docs: README progress-download folder + ignore
📝 Update folder name in README to `progress-download` as
 that is what generates with `go build .`

🙈 Add the files genreated by `go build .` to root `.gitnore`
2022-08-18 12:57:30 -04:00
Tor Bratsberg 7c6ebc312c Doc: Add `Noted` to README.md 2022-08-18 12:55:48 -04:00
ottopiramuthu 99ed0962ff Add sku to Bubble Tea in the Wild 2022-08-18 12:53:33 -04:00
Christian Muehlhaeuser ca333e7d79 chore: bump go-isatty dep 2022-08-15 12:26:30 +02:00
Christian Muehlhaeuser 1e1b5f716d chore: gofmt sources 2022-08-15 12:25:55 +02:00
Ben Sadeh a7b1d7c737 Add circumflex to Bubble Tea in the Wild 2022-08-08 10:31:32 -04:00
jon4hz e2063ac1ea docs: rename flipperzero-tea to fztea 2022-07-29 08:13:59 -07:00
aklyachkin 2c7890bdf5 enable compilation on AIX 2022-07-29 15:58:06 +02:00
Christian Rocha b8fe9af45d docs: add a few more entires to 'Bubble Tea in the Wild' 2022-07-27 18:41:40 -07:00
Chip Castle fbd0bc9ce2 Add https://github.com/chip/pathos to Bubble Tea in the Wild 2022-07-27 18:14:45 -07:00
purpleclay 507a1cd4fe docs: add dns53 to bubbletea in the wild list 2022-07-27 18:08:36 -07:00
Maciej Ostaszewski 557ba7e336
docs: fix typo (#378) 2022-07-23 21:44:56 -04:00
dependabot[bot] ac4a1a1faa
feat(deps): bump github.com/muesli/cancelreader from 0.2.1 to 0.2.2 (#354)
* feat(deps): bump github.com/muesli/cancelreader from 0.2.0 to 0.2.2

Bumps [github.com/muesli/cancelreader](https://github.com/muesli/cancelreader) from 0.2.0 to 0.2.2.
- [Release notes](https://github.com/muesli/cancelreader/releases)
- [Commits](https://github.com/muesli/cancelreader/compare/v0.2.0...v0.2.2)

---
updated-dependencies:
- dependency-name: github.com/muesli/cancelreader
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: examples

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-07-21 10:02:18 -03:00
bashbunni 2b9d4e3015 chore: fix Println typo 2022-07-20 01:46:48 +02:00
bashbunni 219ed4ed09
docs: link to tutorial + general README edits (#344)
* docs: clean up readme

* chore: add references

* chore: set to 80 char width

* docs: remove 404 docs link for now + tidy up READMEs

* docs: small language change in README

Co-authored-by: Christian Rocha <christian@rocha.is>
2022-07-19 16:23:37 -07:00
Christian Rocha ae4381a892
docs: fix hasty copypasta in BubbleZone URL in README (#375) 2022-07-19 15:47:15 -07:00
Liam Stanley 6a88c0fc4e
feat: add bubblezone to readme (closes #368) (#372)
* feat: add bubblezone to readme (closes #368)

- also fixed a handful of grammar-related items in the readme.

Signed-off-by: Liam Stanley <me@liamstanley.io>

* chore: promote BubbleZone to main resource section

Co-authored-by: Christian Rocha <christian@rocha.is>
2022-07-19 15:33:51 -07:00
Maas Lalani 0a0182e55a
chore: Bump bubbles to v0.13.0 (#363) 2022-07-08 10:08:24 -04:00
Maas Lalani 27e356a779
Add border to split-editors example (#362)
* doc(textarea): add border to focused textarea in split-editors example
* doc(textrea): tone down with border color in split-editors example

Co-authored-by: Christian Rocha <christian@rocha.is>
2022-07-05 14:31:32 -04:00
Christian Rocha a0680f8d85
Find a way to talk about Zeichenorientierte Benutzerschnittstelle (#122)
* Find a way to talk about Zeichenorientierte Benutzerschnittstelle

* Pluralization attempt
2022-07-01 22:17:02 -07:00
Maas Lalani 642d26a793
doc: Add `textarea` examples (#357)
* chore: bump bubbles@master

* doc(textarea): Add example of `chat` application with textarea

* doc(textarea): Add example of `textarea` prompting the user to tell a story

* doc(textarea): Add example of `split-editors` on how to manage multiple textareas
2022-07-01 12:20:04 -04:00
Maas Lalani db4f6474c9
doc: Fix `Printf` typo (#358) 2022-06-28 15:34:22 -04:00
Carlos Alexandro Becker ca32c4c628
feat: update cancelreader (#353)
* feat: update cancelreader

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: go mod tidy

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: go mod tidy

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: use stable

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-06-23 09:19:36 -03:00
Max ebabec7008
feat: print unmanaged output above the application (#249)
* merge Adjective-Object/tea_log_renderer into standard renderer

* rename queuedMessages -> queuedMessageLines & break apart strings during message processing

* delete cursorDownBy

* += 1 -> ++ to make the linter happy

* add skipLines[] tracking back to standard renderer, and add rename skippedLines local to jumpedLines to clarify they are separate comments

* request repaint when a message is recieved

* Convert Println and Printf to commands

* Add package manager example demonstrating tea.Printf

* Use Unix instead of UnixMicro for Go 1.13 support in CI

* fix off by one in std renderer

* add Printf/Println to tea.go

* revert attempt at sequence compression + cursorUpBy

Co-authored-by: Maxwell Huang-Hobbs <mahuangh@microsoft.com>
Co-authored-by: Christian Rocha <christian@rocha.is>
2022-06-22 12:53:02 -04:00
bashbunni a2d0ac9d38
docs: add another progress bar example (#270)
* docs: add another progress bar example

* chore: copy edits

Co-authored-by: Christian Rocha <christian@rocha.is>
2022-06-15 11:55:47 -07:00
Maas Lalani d56d8ae854
Example: Credit Card Input Form (#338)
* feat(cc): Add Credit Card Input Form Example and `ValidatorFuncs` to ensure credit cards are valid
2022-06-13 09:39:01 -04:00
Christian Muehlhaeuser 21de41ac02 docs: fix deprecation notes 2022-06-08 15:02:12 +02:00
Christian Muehlhaeuser f27dfb52af fix: add tutorials dir to dependabot config 2022-06-08 14:37:53 +02:00
Maas Lalani af11a3b134 docs: rename gh-prs to gh-dash 2022-06-08 14:30:13 +02:00
João Pedro Magalhães 285d59bd47 docs: add gh-b to readme 2022-06-08 14:30:13 +02:00
Christian Muehlhaeuser e6dabb3c36 fix: handle batched key msgs 2022-06-08 14:03:28 +02:00
Georgi Dimitrov 958dc20024 fix: race condition on repaint with alt screen
I didn't realise at the time, but the tea.Program and the renderer share
the mutex. This make the code difficult to reason about - it turns out
the program sometimes acquires the lock and then calls the
`setAltScreen` method of the renderer which in turns calls `repaint`.
That causes a deadlock as `repaint` is trying to acquire the lock too.
2022-06-07 06:47:46 +02:00
Georgi Dimitrov 50a8461fbf fix: race condition on repaint 2022-06-04 15:35:59 +02:00
Christian Muehlhaeuser b237b7fbec test: fix error in custom input test 2022-06-04 15:21:08 +02:00
Christian Muehlhaeuser 4c9117df96 ci: run tests on all platforms 2022-06-04 15:20:28 +02:00
Carlos Alexandro Becker b566614c16
docs: default to vim if no EDITOR on exec example (#325)
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-06-02 15:12:31 -03:00
Christian Rocha 04d68b8e3e chore(examples): bump bubbles dependency 2022-06-01 18:47:09 -07:00
Christian Rocha 775dbfbeff
chore(exec): small API edits (#323)
* feat: add OSExec helper function for running exec.Cmds

* chore: for now, un-expose WrapExecCommand

* chore: move exec struff into its own file

* chore(exec): better name for Exec func that wraps exec.Cmd (thanks, @toby)
2022-06-01 17:12:21 -07:00
Carlos Alexandro Becker 97050569c9
docs: improve godoc on tick and every (#320)
* docs: improve godoc on tick and every

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* docs: small improvements

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* docs: add loop examples for Tick/Every in GoDocs

* docs: small wording adjustments

* docs: small copy edits

Co-authored-by: Christian Rocha <christian@rocha.is>
2022-05-29 21:40:57 -03:00
Carlos A Becker a5f28a3a04 docs: fixed mentions to exec.Command
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-05-16 16:46:27 +00:00
Christian Rocha d301ee0405
change(keys): spacebar sends a `KeySpace` (#315)
* Revert "fix: update tests for space input"

This reverts commit bfb166822e.

* Revert "feat: obliterate type KeySpace"

This reverts commit d3fb1b707a.
2022-05-13 13:24:16 -04:00
Christian Rocha bfb166822e fix: update tests for space input 2022-05-10 16:56:37 -04:00
Christian Rocha d3fb1b707a feat: obliterate type KeySpace
Treating a space differently from other runes was proving to cause more
confusion that clarity.
2022-05-10 16:56:37 -04:00
Christian Rocha 48cdc1e6c3
feat(keys): add support for shift/ctrl + arrow keys (#292)
* feat(keys): add support for shift/ctrl+arrow keys

* chore(keys): use sequences for shift/ctrl arrow keys

* feat(keys): support ctrl+shift+arrow keys

* chore(keys): use sequences for alt+arrows

* feat(keys): add support for arrow key combinations with alt modifiers

* fix(keys): remove an extreaneous check

* feat(keys): add support for urxvt arrow keys with modfiers

* feat(keys): add support for arrow keys in DECCKM mode

* docs(keys): expand on comment about ctrl+backtick

* chore(keys): migrate various bindings to sequences

* Minor comment improvements to the input parser

Co-authored-by: Bwahharharrr <yitang@tutanota.com>
2022-05-10 16:16:33 -04:00
bashbunni 14e58aa1f9
fix(keys): spacebar now sends a `KeySpace` (#289)
* fix: replace keySP with working KeySpace

* test: update test to meet new reqs

* fix: fix test looking for 'space'

* fix(keys): set type to KeySpace when sending a space

* docs(keys): comments

Co-authored-by: Christian Rocha <christian@rocha.is>
2022-04-12 11:14:35 -04:00
Christian Muehlhaeuser 3795c036c4
add: Exec, ReleaseTerminal and RestoreTerminal to re-use input and terminal (#237)
* add: program.ReleaseTerminal and RestoreTerminal to re-use input & terminal

* chore(examples): add altscreen toggling to exec demo

* chore: put low-level altscreen stuff alongside other screen funcs

* docs: edit GoDocs for ReleaseTerminal and RestoreTerminal

* feat(renderer): add internal Msg renderMsg to immediately repaint

* fix: repaint instantly on RestoreTerminal

* fix: restore the altscreen state when restoring the terminal

* feat: implement Cmd-based API for blocking *exec.Cmds

* feat: allow Exec to return custom messages

* feat: allow Exec to be run without a callback

* fix: separate parameters for exec.Command examples

* fix: error message would get printed over by prompt in exec example

* fix: ignore signals while child process is running

* feat: allow to execute other things besides exec.Commands (#280)

* feat: allow to execute other things besides exec.Commands.

* fix: lint issues

* fix: renames, examples

* fix: callback type should be exported

* docs(exce): tiny ExecCommand doc comment correction

* chore(exec): break out Cmd for clarity's sake in example

* fix(exec): give the terminal a moment to catch up if exiting altscreen

* docs(exec): tidy up doc comments

* chore(exec): disambiguate methods for restoring the terminal state vs input

Co-authored-by: Christian Rocha <christian@rocha.is>
Co-authored-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-12 10:23:10 -04:00
dependabot[bot] ecba57e455 chore(deps): bump actions/setup-go from 2 to 3
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 2 to 3.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 12:02:29 +02:00
Christian Muehlhaeuser 515ef02733 Move cancelreader into a separate package 2022-04-05 20:41:21 +02:00