#color #formatting #ansi-colors #terminal #terminal-colors #output #styling

app shellcolor

一个用于给终端输出着色和格式化的工具。它只返回带有适当格式化的请求字符串。

3 个不稳定版本

0.2.1 2024年2月21日
0.2.0 2024年1月13日
0.1.0 2024年1月12日

#5 in #styling

每月34次下载

自定义许可协议

11KB
130

Shellcolor

查找 ANSI 颜色代码困难且耗时 - 真实情况下,谁知道上面这些代码代表什么1

shellcolor 提供了一种在 CLI 脚本中轻松设置文本样式的简单方法。它使用像 --bg--bold 这样的记忆性标志为文本提供样式。

获取 ASCII 输出

如果您需要查看与另一个程序兼容的 ASCII 输出,可以将它管道传输到另一个文件,并从那里复制。

shellcolor --bg red hello > hi.txt    

实验性格式支持

虽然应用样式很好,但最好能够在文本中混合样式。如果我们尝试以多种方式设置单个字符串的样式,我们可能会得到一些难看的文本,如下所示

echo "$(shellcolor --bg black --fg red "hello there,") $(shellcolor --fg green --bold "General") $(shellcolor --fg bright_white --underline Kenobi)"

为了使其更容易接近,有一个名为 --format 的标志,它将允许 BBCode 类似的语法。目前它相当原始(即,不擅长处理嵌套),但像这样的标志可以让您在不需要一系列子shell的情况下接近所需的结果。

shellcolor --format "[color=red]Hello there,[/color] [bold]General[/bold]"

手册页面

Translates CSS colors to ANSI escape sequences

USAGE:
    shellcolor [OPTIONS] <TEXT>

ARGS:
    <TEXT>    The text to display

OPTIONS:
        --bg <bg>      Set background color (e.g., red, green, blue, or 0-255 for 256-color mode)
        --blink        Set text to blink
        --bold         Set text to bold
        --fg <fg>      Set foreground (text) color (e.g., red, green, blue, or 0-255 for 256-color
                       mode)
        --format       Formats the text with a BBCode-like syntax. For example, "Hello
                       [color=red]World[/color]! This is a [bold]Bold[/bold] text."
    -h, --help         Print help information
        --hidden       Hide text (but it can be selected/copied)
        --reverse      Reverse background and foreground colors
        --underline    Set text to underline
    -V, --version      Print version information


1: 这是 "Hello",红色文本,加粗并带下划线。

依赖项

~4.5MB
~77K SLoC