Skip to content

/diff viewer shows only leaf filename in tab bar — ambiguous for lib.rs, mod.rs, etc. #2910

@wmmc88

Description

@wmmc88

Describe the feature or problem you'd like to solve

The /diff viewer's file navigator tab bar shows only the leaf filename (lib.rs, mod.rs) instead of the full or distinguishing path. In Rust projects (and other ecosystems with convention-based filenames), dozens of files share the same leaf name, making it impossible to tell which file is which.

Proposed solution

Show the full relative path — or at minimum a disambiguated path suffix — in the /diff file navigator tab bar.

Currently the tab label is the only file identifier, with no tooltip or secondary path display. If two changed files share a basename (e.g., crates/driver/src/lib.rs and crates/runtime/src/lib.rs), both tabs show lib.rs with no way to distinguish them.

Suggested approach: Show the full relative path in the tab label, or use VS Code-style automatic path disambiguation — when two tabs share a filename, append enough parent directory segments to distinguish them (e.g., driver/src/lib.rs vs runtime/src/lib.rs).

Example prompts or workflows

  1. Open a Rust workspace with multiple crates, make changes in two different lib.rs files, run /diff — both tabs show lib.rs, no way to know which is which.
  2. Same problem with mod.rs, main.rs, build.rs across crates in a workspace.

Additional context

This is especially painful in Rust where lib.rs, mod.rs, main.rs, and build.rs are convention-based names repeated across every crate in a workspace. Go (main.go), Python (__init__.py), and Java (Application.java) have similar patterns.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:terminal-renderingDisplay and rendering: flickering, scrolling, line wrapping, output formatting
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions