#ansi-term #ansi #ansi-colors #escaping #terminal #terminal-colors

app ansi-escape-sequences-cli

一个名为"ansi"的CLI工具,可快速获取ANSI转义序列。支持最基本的,如颜色和样式,如粗体或斜体。

4个版本

0.1.4 2021年5月2日
0.1.2 2021年5月2日
0.1.1 2021年5月2日
0.1.0 2021年5月2日

#10 in #escape

每月31次下载

MIT 许可证

24KB
300

'ansi' - 快速获取ANSI转义代码的CLI工具

这个名为 ansi-escape-sequences-cli 的Rust项目提供了一个名为 ansi 的可执行文件,可在终端上轻松为输出着色/设置样式。

安装

$ cargo install ansi-escape-sequences-cli (二进制文件只是称为 ansi!)

它返回的内容(您可以复制并粘贴值!)

说明

  1. 以"纯字符"形式返回序列(用于复制和粘贴),即ESC代码被转义
  2. 相同,但在字节级别上查看
  3. 直接返回ESC代码,未转义(较难复制粘贴) 输出外观

使用示例1:在终端中

$echo"$(ansibg-purple)Hello World$(ansireset)$(ansired)$(ansibold)$(ansiunderline)红色警告$(ansireset)"

Colorful example of terminal output

使用示例2:在bash脚本中的多次使用

test.sh

# with "-e" we can prevent unnecessary ASCII-escaping of the "ESC" symbol
# otherwise it can happen that your shell script outputs 
# "Foo=\e[31mbar" instead of the colored/styled output you wanted
reset=$(ansi -e reset)
red=$(ansi -e red)
echo "Foo=${red}bar"
echo "Bar=${reset}foo"

zsh自动完成文件

res/zsh-completion/_ansi 是一个完成文件。例如,将其安装到 /usr/local/share/zsh/site-functions/

它与 tput 有何不同?

它更简单,您可以使用颜色名称,如 greenred。在 tput 中,您需要知道颜色索引,如这里: https://unix.stackexchange.com/questions/269077/tput-setaf-color-table-how-to-determine-color-codes

选项/参数

彩色帮助页面图片,下面是文本版本 “帮助”页面的1:1副本

ANSI-ESCAPE-SEQUENCES-CLI ('ansi') @ version 0.1.1
Made by Philipp Schuster <[email protected]>
See - https://crates.io/crates/ansi-escape-sequences-cli or
      https://github.com/phip1611/ansi-escape-sequences-cli
----------------------------------------------------
SYNOPSIS:
 ansi red|green|bold|strike|bg-cyan|... 
      [-n|--new-line] [-e|--no-escape] [-h|--help]
      [-s|--escape-style bash|unicode|unicode-rust|hex]
PARAMETERS:
  -n: add new line character to output (default: false)
  -e: don't escape 'ESC'-symbol, i.e. return the real ASCII value of `ESC` instead of `\e`
  -s: only useful if `-e` is NOT provided: style of the `ESC`-character-escaping
COMMANDS:
  For a full list visit: https://crates.io/crates/ansi-escape-sequences-cli
  The most basic ones are all supported. For example:
    reset
    black
    bg-black
    red
    bg-red
    green
    bg-green
    yellow
    bg-yellow
    blue
    bg-blue
    purple
    bg-purple
    cyan
    bg-cyan
    white
    bg-white
    normal
    bold
    dimmed
    italic
    underline
    blink
    hidden (hidden)
    strike | strikethrough
ESCAPE STYLES
  bash:         Bash (and many other tools) support `\e` as escaped version of `ESC` code
  hex:          Many tools allow hex values in the following notation: `\x1b`, i.e. an escaped version of `ESC` code.
  unicode     : Many tools allow unicode values in the following notation: `\u001b`, i.e. an escaped version of `ESC` code.
  unicode-rust: Rust uses unicode in the following form: `\u{1b}`, i.e. an escaped version of `ESC` code.

常见问题/故障排除

红色不是红色,蓝色不是蓝色

您的终端应用程序可能使用了不遵循ANSI转义序列和对应颜色规范的主题。例如,请参阅https://handwiki.org/wiki/ANSI_escape_code#Colors。在这些情况下,此实用程序无法阻止“非标准”主题导致的“错误颜色”。

依赖项

~240KB