Skip to content

Commit 30de975

Browse files
committed
Version bump and docs update
1 parent cb2555d commit 30de975

5 files changed

Lines changed: 28 additions & 2 deletions

File tree

README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,14 @@
4747

4848
## 🆕 Recent Updates
4949

50+
### v2.2.22 - Powerline flex mode, dim styling, safer config, and polish
51+
52+
![Powerline Flex Mode](https://raw.githubusercontent.com/sirmalloc/ccstatusline/main/screenshots/powerline-flex.png)
53+
54+
- **⚡ Powerline flex mode** - Flex separators now work in Powerline mode, letting Powerline status lines right-align content or absorb available width.
55+
- **🌗 Per-widget dim styling** - The color editor can dim an entire widget or only parenthesized text, with reset and clear-all actions covering dim state.
56+
- **🧯 Safer settings recovery** - Invalid `settings.json` files are left untouched, defaults render in memory, and the status line shows an invalid-config warning.
57+
5058
### v2.2.21 - Cache widgets, compaction details, extra usage currency, and package fixes
5159

5260
- **🔣 Custom widget glyphs** - Git and JJ symbol widgets can override or suppress their built-in glyphs from the TUI.

docs/DEVELOPMENT.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ bun run docs
5757

5858
If you use a custom Claude config location, set `CLAUDE_CONFIG_DIR` and ccstatusline will read/write that path instead of `~/.claude`.
5959

60+
Settings saves are atomic and preserve symlinked `settings.json` files by writing through the resolved target. Invalid or unreadable settings are never overwritten during load; `loadSettings()` returns in-memory defaults, records `getConfigLoadError()`, and renderer paths surface that state with an invalid-config warning badge.
61+
6062
Usage-fetch tests spawn subprocess probes. Keep those probes sandboxed by setting `HOME`, `USERPROFILE`, `CLAUDE_CONFIG_DIR`, and proxy variables explicitly so tests cannot read or write a developer's live ccstatusline usage cache.
6163

6264
## Build Notes

docs/USAGE.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ bun run example
5252

5353
- **Current Working Dir** / **Terminal Width** / **Memory Usage** - Show the current working directory, detected terminal width, and system memory usage.
5454
- **Custom Text** / **Custom Symbol** / **Custom Command** / **Link** - Add user-defined text, a single symbol or emoji, custom command output, or a clickable OSC 8 hyperlink.
55-
- **Separator** / **Flex Separator** - Add a manual divider or a width-filling flexible spacer (available when Powerline mode is off).
55+
- **Separator** / **Flex Separator** - Add a manual divider or a width-filling flexible spacer. Manual separators are disabled in Powerline mode, but flex separators still work there as layout spacers.
5656

5757
## Terminal Width Options
5858

@@ -61,6 +61,8 @@ These settings affect where long lines are truncated, and where right-alignment
6161
- **Full width minus 40** - Reserves 40 characters for auto-compact message to prevent wrapping (default)
6262
- **Full width until compact** - Dynamically switches between full width and minus 40 based on context percentage threshold (configurable, default 60%)
6363

64+
Flex separators expand against the detected width in both regular and Powerline rendering. If width detection is unavailable, they render like normal separators until a terminal width is available.
65+
6466
If ccstatusline cannot detect your terminal width, set `CCSTATUSLINE_WIDTH` to a positive integer to override probing:
6567

6668
```bash
@@ -106,6 +108,16 @@ Configure global formatting preferences that apply to all widgets:
106108
107109
> ⚠️ **VSCode Users:** If colors appear incorrect in the VSCode integrated terminal, the "Terminal › Integrated: Minimum Contrast Ratio" (`terminal.integrated.minimumContrastRatio`) setting is forcing a minimum contrast between foreground and background colors. You can adjust this setting to 1 to disable the contrast enforcement, or use a standalone terminal for accurate colors.
108110
111+
## Widget Styling
112+
113+
The color editor can adjust foreground color, background color, bold, dim, and gradients per widget:
114+
115+
- Use `` / `` to cycle the selected foreground or background color.
116+
- Press `f` to switch between foreground and background editing.
117+
- Press `b` to toggle bold.
118+
- Press `d` to cycle dim styling: off → whole widget → parenthesized text only → off.
119+
- Press `r` to reset styling on the selected widget, or `c` to clear styling on every widget in the line.
120+
109121
## Gradient Colors
110122

111123
A foreground color can be a multi-stop **gradient** instead of a solid. Colors interpolate in OKLab for perceptually even blends. A gradient value takes one of three forms, all prefixed `gradient:`:
@@ -125,6 +137,10 @@ Gradients self-degrade where they can't render: at Basic or No Color levels, gra
125137

126138
When ccstatusline is installed in Claude Code, the main menu includes **Configure Status Line**. Claude Code versions >=2.1.97 support `statusLine.refreshInterval`; ccstatusline can set it to `1-60` seconds, defaults fresh supported installs to `10` seconds, and removes the setting when the input is left empty.
127139

140+
## Settings Recovery
141+
142+
If `settings.json` is unreadable or invalid, ccstatusline leaves the file unchanged, renders with built-in defaults for that run, and prepends an invalid-config warning badge to the status line. Fix the JSON or open the TUI and save intentionally to replace it.
143+
128144
## Block Timer Widget
129145

130146
The Block Timer widget helps you track your progress through Claude Code's 5-hour conversation blocks:

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "ccstatusline",
3-
"version": "2.2.21",
3+
"version": "2.2.22",
44
"bugs": {
55
"url": "https://github.com/sirmalloc/ccstatusline/issues"
66
},

screenshots/powerline-flex.png

28.7 KB
Loading

0 commit comments

Comments
 (0)