You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Halfway down a long method or class, I can't see what I'm inside of.
The vision's user spends most of the day reading code they didn't write, often in a narrow terminal over SSH. Once a method's signature scrolls off the top, there's nothing on screen that says which method, or which class, the lines in front of you belong to. You scroll back up to find out and lose your place, or open Go to symbol (gs) just to read where you are. It gets worse in exactly the files you're trying to understand: long classes, nested types, and big Markdown docs where the heading you're under scrolled away pages ago. Jumping in from Find results, blame or a diff lands you mid-file with no context at all.
Evidence
JetBrains added sticky lines in IntelliJ IDEA 2024.1, on by default, "to simplify working with large files and exploring new codebases": the enclosing class and method signatures stay pinned at the top of the editor.
VS Code has Sticky Scroll (View › Appearance › Sticky Scroll), which pins class, function and Markdown heading lines the same way.
Terminal editors: Neovim users install nvim-treesitter-context (3.2k stars) for this. Helix users asked for it (#2740, #10672, and a statusline variant in discussion #7813), and a 140-comment sticky context PR closed unmerged. People want it, and it's harder than it looks.
Vision, Who it's for: "spend most of their time navigating code bases, reviewing PRs and trying to understand existing/new code". Knowing where you are is the first step in understanding code.
Familiar: VS Code and JetBrains users both have this on by default now, and they'll notice it's missing.
Terminal-honest: a narrow terminal shows fewer lines, so the signature scrolls away sooner, which makes the need bigger in a terminal than in a GUI. Sticky rows cost screen height, though, and a status-bar or tab-title readout would cost none. That trade-off is for the pitch.
Nothing is added to the binary. It reuses the symbol scan that's already there.
Opportunity
Halfway down a long method or class, I can't see what I'm inside of.
The vision's user spends most of the day reading code they didn't write, often in a narrow terminal over SSH. Once a method's signature scrolls off the top, there's nothing on screen that says which method, or which class, the lines in front of you belong to. You scroll back up to find out and lose your place, or open Go to symbol (
gs) just to read where you are. It gets worse in exactly the files you're trying to understand: long classes, nested types, and big Markdown docs where the heading you're under scrolled away pages ago. Jumping in from Find results, blame or a diff lands you mid-file with no context at all.Evidence
Why it fits