Emacs Keybindings Lite

by Ashpega
5
4
3
2
1
New Plugin

Description

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

Reviews

No reviews yet.

Stats

stars
downloads
0
forks
0
days
NaN
days
NaN
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
0
commits

Latest Version

Invalid date

Changelog

README file from

Github

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

  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