Merged
Conversation
Remove the diff-added green background from successful tool blocks. Tool blocks now use a single neutral theme-derived background for both pending and completed states. Only errors get the diff-removed red. - Rename tool-block-pending -> tool-block (base face) - Remove tool-block-success (was inheriting diff-added) - Rename update-tool-pending-face -> update-tool-block-face - Success now keeps the same neutral background as pending
Tool headers now use split face propertization for visual distinction: - Tool name (edit, read, $) in bold+italic via pi-coding-agent-tool-name - Arguments (path, command) in italic via pi-coding-agent-tool-command Uses font-lock-face property so faces survive gfm-mode refontification. Tests call font-lock-ensure to verify faces persist across font-lock cycles.
- Fix stale comment: 'pending-tool-block' -> 'tool-block'
- Remove history from tool-block docstring ('Used during execution
and after successful completion' is not useful to readers)
- Rename tool-header-text -> tool-header (returns propertized string,
not plain text)
- Consolidate two near-identical split-face tests into one that
covers bash, read/write/edit, and unknown tool names
- Separate font-lock survival test into its own focused test
dnouri
added a commit
that referenced
this pull request
Feb 25, 2026
* refactor: Replace tool-block-pending/success with single tool-block face
Remove the diff-added green background from successful tool blocks.
Tool blocks now use a single neutral theme-derived background for both
pending and completed states. Only errors get the diff-removed red.
- Rename tool-block-pending -> tool-block (base face)
- Remove tool-block-success (was inheriting diff-added)
- Rename update-tool-pending-face -> update-tool-block-face
- Success now keeps the same neutral background as pending
* feat: Italic tool headers with bold+italic tool name
Tool headers now use split face propertization for visual distinction:
- Tool name (edit, read, $) in bold+italic via pi-coding-agent-tool-name
- Arguments (path, command) in italic via pi-coding-agent-tool-command
Uses font-lock-face property so faces survive gfm-mode refontification.
Tests call font-lock-ensure to verify faces persist across font-lock cycles.
* refactor: Clean up tool header naming, docs, and tests
- Fix stale comment: 'pending-tool-block' -> 'tool-block'
- Remove history from tool-block docstring ('Used during execution
and after successful completion' is not useful to readers)
- Rename tool-header-text -> tool-header (returns propertized string,
not plain text)
- Consolidate two near-identical split-face tests into one that
covers bash, read/write/edit, and unknown tool names
- Separate font-lock survival test into its own focused test
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
Successful tool blocks no longer flash bright green (
diff-added). They use aneutral theme-derived blue tint — the same subtle background used during
execution. Error blocks keep their red
diff-removedface.Tool headers get split styling: the tool name (
$,edit,read, …) isbold italic, arguments are italic. Uses
font-lock-faceso faces survivegfm-mode refontification.
Faces
tool-block-pending(blue tint)tool-block(blue tint)tool-block-success(diff-added)tool-block)tool-block-error(diff-removed)tool-name(bold)tool-name(bold italic)tool-command(plain)tool-command(italic)Header styling
tool-headernow returns a propertized string with split faces:Diff line overlays (
+/-lines inside edit output) are unchanged.Refs #97