README file from
GithubObsidian Zone Scroll Zoom
简体中文 | English
An Obsidian plugin that scales the interface and font with keyboard shortcuts, where the zoom behavior adapts to your mouse position.

Features
- Shortcut Zoom: Use keyboard shortcuts to zoom in different areas (default: Ctrl + Scroll Wheel).
- Zone-Based Zooming:
- Mouse in Editor Area: Zooms the editor font size.
- Mouse in Non-Editor Area: Zooms the entire Obsidian interface (including sidebar, menus).
- Real-time Status Display: A clean OSD indicator appears at the top of the screen, showing the current scale/font size in real time.
- Customizable Settings: Adjust zoom precision in settings, modify shortcuts (supports Ctrl/Cmd, Shift, Alt). Personal settings are automatically saved to
data.json. - Multi-language Support: Supports Simplified Chinese and English. Switch languages in settings or follow Obsidian's system language.
- Reset Zoom Ratio: A button in the settings page to quickly restore default font size (16px) or interface scale (100%).
Why Use This Plugin?
Obsidian natively supports zooming the interface with Ctrl + = and Ctrl + -, but this is a global zoom — the editor and interface scale together, with no way to adjust font size independently.
This plugin lets you zoom where your mouse is — scale only the font in the editor area, and zoom the interface elsewhere. Just scroll, and it's done. Faster and more convenient.
Installation
Manual Installation (This plugin is not yet available in the Obsidian community plugin marketplace)
- Download
main.jsandmanifest.jsonfrom releases/latest. - Create an
obsidian-zone-scroll-zoomfolder inside.obsidian/plugins/, and placemain.jsandmanifest.jsoninto this folder. - Enable the plugin in Obsidian settings.
Internationalization
Language source files are located in locales/:
locales/en.jsonlocales/zh-CN.json
Use the following command to bundle these language files into main.js:
npm run build
To add a new language:
- Copy
locales/en.json, for example tolocales/ja.json. - Translate all values.
- Add the corresponding language option in
src/main.tsand runnpm run build.