Skip to content

Repository files navigation

StickyScroll brings VS Code's Sticky Scroll to JetBrains IDEs — the current scope stays pinned at the top of the editor while you scroll.

StickyScroll

Version Rating Downloads Build

VS Code Sticky Scroll for JetBrains IDEs — see at a glance which class / method / scope you are scrolling through.

sticky-scroll-for-jetbrains-ide.mp4

Note: JetBrains now ships native Sticky Lines (2023.3+). This plugin was built as a proof-of-concept before that landed and is no longer actively maintained, but remains available for older IDE versions and for anyone who prefers its behavior.

Features

  • Pins the enclosing scopes (class, method, function, etc.) at the top of the editor
  • Click a pinned header to jump to its declaration
  • Configurable maximum number of pinned lines (Settings → Tools → StickyScroll)

Supported languages

Language Status
Java ✅ Supported
Kotlin ✅ Supported
Python ✅ Supported
JSON ✅ Supported
XML / HTML and other XML-based ✅ Supported
Go, Rust, C/C++, C#, JavaScript, TypeScript, CSS, Dart, PHP, YAML, F# 🔲 Requested — contributions welcome (see open issues)

Jupyter notebooks (.ipynb) are explicitly excluded to avoid crashes (#3).

Installation

From the Marketplace (recommended): Settings / Preferences → Plugins → Marketplace → Search "StickyScroll" → Install

From disk: download the latest release ZIP from Releases or the JetBrains Marketplace, then Settings → Plugins → ⚙️ → Install Plugin from Disk.

Configuration

Settings → Tools → StickyScroll → Maximum lines — how many scopes to pin (0–10, default 10).

Known issues & roadmap

  • #5 Javadoc can dominate the pinned area
  • #14 Git blame gutter interaction
  • #21 Pinned fragment vs. editor header z-order
  • #23 Annotations shown before class header

See the open issues for the full list and language requests.

Development

./gradlew runIde          # run a sandboxed IDE with the plugin
./gradlew test            # unit tests
./gradlew buildPlugin     # build distribution ZIP
./gradlew runPluginVerifier

Requires JDK 17 and Gradle 8.5 (see gradle.properties).

Contributing

Contributions are welcome! Please read CONTRIBUTING.md and CODE_OF_CONDUCT.md first.

License

No explicit license file is present — please open an issue if you need one clarified.


Buy Me a Coffee

About

Implementation of vscode sticky code for Jetbrains IDE

Resources

Code of conduct

Contributing

Stars

38 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages