Cursor-Smith

approved

by sadsnake1

Forge your cursor with the most advanced cursor engine there is! - This plugin has not been manually reviewed by Obsidian staff.

11 stars2,020 downloadsUpdated 20d agoMIT

Cursor-Smith

Intro

Most people never give their cursor a second thought, but I decided to change that. Cursor-Smith is more than just a tweaky-toy — it is the MOST advanced cursor engine ever created (maybe). It is designed for writers, users who need high-visibility accessibility options, and anyone who loves to customize theengs. Forge your cursor of choice!

Showcase

https://github.com/user-attachments/assets/30b013b3-d4f4-4ed7-8f34-b20b3525e12b

Features

  • Cursor styles — Box, Line, Underline.
  • Smooth movement — the cursor eases and glides between positions instead of jumping, with adjustable glide, catch-up speed, and an optional adaptive boost while typing fast.
  • Customizable blinking — control both how fast the cursor blinks and how the on/off time is balanced within each cycle, or turn blinking off entirely.
  • After effects — popping letters, a fading pixel trail, and motion smear for a more expressive, retro feel.
  • Appearance controls — separate colors for dark/light themes, adjustable thickness and opacity, glow, and MORE, MUCH-MUCH MORE.
  • Presets — save any cursor configuration as a named preset, load or edit it later, and cycle through all your presets with a single command.
  • Preset sharing — every preset gets a compact share code. Copy it, send it to a friend, and they can paste it straight into their own vault.
  • Vim mode — per-mode cursors for Normal, Insert, Visual, Replace, and Command, each fully configurable. The live mode indicator sits in the status bar vim-style (-- NORMAL --), tinted to match the active cursor color.

Installation

  1. Download main.js, styles.css, and manifest.json (or clone this repo).
  2. Create a folder named cursor-smith inside your vault's .obsidian/plugins/ directory.
  3. Copy the files into that folder.
  4. Reload Obsidian (or restart it), then enable Cursor-Smith under Settings → Community plugins.

Usage

Once enabled, the plugin activates automatically. You can:

  • Toggle it on/off anytime with the Toggle Cursor-Smith on/off command in the Command Palette (Ctrl/Cmd + P).
  • Cycle through all your saved presets with the Cycle preset command — assign it a hotkey in Settings → Hotkeys for quick switching. In CUA mode it cycles CUA presets; in Vim mode it cycles Vim presets.
  • Adjust every visual detail from Settings → Cursor-Smith.

Settings

The settings panel is organized into the following sections:

SectionWhat it controls
PresetsSave, load, edit, delete, and share cursor configurations.
Core ConfigurationEnable the plugin and pick a cursor style.
AppearanceThickness, colors, glow, opacity, and (Box style only) showing the letter inside the cursor.
BlinkingBlink speed, the on/off balance of each blink, and hiding the browser's native caret.
Smooth MovementEnable gliding motion and tune its speed, catch-up behavior, and typing-adaptive boost.
After EffectsPopping letters, pixel trail, and motion smear.
TorchSpotlight follow mode, size, color, and speed; environment darkness, glow, and flicker.

Presets

Cursor-Smith ships with six starter presets so you have something to work from right away.

PresetStyleVibe
Jell-OBoxSmooth smear and glide with a mint-green glow
Torch-CrtLineWarm amber line with CRT trail and torch spotlight
mr.BlueLineClean blinking blue line with smooth movement
FairyDustUnderlinePale yellow underline with pixel trail and energy beam
DarkMatterBoxBlue-purple box with CRT trail and Speed Demon sparks
old_JoeBoxUnderstated grey box, no frills

Saving a preset — dial in your cursor exactly how you want it, type a name in the Save current settings as preset field, and click Save. The name field stays filled while you tweak, so changing the cursor style or any other setting mid-way won't erase what you typed.

Editing a preset — click Edit on any preset row. This loads its settings and pre-fills its name in the save field. Adjust whatever you like, then hit Save to overwrite it.

Sharing a preset — each preset row shows a short share code next to its name. Click Copy to copy it, then send it to anyone. They paste it into the Import preset field and click Import — done.

Cycling presets — run Cursor-Smith: Cycle preset from the Command Palette (or bind it to a hotkey) to step through all your presets one by one. A small toast notification shows the name of the preset that just loaded.

Vim Mode

Switch to Vim using the CUA / Vim toggle at the top of the settings panel. Each of the five Vim modes gets its own fully independent cursor — style, color, blinking, motion effects, everything.

ModeWhen it applies
NormalThe default editing mode
InsertAfter pressing i, a, o, etc.
VisualAfter pressing v, V, or Ctrl-v
ReplaceAfter pressing R
CommandThe : / / prompt, plus the Command Palette, Quick Switcher, search boxes, and other interface fields

Use the tab row in Per-Mode Cursors to switch between modes — each inactive tab is tinted with that mode's own cursor color as a live preview of your setup.

Vim presets work the same as CUA presets: save your full five-mode setup under a name, load it later, share it with a code. The Cycle preset command automatically cycles Vim presets when you are in Vim mode.

Status bar

When Vim mode is active a -- MODE -- indicator appears on the left side of the status bar, styled after Vim's own showmode. Enable coloring in settings to tint the text with the active mode's cursor color.

Keybindings

Turn on Control Obsidian's Vim key bindings to let the plugin own that setting: switching to Vim mode forces Obsidian's native vim keybindings on, and switching to CUA forces them off. Turn it off if you manage that setting yourself.

Compatibility notes

  • Built for CodeMirror 6, the editor used in current versions of Obsidian.
  • If you use Vim keybindings, the native block cursor is hidden along with the regular caret.

Feedback

Found a bug or have an idea for a new effect? Open an issue!

Pricing

Cursor-Smith is 100% free. If you'd like to support the project and help me keep the updates coming, you're more than welcome to buy me a coffee. Your support means the world. Cheers!

Buy Me a Coffee

License

MIT

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.