← Return to Artifact Archive

ARTIFACT / INKLINE

inkline

PROTOTYPE

给习惯键盘盲打与实时排版的个人用户编写的轻量 Markdown 编辑器:自组 winit + wgpu + glyphon 渲染管线,光标位置就近弹出 yazi 式树形斜杠命令面板,界面元素遵循整数像素硬对齐与状态色彩编码。

ARTIFACT ID
inkline
COMPILED
2026-10-23
STATUS / 状态
原型(M2.5 命令面板与基础行编辑可用;实时内联预览与插件系统待做)

仓库:本地工程(未配置远程 Git)

inkline

给习惯键盘盲打与实时排版的个人用户编写的轻量 Markdown 编辑器:自组 winit + wgpu + glyphon 渲染管线,光标位置就近弹出 yazi 式树形斜杠命令面板,界面元素遵循整数像素硬对齐与状态色彩编码。

状态:原型(M2.5 命令面板与基础行编辑可用;实时内联预览与插件系统待做);入口:cargo run;仓库:本地工程(未配置远程 Git)

本质

把自组 GPU 文本排版管线与光标就近无模态层级命令系统结合的轻量 Rust Markdown 编辑器。

选型

基于 Rust 原生图形栈构建的桌面编辑器单体,文本缓冲走 ropey,语法解析走 pulldown-cmark,字形排版与 GPU 光栅化走 cosmic-text + glyphon + wgpu。

  • 运行时 / 语言
    • Rust 1.80+ (2021 Edition)
  • 窗口与图形
    • winit 0.30
    • wgpu 22.0
  • 文本与排版
    • ropey(Rope 文本缓冲)
    • cosmic-text 0.12(文本整形与多语言排版)
    • glyphon 0.6(字形图集 GPU 渲染)
    • pulldown-cmark(CommonMark 增量解析)
  • 音效与配置(计划中)
    • kira / rodio

功能

  • GPU 文本排版管线:cosmic-text 整形结合 glyphon 纹理图集,支持 CJK 舒适行高(正文 20px / 行高 34px)。
  • 光标就近命令面板:输入 / 锚定在光标正下方唤出树形面板,支持键盘上下/左右下钻过滤与执行。
  • 状态编码边框:1px 整数像素对齐描边,上边呈现行宽占用、下边呈现内容密度图、左右呈现光标与选区跨度。
  • 呼吸光标与平滑选区:活动焦点下在橙色系以 2.4 秒周期平滑呼吸,窗口失焦自动转为冷蓝。
  • 未完成:M3 实时源码与内联富文本混合预览;M5 Lua 沙箱插件系统。

启动流程

cargo check        # 类型与语法检查
cargo run          # 启动编辑器窗口
cargo test         # 执行单元测试

前置:支持 Vulkan / Metal / DX12 的系统图形驱动;系统已装载通用 CJK 无衬线字体;按 F1 可在 Sans / Serif / Mono 间循环切换字体。

边界与已知问题

  • 架构假设:单文档单窗口,暂不支持多标签页与多文档分屏。
  • 选区交互:当前仅支持单光标连续选区,不支持多光标并发编辑。
  • 平台限制:当前在 Linux Wayland/X11 下调试,Windows/macOS 上的字体回退链尚未全面适配。

文档索引