Fozi5k downloadsInline search UI powered by Omnisearch, with configurable page size, highlight color, and highlight opacity.
An Obsidian plugin that renders a compact, inline search UI directly inside a note. It is powered by the Omnisearch API and includes plugin settings for default page size, filter visibility, and highlight appearance.

Enter to search, Escape to clear.Alt over a result row to show the full file path as a popover.pageSize override that takes precedence over the global default.Either search for "Embedded-Omnisearch" in Settings > Community plugins > Browse or add it directly from the Obsidian Community and click on "Add to Obsidian".
Add a fenced code block with the language identifier embedded-omnisearch to any note:
```embedded-omnisearch
```
Open the note in Reading View or Live Preview. The code block is replaced by a search field.
If you open a markdown note containing an embedded-omnisearch code block, the plugin will also try to switch that leaf to preview mode automatically so the embedded UI becomes visible.
You can set options inside the code block. Currently supported:
| Option | Default | Description |
|---|---|---|
pageSize |
Plugin setting | Number of search results per page. |
path |
None | Restrict results to a folder or path. |
ext |
None | Restrict results to one or more file types. |
exclude |
None | Exclude notes containing one or more words or phrases. |
The filter syntax is passed to Omnisearch. Use one or more filter lines in the code block. Paths and phrases may be quoted; file extensions can be separated by spaces. exclude and exclusions are both accepted.
Example:
```embedded-omnisearch
pageSize: 20
path: Projects/Obsidian
ext: md canvas
exclude: archive "do not search"
```
This searches only below Projects/Obsidian, includes Markdown and Canvas files, and excludes results containing archive or the phrase do not search. The configured filters are applied to every query typed into this embedded search.
The plugin settings page provides defaults for the embedded search UI:
| Setting | Default | Description |
|---|---|---|
Results per page |
10 |
Default page size for embedded searches. |
Show filters in search placeholder |
Off |
Shows the filters configured in each code block inside its search field placeholder. This is only a visual hint; it does not change which filters are applied. |
Highlight color |
#cca300 |
Base color used for highlighted matches. |
Highlight opacity |
35% |
Opacity of the highlight background. |
embedded-omnisearch.SearchView component attached to the block's DOM element.path, ext, and exclusion filters to the query and calls globalThis.omnisearch.search(query), then renders the results as a styled table.--eo-highlight-color CSS variable.< / > buttons navigate between pages.Alt while hovering a result row displays the full vault path in a small popover.registerDomEvent and are cleaned up when the component unloads.The plugin ships its own styles.css using Obsidian CSS variables (--background-secondary, --text-normal, --text-muted, --background-modifier-border, etc.), so it adapts to any theme automatically.
You can override any class in an Obsidian CSS snippet. Key classes:
.eo-wrap — outer wrapper.eo-input-wrap — search field container.omnisearch-input-field — search input field.eo-clear — clear button.eo-status — status / result count line.eo-results — results container.eo-results-grid — result grid.eo-results-row / .eo-results-cell — result rows and cells.eo-results-link — clickable note link.eo-page-bar / .eo-page-btn / .eo-page-info — pagination.eo-popover — Alt+hover path popoverThe plugin applies highlight color and opacity through the --eo-highlight-color CSS variable, which is updated from the plugin settings page. You can still override that variable in a custom CSS snippet if needed.
Alt key while hovering over a result row.| File | Purpose |
|---|---|
manifest.json |
Plugin metadata (id, version, description). |
main.js |
Plugin code: embedded search UI, settings, highlighting, pagination, preview enforcement, and popover behavior. |
styles.css |
CSS using Obsidian variables for automatic theme compatibility. |
MIT
scambier for the great Omnisearch plugin.