#shell #rc #linux #plan9 #9front

app rcshell

Plan 9 的 rc 语言在 Rust 中实现

3 个版本

0.0.1-alpha.32024 年 1 月 17 日
0.0.1-alpha.22024 年 1 月 16 日
0.0.1-alpha.12024 年 1 月 15 日

#2492命令行工具

每月 24 次下载

GPL-3.0-or-later

35KB
558 代码行

Plan 9 的 rc 语言在 Rust 中实现

  • 目标:在 Rust 中实现 Plan 9 的 rc
  • 计划:忠实于 9front 实现。
  • 许可:GPL-3.0-or-later
  • 免责声明:这是一个兴趣爱好项目。

变更日志

0.0.1-alpha.3

  • 里程碑:词法分析器可以成功标记 plan9front.git 下的所有 rc 脚本。
  • 处理从标准输入读取 rc 脚本。
  • 对词法分析器的许多修复。
  • 修复单词字符,并在词法分析器中处理引号和分号。
  • 处理 EOF 和 ^C。

0.0.1-alpha.2

  • 教词法分析器跳过 # 注释。
  • 教词法分析器 I/O 重定向和 FD 重定向。
  • 教词法分析器变量赋值,例如 a=1
  • 教词法分析器命令`{cmd}, 和`split {cmd}.
  • 教词法分析器命令重定向,即 <{cmd}>{cmd}
  • 教词法分析器 $argument(subscript)$"argument,和 $#argument

0.0.1-alpha.1

  • 添加初始 repl 使用 rustyline。
  • 使用 nom 实现初始的词法分析器。

依赖项

~7–17MB
~234K SLoC