mirror of
https://github.com/Nanaloveyuki/BitLogger.git
synced 2026-05-30 15:42:25 +00:00
1.9 KiB
1.9 KiB
BitLogger Update Changes
version 0.4.0
Feature
- feat: add
ColorMode = Never | Auto | Alwaysfor text formatter color control - feat: add ANSI level, target, timestamp, and field rendering to
format_text(...) - feat: add
color_modetoTextFormatterandTextFormatterConfig - feat: support
text_formatter.color_modein JSON config parsing and serialization - feat: add inline style markup support in message text for ANSI text formatter output
- feat: support named color tags like
<red>...</>, style tags like<b>...</>, and hex tags like<#ff0000>...</>/<bg:#010203>...</> - feat: keep JSON formatter output unchanged and limit inline style parsing to text message rendering only
- feat: add
TextStyle,StyleTagRegistry,style_tag_registry(), anddefault_style_tag_registry()for reusable inline style tags - feat: add formatter-local
style_tags, global style tag registry helpers, builtin-tag override support, and alias reuse viadefine_alias(...)
Test
- test: cover ANSI text formatter rendering in
Alwaysmode - test: cover
Automode fallback behavior whenNO_COLORis present - test: cover config parsing and serialization for
color_mode - test: cover named inline color tags in ANSI mode
- test: cover plain mode tag stripping, nested tags, hex tags, and unknown-tag fallback behavior
- test: cover custom tags, builtin-tag override, formatter-vs-global priority, global registry fallback, and alias reuse
Example
- docs: add
color_modeusage examples to formatter documentation
Notes
Autocurrently uses a conservative rule: ifNO_COLORexists, ANSI is disabled; otherwise ANSI is enabled- inline style markup currently supports short close
</>only - unknown or invalid inline tags currently fall back to plain text and do not raise formatter errors
- formatter-local tag lookup currently takes precedence over global tag lookup, and global lookup takes precedence over builtin tags