Lumesh fmt模块

wiki libs

Lumesh 文本格式化模块使用文档

模块路径text
功能说明:提供文本样式控制、ANSI转义序列处理、字符串格式化等功能。支持链式调用:

fmt.bold(fmt.red "Error")  # 红色加粗文本

功能分类及详细说明

一、ANSI转义序列处理
  1. fmt.strip
    功能:移除字符串中的所有ANSI转义序列
    参数input: string
    返回值:纯净文本内容
    示例

    fmt.strip "\x1b[31mHello\x1b[0m"  # => "Hello"

二、文本样式控制
  1. 基础样式

    函数 效果 ANSI序列
    fmt.bold 加粗 \x1b[1m
    fmt.faint 弱化 \x1b[2m
    fmt.italics 斜体 \x1b[3m
    fmt.underline 下划线 \x1b[4m
    fmt.blink 闪烁 \x1b[5m
    fmt.invert 反色 \x1b[7m
    fmt.strike 删除线 \x1b[9m

    通用参数input: string
    示例

    fmt.underline "Important"  # 带下划线文本
  2. 标准颜色

    函数 颜色 ANSI序列
    fmt.black 黑色 \x1b[90m
    fmt.red 红色 \x1b[91m
    fmt.green 绿色 \x1b[92m
    fmt.yellow 黄色 \x1b[93m
    fmt.blue 蓝色 \x1b[94m
    fmt.magenta 洋红 \x1b[95m
    fmt.cyan 青色 \x1b[96m
    fmt.white 白色 \x1b[97m
  3. 深色模式

    示例

    fmt.dark_red "Warning"  # 深红色文本
    函数 颜色 ANSI序列
    fmt.dark_black 深黑 \x1b[30m
    fmt.dark_red 深红 \x1b[31m

三、字符串格式化
  1. fmt.wrap
    功能:按指定列宽自动换行
    参数

    • columns: integer (每行最大字符数)
    • input: string
      返回值:换行后的文本
      示例
    fmt.wrap 20 "Long text that needs wrapping"
  2. fmt.href
    功能:创建可点击的超链接
    参数

    • url: string
    • text: string
      返回值:带ANSI序列的超链接
      示例
    fmt.href "https://example.com" "Click Here"
  3. 文本对齐

    函数 参数 功能
    fmt.pad_start length, [pad_char], input 左侧填充字符
    fmt.pad_end length, [pad_char], input 右侧填充字符
    fmt.center length, [pad_char], input 居中填充

    示例

    fmt.pad_start 10 "0" "123"   # => "0000000123"
    fmt.center 10 "Title" # => " Title "
  4. fmt.format
    功能:模板化字符串(类似printf
    参数

    • template: string (含{}占位符)
    • arg1, arg2, ... (替换参数)
      返回值:格式化后的字符串
      规则
    • 按顺序替换{}占位符
    • 参数数量必须匹配占位符数量
      示例
    fmt.format "{} + {} = {}" 2 3 5  # => "2 + 3 = 5"

组合使用示例

fmt.format "{}: {}" \
fmt.bold(fmt.red "ALERT") \
(fmt.wrap 50 "Critical system failure detected. Immediate action required.")