3 个稳定版本

1.1.3 2024年6月7日
1.1.1 2022年10月31日

#139 in 文本编辑器

MIT OR Apache-2.0 OR GPL-2.0 OR GPL-3.0

14KB
116

markline: 从 stdin 到 stdout 的可标记行选择器

示例

printf "%s\n%s\n%s\n" alpha bravo charlie > example.txt
cat example.txt | markline

你应该能看到带有可编辑的圆点字符和行文本的每一行。

• alpha
• bravo
• charlie

通过按箭头键上下移动列表。

通过输入任何字母数字字符标记任何一行。该字符将替换圆点。

标记任意多行,例如

1 alpha
2 bravo
3 charlie

完成时,按回车键或 ESC 键结束。

命令输出每一行

  • 行的标记字符

  • 分隔空格

  • 行的原始文本

示例

假设你有一个文本文件,其中包含任务列表,每行一个任务,并且你想要为每一行标记“x”表示已完成,或“o”表示“待办”。

然后你可以将结果管道传递到任何其他命令,例如过滤器,以便仅显示已完成的任务。

运行

cat example.txt | markline | grep '^x'

使用“x”或“o”标记每一行,例如

x alpha
o bravo
x charlie

按回车键或 ESC 键结束。

输出

x alpha
x charlie

安装

以典型的 Rust crate 方式安装 markline

cargo install markline

如果人们想要其他方式,例如使用软件包管理器,我们欢迎帮助创建这些方式。

目的

此命令的目的是一个简单标记器,易于使用,并在命令行中表现良好,例如在管道中。

此目的不旨在处理非常长的行或非常长的输入。

类似的项目

checkline —— 类似工具,包含复选框:[链接](https://github.com/sixarm/checkline)

vipe —— 可以输入和输出到 $EDITOR:[链接](https://github.com/juliangruber/vipe)

peco —— 简单的交互式过滤工具:[链接](https://github.com/peco/peco)

percol —— 向传统的管道概念添加交互式选择:[链接](https://github.com/mooz/percol)

canything —— 交互式 grep 工具:[链接](https://github.com/keiji0/canything)

zaw zsh友好的交互式grep工具:https://github.com/zsh-users/zaw

fzf 使用Go语言编写的交互式grep工具。https://github.com/junegunn/fzf

设置

在某些系统上,您可能需要设置本地化环境变量。

示例

export LC_COLLATE="en_US.UTF-8"
export LC_CTYPE="en_US.UTF-8"
export LC_MESSAGES="en_US.UTF-8"
export LC_MONETARY="en_US.UTF-8"
export LC_NUMERIC="en_US.UTF-8"
export LC_TIME="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"

反馈

我们欢迎建设性的批评和改进建议。

跟踪

依赖项

~10–21MB
~296K SLoC