git diff-name-list
built-in -17.0% Savings
77 Commands
-1145 Tokens saved
3 Tests
Install
Safety checks passed
Filter definition
# git/diff-name-list.toml — tree-structured output for --name-only / --name-status
# Delegated from git/diff via [[variant]] args_pattern.
# No `run` override — the original command runs as-is.
#
# This filter is only reachable via variant delegation — the command below
# uses a synthetic name that won't match any real invocation, preventing
# it from shadowing the parent during filter discovery.
command = "git diff-name-list"
description = "Tree-structured name-only / name-status diff output"
strip_ansi = true
# --name-status: "M\tsrc/foo.rs" (status + tab + path)
# --name-only: "src/foo.rs" (bare path)
# Group 1 captures optional status+tab; group 2 captures the path.
[tree]
pattern = '^([ACDMR]\t)?(.+)$'
passthrough_unmatched = true
min_files = 3
min_shared_depth = 1
style = "indent"
collapse_single_child = true
Examples
below min_files threshold passes through unchanged
~5 tokens → ~5 tokens
Raw output
src/lib.rs src/main.rs
Filtered output
src/lib.rs src/main.rs
name-only output gets tree treatment
~18 tokens → ~16 tokens
(11% saved)
Raw output
src/config/mod.rs src/config/types.rs src/config/variant.rs src/commands.rs
Filtered output
src/
config/
mod.rs
types.rs
variant.rs
commands.rs name-status output gets tree treatment
~20 tokens → ~18 tokens
(10% saved)
Raw output
M src/config/mod.rs A src/config/types.rs M src/config/variant.rs M src/commands.rs
Filtered output
src/
config/
M mod.rs
A types.rs
M variant.rs
M commands.rs Warning: Community filters are third-party code. Review the filter definition above before installing it in production environments.Browse all filters