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

Engnese

xxxgeorgexxxgeorge95 downloads

input Chinese in English input method to avoid frequently input method switching.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates1

简体中文

Engnese is an Obsidian desktop plugin for English-first pinyin completion.

It allows users to keep typing English letters in the editor while treating the current token as pinyin in the background. When a candidate is accepted, the already inserted English token is replaced in place with Chinese text.

What It Does

  • Keeps the normal English typing flow and avoids inline preedit.
  • Reads local Rime .dict.yaml dictionaries, including import_tables.
  • Falls back to the longest valid prefix when a full pinyin stream has no direct match.
  • Supports configurable candidate shortcuts and paging.
  • Supports optional double-space to accept the first candidate.
  • Avoids triggering inside fenced code blocks, inline code, and math contexts.

Examples

  • woaini -> 我爱你
  • ni + double-space -> 你
  • chunfengyichui -> select 春风, then continue with yichui

If a full-token match does not exist, Engnese uses the longest available prefix and leaves the remaining suffix in the editor so the next completion cycle can continue from there.

Requirements

  • Obsidian desktop
  • A local Rime dictionary file
  • Node.js and npm if building from source

The plugin is desktop-only because it reads dictionaries from the local filesystem.

Install From Source

git clone https://github.com/xXxGeorge/obsidian-engnese.git
cd obsidian-engnese
npm install
npm run build

Copy the build output into:

<vault>/.obsidian/plugins/engnese/

Required files:

  • manifest.json
  • main.js
  • styles.css

Then enable Engnese in Obsidian Community Plugins.

Development

Run the watcher:

npm run dev

Build a production bundle:

npm run build

The plugin ID is engnese, so the target plugin directory should also be named engnese.

Dictionary Path

Default path:

~/Library/Rime/rime_ice.dict.yaml

If path expansion causes issues, use an absolute path such as:

/Users/<user>/Library/Rime/rime_ice.dict.yaml

Settings

General

  • Enable plugin: turn Engnese on or off
  • Rime dictionary path: main dictionary entry file
  • Rebuild dictionary index: re-parse the configured dictionary and refresh the in-memory index

Candidate behavior

  • Double Space selects first candidate
  • Double Space timeout
  • Keep space after Double Space selection

Selection shortcuts

  • Selection keys: candidate 1
  • Select candidate 2
  • Select candidate 3
  • Select candidate 4
  • Select candidate 5
  • Previous page
  • Next page

Default shortcuts:

  • Tab: candidate 1
  • Ctrl-;: candidate 2
  • Ctrl-': candidate 3
  • Ctrl-/: candidate 4
  • Ctrl-[: candidate 5
  • Ctrl-,: previous page
  • Ctrl-.: next page

In some environments, Ctrl-[ is interpreted as Escape. If that happens, remap Select candidate 5 in plugin settings.

Context guards

  • Disable in code blocks
  • Disable in inline code
  • Disable in math

Limitations

  • The dictionary index is currently kept in memory only and is rebuilt on demand.
  • Candidate ranking is dictionary-weight based with a few simple heuristics; there is no adaptive learning yet.
  • The plugin currently targets desktop usage only.

Troubleshooting

  • Dictionary load error: verify the configured path and try an absolute path.
  • Dictionary changed but results did not update: click Rebuild dictionary index.
  • Ctrl-[ behaves like Escape: remap candidate 5 to another shortcut.
  • Double-space keeps a trailing space unexpectedly: disable Keep space after Double Space selection.

License

This project is licensed under MIT. See LICENSE.

HealthExcellent
ReviewSatisfactory
About
Type English letters and convert the current token to Chinese by treating it as pinyin in the background, replacing the typed token when a candidate is accepted. Read local Rime .dict.yaml dictionaries (including import_tables), fall back to the longest matching prefix, support candidate shortcuts, paging and optional double-space acceptance, and skip fenced code, inline code, and math.
AutocompleteLanguagesIntegrations
Details
Current version
1.0.1
Last updated
4 months ago
Created
4 months ago
Updates
1 release
Downloads
95
Compatible with
Obsidian 1.5.0+
Platforms
Desktop only
License
MIT
Report bugRequest featureReport plugin
Author
xxxgeorgexxxgeorge
GitHubxxxgeorge
  1. Community
  2. Plugins
  3. Autocomplete
  4. Engnese

Related plugins

Dictionary

A multilingual dictionary that shows word definitions in the sidebar and popover synonyms.

BRAT

Easily install a beta version of a plugin for testing.

Local REST API with MCP

Unlock your automation needs by interacting with your notes over a secure REST API.

Fast Note Sync

Real-time sync of your vaults across server, mobile, and web; shareable with anyone; supports REST and MCP integrations to build your personal AI knowledge base.

Maps

Adds a map layout to bases so you can display notes as an interactive map view.

Numerals

Turn any code block into an advanced calculator. Evaluate math expressions on each line of a code block, including units, currency, and optional TeX rendering.

Zotero Integration

Insert and import citations, bibliographies, notes, and PDF annotations from Zotero.

Agent Client

Chat with Claude Code, Codex, Gemini CLI, and more via the Agent Client Protocol — right from your vault.

Readwise Official

Sync highlights from Readwise to your vault.

LanguageTool Integration

advanced spell/grammar checks with the help of language-tool.