Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Language Leaf

cynthia-dingcynthia-ding89 downloads

在原生 Markdown 中阅读、查询和收录词句,保存为 Spaced Repetition 闪卡。

Add to Obsidian
  • Overview
  • Scorecard
  • Updates11

中文使用与开发说明

Read native Markdown, look up words and sentences, and save vocabulary as flashcards in the same note. Review with the built-in FSRS engine.

Installation and usage

Download main.js, manifest.json, and styles.css from the latest release. Copy them to <vault configuration folder>/plugins/language-leaf/, reload Obsidian, and enable Language Leaf in Community plugins. Preserve your existing data.json. Requires desktop Obsidian 1.14.4 or later.

  • Enable learning mode on a Markdown note. Hold Shift while selecting text, or configure Alt/Option. Three-finger selection can query when the modifier is released. Alternatively, enable automatic selection lookup or click the selection's lookup button.
  • Edit the new-word form and save with Command+Enter on macOS or Ctrl+Enter on Windows/Linux. The shortcut applies inside the new-word panel.
  • New cards always use the built-in FSRS engine. Legacy SR cards can be imported through the migration preview, which keeps backups.
  • Built-in FSRS review supports recall and context layouts, audio, daily new-card limits, undo, pause/resume, and source-note navigation. Space reveals the answer; arrow keys rate it after reveal.
  • Switching a note to editing exits learning mode.

Sentence context and repeated captures

For a target sentence with fewer than 15 words, Language Leaf includes one sentence before and after it by default. Change the word threshold and the number of sentences on each side in the reading and lookup settings; set either value to 0 to disable expansion. Changes apply to future captures only.

The original paragraph and line breaks are retained. Sentences already in that paragraph count toward the context range. Expansion stops at headings, code blocks, and ordinary blockquotes; translation callouts are skipped when locating original text. If a boundary falls inside quoted dialogue, the complete dialogue is included, so the range can exceed the configured sentence count. If the selected text occurs several times in the same paragraph, the original paragraph is retained without guessing which occurrence was selected.

When complete captured paragraphs all have matching translation callouts, their existing translations are kept in order. Otherwise, use optional automatic translation or enter the translation manually.

Capturing the same word or phrase again in the same note places the current example first and preserves earlier examples, meaning, notes, tags, and review progress. Selecting the same example again moves it to the front without adding a duplicate; whitespace-only differences are ignored. A successful capture can still increase the capture count. Opening an existing card for editing does not add an example or increase that count.

Across different notes, captures remain separate cards with their own source examples and review progress; the shared expression identity and existing meaning can be reused.

In built-in review, the first example is the main context. Context layout shows it before revealing the meaning and translation; recall layout shows it after reveal. After reveal, other examples are available in collapsed supplementary example sections containing their original text and translation. All examples belong to one card and receive one rating; examples do not rotate randomly.

Review data and migration

Card content stays in Markdown. Built-in review state is stored as append-only events under LinguaLeafData/review/ by default. Synchronize the entire data folder and resolve sync conflicts before continuing review.

SR migration is optional and creates backups. SM-2 schedules are approximations; rollback is supported before the first built-in rating. Migrating the same card repeatedly is not supported. Existing notes, vocabulary, and settings are not automatically migrated from the old Language Learner plugin.

Privacy and attribution

Enabled dictionaries receive the selected word or sentence. Optional context translation sends captured original paragraphs, including expanded neighboring context, to Youdao when a complete matching translation is unavailable. Online pronunciation uses dictionary recordings or Youdao audio. System speech uses voices available on the device through Obsidian; voice availability and quality depend on the system. Notes and review data stay in your vault; the plugin provides no remote data sync.

This project is derived from Language Learner by the_tree, retains dictionary and Vue panel code, and preserves the original MIT license and attribution. It is independently maintained by Cynthia Ding. Independent maintenance does not imply that inherited code was written from scratch.

The built-in review engine uses ts-fsrs 5.4.1, licensed under MIT. See third-party license.

Development

Use Node.js 22.12 or later:

npm ci
npm run test:run -- --pool=forks --maxWorkers=1 --no-file-parallelism
npm run build

Release assets are built and attested in GitHub Actions. See release notes and repository maintenance. Licensed under MIT.

HealthExcellent
ReviewCaution
About
Read your Markdown notes, look up words and collect phrases inline, and save them as spaced-repetition flashcards directly in the same document. Open a word list, dictionary panel, and new-word panel, and toggle study mode to manage vocabulary with a built-in bilingual translation callout. Store learning data locally in your Vault while leveraging third-party dictionaries and Youdao audio for pronunciations.
FlashcardsLanguagesAudio
Details
Current version
0.5.0
Last updated
4 days ago
Created
3 weeks ago
Updates
11 releases
Downloads
89
Compatible with
Obsidian 1.14.4+
Platforms
Desktop only
License
MIT
Report bugRequest featureReport plugin
Author
cynthia-dingcynthia-ding
GitHubcynthia2023xy
  1. Community
  2. Plugins
  3. Flashcards
  4. Language Leaf

Related plugins

Text to Speech

Hear your notes.

Language Learner

Learn languages with vocabulary lists, grammar rules, vocabulary quiz, and progress tracking by CEFR level.

Fingertip Translation

Translate selected text into your language. Supports Bing Dictionary, Youdao, and MyMemory with built-in pronunciation.

Simplified Chinese Word Splitting

Adds Simplified Chinese word splitting support for the editor and Vim mode.

Spaced Repetition

Fight the forgetting curve by reviewing flashcards & entire notes.

Flashcards

Anki integration.

Voice

Listen to your notes as natural speech with text-to-speech (TTS). Read notes aloud, play them like an audiobook in the voice player, download MP3 audio and listen offline hands-free on mobile.

PanGu

Add spaces between Chinese characters and English alphabet. A boon for typographically compulsive people.

Yanki

Sync flashcards from a folder in your vault to Anki. Pure Markdown syntax. No fuss.

Media Extended

Integrate, manage video or audio directly in your notes, with enhanced playback and timestamp support. (Closed source)