#tui #命令行 #命令行工具 #awk #用户界面

app desed

Sed脚本调试器。使用TUI调试器调试和揭示您的sed脚本。

8个稳定版本

1.2.1 2022年10月14日
1.2.0 2020年10月1日
1.1.4 2020年4月23日

#194调试

每月45次 下载

GPL-3.0-or-later

1.5MB
1.5K SLoC

Desed

从您的终端舒适地揭秘和调试sed脚本。

desed usage example

Desed是一个具有美丽TUI的命令行工具,它为用户提供了一个舒适的用户界面和实用的调试器,用于逐步执行复杂的sed脚本。

一些显著的功能包括

  • 预览变量值,两个都看得到!
  • 在运行之前,看看替换命令会如何影响模式空间
  • 正向和反向逐步执行sed脚本!
  • 放置断点并检查程序状态
  • 热重载并在编辑源代码时查看更改
  • 其名称是一个回文

安装

Arch Linux

通过AUR: desed-gitdesed 作为稳定版本。

DragonFly BSD

pkg install desed

Fedora

dnf install desed

FreeBSD

pkg install desed

Void Linux

xbps-install -S desed

源代码

git clone https://github.com/soptikha2/desed
cd desed
cargo install --path .
cp "desed.1" "$(manpath | cut -d':' -f1)/man1"

Cargo

cargo install desed

预编译的二进制文件

查看 发布版

依赖关系

开发: rust, cargo (>= 1.38.0)

运行时: sed (GNU版本, >= 4.6) (如果在BSD上安装了gsed,则desed可以在BSD上运行)

控制

  • 使用鼠标滚动查看源代码,点击行以切换断点
  • j, k, g, G,就像在Vim中一样。使用数字前缀也行。
  • b 用于切换断点(使用数字前缀切换目标行的断点)
  • s 用于前进,a 用于后退
  • r 用于运行到下一个断点或脚本的末尾,R 用于相同的功能但反向
  • l 用于立即重新加载代码并继续在之前相同的位置进行调试
  • q 用于 退出

常见问题解答

它是如何工作的?

GNU sed实际上提供了一个非常有用的调试接口,您可以尝试使用--debug标志。然而,这个接口不是交互式的,我希望得到一个更接近传统调试器的工具。我在这里写了些内容

它真的起作用吗?

这取决于。sed实际上没有告诉我当前正在执行哪一行,所以我必须模拟sed的部分功能来猜测。这可能不是完全可靠的。但它确实足够好,可以无问题地调试俄罗斯方块。

为什么是sed?

Sed是一种完美的编程语言,特别是在图问题方面。它简单明了,不会用诸如ifforwhileint之类的无用标识符来充斥你的屏幕。此外,由于它没有像数字这样的东西,它非常易于使用。

但是为什么?

我想用sed编程,但到目前为止它缺乏好的工具,所以我必须自己动手。

为什么?

因为它是标准的流编辑器,用于过滤和转换文本。而且有人用它写了一个俄罗斯方块

未来更新的路线图是什么?

我想引入语法高亮,并将这个工具添加到所有主要发行版的官方仓库中。

这是一个玩笑吗?

我认为是。但显然它对某些人来说实际上是有用的。

其他项目

  • 视频摘要工具,一个工具和浏览器扩展,它可以确定视频中的每个人都正在说话,并根据此加快视频播放。非常适合跳过长讲座视频中的板书时间。

依赖关系

~4–15MB
~126K SLoC