feat(dictionary): AI-powered term extraction from free-form text#344
Open
hanselstner wants to merge 2 commits intoOpenWhispr:mainfrom
Open
feat(dictionary): AI-powered term extraction from free-form text#344hanselstner wants to merge 2 commits intoOpenWhispr:mainfrom
hanselstner wants to merge 2 commits intoOpenWhispr:mainfrom
Conversation
Add an "Import" dialog to the Custom Dictionary view that lets users paste a list of words or phrases separated by commas, semicolons, or line breaks. This is useful for quickly onboarding domain-specific vocabulary (e.g. technical terms, brand names, framework names). The parser splits input by lines first, then by comma/semicolon within each line. This preserves terms that contain dots (Vue.js, babylon.js, .tsx) because the dot is never treated as a delimiter. Duplicate detection is case-insensitive and prevents re-adding existing words. UI integration: - Empty state: "Import" link below the example chips - Populated state: "Import" button in the header next to "Clear all" - Modal dialog with textarea, live word count, and confirm/cancel Full i18n support across all 10 languages (en, de, es, fr, it, ja, pt, ru, zh-CN, zh-TW).
fdf01f4 to
d0c84d3
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Extends the dictionary import dialog (from #343) with a second tab that uses the configured AI model to extract domain-specific terms from free-form text (meeting notes, documentation, emails). This makes it easy to build a custom dictionary from existing content.
Depends on: #343 (
feat/dictionary-import)Changes
src/components/DictionaryView.tsx: Add tabbed import dialog ("List" / "Extract from text"), AI extraction viaReasoningService.processText()with a terminology-extraction system prompt, extracted terms shown as removable chips before import confirmationtabList,tabExtract,extractDescription,extractPlaceholder,extractButton,extracting,extractCount,extractEmpty,extractErrortranslation keysTest plan
Pull Request opened by Augment Code with guidance from the PR author