✨ Show Code Structure when Scrolling (aka Sticky Headers)
@lassevonpfeil is already working on this.
Since Aug 21, 2025.
Assessment
This issue has not been assessed yet.
Description
Description
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.
- https://twitter.com/a_grebenyuk/status/1534359760308424711?s=21&t=Ok1RPHZ0s8iMU6Bf3HYJyA
- https://learn.microsoft.com/en-us/visualstudio/ide/editor-sticky-scroll?view=vs-2022
Screenshots
https://github.com/user-attachments/assets/36920923-bfd8-45f1-a63f-9b7873f4de6e
- Dominant language
- Swift
- Stars
- 720
- Forks
- 162
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from CodeEditApp/CodeEditSourceEditor
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
CodeEditApp/CodeEditSourceEditor#377 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
CodeEditApp/CodeEditSourceEditor#376 · 1 comment ·
-
Difficulty 1/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 3/5 1-2 days Newbie friendliness 68/100
CodeEditApp/CodeEditSourceEditor#378 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 32/100
All issues in CodeEditApp/CodeEditSourceEditor
Similar issues
-
area:dictation documentation P2
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
uttrflow/uttrflow-swift#1180 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
OneBusAway/onebusaway-ios#1451 ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
type: docs
Difficulty 1/5 Under an hour Newbie friendliness 95/100
googleapis/google-cloud-swift#971 ·