Compare commits
23 Commits
vhs-test
...
release-pl
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bf40962d02 | ||
|
|
b176d04e59 | ||
|
|
8e5151f83d | ||
|
|
f8b0594363 | ||
|
|
f764546ece | ||
|
|
281459aeae | ||
|
|
0ef33d1318 | ||
|
|
928ddee9f1 | ||
|
|
297d264c6b | ||
|
|
2b0a044ced | ||
|
|
cace1e099c | ||
|
|
200b217722 | ||
|
|
849f4badbf | ||
|
|
9a930a6e99 | ||
|
|
08afbeef39 | ||
|
|
424fcbf679 | ||
|
|
442fb54ace | ||
|
|
6fb2ec1753 | ||
|
|
8a5fbd3c58 | ||
|
|
887a6366e5 | ||
|
|
b2872fb53c | ||
|
|
837af96e98 | ||
|
|
34baaf1137 |
42
.github/workflows/ci.yml
vendored
42
.github/workflows/ci.yml
vendored
@@ -36,8 +36,8 @@ jobs:
|
||||
with:
|
||||
toolchain: nightly
|
||||
components: rustfmt
|
||||
- uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2
|
||||
- uses: taiki-e/install-action@4575ae687efd0e2c78240087f26013fb2484987f # v2
|
||||
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2
|
||||
- uses: taiki-e/install-action@522492a8c115f1b6d4d318581f09638e9442547b # v2
|
||||
with:
|
||||
tool: taplo-cli
|
||||
- run: cargo xtask format --check
|
||||
@@ -51,7 +51,7 @@ jobs:
|
||||
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
- uses: crate-ci/typos@85f62a8a84f939ae994ab3763f01a0296d61a7ee # master
|
||||
- uses: crate-ci/typos@7436548694def3314aacd93ed06c721b1f91ea04 # master
|
||||
|
||||
# Check for any disallowed dependencies in the codebase due to license / security issues.
|
||||
# See <https://github.com/EmbarkStudios/cargo-deny>
|
||||
@@ -65,7 +65,7 @@ jobs:
|
||||
- uses: dtolnay/rust-toolchain@6d653acede28d24f02e3cd41383119e8b1b35921 # master
|
||||
with:
|
||||
toolchain: stable
|
||||
- uses: taiki-e/install-action@4575ae687efd0e2c78240087f26013fb2484987f # v2
|
||||
- uses: taiki-e/install-action@522492a8c115f1b6d4d318581f09638e9442547b # v2
|
||||
with:
|
||||
tool: cargo-deny
|
||||
- run: cargo deny --log-level info --all-features check
|
||||
@@ -102,8 +102,10 @@ jobs:
|
||||
with:
|
||||
toolchain: ${{ matrix.toolchain }}
|
||||
components: clippy
|
||||
- uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2
|
||||
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2
|
||||
- run: cargo xtask clippy
|
||||
env:
|
||||
RUSTUP_TOOLCHAIN: ${{ matrix.toolchain }}
|
||||
|
||||
# Run markdownlint on all markdown files in the repository.
|
||||
lint-markdown:
|
||||
@@ -132,10 +134,10 @@ jobs:
|
||||
with:
|
||||
toolchain: stable
|
||||
components: llvm-tools
|
||||
- uses: taiki-e/install-action@4575ae687efd0e2c78240087f26013fb2484987f # v2
|
||||
- uses: taiki-e/install-action@522492a8c115f1b6d4d318581f09638e9442547b # v2
|
||||
with:
|
||||
tool: cargo-llvm-cov
|
||||
- uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2
|
||||
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2
|
||||
- run: cargo xtask coverage
|
||||
- uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5
|
||||
with:
|
||||
@@ -158,11 +160,13 @@ jobs:
|
||||
- uses: dtolnay/rust-toolchain@6d653acede28d24f02e3cd41383119e8b1b35921 # master
|
||||
with:
|
||||
toolchain: ${{ matrix.toolchain }}
|
||||
- uses: taiki-e/install-action@4575ae687efd0e2c78240087f26013fb2484987f # v2
|
||||
- uses: taiki-e/install-action@522492a8c115f1b6d4d318581f09638e9442547b # v2
|
||||
with:
|
||||
tool: cargo-hack
|
||||
- uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2
|
||||
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2
|
||||
- run: cargo xtask check --all-features
|
||||
env:
|
||||
RUSTUP_TOOLCHAIN: ${{ matrix.toolchain }}
|
||||
|
||||
build-no-std:
|
||||
name: Build No-Std
|
||||
@@ -175,7 +179,7 @@ jobs:
|
||||
with:
|
||||
toolchain: stable
|
||||
targets: x86_64-unknown-none
|
||||
- uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2
|
||||
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2
|
||||
# This makes it easier to debug the exact versions of the dependencies
|
||||
- run: cargo tree --target x86_64-unknown-none -p ratatui-core
|
||||
- run: cargo tree --target x86_64-unknown-none -p ratatui-widgets
|
||||
@@ -194,8 +198,8 @@ jobs:
|
||||
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
- uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2
|
||||
- uses: taiki-e/install-action@4575ae687efd0e2c78240087f26013fb2484987f # v2
|
||||
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2
|
||||
- uses: taiki-e/install-action@522492a8c115f1b6d4d318581f09638e9442547b # v2
|
||||
with:
|
||||
tool: cargo-rdme
|
||||
- run: cargo xtask readme --check
|
||||
@@ -217,10 +221,10 @@ jobs:
|
||||
- uses: dtolnay/install@74f735cdf643820234e37ae1c4089a08fd266d8a # master
|
||||
with:
|
||||
crate: cargo-docs-rs
|
||||
- uses: taiki-e/install-action@4575ae687efd0e2c78240087f26013fb2484987f # v2
|
||||
- uses: taiki-e/install-action@522492a8c115f1b6d4d318581f09638e9442547b # v2
|
||||
with:
|
||||
tool: cargo-hack
|
||||
- uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2
|
||||
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2
|
||||
- run: cargo xtask docs
|
||||
|
||||
# Run cargo test on the documentation of the crate. This will catch any code examples that don't
|
||||
@@ -235,10 +239,10 @@ jobs:
|
||||
- uses: dtolnay/rust-toolchain@6d653acede28d24f02e3cd41383119e8b1b35921 # master
|
||||
with:
|
||||
toolchain: stable
|
||||
- uses: taiki-e/install-action@4575ae687efd0e2c78240087f26013fb2484987f # v2
|
||||
- uses: taiki-e/install-action@522492a8c115f1b6d4d318581f09638e9442547b # v2
|
||||
with:
|
||||
tool: cargo-hack
|
||||
- uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2
|
||||
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2
|
||||
- run: cargo xtask test-docs
|
||||
|
||||
# Run cargo test on the libraries of the crate.
|
||||
@@ -256,10 +260,10 @@ jobs:
|
||||
- uses: dtolnay/rust-toolchain@6d653acede28d24f02e3cd41383119e8b1b35921 # master
|
||||
with:
|
||||
toolchain: stable
|
||||
- uses: taiki-e/install-action@4575ae687efd0e2c78240087f26013fb2484987f # v2
|
||||
- uses: taiki-e/install-action@522492a8c115f1b6d4d318581f09638e9442547b # v2
|
||||
with:
|
||||
tool: cargo-hack
|
||||
- uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2
|
||||
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2
|
||||
- run: cargo xtask test-libs
|
||||
|
||||
# Run cargo test on all the backends.
|
||||
@@ -282,5 +286,5 @@ jobs:
|
||||
- uses: dtolnay/rust-toolchain@6d653acede28d24f02e3cd41383119e8b1b35921 # master
|
||||
with:
|
||||
toolchain: stable
|
||||
- uses: Swatinem/rust-cache@98c8021b550208e191a6a3145459bfc9fb29c4c0 # v2
|
||||
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2
|
||||
- run: cargo xtask test-backend ${{ matrix.backend }}
|
||||
|
||||
5
.github/workflows/release-plz.yml
vendored
5
.github/workflows/release-plz.yml
vendored
@@ -34,7 +34,7 @@ jobs:
|
||||
- uses: rust-lang/crates-io-auth-action@e919bc7605cde86df457cf5b93c5e103838bd879 # v1
|
||||
id: auth
|
||||
- name: Run release-plz
|
||||
uses: release-plz/action@acb9246af4d59a270d1d4058a8b9af8c3f3a2559 # v0.5
|
||||
uses: release-plz/action@d529f731ae3e89610ada96eda34e5c6ba3b12214 # v0.5
|
||||
with:
|
||||
command: release
|
||||
env:
|
||||
@@ -46,6 +46,7 @@ jobs:
|
||||
name: Release-plz PR
|
||||
permissions:
|
||||
pull-requests: write
|
||||
contents: write
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.repository_owner == 'ratatui' }}
|
||||
concurrency:
|
||||
@@ -62,7 +63,7 @@ jobs:
|
||||
with:
|
||||
toolchain: stable
|
||||
- name: Run release-plz
|
||||
uses: release-plz/action@acb9246af4d59a270d1d4058a8b9af8c3f3a2559 # v0.5
|
||||
uses: release-plz/action@d529f731ae3e89610ada96eda34e5c6ba3b12214 # v0.5
|
||||
with:
|
||||
command: release-pr
|
||||
env:
|
||||
|
||||
@@ -4,6 +4,7 @@ All notable changes to this project will be documented in this file.
|
||||
<!-- ignore lint rules that are often triggered by content generated from commits / git-cliff -->
|
||||
<!-- markdownlint-disable line-length no-bare-urls ul-style emphasis-style -->
|
||||
|
||||
|
||||
## ratatui - [0.30.0-alpha.5](https://github.com/ratatui/ratatui/compare/ratatui-v0.30.0-alpha.4...ratatui-v0.30.0-alpha.5) - 2025-06-30
|
||||
|
||||
### Features
|
||||
@@ -5955,7 +5956,7 @@ Adds conversions for various Color and Modifier combinations
|
||||
- removed box borders
|
||||
- show the difference between ratio / percentage and unicode / no unicode better
|
||||
- better application approach (consistent with newer examples)
|
||||
- various changes for 0.26 featuers
|
||||
- various changes for 0.26 features
|
||||
- impl `Widget` for `&App`
|
||||
- use color_eyre
|
||||
|
||||
@@ -6910,7 +6911,7 @@ Also, we created various tutorials and walkthroughs in [Ratatui Book](https://gi
|
||||
color attribute - it is enabled by default, but can be disabled by
|
||||
passing `--no-default-features` to cargo.
|
||||
|
||||
We could specically check for Windows 7 and disable the feature flag
|
||||
We could specially check for Windows 7 and disable the feature flag
|
||||
automatically, but I think it's better for this check to be done by the
|
||||
crossterm crate, since it's the one that actually knows about the
|
||||
underlying terminal.
|
||||
@@ -8035,7 +8036,7 @@ Here is the list of contributors who have contributed to `ratatui` for the first
|
||||
### Bug Fixes
|
||||
|
||||
- _(clippy)_ Unused_mut lint for layout ([#285](https://github.com/ratatui/ratatui/issues/285))
|
||||
- _(examples)_ Correct progress label in gague example ([#263](https://github.com/ratatui/ratatui/issues/263))
|
||||
- _(examples)_ Correct progress label in gauge example ([#263](https://github.com/ratatui/ratatui/issues/263))
|
||||
- _(layout)_ Cap Constraint::apply to 100% length ([#264](https://github.com/ratatui/ratatui/issues/264))
|
||||
- _(lint)_ Suspicious_double_ref_op is new in 1.71 ([#311](https://github.com/ratatui/ratatui/issues/311))
|
||||
- _(prelude)_ Remove widgets module from prelude ([#317](https://github.com/ratatui/ratatui/issues/317))
|
||||
|
||||
67
Cargo.lock
generated
67
Cargo.lock
generated
@@ -79,9 +79,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "anstyle"
|
||||
version = "1.0.11"
|
||||
version = "1.0.13"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd"
|
||||
checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78"
|
||||
|
||||
[[package]]
|
||||
name = "anstyle-parse"
|
||||
@@ -1593,7 +1593,7 @@ dependencies = [
|
||||
"hashbrown 0.16.0",
|
||||
"portable-atomic",
|
||||
"portable-atomic-util",
|
||||
"thiserror 2.0.16",
|
||||
"thiserror 2.0.17",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -1642,9 +1642,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "line-clipping"
|
||||
version = "0.3.3"
|
||||
version = "0.3.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "51a1679740111eb63b7b4cb3c97b1d5d9f82e142292a25edcfdb4120a48b3880"
|
||||
checksum = "b9bd35dcd25f8578944c44cd75649d6487d74cf895002f6d86613164f2635b72"
|
||||
dependencies = [
|
||||
"bitflags 2.9.4",
|
||||
]
|
||||
@@ -1700,9 +1700,9 @@ checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94"
|
||||
|
||||
[[package]]
|
||||
name = "lru"
|
||||
version = "0.16.0"
|
||||
version = "0.16.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "86ea4e65087ff52f3862caff188d489f1fab49a0cb09e01b2e3f1a617b10aaed"
|
||||
checksum = "bfe949189f46fabb938b3a9a0be30fdd93fd8a09260da863399a8cf3db756ec8"
|
||||
dependencies = [
|
||||
"hashbrown 0.15.5",
|
||||
]
|
||||
@@ -2073,7 +2073,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1db05f56d34358a8b1066f67cbb203ee3e7ed2ba674a6263a1d5ec6db2204323"
|
||||
dependencies = [
|
||||
"memchr",
|
||||
"thiserror 2.0.16",
|
||||
"thiserror 2.0.17",
|
||||
"ucd-trie",
|
||||
]
|
||||
|
||||
@@ -2488,7 +2488,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "ratatui"
|
||||
version = "0.30.0-beta.0"
|
||||
version = "0.30.0-alpha.6"
|
||||
dependencies = [
|
||||
"color-eyre",
|
||||
"criterion",
|
||||
@@ -2520,7 +2520,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "ratatui-core"
|
||||
version = "0.1.0-beta.0"
|
||||
version = "0.1.0-alpha.7"
|
||||
dependencies = [
|
||||
"anstyle",
|
||||
"bitflags 2.9.4",
|
||||
@@ -2537,7 +2537,7 @@ dependencies = [
|
||||
"serde",
|
||||
"serde_json",
|
||||
"strum",
|
||||
"thiserror 2.0.16",
|
||||
"thiserror 2.0.17",
|
||||
"unicode-segmentation",
|
||||
"unicode-truncate",
|
||||
"unicode-width",
|
||||
@@ -2545,7 +2545,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "ratatui-crossterm"
|
||||
version = "0.1.0-beta.0"
|
||||
version = "0.1.0-alpha.6"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"crossterm 0.28.1",
|
||||
@@ -2558,7 +2558,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "ratatui-macros"
|
||||
version = "0.7.0-beta.0"
|
||||
version = "0.7.0-alpha.5"
|
||||
dependencies = [
|
||||
"ratatui-core",
|
||||
"ratatui-widgets",
|
||||
@@ -2576,7 +2576,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "ratatui-termion"
|
||||
version = "0.1.0-beta.0"
|
||||
version = "0.1.0-alpha.6"
|
||||
dependencies = [
|
||||
"document-features",
|
||||
"instability",
|
||||
@@ -2587,7 +2587,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "ratatui-termwiz"
|
||||
version = "0.1.0-beta.0"
|
||||
version = "0.1.0-alpha.6"
|
||||
dependencies = [
|
||||
"document-features",
|
||||
"ratatui",
|
||||
@@ -2598,7 +2598,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "ratatui-widgets"
|
||||
version = "0.3.0-beta.0"
|
||||
version = "0.3.0-alpha.6"
|
||||
dependencies = [
|
||||
"bitflags 2.9.4",
|
||||
"color-eyre",
|
||||
@@ -2923,18 +2923,28 @@ checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0"
|
||||
|
||||
[[package]]
|
||||
name = "serde"
|
||||
version = "1.0.219"
|
||||
version = "1.0.228"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6"
|
||||
checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
|
||||
dependencies = [
|
||||
"serde_core",
|
||||
"serde_derive",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "serde_core"
|
||||
version = "1.0.228"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
|
||||
dependencies = [
|
||||
"serde_derive",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "serde_derive"
|
||||
version = "1.0.219"
|
||||
version = "1.0.228"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00"
|
||||
checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
@@ -2943,14 +2953,15 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "serde_json"
|
||||
version = "1.0.143"
|
||||
version = "1.0.145"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a"
|
||||
checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c"
|
||||
dependencies = [
|
||||
"itoa",
|
||||
"memchr",
|
||||
"ryu",
|
||||
"serde",
|
||||
"serde_core",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -3076,7 +3087,7 @@ checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb"
|
||||
dependencies = [
|
||||
"num-bigint",
|
||||
"num-traits",
|
||||
"thiserror 2.0.16",
|
||||
"thiserror 2.0.17",
|
||||
"time",
|
||||
]
|
||||
|
||||
@@ -3337,11 +3348,11 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "thiserror"
|
||||
version = "2.0.16"
|
||||
version = "2.0.17"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0"
|
||||
checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8"
|
||||
dependencies = [
|
||||
"thiserror-impl 2.0.16",
|
||||
"thiserror-impl 2.0.17",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -3357,9 +3368,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "thiserror-impl"
|
||||
version = "2.0.16"
|
||||
version = "2.0.17"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960"
|
||||
checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
|
||||
14
Cargo.toml
14
Cargo.toml
@@ -50,13 +50,13 @@ palette = "0.7"
|
||||
pretty_assertions = "1"
|
||||
rand = "0.9"
|
||||
rand_chacha = "0.9"
|
||||
ratatui = { path = "ratatui", version = "0.30.0-beta.0" }
|
||||
ratatui-core = { path = "ratatui-core", version = "0.1.0-beta.0" }
|
||||
ratatui-crossterm = { path = "ratatui-crossterm", version = "0.1.0-beta.0" }
|
||||
ratatui-macros = { path = "ratatui-macros", version = "0.7.0-beta.0" }
|
||||
ratatui-termion = { path = "ratatui-termion", version = "0.1.0-beta.0" }
|
||||
ratatui-termwiz = { path = "ratatui-termwiz", version = "0.1.0-beta.0" }
|
||||
ratatui-widgets = { path = "ratatui-widgets", version = "0.3.0-beta.0" }
|
||||
ratatui = { path = "ratatui", version = "0.30.0-alpha.6" }
|
||||
ratatui-core = { path = "ratatui-core", version = "0.1.0-alpha.7" }
|
||||
ratatui-crossterm = { path = "ratatui-crossterm", version = "0.1.0-alpha.6" }
|
||||
ratatui-macros = { path = "ratatui-macros", version = "0.7.0-alpha.5" }
|
||||
ratatui-termion = { path = "ratatui-termion", version = "0.1.0-alpha.6" }
|
||||
ratatui-termwiz = { path = "ratatui-termwiz", version = "0.1.0-alpha.6" }
|
||||
ratatui-widgets = { path = "ratatui-widgets", version = "0.3.0-alpha.6" }
|
||||
rstest = "0.26"
|
||||
serde = { version = "1", features = ["derive"] }
|
||||
serde_json = "1"
|
||||
|
||||
@@ -5,7 +5,7 @@ This file documents current and past maintainers.
|
||||
- [orhun](https://github.com/orhun)
|
||||
- [joshka](https://github.com/joshka)
|
||||
- [kdheepak](https://github.com/kdheepak)
|
||||
- [Valentin271](https://github.com/Valentin271)
|
||||
- [j-g00da](https://github.com/j-g00da)
|
||||
|
||||
## Past Maintainers
|
||||
|
||||
@@ -13,3 +13,4 @@ This file documents current and past maintainers.
|
||||
- [mindoodoo](https://github.com/mindoodoo)
|
||||
- [sayanarijit](https://github.com/sayanarijit)
|
||||
- [EdJoPaTo](https://github.com/EdJoPaTo)
|
||||
- [Valentin271](https://github.com/Valentin271)
|
||||
|
||||
@@ -104,10 +104,13 @@ commit_preprocessors = [
|
||||
{ pattern = '(Clarify README.md)', replace = "docs(readme): ${1}" },
|
||||
{ pattern = '(Update README.md)', replace = "docs(readme): ${1}" },
|
||||
{ pattern = '(fix typos|Fix typos)', replace = "fix: ${1}" },
|
||||
# a small typo that squeaked through and which would otherwise trigger the typos linter.
|
||||
# Typos that squeaked through and which would otherwise trigger the typos linter.
|
||||
# Regex obsfucation is to avoid triggering the linter in this file until there's a per file config
|
||||
# See https://github.com/crate-ci/typos/issues/724
|
||||
{ pattern = '\<[d]eatil\>', replace = "detail" },
|
||||
{ pattern = '\<[f]eatuers\>', replace = "features" },
|
||||
{ pattern = '\<[s]pecically\>', replace = "specially" },
|
||||
{ pattern = '\<[g]ague\>', replace = "gauge" },
|
||||
]
|
||||
# regex for parsing and grouping commits
|
||||
commit_parsers = [
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
# Examples
|
||||
|
||||
This folder contains examples that are more application focused.
|
||||
There are also [widget examples] in `ratatui-widgets`.
|
||||
|
||||
> [!TIP]
|
||||
> There are also [widget examples] in `ratatui-widgets`.
|
||||
|
||||
[widget examples]: ../ratatui-widgets/examples
|
||||
|
||||
@@ -11,8 +13,9 @@ You can run these examples using:
|
||||
cargo run -p example-name
|
||||
```
|
||||
|
||||
This folder might use unreleased code. Consider viewing the examples in the `latest` branch instead
|
||||
of the `main` branch for code which is guaranteed to work with the released ratatui version.
|
||||
> [!NOTE]
|
||||
> This folder might use unreleased code. Consider viewing the examples in the `latest` branch instead
|
||||
> of the `main` branch for code which is guaranteed to work with the released Ratatui version.
|
||||
|
||||
> [!WARNING]
|
||||
>
|
||||
|
||||
@@ -4,7 +4,7 @@ description = """
|
||||
Core types and traits for the Ratatui Terminal UI library.
|
||||
Widget libraries should use this crate. Applications should use the main Ratatui crate.
|
||||
"""
|
||||
version = "0.1.0-beta.0"
|
||||
version = "0.1.0-alpha.7"
|
||||
readme = "README.md"
|
||||
authors.workspace = true
|
||||
documentation.workspace = true
|
||||
|
||||
@@ -130,7 +130,7 @@ impl From<i16> for Spacing {
|
||||
///
|
||||
/// When the layout is computed, the result is cached in a thread-local cache, so that subsequent
|
||||
/// calls with the same parameters are faster. The cache is a `LruCache`, and the size of the cache
|
||||
/// can be configured using [`Layout::init_cache()`].
|
||||
/// can be configured using [`Layout::init_cache()`] when the `layout-cache` feature is enabled.
|
||||
///
|
||||
/// # Construction
|
||||
///
|
||||
@@ -203,8 +203,8 @@ impl Layout {
|
||||
/// on my laptop's terminal (171+51 = 222) and doubling it for good measure and then adding a
|
||||
/// bit more to make it a round number. This gives enough entries to store a layout for every
|
||||
/// row and every column, twice over, which should be enough for most apps. For those that need
|
||||
/// more, the cache size can be set with [`Layout::init_cache()`].
|
||||
/// This const is unused if layout cache is disabled.
|
||||
/// more, the cache size can be set with `Layout::init_cache()` (requires the `layout-cache`
|
||||
/// feature).
|
||||
#[cfg(feature = "layout-cache")]
|
||||
pub const DEFAULT_CACHE_SIZE: usize = 500;
|
||||
|
||||
@@ -636,8 +636,8 @@ impl Layout {
|
||||
///
|
||||
/// This method stores the result of the computation in a thread-local cache keyed on the layout
|
||||
/// and area, so that subsequent calls with the same parameters are faster. The cache is a
|
||||
/// `LruCache`, and grows until [`Self::DEFAULT_CACHE_SIZE`] is reached by default, if the cache
|
||||
/// is initialized with the [`Layout::init_cache()`] grows until the initialized cache size.
|
||||
/// `LruCache`, and grows until [`Self::DEFAULT_CACHE_SIZE`] is reached by default. If the cache
|
||||
/// is initialized with [`Layout::init_cache()`], it grows until the initialized cache size.
|
||||
///
|
||||
/// There is a helper method that can be used to split the whole area into smaller ones based on
|
||||
/// the layout: [`Layout::areas()`]. That method is a shortcut for calling this method. It
|
||||
@@ -673,8 +673,8 @@ impl Layout {
|
||||
///
|
||||
/// This method stores the result of the computation in a thread-local cache keyed on the layout
|
||||
/// and area, so that subsequent calls with the same parameters are faster. The cache is a
|
||||
/// `LruCache`, and grows until [`Self::DEFAULT_CACHE_SIZE`] is reached by default, if the cache
|
||||
/// is initialized with the [`Layout::init_cache()`] grows until the initialized cache size.
|
||||
/// `LruCache`, and grows until [`Self::DEFAULT_CACHE_SIZE`] is reached by default. If the cache
|
||||
/// is initialized with [`Layout::init_cache()`], it grows until the initialized cache size.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
|
||||
@@ -224,7 +224,7 @@ impl Rect {
|
||||
|
||||
/// Returns a new `Rect` outside the current one, with the given margin applied on each side.
|
||||
///
|
||||
/// If the margin causes the `Rect`'s bounds to outsdie the range of a `u16`, the `Rect` will
|
||||
/// If the margin causes the `Rect`'s bounds to be outside the range of a `u16`, the `Rect` will
|
||||
/// be truncated to keep the bounds within `u16`. This will cause the size of the `Rect` to
|
||||
/// change.
|
||||
///
|
||||
|
||||
@@ -655,8 +655,8 @@ mod tests {
|
||||
"abcdef0", // 7 chars is not a color
|
||||
" bcdefa", // doesn't start with a '#'
|
||||
"#abcdef00", // too many chars
|
||||
"#1🦀2", // len 7 but on char boundaries shouldnt panic
|
||||
"resett", // typo
|
||||
"#1🦀2", // len 7 but on char boundaries shouldn't panic
|
||||
"resets", // typo
|
||||
"lightblackk", // typo
|
||||
];
|
||||
|
||||
|
||||
@@ -99,7 +99,7 @@ pub enum MergeStrategy {
|
||||
///
|
||||
/// The following diagram illustrates how this would apply to several overlapping blocks where
|
||||
/// the thick bordered blocks are rendered last, merging the previous symbols into a single
|
||||
/// composite character. All combindations of the plain and thick segments exist, so these
|
||||
/// composite character. All combinations of the plain and thick segments exist, so these
|
||||
/// symbols can be merged into a single character:
|
||||
///
|
||||
/// ```text
|
||||
@@ -264,7 +264,7 @@ pub enum MergeStrategy {
|
||||
/// assert_eq!(strategy.merge("┃", "═"), "╬");
|
||||
/// assert_eq!(strategy.merge("═", "┃"), "╋");
|
||||
///
|
||||
/// // combindations of double with plain that don't exist are merged based on the second symbol
|
||||
/// // combinations of double with plain that don't exist are merged based on the second symbol
|
||||
/// assert_eq!(strategy.merge("┐", "╔"), "╦");
|
||||
/// assert_eq!(strategy.merge("╔", "┐"), "┬");
|
||||
/// ```
|
||||
|
||||
@@ -203,6 +203,40 @@ where
|
||||
}
|
||||
|
||||
/// Get a Frame object which provides a consistent view into the terminal state for rendering.
|
||||
///
|
||||
/// # Note
|
||||
///
|
||||
/// This exists to support more advanced use cases. Most cases should be fine using
|
||||
/// [`Terminal::draw`].
|
||||
///
|
||||
/// [`Terminal::get_frame`] should be used when you need direct access to the frame buffer
|
||||
/// outside of draw closure, for example:
|
||||
///
|
||||
/// - Unit testing widgets
|
||||
/// - Buffer state inspection
|
||||
/// - Cursor manipulation
|
||||
/// - Multiple rendering passes/Buffer Manipulation
|
||||
/// - Custom frame lifecycle management
|
||||
/// - Buffer exporting
|
||||
///
|
||||
/// # Example
|
||||
///
|
||||
/// Getting the buffer and asserting on some cells after rendering a widget.
|
||||
///
|
||||
/// ```rust,ignore
|
||||
/// use ratatui::{backend::TestBackend, Terminal};
|
||||
/// use ratatui::widgets::Paragraph;
|
||||
/// let backend = TestBackend::new(30, 5);
|
||||
/// let mut terminal = Terminal::new(backend).unwrap();
|
||||
/// {
|
||||
/// let mut frame = terminal.get_frame();
|
||||
/// frame.render_widget(Paragraph::new("Hello"), frame.area());
|
||||
/// }
|
||||
/// // When not using `draw`, present the buffer manually:
|
||||
/// terminal.flush().unwrap();
|
||||
/// terminal.swap_buffers();
|
||||
/// terminal.backend_mut().flush().unwrap();
|
||||
/// ```
|
||||
pub const fn get_frame(&mut self) -> Frame<'_> {
|
||||
let count = self.frame_count;
|
||||
Frame {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "ratatui-crossterm"
|
||||
version = "0.1.0-beta.0"
|
||||
version = "0.1.0-alpha.6"
|
||||
description = "Crossterm backend for the Ratatui Terminal UI library."
|
||||
documentation = "https://docs.rs/ratatui-crossterm/"
|
||||
readme = "README.md"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "ratatui-macros"
|
||||
version = "0.7.0-beta.0"
|
||||
version = "0.7.0-alpha.5"
|
||||
edition.workspace = true
|
||||
authors = ["The Ratatui Developers"]
|
||||
description = "Macros for Ratatui"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "ratatui-termion"
|
||||
version = "0.1.0-beta.0"
|
||||
version = "0.1.0-alpha.6"
|
||||
description = "Termion backend for the Ratatui Terminal UI library."
|
||||
documentation = "https://docs.rs/ratatui-termion/"
|
||||
readme = "README.md"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "ratatui-termwiz"
|
||||
version = "0.1.0-beta.0"
|
||||
version = "0.1.0-alpha.6"
|
||||
description = "Termwiz backend for the Ratatui Terminal UI library."
|
||||
documentation = "https://docs.rs/ratatui-termwiz/"
|
||||
readme = "README.md"
|
||||
|
||||
@@ -3,7 +3,7 @@ name = "ratatui-widgets"
|
||||
description = "A collection of Ratatui widgets for building terminal user interfaces using Ratatui."
|
||||
# Note that this started at 0.3.0 as there was a previous crate using the name `ratatui-widgets`.
|
||||
# <https://github.com/joshka/ratatui-widgets/issues/46>
|
||||
version = "0.3.0-beta.0"
|
||||
version = "0.3.0-alpha.6"
|
||||
readme = "README.md"
|
||||
authors.workspace = true
|
||||
documentation.workspace = true
|
||||
|
||||
101
ratatui-widgets/examples/README.md
Normal file
101
ratatui-widgets/examples/README.md
Normal file
@@ -0,0 +1,101 @@
|
||||
# Widget Examples
|
||||
|
||||
This folder contains minimal examples for Ratatui widgets.
|
||||
There are meant to provide code snippets that can be copy-pasted into your
|
||||
application.
|
||||
|
||||
> [!TIP]
|
||||
> There are also [application examples] in the top-level `examples` folder.
|
||||
|
||||
[application examples]: ../../examples
|
||||
|
||||
You can run these examples using:
|
||||
|
||||
```shell
|
||||
cargo run -p ratatui-widgets --example example-name
|
||||
```
|
||||
|
||||
> [!NOTE]
|
||||
> This folder might use unreleased code. Consider viewing the examples in the `latest` branch instead
|
||||
> of the `main` branch for code which is guaranteed to work with the released Ratatui version.
|
||||
|
||||
## Barchart (grouped)
|
||||
|
||||
![Barchart (grouped)][barchart-grouped.gif]
|
||||
|
||||
## Barchart
|
||||
|
||||
![Barchart][barchart.gif]
|
||||
|
||||
## Block
|
||||
|
||||
![Block][block.gif]
|
||||
|
||||
## Calendar
|
||||
|
||||
![Calendar][calendar.gif]
|
||||
|
||||
## Canvas
|
||||
|
||||
![Canvas][canvas.gif]
|
||||
|
||||
## Chart
|
||||
|
||||
![Chart][chart.gif]
|
||||
|
||||
## Collapsed Borders
|
||||
|
||||
![Collapsed Borders][collapsed-borders.gif]
|
||||
|
||||
## Gauge
|
||||
|
||||
![Gauge][gauge.gif]
|
||||
|
||||
## Line Gauge
|
||||
|
||||
![Line Gauge][line-gauge.gif]
|
||||
|
||||
## List
|
||||
|
||||
![List][list.gif]
|
||||
|
||||
## Logo
|
||||
|
||||
![Logo][logo.gif]
|
||||
|
||||
## Paragraph
|
||||
|
||||
![Paragraph][paragraph.gif]
|
||||
|
||||
## Scrollbar
|
||||
|
||||
![Scrollbar][scrollbar.gif]
|
||||
|
||||
## Sparkline
|
||||
|
||||
![Sparkline][sparkline.gif]
|
||||
|
||||
## Table
|
||||
|
||||
![Table][table.gif]
|
||||
|
||||
## Tabs
|
||||
|
||||
![Tabs][tabs.gif]
|
||||
|
||||
[barchart-grouped.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/barchart-grouped.gif?raw=true
|
||||
[barchart.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/barchart.gif?raw=true
|
||||
[block.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/block.gif?raw=true
|
||||
[calendar.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/calendar.gif?raw=true
|
||||
[canvas.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/canvas.gif?raw=true
|
||||
[chart.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/chart.gif?raw=true
|
||||
[collapsed-borders.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/collapsed-borders.gif?raw=true
|
||||
[gauge.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/gauge.gif?raw=true
|
||||
[line-gauge.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/line-gauge.gif?raw=true
|
||||
[list.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/list.gif?raw=true
|
||||
[logo.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/logo.gif?raw=true
|
||||
[paragraph.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/paragraph.gif?raw=true
|
||||
[scrollbar.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/scrollbar.gif?raw=true
|
||||
[sparkline.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/sparkline.gif?raw=true
|
||||
[table.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/table.gif?raw=true
|
||||
[tabs.gif]: https://github.com/ratatui/ratatui/blob/images/widget-examples/tabs.gif?raw=true
|
||||
12
ratatui-widgets/examples/vhs/barchart-grouped.tape
Normal file
12
ratatui-widgets/examples/vhs/barchart-grouped.tape
Normal file
@@ -0,0 +1,12 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/barchart-grouped.tape`
|
||||
Output "target/barchart-grouped.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 1000
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example barchart-grouped"
|
||||
Enter
|
||||
Sleep 1s
|
||||
Show
|
||||
Sleep 1s
|
||||
12
ratatui-widgets/examples/vhs/barchart.tape
Normal file
12
ratatui-widgets/examples/vhs/barchart.tape
Normal file
@@ -0,0 +1,12 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/barchart.tape`
|
||||
Output "target/barchart.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 600
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example barchart"
|
||||
Enter
|
||||
Sleep 1s
|
||||
Show
|
||||
Sleep 1s
|
||||
12
ratatui-widgets/examples/vhs/block.tape
Normal file
12
ratatui-widgets/examples/vhs/block.tape
Normal file
@@ -0,0 +1,12 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/block.tape`
|
||||
Output "target/block.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 1200
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example block"
|
||||
Enter
|
||||
Sleep 2s
|
||||
Show
|
||||
Sleep 2s
|
||||
12
ratatui-widgets/examples/vhs/calendar.tape
Normal file
12
ratatui-widgets/examples/vhs/calendar.tape
Normal file
@@ -0,0 +1,12 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/calendar.tape`
|
||||
Output "target/calendar.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 800
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example calendar"
|
||||
Enter
|
||||
Sleep 3s
|
||||
Show
|
||||
Sleep 5s
|
||||
13
ratatui-widgets/examples/vhs/canvas.tape
Normal file
13
ratatui-widgets/examples/vhs/canvas.tape
Normal file
@@ -0,0 +1,13 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/canvas.tape`
|
||||
Output "target/canvas.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set FontSize 12
|
||||
Set Width 1200
|
||||
Set Height 800
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example canvas"
|
||||
Enter
|
||||
Sleep 2s
|
||||
Show
|
||||
Sleep 5s
|
||||
12
ratatui-widgets/examples/vhs/chart.tape
Normal file
12
ratatui-widgets/examples/vhs/chart.tape
Normal file
@@ -0,0 +1,12 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/chart.tape`
|
||||
Output "target/chart.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 800
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example chart"
|
||||
Enter
|
||||
Sleep 1s
|
||||
Show
|
||||
Sleep 5s
|
||||
@@ -1,5 +1,5 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./examples/vhs/gauge.tape`
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/collapsed-borders.tape`
|
||||
Output "target/collapsed-borders.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
|
||||
12
ratatui-widgets/examples/vhs/gauge.tape
Normal file
12
ratatui-widgets/examples/vhs/gauge.tape
Normal file
@@ -0,0 +1,12 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/gauge.tape`
|
||||
Output "target/gauge.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 850
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example gauge"
|
||||
Enter
|
||||
Sleep 2s
|
||||
Show
|
||||
Sleep 5s
|
||||
12
ratatui-widgets/examples/vhs/line-gauge.tape
Normal file
12
ratatui-widgets/examples/vhs/line-gauge.tape
Normal file
@@ -0,0 +1,12 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/line-gauge.tape`
|
||||
Output "target/line-gauge.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 850
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example line-gauge"
|
||||
Enter
|
||||
Sleep 2s
|
||||
Show
|
||||
Sleep 5s
|
||||
20
ratatui-widgets/examples/vhs/list.tape
Normal file
20
ratatui-widgets/examples/vhs/list.tape
Normal file
@@ -0,0 +1,20 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/list.tape`
|
||||
Output "target/list.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 612
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example list"
|
||||
Enter
|
||||
Sleep 10s
|
||||
Show
|
||||
Sleep 2s
|
||||
Down@1.5s 3
|
||||
Sleep 1.5s
|
||||
Down@1.5s 3
|
||||
Sleep 1.5s
|
||||
Up@1s 1
|
||||
Sleep 1s
|
||||
Up@1s 4
|
||||
Sleep 2s
|
||||
14
ratatui-widgets/examples/vhs/logo.tape
Normal file
14
ratatui-widgets/examples/vhs/logo.tape
Normal file
@@ -0,0 +1,14 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/logo.tape`
|
||||
Output "target/logo.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 550
|
||||
Set Height 220
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example logo"
|
||||
Enter
|
||||
Sleep 2s
|
||||
Show
|
||||
Sleep 2s
|
||||
Hide
|
||||
Escape
|
||||
12
ratatui-widgets/examples/vhs/paragraph.tape
Normal file
12
ratatui-widgets/examples/vhs/paragraph.tape
Normal file
@@ -0,0 +1,12 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/paragraph.tape`
|
||||
Output "target/paragraph.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 600
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example paragraph"
|
||||
Enter
|
||||
Sleep 1s
|
||||
Show
|
||||
Sleep 5s
|
||||
17
ratatui-widgets/examples/vhs/scrollbar.tape
Normal file
17
ratatui-widgets/examples/vhs/scrollbar.tape
Normal file
@@ -0,0 +1,17 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/scrollbar.tape`
|
||||
Output "target/scrollbar.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 600
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example scrollbar"
|
||||
Enter
|
||||
Sleep 1s
|
||||
Show
|
||||
Sleep 2s
|
||||
Right@1s 4
|
||||
Sleep 1s
|
||||
Left@1s 1
|
||||
Down@1s 3
|
||||
Sleep 2s
|
||||
12
ratatui-widgets/examples/vhs/sparkline.tape
Normal file
12
ratatui-widgets/examples/vhs/sparkline.tape
Normal file
@@ -0,0 +1,12 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/sparkline.tape`
|
||||
Output "target/sparkline.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 600
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example sparkline"
|
||||
Enter
|
||||
Sleep 1s
|
||||
Show
|
||||
Sleep 5s
|
||||
17
ratatui-widgets/examples/vhs/table.tape
Normal file
17
ratatui-widgets/examples/vhs/table.tape
Normal file
@@ -0,0 +1,17 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/table.tape`
|
||||
Output "target/table.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1400
|
||||
Set Height 768
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example table"
|
||||
Enter
|
||||
Sleep 1s
|
||||
Show
|
||||
Sleep 2s
|
||||
Set TypingSpeed 1s
|
||||
Down 3
|
||||
Sleep 1s
|
||||
Right 3
|
||||
Sleep 2s
|
||||
15
ratatui-widgets/examples/vhs/tabs.tape
Normal file
15
ratatui-widgets/examples/vhs/tabs.tape
Normal file
@@ -0,0 +1,15 @@
|
||||
# This is a vhs script. See https://github.com/charmbracelet/vhs for more info.
|
||||
# To run this script, install vhs and run `vhs ./ratatui-widgets/examples/vhs/tabs.tape`
|
||||
Output "target/tabs.gif"
|
||||
Set Theme "Aardvark Blue"
|
||||
Set Width 1200
|
||||
Set Height 368
|
||||
Hide
|
||||
Type "cargo run -p ratatui-widgets --example tabs"
|
||||
Enter
|
||||
Sleep 2s
|
||||
Show
|
||||
Sleep 1s
|
||||
Right@2.5s 3
|
||||
Left@2.5s 3
|
||||
Sleep 2s
|
||||
@@ -1,7 +1,7 @@
|
||||
[package]
|
||||
name = "ratatui"
|
||||
description = "A library that's all about cooking up terminal user interfaces"
|
||||
version = "0.30.0-beta.0"
|
||||
version = "0.30.0-alpha.6"
|
||||
authors.workspace = true
|
||||
documentation.workspace = true
|
||||
repository.workspace = true
|
||||
|
||||
Reference in New Issue
Block a user