Repolode
gyscos

gyscos/cursive

一个 Rust 终端文本界面(TUI)库,用于构建富交互的终端应用,默认使用 crossterm 后端。

Star
4,857
Fork
272
未关闭 Issue
207
最近提交
27天前

这是什么?

Cursive 是一个 Rust 的文本用户界面(TUI)库,可以在终端中构建包含窗口、对话框、菜单和布局的交互式应用。默认使用 crossterm 作为后端,也支持其他后端。

开发者通过对话框、文本视图、选择列表等现成组件组装界面,库内置的事件循环负责分发键盘输入和回调。项目目标是让简单应用易于上手,同时也能支撑复杂的实时程序或小游戏,并且大部分功能可在 Linux TTY 上运行。

社区还提供了表格、标签页、树形视图、标记语言渲染、Vim 风格按键等第三方视图扩展。

核心功能

  • 01通过对话框、文本视图、列表等现成组件构建终端界面。
  • 02默认使用 crossterm 后端,也支持其他后端。
  • 03内置事件循环,处理键盘输入和回调。
  • 04支持基础颜色与 UTF-8 输出,并初步支持宽字符。
  • 05社区提供表格、标签页、树形视图等第三方视图扩展。

适用场景

  • 开发需要菜单、表单或对话框的交互式命令行工具。
  • 构建类似 menuconfig 或 nmtui 的终端配置工具或仪表盘。
  • 用 Rust 编写简单的终端小游戏。

快速上手

  1. 1

    在 Cargo.toml 中添加 cursive 依赖

    cargo add cursive
  2. 2

    在 main.rs 中创建根对象并运行一个简单对话框应用

使用前须知

  • Cursive 需要 UTF-8 环境,原生 Linux TTY 的支持可能有限。
  • 从右到左(RTL)文字的支持仍处于早期阶段。

标签

常见问题

cursive 是什么?
一个 Rust 终端文本界面(TUI)库,用于构建富交互的终端应用,默认使用 crossterm 后端。 Cursive 是一个 Rust 的文本用户界面(TUI)库,可以在终端中构建包含窗口、对话框、菜单和布局的交互式应用。默认使用 crossterm 作为后端,也支持其他后端。
cursive 可以免费使用吗?用的什么许可证?
cursive 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
cursive 还在维护吗?
活跃维护中。cursive 最近一次提交是在 2026年9月25日。
cursive 适合用来做什么?
开发需要菜单、表单或对话框的交互式命令行工具。 构建类似 menuconfig 或 nmtui 的终端配置工具或仪表盘。 用 Rust 编写简单的终端小游戏。
cursive 怎么安装和运行?
在 Cargo.toml 中添加 cursive 依赖: cargo add cursive 在 main.rs 中创建根对象并运行一个简单对话框应用
在哪里获取 cursive?
源代码和安装说明在 GitHub 上:https://github.com/gyscos/cursive

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目