# Obsidian Hover Editor makes the link preview an editable pane

> The obsidian-hover-editor plugin replaces Obsidian's Page Preview popover with a real editor instance that can be dragged, resized, pinned and switched between editing and reading mode. It relies on Obsidian internals that the official API does not expose, which the author flags as the main risk of adopting it.

**nothingislost/obsidian-hover-editor** — Transform the Page Preview hover into a working editor instance

- Repository: https://github.com/nothingislost/obsidian-hover-editor
- Stars: 790 · Forks: 43
- Language: TypeScript
- License: MIT
- Published: 2026-10-20 · Updated: 2026-10-20 · Language: en
- Canonical page: https://hysenlabs.com/projects/nothingislost-obsidian-hover-editor

## The popover becomes a real editor, not a rendered preview

The plugin enhances the core Page Preview plugin by turning the hover popover into a full featured editor instance. The change is more than cosmetic: the popover is now an actual editor instance, and most editor functionality is supported including switching between modes.

That distinction matters for anyone who uses Obsidian as a working surface rather than a reading app. In the stock behaviour, hovering a link shows you a rendered preview of the target note and you either click through or dismiss it. With this plugin, the same hover gives you a small editor, which means you can correct a typo in a linked note, switch it into editing mode, and move on without losing your place in the note you were reading.

Focus handling is handled carefully, which is the detail that makes the feature usable rather than annoying. When a popover opens it becomes the active pane and receives focus, so keyboard shortcuts such as ctrl+e work on it right after you trigger the popover. When the popover closes, focus reverts to the previous document. Without that last part, closing a preview would leave your cursor somewhere else in your vault.

The navigation has also been filled out. The popover now has a nav bar that includes the document title and editor controls, so you can see which note you are in and change modes without hunting for a control.

## Pinning and stacking turn several previews into a workspace

The popover is draggable and resizable, and it can be pinned to stop it auto closing. The auto-pin behaviour is automatic rather than a setting you have to remember: popovers will auto pin when dragged or resized.

That rule is what makes the feature compound. Because any interaction with the popover geometry pins it, a popover you moved stays open, and with pinning, multiple popovers can be open at the same time. What began as a hover preview becomes a set of small panes you arranged deliberately.

The stacking rules are handled too. When multiple popovers are active and on top of each other, the currently active popover will remain on top. Without that, a pinned popover behind another one would be unreachable.

There is also a small but useful affordance at the top: the top drag handle can be double clicked to minimize the popover. That gives you a way to park a reference pane without closing it and losing the editor state inside.

A related behaviour handles deep links. When you hover a link containing a header or block reference, the editor opens and auto scrolls to the ref location, so the popover shows the exact paragraph you linked to rather than the top of the note.

## The default editor mode is the one setting worth changing

There is a plugin setting for the default editor mode, and it has three options: open in Reading mode, open in Editing mode, or match the mode of the current document.

The third option is the interesting one. Matching the mode of the current document means a popover opened from a note you are editing opens in editing mode, while one opened from a note you are reading opens in reading mode. For a vault where you read and write in the same session, that removes a decision you would otherwise make on every hover.

This is the only configuration the plugin exposes beyond the popover behaviour itself, and the narrowness is consistent with the rest of the design. The plugin is not trying to be a theme, a workflow system or a replacement for the core preview; it makes one surface better.

The remaining feature worth calling out is the nav bar with editor controls, which sits alongside the title. Because the popover is a real editor instance, the controls it offers are the same ones you would find in the main pane, and the mode switching described in the features list works through the keyboard shortcut too.

## Installing means copying two files into the plugins folder

The documented distribution route is the Obsidian Community Plugins browser, where Hover Editor can be found and installed.

For early testing there is a second route through BRAT. You install the BRAT plugin from the Obsidian Plugin Browser, then add the beta repository `nothingislost/obsidian-hover-editor` as a beta repository.

The manual route is the one that matters if you want to understand the layout, and it is only two files. You copy `main.js` and `manifest.json` to your vault `VaultFolder/.obsidian/plugins/obsidian-hover-editor/`:

```
main.js
manifest.json
```

The repository top level shows the same structure that a built plugin has. There is a manifest.json and a styles.css at the root, with the TypeScript sources in src/ and the build configuration in esbuild.config.mjs. The package file lists the entry point as `main.js` and the scripts are a dev build and a production build, both run through `node esbuild.config.mjs`.

So the plugin ships as a bundled JavaScript file rather than as source, and the two files you copy are the build output plus the metadata Obsidian reads to list it.

For development, the project uses pnpm with a pinned package manager version, TypeScript, ESLint with a Prettier configuration, and esbuild for bundling.

## The plugin depends on Obsidian internals, and says so

The disclaimer at the top of the documentation is the most important paragraph in it.

The plugin uses Obsidian functionality that is not currently exposed in the official API, and as a result future Obsidian updates may introduce breaking changes. The author's stated aim is to attempt to keep the plugin working across Obsidian updates, but the goal is either to have the functionality implemented directly into Obsidian core or to switch to the official API for popovers once that becomes available.

That is an unusually honest statement of position for a community plugin, and it is the reason to think carefully before adopting this one. The plugin is not waiting for a deprecation notice; it is already running on an interface that the application owner reserves the right to change without warning.

The rest of the repository is consistent with that. It is TypeScript with an obsidian dependency pinned at 1.3.5 in the dev dependencies, and the acknowledgements credit pjeby for contributing a large amount of core functionality related to making Hover Editors interop properly with native Obsidian components, plus boninall for the open in new popover functionality, and four further people for early testing and feedback.

The MIT licence covers the code, and the versions.json file at the root is the kind of file Obsidian plugins use to map plugin versions to the minimum Obsidian version they support, which is the practical answer to the compatibility question for anyone installing by hand.

## Where this sits against the built-in preview and other popover plugins

The comparison with Obsidian's own Page Preview is the one that matters most, and it is a difference of kind rather than degree. The core preview renders a note read-only and closes when you move away. This plugin gives you a live editor instance in the same space, with focus, modes, scrolling to a block reference, and the ability to keep several of them open.

Against other plugins that alter hover behaviour, the distinguishing detail is the fidelity of the editor instance. The plugin states that most editor functionality is supported including switching between modes, and the credit to pjeby for making Hover Editors interop properly with native Obsidian components is what that claim rests on. A popover that looks like an editor but behaves like a preview is a common disappointment; here the editor is the real thing.

There is also a cost to the same coin. A core preview is a read of the file, quick and harmless. An editor instance in a floating pane means a live editor surface competing for focus and keyboard shortcuts with the note behind it, and the plugin's own feature list acknowledges the focus dance that follows from it.

For a user who mostly reads and occasionally edits, the core preview is fine and this plugin is optional. For someone who treats their vault as a working surface, the difference between a preview and an editor is the difference between looking at a note and working in it.

## Conclusion

Adopt obsidian-hover-editor if you live inside Obsidian and want to open a linked note in a small editable pane rather than a read-only preview, because that is exactly the gap the plugin fills. Skip it if your vault work depends on stability across Obsidian upgrades, since the plugin states it uses functionality the official API does not expose and that future Obsidian updates may introduce breaking changes. Verify first that the version you install matches your Obsidian build, that the default editor mode setting matches how you want links to open, and that the file path you copy into is the one for your vault.

## FAQ

### How do I install the Obsidian Hover Editor plugin?

Through the Obsidian Community Plugins browser. For early testing you can install BRAT and add the beta repository `nothingislost/obsidian-hover-editor`. Manually, you copy `main.js` and `manifest.json` into `VaultFolder/.obsidian/plugins/obsidian-hover-editor/`.

### What does the Obsidian Hover Editor plugin actually change?

It turns the Page Preview hover popover into an actual editor instance supporting most editor functionality including mode switching, and adds dragging, resizing, pinning so multiple popovers can stay open, a nav bar with title and controls, and auto scroll to a header or block ref.

### Is the Obsidian Hover Editor plugin safe across Obsidian updates?

The author states the plugin uses Obsidian functionality not exposed in the official API, so future Obsidian updates may introduce breaking changes. The goal is to keep it working across updates, or to move to the official API for popovers once available.

## Sources

- [Issues](https://github.com/nothingislost/obsidian-hover-editor/issues)
- [License: MIT](https://github.com/nothingislost/obsidian-hover-editor/blob/master/LICENSE)
- [nothingislost/obsidian-hover-editor on GitHub](https://github.com/nothingislost/obsidian-hover-editor)
- [README](https://github.com/nothingislost/obsidian-hover-editor/blob/master/README.md)
- [Releases](https://github.com/nothingislost/obsidian-hover-editor/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/nothingislost-obsidian-hover-editor
