Anathema:定义模板来构建 TUI 应用
Anathema 是一个用 Rust 编写的文本用户界面(TUI)库,带有自定义模板语言。
它旨在让开发者快速构建 TUI 应用,并将模板与应用一起分发,用户可自定义布局。
Anathema 支持热重载、响应式模板和第三方组件。它适合构建静态布局,但不适合动态布局(如运行时分割视图)。
开发者可通过外部模板轻松修改应用布局,无需重新编译。
仓库:https://github.com/togglebyte/anathema
演示:https://youtu.be/WmF1f5wWPRE
Reddit:https://www.reddit.com/r/rust/comments/1lmp3m2/announcing_anathema_a_tui_library_with_a/
WasmOS:运行 WebAssembly 程序的 unikernel
wasm_os
是一个基于 Rust 的单内核操作系统,旨在安全地运行 WebAssembly 程序。
它基于 Philipp Oppermann 的 blog_os
,并添加了对运行用户空间 WebAssembly 应用程序的支持,这些应用程序链接到其自定义系统调用 ABI 和 C/C++ 标准库。此外,它还实现了一个简单的基于 inode 的虚拟文件系统。
项目的一个亮点是自定义实现了 C 和 C++ 标准库(包括 <vector>
、<algorithm>
等头文件),这些库直接映射到其系统调用 ABI,使得应用程序可以像普通的本地程序一样编写和编译。除了 C 和 C++,wasm_os
还初步支持 Rust 和 AssemblyScript,未来计划提供更好的支持。
例如,作者之前为数学项目编写的一个旧的 C++ 原生 CLI 应用程序(一个 Collatz 检查器)无需任何修改即可在此操作系统上运行,相关演示已在代码仓库中提供。
作者发现从头开始编写 C/C++ 标准库,尤其是像 std::vector
这样的内容,是一个有趣且具有挑战性的学习经历。设计 ABI 并在 Rust 中实现其内核端也是一个有趣的挑战,尤其是实现支持 malloc
等操作的分配管理系统,这些操作通常不映射到 WebAssembly 的范式。
虽然 wasm_os
主要是一个玩具项目,作者希望通过它探索未来的安全执行环境(例如,通过 QEMU 沙箱化应用程序,并通过基于 ABI 的交互)。
仓库:https://github.com/IntegralPilot/wasm_os
Reddit:https://www.reddit.com/r/rust/comments/1lmlhy6/media_rust_unikernel_for_running_webassembly_in_a/
Quill:轻量级 2D Rust 绘图库
我开发 Quill 是因为我对现有的绘图选项不满意,这些选项无法为示例或报告创建简单但美观的二维绘图。
我发现其他选项,例如 Plotters,对于简单的任务来说,API 很复杂,而且编译时间也大幅增加,更不用说我发现的大多数绘图库都是为嵌入式或 Web 应用程序设计的。
我开发 Quill 主要是为了给我的微分方程库中的示例提供一个 .svg 绘图生成器,但我认为它对其他人也会有用,所以我在这里分享它!
仓库:https://github.com/Ryan-D-Gast/quill
Reddit:https://www.reddit.com/r/rust/comments/1ln20nd/quill_simple_2d_svg_plotting_for_rust/
文章《我真的很喜欢 Helix 编辑器》
作者:Mond
文章介绍了 Helix 编辑器,这是一个类似 Vim 的模态编辑器,灵感来自 Kakoune,支持多光标和基于选择的编辑。
Helix 开箱即用,无需复杂配置,支持 LSP,具有良好的默认设置。它在处理半结构化数据(如日志、JSON)时表现出色,通过简单的按键操作即可完成复杂的文本处理。
作者还展示了如何使用 Helix 快速处理 JSON 文件和日志文件,以及其在代码编辑中的高效性。尽管 Helix 仍在开发中,但作者认为它是一个值得尝试的现代编辑器。
阅读:https://herecomesthemoon.net/2025/06/i-like-helix/
Reddit:https://www.reddit.com/r/rust/comments/1lmo3p2/i_really_like_the_helix_editor/
--
From 日报小组 苦瓜小仔
社区学习交流平台订阅:
评论区
写评论还没有评论