Emacs Keybindings Lite

approved

by Ashpega

Emacs-like keybindings for Obsidian, designed for Windows users. - This plugin has not been manually reviewed by Obsidian staff.

1 stars115 downloadsUpdated 1mo agoMIT

Emacs Keybindings Lite

Emacs-like keybindings for Obsidian, designed for Windows users.

This plugin provides a lightweight Emacs-style editing experience while respecting common Windows shortcuts as much as possible.


Purpose

This plugin aims to:

  • Bring essential Emacs navigation and editing behaviors to Obsidian
  • Respect Windows default shortcuts as much as possible
  • Provide stable and predictable behavior using CodeMirror keymap
  • Allow users to selectively enable/disable non-native extensions

It is not a full Emacs emulation, but a practical and stable subset.


Features

Implemented Keybinds

  • Cursor movement

    • Ctrl+F (forward) / B (backward) / P (upward) / N (downward)
    • Ctrl+A (beginning of line) / E (end of line)
    • Ctrl+< (beginning of note) / Ctrl+> (end of note) (depending on keyboard layout)
  • Word / chunk movement

    • Alt+F (forward) / B (backward)
  • Enter

    • Ctrl+M (enter)
  • Deletion

    • Ctrl+D (forward)
    • Ctrl+H (backward)
  • Deletion by chunk

    • Alt+D (forward)
    • Alt+H (backward)
  • Selection

    • Ctrl+; (from cursor point to end of line)
  • Kill / Yank

    • Ctrl+K (cut from cursor point to end of line)
      • Kill-ring is not implemented.
    • Ctrl+Y (yank)
  • Mark system

    • Ctrl+Space (mark set),
    • Ctrl+G (clear mark set)
  • Cut/Copy region

    • Ctrl+W (cut selected region)
    • Alt+W (copy selected region)
  • View control

    • Ctrl+L (recenter the cursor in the editor view)

Visual vs Logical line mode

Switch between:

  • Visual line mode (wrapped line based)
  • Logical line mode (actual line based)

✔ No reload required
✔ Applies to movement, selection, and kill operations


Key repeat support

  • Press-and-hold behavior for selected keys
  • Can be enabled/disabled in settings

✔ No reload required
✔ Applies to movement, selection, and kill operations


Configurable hotkey groups

You can toggle the following extensions:

  • Extended delete keys
    Ctrl+H, Alt+H

  • Extended selection key
    Ctrl+;

  • System override (Windows-style)
    Ctrl+X, Ctrl+C

When disabled, native Obsidian / OS behavior is preserved.


Other features

  • Pressing Ctrl+C clears the selection.

  • Regarding Ctrl+X Ctrl+X typically cuts the entire logical line in Obsidian by default. In this plugin, it cuts the selected range, similar to Windows.

  • Regarding Ctrl+A/E In Visual mode, pressing Ctrl+E moves the cursor to the end of the visual line on the first press and to the end of the logical line on the second press. Similarly, pressing Ctrl+A moves the cursor to the beginning of the visual line on the first press and to the beginning of the logical line on the second press. These behaviors remain the same even when the mark is active.


Installation

From Community Plugins (recommended)

  1. Open Obsidian
  2. Go to Settings → Community Plugins
  3. Disable Safe Mode
  4. Search for "Emacs Lite"
  5. Install and enable the plugin

Manual installation

  1. Copy this plugin into your vault:

    .obsidian/plugins/emacs-lite/

  2. Reload Obsidian

  3. Enable the plugin in Settings


Notes

  • Optimized for Windows environments
  • Not a full Emacs emulation (focuses on practical behavior)
  • Undo (Ctrl+Z) / Redo (Ctrl+Shift+Z) use native Obsidian behavior
  • Ctrl+V remains the default Windows paste behavior
  • Alt+V (page up) is intentionally not implemented

Privacy

This plugin runs entirely offline. It does not collect, transmit, or store any data externally — and never will.


Future Work

  • Enhanced undo behavior
  • Additional customization options

License

MIT

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.