#103 - Added a default highlight, as an opt-out setting

This commit is contained in:
Simon Cambier
2022-11-28 21:18:18 +01:00
parent 719d95d15b
commit 473fbca336
3 changed files with 34 additions and 9 deletions

View File

@@ -30,6 +30,11 @@
.omnisearch-highlight {
}
.omnisearch-default-highlight {
color: var(--text-normal);
background-color: var(--text-highlight-bg);
}
.omnisearch-input-container {
display: flex;
flex-direction: row;

View File

@@ -1,5 +1,6 @@
import { EventBus } from './tools/event-bus'
import { writable } from 'svelte/store'
import { settings } from './settings'
export const regexLineSplit = /\r?\n|\r|((\.|\?|!)( |\r?\n|\r))/g
export const regexYaml = /^---\s*\n(.*?)\n?^---\s?/ms
@@ -9,7 +10,9 @@ export const chsRegex = /[\u4e00-\u9fa5]/
export const excerptBefore = 100
export const excerptAfter = 300
export const highlightClass = 'suggestion-highlight omnisearch-highlight'
export const highlightClass = `suggestion-highlight omnisearch-highlight ${
settings.hightlight ? 'omnisearch-default-highlight' : ''
}`
export const eventBus = new EventBus()

View File

@@ -44,6 +44,7 @@ export interface OmnisearchSettings extends WeightingSettings {
welcomeMessage: string
/** If a query returns 0 result, try again with more relax conditions */
simpleSearch: boolean
hightlight: boolean
}
/**
@@ -234,7 +235,9 @@ export class SettingsTab extends PluginSettingTab {
// Keep line returns in excerpts
new Setting(containerEl)
.setName('Render line return in excerpts')
.setDesc('Activate this option to render line returns in result excerpts.')
.setDesc(
'Activate this option to render line returns in result excerpts.'
)
.addToggle(toggle =>
toggle
.setValue(settings.renderLineReturnInExcerpts)
@@ -284,6 +287,19 @@ export class SettingsTab extends PluginSettingTab {
})
)
// Highlight results
new Setting(containerEl)
.setName('Highlight matching words in results')
.setDesc(
'Will highlight matching results when enabled. See README for more customization options.'
)
.addToggle(toggle =>
toggle.setValue(settings.hightlight).onChange(async v => {
settings.hightlight = v
await saveSettings(this.plugin)
})
)
//#endregion User Interface
//#region Results Weighting
@@ -357,6 +373,7 @@ export const DEFAULT_SETTINGS: OmnisearchSettings = {
showExcerpt: true,
renderLineReturnInExcerpts: true,
showCreateButton: false,
hightlight: true,
showPreviousQueryResults: true,
simpleSearch: false,