Insert blank writing space anywhere on a Supernote page — just tap a line and slide everything above or below it up or down.
Ever filled a page by hand and then needed one more line in the middle? On paper you're stuck. On a Supernote, Make Space gives you room: tap where you need space, and everything above or below it slides (or back) so you can keep writing.
Inspired by OneNote's “Insert extra writing space”, built as a native Supernote plugin.
Prefer full quality? Watch the MP4. Shows the below flow — above works the same, mirrored.
You're writing notes. Two lines are too close together and you need to squeeze something in between. Instead of erasing and rewriting:
- Open Make Space Below (or Make Space Above) from the toolbar, depending on which side of your tap you want to select.
- A light grey frame appears around the screen — that's your cue.
- Tap the spot where you want room.
- Everything on that side of the tap gets selected — now drag it up or down: open space, or close a gap.
That's it. The move is the Supernote's own selection drag, so undo works normally.
┌─────────────────────────────┐
│ line written above │
│ │
│ ─ ─ ─ ─ tap here ─ ─ ─ ─ ─ │ ← tap
│ ↕ drag up or down │
│ (add / remove space) │
│ line written below │
└─────────────────────────────┘
First, get the plugin file. It is not in this repository — the build/ folder is git-ignored, so the .snplg is never committed. You have two options:
- Download
sn_make_space.snplgfrom the latest Release, or - Build it yourself (see Build from source).
Then install it:
- Copy the file to your device:
(or just copy it into the
adb push sn_make_space.snplg /storage/emulated/0/MyStyle/
MyStylefolder over USB) - On the Supernote: Settings → Apps → Plugins → Install and pick
sn_make_space. - Open a note, tap Make Space Below or Make Space Above in the toolbar, and go.
Works in the NOTE app.
Requirements: Node 18+, and zip + jq (preinstalled on most systems).
npm ci # install dependencies
bash ./buildPlugin.sh # → build/outputs/sn_make_space.snplgThe script bundles the JavaScript and packages it into a .snplg. No Android Studio needed — this plugin is pure JS.
Built with React Native 0.79.2 + the sn-plugin-lib Supernote SDK.
npm run typecheck # TypeScript
npm run lint # ESLint
npm run format # Prettier check
npm test # Jest- Pre-commit runs lint + format + typecheck; pre-push runs the tests (via Husky).
- CI runs the full gate on every PR; releases are published automatically when you push a
v*tag. - Bilingual UI out of the box: English 🇬🇧 + Italian 🇮🇹.
| Path | What's inside |
|---|---|
index.js |
Plugin entry — registers the two toolbar buttons |
App.tsx |
The overlay: grey frame, tap handling, lasso + close |
src/makeSpace.ts |
Pure tap-to-rectangle math (unit-tested) |
src/sdk.ts |
Typed wrapper over sn-plugin-lib |
src/i18n/ |
Localization (en + it) |
__tests__/ |
Jest tests |
The Supernote SDK has no “move selection” command, so Make Space leans on what the device already does well: it turns your tap into a native lasso of everything above or below the line, then hands control back so you drag it yourself. Simple, reliable, and undoable.
The full one-gesture auto-move (drag once, everything shifts automatically) is the next milestone — see the roadmap.
Tracked as GitHub issues:
- v1 refinements — layer toggle, landscape support, on-screen cut-line preview, and more.
- v2 — one-gesture auto-move — drag once and the page reflows automatically, with new-page overflow.
Browse the open issues to see what's planned.
React Native · sn-plugin-lib · Supernote docs
