From cfb29fd8fb6c74dfe0f4ebf1b838c199d748920a Mon Sep 17 00:00:00 2001 From: Simon Cambier Date: Sun, 30 Oct 2022 14:12:35 +0100 Subject: [PATCH 1/5] Fixed #119 --- src/search/search-engine.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/search/search-engine.ts b/src/search/search-engine.ts index 778f32e..de41ecd 100644 --- a/src/search/search-engine.ts +++ b/src/search/search-engine.ts @@ -48,8 +48,8 @@ export const minisearchOptions: Options = { } export class SearchEngine { - private static engine: SearchEngine - private static tmpEngine: SearchEngine + private static engine?: SearchEngine + private static tmpEngine?: SearchEngine public static isIndexing = writable(true) /** @@ -92,12 +92,12 @@ export class SearchEngine { * Loads the freshest indexed data into the main instance. */ public static loadTmpDataIntoMain(): void { - const tmpData = this.tmpEngine.minisearch.toJSON() - this.engine.minisearch = MiniSearch.loadJS(tmpData, minisearchOptions) + const tmpData = this.getTmpEngine().minisearch.toJSON() + this.getEngine().minisearch = MiniSearch.loadJS(tmpData, minisearchOptions) } public static clearTmp(): void { - this.tmpEngine.minisearch = new MiniSearch(minisearchOptions) + this.getTmpEngine().minisearch = new MiniSearch(minisearchOptions) } private minisearch: MiniSearch From ed705789f80508eaa214463b3038a3c5c96384d0 Mon Sep 17 00:00:00 2001 From: Simon Cambier Date: Sun, 30 Oct 2022 14:13:42 +0100 Subject: [PATCH 2/5] 1.7.9 --- manifest-beta.json | 2 +- manifest.json | 2 +- package.json | 2 +- versions.json | 3 ++- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/manifest-beta.json b/manifest-beta.json index cc837c9..34aa2df 100644 --- a/manifest-beta.json +++ b/manifest-beta.json @@ -1,7 +1,7 @@ { "id": "omnisearch", "name": "Omnisearch", - "version": "1.7.8", + "version": "1.7.9", "minAppVersion": "1.0.0", "description": "A search engine that just works", "author": "Simon Cambier", diff --git a/manifest.json b/manifest.json index 28477ea..7d5744f 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "omnisearch", "name": "Omnisearch", - "version": "1.7.8", + "version": "1.7.9", "minAppVersion": "1.0.0", "description": "A search engine that just works", "author": "Simon Cambier", diff --git a/package.json b/package.json index 61db892..1dba800 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "scambier.obsidian-search", - "version": "1.7.8", + "version": "1.7.9", "description": "A search engine for Obsidian", "main": "dist/main.js", "scripts": { diff --git a/versions.json b/versions.json index 27c578a..fa2c009 100644 --- a/versions.json +++ b/versions.json @@ -66,5 +66,6 @@ "1.7.5": "1.0.0", "1.7.6": "1.0.0", "1.7.7": "1.0.0", - "1.7.8": "1.0.0" + "1.7.8": "1.0.0", + "1.7.9": "1.0.0" } \ No newline at end of file From dfe683dca5ec9ddfb1e90ce5ede0bdc4e0c8d306 Mon Sep 17 00:00:00 2001 From: Simon Cambier Date: Sun, 30 Oct 2022 19:54:37 +0100 Subject: [PATCH 3/5] retryWhenZeroResult now defaults to true --- src/settings.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/settings.ts b/src/settings.ts index b4eaf2f..1bfa861 100644 --- a/src/settings.ts +++ b/src/settings.ts @@ -134,7 +134,7 @@ export class SettingsTab extends PluginSettingTab { new Setting(containerEl) .setName('Retry queries that return zero result') .setDesc( - `When a query returns zero result, Omnisearch will try again (but harder). Enabling this may incur some freezes.` + `When a query returns zero result, Omnisearch will try again (but harder). Disabling this can improve search reactivity.` ) .addToggle(toggle => toggle.setValue(settings.retryWhenZeroResult).onChange(async v => { @@ -273,7 +273,7 @@ export class SettingsTab extends PluginSettingTab { .setName(`Headings level 3 (default: ${DEFAULT_SETTINGS.weightH3})`) .addSlider(cb => this.weightSlider(cb, 'weightH3')) - // #endregion Results Weighting + // #endregion Results Weighting } weightSlider(cb: SliderComponent, key: keyof WeightingSettings): void { @@ -308,7 +308,7 @@ export const DEFAULT_SETTINGS: OmnisearchSettings = { showExcerpt: true, showCreateButton: false, showPreviousQueryResults: true, - retryWhenZeroResult: false, + retryWhenZeroResult: true, weightBasename: 2, weightH1: 1.5, From 96a0575c93f6150dc890e9ac272dbc6635723989 Mon Sep 17 00:00:00 2001 From: Simon Cambier Date: Mon, 31 Oct 2022 11:22:41 +0100 Subject: [PATCH 4/5] #120 - Disabling PDF Indexing on iOS --- src/settings.ts | 50 ++++++++++++++++++++++++++++--------------------- 1 file changed, 29 insertions(+), 21 deletions(-) diff --git a/src/settings.ts b/src/settings.ts index 1bfa861..36a7b01 100644 --- a/src/settings.ts +++ b/src/settings.ts @@ -143,27 +143,29 @@ export class SettingsTab extends PluginSettingTab { }) ) - // PDF Indexing - const indexPDFsDesc = new DocumentFragment() - indexPDFsDesc.createSpan({}, span => { - span.innerHTML = `Omnisearch will include PDFs in search results. -
    -
  • ⚠️ Depending on their size, PDFs can take anywhere from a few seconds to 2 minutes to be processed.
  • -
  • ⚠️ Texts extracted from PDFs may contain errors such as missing spaces, or spaces in the middle of words.
  • -
  • ⚠️ Some PDFs can't be processed correctly and will return an empty text.
  • -
  • This feature is currently a work-in-progress, please report issues that you might experience.
  • -
- Needs a restart to fully take effect.` - }) - new Setting(containerEl) - .setName('BETA - PDF Indexing') - .setDesc(indexPDFsDesc) - .addToggle(toggle => - toggle.setValue(settings.PDFIndexing).onChange(async v => { - settings.PDFIndexing = v - await saveSettings(this.plugin) - }) - ) + // PDF Indexing - disabled on iOS + if (!Platform.isIosApp) { + const indexPDFsDesc = new DocumentFragment() + indexPDFsDesc.createSpan({}, span => { + span.innerHTML = `Omnisearch will include PDFs in search results. +
    +
  • ⚠️ Depending on their size, PDFs can take anywhere from a few seconds to 2 minutes to be processed.
  • +
  • ⚠️ Texts extracted from PDFs may contain errors such as missing spaces, or spaces in the middle of words.
  • +
  • ⚠️ Some PDFs can't be processed correctly and will return an empty text.
  • +
  • This feature is currently a work-in-progress, please report issues that you might experience.
  • +
+ Needs a restart to fully take effect.` + }) + new Setting(containerEl) + .setName('BETA - PDF Indexing') + .setDesc(indexPDFsDesc) + .addToggle(toggle => + toggle.setValue(settings.PDFIndexing).onChange(async v => { + settings.PDFIndexing = v + await saveSettings(this.plugin) + }) + ) + } // #endregion Behavior // #region User Interface @@ -324,6 +326,12 @@ export let settings = Object.assign({}, DEFAULT_SETTINGS) as OmnisearchSettings export async function loadSettings(plugin: Plugin): Promise { settings = Object.assign({}, DEFAULT_SETTINGS, await plugin.loadData()) + + // Make sure that PDF indexing is disabled on iOS + if (Platform.isIosApp) { + settings.PDFIndexing = false + } + showExcerpt.set(settings.showExcerpt) } From 4a0f0a0c1f9ac47e30366bcaaeb8707e1e5c553c Mon Sep 17 00:00:00 2001 From: Simon Cambier Date: Mon, 31 Oct 2022 11:26:03 +0100 Subject: [PATCH 5/5] 1.7.10 --- manifest-beta.json | 2 +- manifest.json | 2 +- package.json | 2 +- versions.json | 3 ++- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/manifest-beta.json b/manifest-beta.json index 34aa2df..768b303 100644 --- a/manifest-beta.json +++ b/manifest-beta.json @@ -1,7 +1,7 @@ { "id": "omnisearch", "name": "Omnisearch", - "version": "1.7.9", + "version": "1.7.10", "minAppVersion": "1.0.0", "description": "A search engine that just works", "author": "Simon Cambier", diff --git a/manifest.json b/manifest.json index 7d5744f..b267689 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "omnisearch", "name": "Omnisearch", - "version": "1.7.9", + "version": "1.7.10", "minAppVersion": "1.0.0", "description": "A search engine that just works", "author": "Simon Cambier", diff --git a/package.json b/package.json index 1dba800..cc75b8d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "scambier.obsidian-search", - "version": "1.7.9", + "version": "1.7.10", "description": "A search engine for Obsidian", "main": "dist/main.js", "scripts": { diff --git a/versions.json b/versions.json index fa2c009..f46d8a8 100644 --- a/versions.json +++ b/versions.json @@ -67,5 +67,6 @@ "1.7.6": "1.0.0", "1.7.7": "1.0.0", "1.7.8": "1.0.0", - "1.7.9": "1.0.0" + "1.7.9": "1.0.0", + "1.7.10": "1.0.0" } \ No newline at end of file