Skip to content

Searching in the Blame window and compare #429

@agallero

Description

@agallero

Problem description

Imagine I do a blame of a large file. I am looking specifically for the changes in the method "potato()", so inside the blame I fo ctrl-F and type potato.

Instead of searching for the code in the blame window, a global "Find" windows appears, replacing the blame window and making me lose all status. If I press esc to go back, I go back to the commit page, not to wherever I was in the blame.

Something similar happens when staging a big file with many changes. I might want to search for a specific change in the file, but if I press ctrl-F, a new global find window appears.

Preferred solution

I believe a lot of the problems here are because sublime merge is trying too hard not to use modal dialogs. Sometimes a modal dialog with is associated context switch is the best solution, because it is what we want to do: switch context from the main window to a specific task: I am now reviewing this file, or I am now blaming this file.

I would like to see the blame dialog to be modal: Once I am blaming the file, ctrl-F searches inside the file I am looking at, etc.

For the main window and the panel at the right where you can see the diffs, I would like a "open in external diff" button, where the external diff might be sublime merge itself, but as a separate window. So I can search, modify, and do whatever I want inside the diff window.

Alternatives

If adding some modality is out of the question, at least I would like a shortcut for finding inside the text editor, whenever the cursor is inside a text editor. If I have the cursor inside a diff view Ctrl-F should search for the text inside the text view, not call the global search.
Another alternative would be to have a different shortcut like shift-ctrl-F for searching inside textboxes, but I believe this is less discoverable.

Maybe some "search" textbox like here:
search

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions