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

Key Sequence

wantchanewantchane51 downloads

Assign multi-key sequences to any command.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates3

Assign multi-key sequences to any Obsidian command, configured via a vimrc-style file.

How it works

Instead of a single chord, you press a sequence of keys to trigger a command. For example, press Space then h to toggle left sidebar.

No key sequences are pre-configured. You define your own in the config file.

Configuration

Key sequences are defined in a config file using vimrc-style syntax.

By default, the plugin looks for .obsidian/key-sequence.vimrc in your vault. You can change this path in the plugin settings.

Syntax

" comment
let mapleader = "<key>"
gmap <key-sequence> :<command-id><CR>
  • Lines starting with " are comments.
  • let mapleader defines a leader key referenced by <leader> in sequences. Note: This plugin has no Vim-style leader key. <leader> is simply a placeholder that gets substituted with the mapleader value. For example, let mapleader = "<Space>" means <leader>h behaves identically to writing <Space>h.
  • gmap maps a key sequence to an Obsidian command ID.

Examples

let mapleader = "<Space>"

gmap <leader>e :editor:focus<CR>

Settings

Open Settings → Key Sequence to configure:

  • Config file path — Relative path from vault root. Defaults to .obsidian/key-sequence.vimrc. The file is auto-created with a template on first load if it doesn't exist.

  • Embedded mode — Merge key sequences into another plugin's config file (e.g. Obsidian-Vimrc-Support's .obsidian.vimrc). When enabled, only lines prefixed with the marker below are parsed.

  • Line prefix marker — Only visible when embedded mode is on. Defines the prefix that marks a line as a key sequence definition (default: " ks>).

Embedded mode example

In your .obsidian.vimrc:

let mapleader = "<Space>"
" ks> let mapleader = "<Space>"

exmap file_explorer_reveal_active_file obcommand file-explorer:reveal-active-file
nmap <leader>e :file_explorer_reveal_active_file<CR>

" ks> gmap <leader>e :editor:focus<CR>

Usage

  1. Create your config file (or let the plugin auto-create it).
  2. Define your key sequences using the syntax above.
  3. Use the Key Sequence: Reload config file command to apply changes without restarting Obsidian.

Key sequences are disabled when an input, textarea, select, or contentEditable element is focused, so they won't interfere with typing.

Installation

Manual

Copy main.js, manifest.json to <vault>/.obsidian/plugins/key-sequence-obsidian/.

Notes

This plugin captures keydown events at the document level to match key sequences. Conflicts with other hotkeys are possible — if a sequence prefix matches another binding, the key sequence takes priority while a partial match is in progress.

Debug logging is written to the console with the Key Sequence: prefix.

HealthExcellent
ReviewSatisfactory
About
Assign multi-key sequences to any Obsidian command, including commands from other plugins, letting you press a series (e.g., Ctrl+b then h) to trigger actions. Restrict sequences to Vim normal mode to avoid interfering with typing. Give sequences priority while a prefix is in progress to resolve hotkey clashes.
HotkeysCommandsVim
Details
Current version
2.0.0
Last updated
4 weeks ago
Created
Last month
Updates
3 releases
Downloads
51
Compatible with
Obsidian 1.1.0+
Platforms
Desktop, Mobile
License
GPL-3.0
Report bugRequest featureReport plugin
Author
wantchanewantchane
GitHubwantchane
  1. Community
  2. Plugins
  3. Hotkeys
  4. Key Sequence

Related plugins

Tab Switcher

Switch your tabs with Ctrl + Tab in recently used order like in a browser.

Hotkey Helper

Easily see and access any plugin's settings or hotkey assignments (and conflicts) from the Community Plugins tab.

Tray

Run Obsidian from the system tray for customisable window management and global quick notes.

Keyshots

Add classic hotkey/shortcuts commands from popular IDEs like Visual Studio Code or JetBrains Family.

Leader Hotkeys

Add leader hotkey support to any command (like tmux or vim).

Vimrc Support

Auto-load a startup file with Vim commands.

Code Editor Shortcuts

Add keyboard shortcuts (hotkeys) commonly found in code editors such as Visual Studio Code (VS Code) or Sublime Text.

Doubleshift

Open the command palette by pressing Shift (or any other key) twice like in IntelliJ and create your own shortcuts.

Callout Toggles

Instantly add, switch, or remove callouts in your notes. Provides a separate command for every callout type.

Tab Selector

Quickly switch tabs in various ways.