ときくん282 downloadsInspired by 'Mouse Tooltip Translator' Chrome extension. Hover to translate.
"Read effortlessly, learn instantly." A translation plugin for Obsidian that completes your reading and learning with just a mouse hover.
No need to switch to a browser. Simply hover over a word or sentence and a popup instantly shows its meaning. Leverages Google's dictionary feature (POS) to display parts of speech, detailed definitions, and transliteration.
Speed — Blazing-fast Google / Google GTX
Precision — Reliable DeepL / Bing / Yandex / Papago
Context — Context-aware LLM (OpenAI-compatible / Ollama / LM Studio)
Assign the best engine independently for hover, text selection, and full-page translation.
Every lookup is automatically accumulated in a sidebar vocabulary book. Sort by view count, last reviewed date, or alphabetical order, and filter between words and sentences for efficient review.
Press Esc to close the tooltip.
Switch to Reading View, then click the language icon (🌐) in the view header or run the "Translate current page" command. A progress bar is displayed while each block is being translated. Click the icon again (or run the "Restore original" command) to revert. You can also cancel the translation with the ✕ button on the progress bar.
After translation, hover over any paragraph to see the original text in a tooltip.
Click the book icon in the ribbon or run the "Open vocabulary book" command to open the sidebar panel. All past translations are listed with their view counts, and can be sorted by view count, last reviewed date, or alphabetical order, and filtered by words or sentences.
| Setting | Description |
|---|---|
| Enabled | Master switch for translation |
| Restrict to note content | Respond only within note body (editor / preview / embeds). When disabled, translates across the entire Obsidian UI |
| Hover engine | Engine used for mouseover translation |
| Selection engine | Engine used for text-selection translation |
| Page engine | Engine used for full-page translation |
| Translate from | Source language (includes auto-detect) |
| Translate to | Target language |
| Trigger | Mouseover / selection / both |
| Mouseover unit | Translate the word or sentence under the cursor |
| Hover delay | Wait time before translation starts |
| Show dictionary | Display dictionary-style results when available |
| Show transliteration | Display transliteration / romanization |
| Show source text | Display original text in the tooltip |
| Show detected language | Display detected source and target language |
| Skip same-language translations | Hide tooltip when detected language matches target language |
| Skip identical translations (strict) | Also hide tooltip when translation result is identical to input |
| Disable translation cache | Call the API every time, bypassing the in-memory cache |
The default engine is Google.
Experimental engines may stop working due to upstream service changes.
| Engine | Notes |
|---|---|
| Default. Supports dictionary entries and transliteration | |
| Google GTX | Alternative Google endpoint |
| DeepL | Experimental web endpoint |
| Bing | Experimental web endpoint |
| Yandex | Experimental web endpoint |
| Papago | Experimental web endpoint |
| OpenAI-compatible API | Any server implementing the OpenAI Chat Completions API. Requires API URL and model name. API key and custom prompt template are also configurable |
| Ollama | Local inference via Ollama. Requires a running Ollama server and model name |
| LM Studio | Local inference via LM Studio. Requires a running LM Studio server and model name |
When an LLM engine (OpenAI-compatible / Ollama / LM Studio) is selected for any context, the following additional settings appear.
| Setting | Description |
|---|---|
| API URL | Base URL of the server (e.g. https://api.openai.com, http://localhost:11434) |
| API Key | API key (OpenAI-compatible only; leave blank for local servers) |
| Model | Model name to use for translation |
| Temperature | Generation randomness. 0 = deterministic, 2 = maximum randomness. Default: 0 |
| Prompt template | Custom prompt template. Use {{text}} for source text and {{targetLang}} for the target language name. Leave blank to use the built-in default |
Go to Obsidian Settings → Community plugins → Browse, search for Mouse Tooltip Translator, and install.
Download main.js, manifest.json, and styles.css
Place them in:
<your vault>/.obsidian/plugins/mouse-tooltip-translator/
Restart Obsidian or reload the plugin
Enable Mouse Tooltip Translator from Community plugins
1.12.0This plugin is desktop-only.
requestUrl API is used for network requests.translation-log.json inside the plugin folder.MIT License
Inspired by the Mouse Tooltip Translator Chrome extension.