Scrolling

by omeyenburg
5
4
3
2
1
Score: 55/100

Description

The Scrolling plugin enhances navigation in your vault with smart cursor tracking and smooth scrolling animations. It automatically keeps your cursor within a comfortable zone while editing, similar to Vim's scrolloff behavior, and supports page jumping to reduce unnecessary scrolling. The plugin also offers customizable scrollbar appearance and experimental options to fine-tune mouse and touchpad scrolling speed, smoothness, and friction.

Reviews

No reviews yet.

Stats

28
stars
8,491
downloads
3
forks
458
days
5
days
5
days
4
total PRs
0
open PRs
1
closed PRs
3
merged PRs
23
total issues
4
open issues
19
closed issues
147
commits

Latest Version

5 days ago

Changelog

Features

  • Update settings structure
  • Lots of small changes

Fixes

  • Centered cursor: fix invoking upon cursor movement on mobile

README file from

Github

Scrolling

A plugin to improve and extend scrolling and navigation in Obsidian with quality-of-life features.

Quick overview:

  • Centered Cursor: Keep cursor centered while editing
  • Remember Scroll Position: Auto-save and restore scroll/cursor position
  • Horizontal Scrolling
    • Code Wrapping: Prevent code wrapping
    • MathJax: Sideways crolling of long inline MathJax
    • File Tree: Sideways scrolling in the file tree
  • Scroll buttons & Shortcuts
    • Scroll buttons & Quick commands: Adds buttons for navigating to the top and bottom of the note
    • Shortcuts for Reading Mode: Vim-like navigation shortcuts in reading mode
  • Scrollbar appearance: Always hide or show scrollbars, or dynamically show during scroll
  • Line Length: Change maximum line width for readability

All features are optional and fully configurable in plugin settings.

Features

Centered Cursor

  • Automatically scrolls the view to keep the text cursor near the center while editing or navigating
  • Also known as 'typewriter mode', 'cursor surrounding lines' in VSCode or 'scrolloff' in Vim
  • Configurable trigger distance and animation smoothness
  • Works seamlessly with Markdown tables and Vim mode

Code Wrapping

  • Disable code wrapping and allow horizontal scrolling
  • Works in both source mode and preview mode

Remember Scroll Position

  • Saves your scroll or cursor position when closing a file
  • Restores the position when reopening the file later
  • Works for Markdown files, PDF files, and canvases

Horizontal Scrolling of Inline MathJax

  • Make inline MathJax expressions scrollable
  • This prevents long formulas from extending the viewport

Horizontal Scrolling in File Tree

  • Allow horizontal scrolling in the file tree to see long file names
  • Desktop only

Scrollbar Customization

  • Adjust visibility: always show, show while scrolling, or hide
  • Adjust scrollbar width (Linux only)

Line Length

  • Set the maximum line length as pixels, characters or percentage

Reading Mode Keybinds

Enable Vim-like keybinds in reading mode:

  • j - Scroll down one line
  • k - Scroll up one line
  • d - Scroll down half a page
  • u - Scroll up half a page
  • G - Jump to bottom
  • g - Jump to top

Installation

From Obsidian Community Plugins

  1. Open Settings → Community Plugins in Obsidian
  2. Click Browse and search for "Scrolling"
    Or open directly: obsidian://show-plugin?id=scrolling
  3. Click Install, then Enable
  4. Configure the plugin under Settings → Community Plugins → Scrolling

Manual Installation

# Navigate to your vault's plugin directory
cd /path/to/vault/.obsidian/plugins

# Clone the repository
git clone https://github.com/omeyenburg/obsidian-scrolling.git

# Install dependencies and build
cd obsidian-scrolling
npm install
npm run build

Then enable the plugin under Community Plugins in Obsidian.

Changelog

See Releases for version history.

Contributing

Contributions are welcome! Feel free to open an issue or submit a pull request. See CONTRIBUTING for further information.

Similar Projects

If you're interested in scrolling enhancements, you might also like:

License

MIT License. See LICENSE for details.

Similar Plugins

info
• Similar plugins are suggested based on the common tags between the plugins.
Remember File State
5 years ago by Ludovic Chabant
A plugin for Obsidian that remembers cursor position, selection, scrolling, and more for each file.
Hover Editor
5 years ago by NothingIsLost
Transform the Page Preview hover into a working editor instance
Scroll Offset
4 years ago by Lijyze
Scroll Offset for Obsidian
Teleprompter
3 years ago by Lumetrium
Plugin for Obsidian designed to seamlessly integrate teleprompter functionality into your note-taking workflow.
Continuous Mode
3 years ago by Michael Schrauzer
Displays all open notes in a tab group as if they were a continuous scrollable document (similar to Scrivener’s "Scrivenings mode"). Open all notes in Continuous Mode from a folder, search results, or links in a file or Dataview/query block; use arrow keys to navigate between notes; display notes in "Compact Mode" similar to Evernote or Bear; more.
Page Scroll
2 years ago by triski
Obsidian Page Up|Down|Top|Bottom
Vimrc Support
6 years ago by esm
A plugin for the Obsidian.md note-taking software
Typewriter Scroll
6 years ago by death_au
Typewriter Scroll Obsidian Plugin
Emoji Picker
2 years ago by Ali Faraji
An up-to-date Emoji Picker for obisian.md, using emoji-mart.
Format Automatically with Prettier
a year ago by Dylan Armstrong
Format with Prettier using built-in settings for Obsidian
Simple Tab Indent
a year ago by Thiago Frias
Scrolls To Nav Top
a year ago by mario
Simply scrolls to nav top
Drag To Scroll
a year ago by Constantine Sazonov
Adds drag-to-scroll functionality to Obsidian. Hold mouse button and drag - now you can scroll like on touch device!
Scroller
a year ago by René Coignard
Adds typewriter mode, unfocused text dimming and commands to quickly scroll to the top or bottom of note.
My Typewriter Line
10 months ago by dmo-code
Auto Math
6 months ago by Vladislav Sorokin
Auto-expand LaTeX math snippets in Obsidian — write equations faster.
Fix Tab Size
5 months ago by mnaoumov
Obsidian plugin that fixes tab size according to the settings.
Sync Embeds
5 months ago by uthvah
Transform static embeds into live synced blocks in Obsidian.