Omnisearch is a search engine that "just works".

Overview

Omnisearch for Obsidian

Active Development

Omnisearch is a search engine that "just works". Type what you're looking for, and it will instantly show you the most relevant results.

Under the hood, it uses the excellent MiniSearch library.

Features

  • Keyboard-centric, you never have to use your mouse
  • Automatic document scoring using the BM25 algorithm
    • The relevance of a document against a query depends on the number of times the query terms appear in the document, its filename, and its headings
  • Instant search results, with highlighting
  • Fuzzy/partial search, resistance to typos
  • In-file search to quickly skim multiple results in a single note

Installation

Omnisearch is available on the official Community Plugins repository.

You can also install it through BRAT for the future beta releases.

Usage

There are 2 ways to use Omnisearch:

Vault Search

Omnisearch's core feature, accessible with the Command Palette "Omnisearch: Vault search". This modal searches through your vault and returns the most relevant notes first. The notes that contain the query terms in their filename or headings are weighted higher than the others.

If you need to list all the matches of a single note, you can do so by using alt+enter to open the In-File Search.

In-File Search

Also accessible through the command palette "Omnisearch: In-file search". This modal searches through the active note's content and lists the results.

Customization

There are several CSS classes you can use to customize the appearance of Omnisearch.

.omnisearch-modal
.omnisearch-result
.omnisearch-result__title
.omnisearch-result__counter
.omnisearch-result__body
.omnisearch-highlight

For example, if you'd like the usual yellow highlight on search matches, you can add this code inside a CSS snippet file:

.omnisearch-highlight {
    color: var(--text-normal);
    background-color: var(--text-highlight-bg);
}

LICENSE

Omnisearch is licensed under GPL-3.

Comments
  • [Feature request] Search should also find non-md files (most importantly pdf)

    [Feature request] Search should also find non-md files (most importantly pdf)

    Problem: The internal search allows you to find and open pdfs and other non-md files using keywords from their filename.

    Solution: As the default search of Obsidian, Omnisearch should find non-md files when the typed keyword is part of their filename. Enter opens them. (The perfect solution would be to also index the content of pdf files ;-)).

    enhancement 
    opened by matthiashaldimann 37
  • [BUG]

    [BUG]

    Problem description:

    Since the latest (Omni) update, searching is not finding files I know to be there. It only seems to be finding files created since that update, and uncreated files. Is there a way of rebuilding the search index?

    I am getting these errors in the Inspecor

    errorLog.txt

    Your environment:

    • Omnisearch version: 1.7.1

    • Obsidian version: 1.0.2

    • Operating system: Win 10

    • Number of notes in your vault (approx.): 3k

    • Other plugins that may be related to the issue:

    opened by menagerie198 14
  • [BUG]The Chinese search untrustworthy

    [BUG]The Chinese search untrustworthy

    The Chinese search support of the plugin is very weak. It is basically in an untrustworthy state. Many of the explicitly included ones are not searchable. Is there expected support for Chinese search? Problem description:

    Your environment:

    • Omnisearch version: 1.9.0
    • Obsidian version:1.0.3
    • Operating system: macos 13.0.1
    • Number of notes in your vault (approx.): less than 1000
    • Other plugins that may be related to the issue:
    bug 
    opened by zackzeng00 11
  • [BUG] IndexedDB - Transaction timed out due to inactivity

    [BUG] IndexedDB - Transaction timed out due to inactivity

    <! Omnisearch is a great plugin; Thank You. The new version of Omnisearch does not work. It only shows "Omnisearch indexing is currently in progress"

    • Omnisearch version: 1.76
    • Obsidian version: 1.03
    • Operating system: Windows 10 Enterprise
    • Number of Notes in my vault: 1100
    bug 
    opened by JoKo1959 11
  • [BUG] can't index and find inside pdfs

    [BUG] can't index and find inside pdfs

    Hi, PDFs are not indexed and I can't find anything in the text of OCRed pdfs. Tried to restart and reinstall everything multiple times, pdf indexing is enanled in settings but I can't find anything in my pdfs. Thanks

    • Omnisearch version: 1.9.1
    • Obsidian version: 1.1.8
    • Operating system: MacOS Ventura
    • Number of notes in your vault (approx.): 5 (test vault)
    • Other plugins that may be related to the issue:
    opened by valentinosant 10
  • [Feature request] Store notes cache index to the file to avoid reparsing

    [Feature request] Store notes cache index to the file to avoid reparsing

    Is your feature request related to a problem? Please describe.

    I have a big vault with ~40k notes. Recreating an index on each Obsidian open is an unnecessary massive heavy operation.

    Describe the solution you'd like

    I suggest to store cache index to the external file so it could be imported without reindexing all the notes. Probably there should be some additional mechanism to catch notes changed since cache index was saved. It could be just notes last modified date.

    Describe alternatives you've considered

    Everything 1.5

    Additional context

    N/A

    opened by mnaoumov 10
  • [Feature request] Creating a new note on mobile

    [Feature request] Creating a new note on mobile

    Is your feature request related to a problem? Please describe. It would be great to have the ability to create a new note on mobile right from within the OmniSearch modal

    Describe the solution you'd like Option to create a new note similar to the way it is on desktop

    Describe alternatives you've considered Using the both the omnisearch modal as well as the Quick switcher++ plugin. I first look for a note using omnisearch. If I am not able to find it, I then switch to Quick swticher to create a new note

    enhancement 
    opened by sohanglal 9
  • [Feature request] Plugin settings for disabling real-time indexing for large documents

    [Feature request] Plugin settings for disabling real-time indexing for large documents

    Is your feature request related to a problem? Please describe.

    When typing in a document that has a lot of words (300,000ish), this plugin will cause some lag. I tested it many times to make sure the lag was caused by Omni Search.

    Describe the solution you'd like

    It would be great to have a plugin option to turn off real-time indexing for documents that have more than a certain number of characters.

    Describe alternatives you've considered

    Or simply provide an option to only index new words when opening obsidian. That might fix the lag, I guess.

    Additional context

    Your plugin is the best searching plugin IMO! Thanks

    opened by shaggyfeng 9
  • [BUG] Crashes on iOS

    [BUG] Crashes on iOS

    Problem description:

    Omnisearch causes an Obsidian crash on iOS

    image

    image

    Your environment:

    • Omnisearch version: 1.7.8
    • Obsidian version:
    • Operating system: iOS
    • Number of notes in your vault (approx.):
    • Other plugins that may be related to the issue:
    bug help wanted 
    opened by scambier 8
  • [BUG] Pressing the tab key in the Vault Search box does not switch to In-File Search

    [BUG] Pressing the tab key in the Vault Search box does not switch to In-File Search

    Problem description: Pressing the tab key in the Vault Search box does not switch to In-File Search. (Pressing the tab key in the In-File Search box switches to the Vault Search box as expected.)

    Your environment:

    • Omnisearch version: 1.7.3
    • Obsidian version: 1.0.2
    • Operating system: Windows 11
    • Number of notes in your vault (approx.): 100
    • Other plugins that may be related to the issue: Other community plugins disabled to test
    opened by mdrain 8
  • Problem with additional navigation of search results

    Problem with additional navigation of search results

    • Problem description:
      • additional navigation through the search results with ctrl+j/k(n/p) does not work when a keyboard layout other than English is active.
    • More info:
      • system: Windows 11 21H2;
      • plugin version: 1.6.4;
      • second keyboard layout: Russian.
    bug 
    opened by tonygrr 8
  • [Feature request] Add a button to switch to In-file Search on mobile

    [Feature request] Add a button to switch to In-file Search on mobile

    Is your feature request related to a problem? Please describe. Is in-file Search available on mobile? I checked all the settings and past issues but couln't find it mentioned anywhere.

    Describe the solution you'd like A button to search in-file right next to the create note button

    Describe alternatives you've considered I really prefer omni search over obsidian search

    enhancement 
    opened by sohanglal 2
  • [Feature request] Search in generated PDFs without OCR on mobile

    [Feature request] Search in generated PDFs without OCR on mobile

    Hi there,

    I noticed in the project's README file that PDF and image search is not supported on mobile due to the resource consumption of text extraction, which I assume refers to OCR. However, I was wondering if it would be possible to implement support for PDFs that are generated, meaning the text is already included in the PDF and does not need to be extracted through OCR. This should not be as resource-intensive as extracting text from scanned PDFs, which are essentially images. It could be helpful to include a warning in the settings indicating that this feature only applies to generated PDFs, not scanned ones.

    I really appreciate the hard work that has gone into this plugin, it's been a pleasure to use. I'm considering fully migrating from Evernote to Obsidian, and having the ability to search within generated PDFs would be a big step forward for me.

    Thanks!

    opened by llabusch93 4
  • [BUG] Freeze on first

    [BUG] Freeze on first "Obsidian is indexing your vault" file

    Problem description:

    If I enable the plugin, obsidian tells me it must index again, but then freezes on 1/4700 or so. If I manually delete the "omnisearch" line from .obsidian/community-plugins.json, It indexes again, but quickly gets through all files.

    My plugins/omnisearch/data.json looks like this:

    {
      "respectExcluded": true,
      "ignoreDiacritics": true,
      "indexedFileTypes": [],
      "PDFIndexing": false,
      "imagesIndexing": false,
      "showShortName": false,
      "ribbonIcon": true,
      "showExcerpt": true,
      "renderLineReturnInExcerpts": true,
      "showCreateButton": false,
      "showPreviousQueryResults": true,
      "simpleSearch": false,
      "weightBasename": 2,
      "weightH1": 1.5,
      "weightH2": 1.3,
      "weightH3": 1.1,
      "welcomeMessage": "1.8.0-beta.3"
    }
    

    despite that last line, I have omnisearch-1.9.0-beta.2.zip installed (the manifest.json in that zip still says "version": "1.8.1",).

    Unfortunately, removing txt and py from indexedFileTypes didn't help as in #134 or #147 , and I can't reproduce this on the obsidian-hub-0.2.1 vault, unlike #7 .

    I can open the dev console while the app is loading, and it seems to stay responsive itself (though entering anything at the prompt gets nothing back). It lists this output before the obsidian UI freezes:

    loading wikilinks-to-mdlinks plugin...
    plugin:obsidian-toggl-integration:25390 Loading obsidian-toggl-integration 0.9.0
    plugin:dataview:20685 Dataview: version 0.5.47 (requires obsidian 0.13.11)
    plugin:nldates-obsidian:9043 Loading natural language date parser plugin
    plugin:obsidian-mind-map:32574 Loading Mind Map plugin
    plugin:obsidian-file-link:419 loading plugin file-link
    plugin:obsidian-link-archive:94 Loading Link Archive plugin...
    plugin:omnisearch:45 Text Extract - Number of available workers: 5
    plugin:dataview:13951 Dataview: all 4739 files have been indexed in 6.126s (4739 cached, 0 skipped).
    plugin:omnisearch:52 Omnisearch - Loading index from cache: 5304.351318359375 ms
    plugin:omnisearch:52 Omnisearch - Total number of files to add/update: 4739
    plugin:omnisearch:52 Omnisearch - Total number of files to remove: 0
    

    and the indexing toast shows:

    Obsidian is indexing your vault... This should happen only once. Some functionality may not be available until this is complete. (1/4737)

    Task manager reports about 20% CPU usage and 5300 MB RAM for Obsidian, almost all of the CPU for a sub-process just called "Obsidian". (There are three others named like that, and one labeled "2022-12-20 - Dropbox - Obsidianv1.1.8", which I guess is the main thread since it opened to 2022-12-20.md.)

    I see these 5 entries in the console top> dropdown: image

    I think that if I just leave it like this overnight, the app will eventually go all black. Windows remains otherwise responsive, and I can kill Obsidian by right click > Close window on the taskbar.

    I'm unable to incrementally take files out of this "vault" since it's my whole 500 G Dropbox, but I can try other troubleshooting steps you might suggest.

    Your environment:

    • 1.9.0-beta.2
    • Obsidian version: 1.1.8, installer 1.0.3
    • Operating system: Windows 10 22H2
    • Number of notes in your vault (approx.): 4700,
    • Other plugins that may be related to the issue: After removing omnisearch, my community-plugins.json looks like this:
    [
      "wikilinks-to-mdlinks-obsidian",
      "calendar",
      "obsidian-toggl-integration",
      "obsidian-dialogue-plugin",
      "heatmap-calendar",
      "dataview",
      "periodic-notes",
      "nldates-obsidian",
      "obsidian-mind-map",
      "google-calendar",
      "obsidian-excalidraw-plugin",
      "templater-obsidian",
      "obsidian-file-link",
      "obsidian-link-archive"
    ]
    
    bug 
    opened by tsbertalan 6
  • [BUG] Vietnamese search not working properly

    [BUG] Vietnamese search not working properly

    Problem description:

    I am having problems searching for notes in Vietnamese. I have tried toggling Ignore diacritics and Maximizing file name and alias weight but no luck.

    Case 1: Screenshot_20221221_105658 The search term perfectly matches the file name (2nd on the list) but results are unreliable.

    Case 2: Screenshot_20221221_111204 In this case, the search term still matched but the file didn't show up.

    Target files:

    TTSTN - Nhân sự tiềm năng.md Hoàn thiện tài liệu đào tạo.md

    Your environment:

    • Omnisearch version: 1.9.1
    • Obsidian version: 1.1.8
    • Operating system: Windows 11 Pro 64-bit
    • Number of notes in your vault (approx.): 3.200 files (mostly pdf and word), of which ~500 are notes
    • Other plugins that may be related to the issue:
    bug 
    opened by nhangham 2
  • [Feature request] Include Canvases in search results

    [Feature request] Include Canvases in search results

    Is your feature request related to a problem? Please describe.

    I just updated Obsidian to 1.1 (more specifically v1.1.9) and created my first canvas. Then, I navigated to another file (with use of Omnisearch) and later I wanted to go to that canvas again. I typed its name in Omnisearch, but it didn't show among top results.

    Describe the solution you'd like

    To have canvases matched by title same as regular notes.

    Describe alternatives you've considered

    (no alternatives)

    Additional context

    • Obsidian v1.1.8
    • Omnisearch 1.9.1
    enhancement 
    opened by beetrootpaul 3
  • [Feature request] limit search to pdfs

    [Feature request] limit search to pdfs

    Hi, thanks for your contribution to the obsidian community,

    Actually the plugin search in pdfs and in other file types. It would be great to limit the search process to only pdfs.

    Regards,

    Joniac

    opened by joniac1 0
Releases(1.10.0-beta.1)
Owner
Simon Cambier
Simon Cambier
A personal semantic search engine capable of surfacing relevant bookmarks, journal entries, notes, blogs, contacts, and more, built on an efficient document embedding algorithm and Monocle's personal search index.

Revery ?? Revery is a semantic search engine that operates on my Monocle search index. While Revery lets me search through the same database of tens o

Linus Lee 215 Dec 30, 2022
An efficient (and the fastest!) way to search the web privately using Brave Search Engine

Brave Search An efficient (and the fastest) way to search the web privately using Brave Search Engine. Not affiliated with Brave Search. Tested on Chr

Jishan Shaikh 7 Jun 2, 2022
Tesodev-search-app - Personal Search App with React-Hooks

Tesodev-search-app Personal Search App with React-Hooks View on Heroku : [https://tesodev-staff-search-app.herokuapp.com/] Instructions Clone this rep

Rahmi Köse 1 Nov 10, 2022
Instant spotlight like search and actions in your browser with Sugu Search.

Sugu Search Instant spotlight like search and actions in your browser with Sugu Search. Developed by Drew Hutton Grab it today for Firefox and Chrome

Drew Hutton (Yoroshi) 9 Oct 12, 2022
🍭 search-buddy ultra lightweight javascript plugin that can help you create instant search and/or facilitate navigation between pages.

?? search-buddy search-buddy is an open‑source ultra lightweight javascript plugin (* <1kb). It can help you create instant search and/or facilitate n

Michael 4 Jun 16, 2022
Node starter kit for semantic-search. Uses Mighty Inference Server with Qdrant vector search.

Mighty Starter This project provides a complete and working semantic search application, using Mighty Inference Server, Qdrant Vector Search, and an e

MAX.IO LLC 8 Oct 18, 2022
Allows users to quickly search highlighted items on Wikipedia. Inspired by the "search Wikipedia" function on the kindle mobile app.

wikipedia-search Allows users to quickly search highlighted items on Wikipedia. Inspired by the "search Wikipedia" function on the kindle mobile app.

Laith Alayassa 18 Aug 15, 2022
A plugin for Obsidian (https://obsidian.md) that adds a button to its search view for copying the Obsidian search URL.

Copy Search URL This plugin adds a button to Obsidian's search view. Clicking it will copy the Obsidian URL for the current search to the clipboard. T

Carlo Zottmann 6 Dec 26, 2022
🟢 Music player app with a modern homepage, fully-fledged music player, search, lyrics, song exploration features, search, popular music around you, worldwide top charts, and much more.

Music-player-app see the project here. 1. Key Features 2. Technologies I've used Key Features: ?? Fully responsive clean UI. ?? Entirely mobile respo

suraj ✨ 3 Nov 16, 2022
Search Engine for YouTuber Ali Abdaal's videos

Ali Abdaal Search Engine This is a personalized search engine for my favorite YouTubers, Ali Abdaal. I used selenium to scrape all his videos, youtube

Hassan El Mghari 24 Oct 14, 2022
Tiny and powerful JavaScript full-text search engine for browser and Node

MiniSearch MiniSearch is a tiny but powerful in-memory fulltext search engine written in JavaScript. It is respectful of resources, and it can comfort

Luca Ongaro 2k Jan 3, 2023
Chappe - 🧑‍💻 Developer Docs builder. Write guides in Markdown and references in API Blueprint. Comes with a built-in search engine.

Chappe Developer Docs builder. Write guides in Markdown and references in API Blueprint. Comes with a built-in search engine. Chappe is a Developer Do

Valerian Saliou 146 Jan 1, 2023
MLPleaseHelp is a simple ML resource search engine.

README MLPleaseHelp is a simple ML resource search engine. How To Use You can use this search engine right now at https://jgreenemi.github.io/MLPlease

Joseph Greene 5 Jan 20, 2021
🧑‍💻 Developer Docs builder. Write guides in Markdown and references in API Blueprint. Comes with a built-in search engine.

Developer Docs builder. Write guides in Markdown and references in API Blueprint. Comes with a built-in search engine. Chappe is a Developer Docs buil

Crisp (OSS) 146 Jan 1, 2023
Yu-Gi-Oh! Card Search Engine

Yu-Gi-Oh! Card Search Engine Buscador de cartas de Yu-Gi-Oh, os resultados são apresentados em PT-BR. Algumas cartas podem não ser encontradas devido

Evandro Fadul 11 Apr 14, 2022
Yu-Gi-Oh! Card Search Engine

Yu-Gi-Oh! Card Search Engine Buscador de cartas de Yu-Gi-Oh, os resultados são apresentados em PT-BR. Algumas cartas podem não ser encontradas devido

Evandro Fadul 11 Apr 14, 2022
🌌 Fast, in-memory, full-text search engine written in TypeScript. Now in beta.

Installation You can install Lyra using npm, yarn, pnpm: npm i @nearform/lyra yarn add @nearform/lyra pnpm add @nearform/lyra Usage Lyra is quite simp

NearForm 5.1k Dec 30, 2022
A tiny search engine.

nanosearch A tiny search engine. Suitable for in-browser use, this provides n-gram based search results. Quickstart import { SearchEngine } from '@toa

Daniel Lindsley 10 Aug 24, 2022
A tiny search engine.

nanosearch A tiny search engine. Suitable for in-browser use, this provides n-gram based search results. Quickstart import { SearchEngine } from '@toa

Daniel Lindsley 10 Aug 24, 2022