diff --git a/manifest-beta.json b/manifest-beta.json index cc837c9..768b303 100644 --- a/manifest-beta.json +++ b/manifest-beta.json @@ -1,7 +1,7 @@ { "id": "omnisearch", "name": "Omnisearch", - "version": "1.7.8", + "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 28477ea..b267689 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "omnisearch", "name": "Omnisearch", - "version": "1.7.8", + "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 bd369a2..f4a7db0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "scambier.obsidian-search", - "version": "1.7.8", + "version": "1.7.10", "description": "A search engine for Obsidian", "main": "dist/main.js", "scripts": { 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 diff --git a/src/settings.ts b/src/settings.ts index b4eaf2f..36a7b01 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 => { @@ -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. - - 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. + + 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 @@ -273,7 +275,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 +310,7 @@ export const DEFAULT_SETTINGS: OmnisearchSettings = { showExcerpt: true, showCreateButton: false, showPreviousQueryResults: true, - retryWhenZeroResult: false, + retryWhenZeroResult: true, weightBasename: 2, weightH1: 1.5, @@ -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) } diff --git a/versions.json b/versions.json index 27c578a..f46d8a8 100644 --- a/versions.json +++ b/versions.json @@ -66,5 +66,7 @@ "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", + "1.7.10": "1.0.0" } \ No newline at end of file