转义构建器 —— 视觉选色 + 风格切换,一键复制字节
解码器的反向工具:选择前景色、背景色和任意 SGR 属性组合,实时预览渲染效果,并以你偏好的语言字符串字面量形式复制转义序列。全程在浏览器中运行。
构建器控件
实时预览
Hello, world!
生成的 CSI 参数
CSI 1;31 m输出形式
代码片段
\e[1;31mHello, world!\e[0m全部 30 种语言的字符串字面形式
上方构建的同一 SGR 字节序列,以每种语言地道的字符串字面语法呈现。点击语言名跳转到对应的 /use/<lang> 助手页面,那里有库列表与更丰富的模式。每一行都与上方控件实时联动 —— 修改前景 / 背景 / 样式或文本输入,整个表格会重新渲染。
30 / 30
| 语言 | 字面形式 | 打印它的一行命令 | 复制 |
|---|---|---|---|
| Bash | \e[1;31mHello, world!\e[0m | printf '\e[1;31mHello, world!\e[0m\n' | |
| C | \x1b[1;31mHello, world!\x1b[0m | #include <stdio.h>
int main(void){printf("\x1b[1;31mHello, world!\x1b[0m\n");} | |
| Clojure | \u001b[1;31mHello, world!\u001b[0m | (println "\u001b[1;31mHello, world!\u001b[0m") | |
| Crystal | \e[1;31mHello, world!\e[0m | puts "\e[1;31mHello, world!\e[0m" | |
| C# | \u001b[1;31mHello, world!\u001b[0m | Console.WriteLine("\u001b[1;31mHello, world!\u001b[0m"); | |
| Dart | \x1b[1;31mHello, world!\x1b[0m | print('\x1b[1;31mHello, world!\x1b[0m'); | |
| Elixir | \e[1;31mHello, world!\e[0m | IO.puts("\e[1;31mHello, world!\e[0m") | |
| Erlang | \e[1;31mHello, world!\e[0m | io:format("\e[1;31mHello, world!\e[0m~n"). | |
| F# | \u001b[1;31mHello, world!\u001b[0m | printfn "\u001b[1;31mHello, world!\u001b[0m" | |
| Go | \x1b[1;31mHello, world!\x1b[0m | package main
import "fmt"
func main(){fmt.Println("\x1b[1;31mHello, world!\x1b[0m")} | |
| Haskell | \ESC[1;31mHello, world!\ESC[0m | main = putStrLn "\ESC[1;31mHello, world!\ESC[0m" | |
| Java | \u001b[1;31mHello, world!\u001b[0m | System.out.println("\u001b[1;31mHello, world!\u001b[0m"); | |
| JavaScript | \x1b[1;31mHello, world!\x1b[0m | console.log("\x1b[1;31mHello, world!\x1b[0m"); | |
| Julia | \e[1;31mHello, world!\e[0m | println("\e[1;31mHello, world!\e[0m") | |
| Kotlin | \u001b[1;31mHello, world!\u001b[0m | println("\u001b[1;31mHello, world!\u001b[0m") | |
| Lua | \27[1;31mHello, world!\27[0m | print("\27[1;31mHello, world!\27[0m") | |
| Nim | \e[1;31mHello, world!\e[0m | echo "\e[1;31mHello, world!\e[0m" | |
| Node.js | \x1b[1;31mHello, world!\x1b[0m | process.stdout.write("\x1b[1;31mHello, world!\x1b[0m\n"); | |
| OCaml | \027[1;31mHello, world!\027[0m | print_endline "\027[1;31mHello, world!\027[0m" | |
| Perl | \e[1;31mHello, world!\e[0m | print "\e[1;31mHello, world!\e[0m\n"; | |
| PHP | \033[1;31mHello, world!\033[0m | echo "\033[1;31mHello, world!\033[0m\n"; | |
| PowerShell | `e[1;31mHello, world!`e[0m | Write-Host "`e[1;31mHello, world!`e[0m" | |
| Python | \x1b[1;31mHello, world!\x1b[0m | print("\x1b[1;31mHello, world!\x1b[0m") | |
| R | \033[1;31mHello, world!\033[0m | cat("\033[1;31mHello, world!\033[0m\n") | |
| Ruby | \e[1;31mHello, world!\e[0m | puts "\e[1;31mHello, world!\e[0m" | |
| Rust | \x1b[1;31mHello, world!\x1b[0m | fn main(){println!("\x1b[1;31mHello, world!\x1b[0m");} | |
| Scala | \u001B[1;31mHello, world!\u001B[0m | println("\u001B[1;31mHello, world!\u001B[0m") | |
| Swift | \u{1B}[1;31mHello, world!\u{1B}[0m | print("\u{1B}[1;31mHello, world!\u{1B}[0m") | |
| TypeScript | \x1b[1;31mHello, world!\x1b[0m | console.log("\x1b[1;31mHello, world!\x1b[0m"); | |
| Zig | \x1b[1;31mHello, world!\x1b[0m | const std = @import("std");
pub fn main()!void{try std.io.getStdOut().writer().print("\x1b[1;31mHello, world!\x1b[0m\n", .{});} |
说明
输出使用 CSI(控制序列引导符)+ SGR(选择图形渲染)。建议附加末尾重置(\e[0m),避免样式影响后续输出。真彩色需终端声明支持 24 位色(多数现代终端都支持 —— 参见终端矩阵);256 色自 2000 年代起在 xterm 家族终端中已普遍支持。亮色(90–97 / 100–107)等价于 256 色调色板中的索引 8–15。
相关序列页
构建器发出的每一个字节都有对应的文档页,可查看字节形式、规范出处与逐终端支持:
- sgr-resetSGR 0 — 重置 / 恢复默认
- sgr-boldSGR 1 — 加粗 / 高亮
- sgr-italicSGR 3 — 斜体
- sgr-underlineSGR 4 — 下划线
- sgr-fg-basicSGR 30–37 — 前景色(8 种基础色)
- sgr-bg-basicSGR 40–47 — 背景色(8 种基础色)
- sgr-fg-brightSGR 90–97 — 高亮前景色
- sgr-bg-brightSGR 100–107 — 高亮背景色
- sgr-fg-256SGR 38;5;n — 256 色前景
- sgr-bg-256SGR 48;5;n — 256 色背景
- sgr-fg-truecolorSGR 38;2;R;G;B — 24 位真彩色前景
- sgr-bg-truecolorSGR 48;2;R;G;B — 24 位真彩色背景