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
{{ message }}
Repository navigation
✨ Show Code Structure when Scrolling (aka Sticky Headers) #42
When working in long source files, it's easy to lose track of which class, function, or structural block you're currently in while scrolling. A helpful enhancement would be to show a floating indicator or sticky header that displays the current code structure as you scroll through the file.
Proposed Behavior
While scrolling, a temporary overlay or sticky header appears, showing the current structural context (e.g., class, function, namespace).
The indicator updates in real-time based on scroll position.
The indicator fades out after scrolling stops or once the user re-engages with the editor.
Implementation Notes
We can leverage the existing Tree-sitter integration to identify and display the current structure based on the syntax tree.
This could tie into the same symbol parsing used for outline views or breadcrumbs, minimizing duplication.
Benefits
Improves orientation when navigating large files.
Reduces mental overhead by keeping context visible.
Useful for both reading and editing code, especially in deeply nested files.
Additional Context
This behavior would be especially valuable during code review, debugging, or when working in unfamiliar codebases. It could be made optional in preferences.
Activity
[-]Sticky Headers from Xcode 14[/-][+]✨ Sticky Headers from Xcode 14[/+][-]✨ Sticky Headers from Xcode 14[/-][+]✨ Show Code Structure when Scrolling (aka Sticky Headers)[/+]austincondiff commentedon Apr 19, 2025
I've updated the issue description for increased clarity.
lassevonpfeil commentedon Aug 21, 2025
Is the issue still free to work on? I could give it a shot as it would be my first contribution to this project.
0xWDG commentedon Aug 21, 2025
Hi @lassevonpfeil I've assigned you to this issue, you can work on it, thanks for supporting the project!