Execute obsidian commands with short key sequences. For example, 'tp' for 'Toggle Preview' and 'tb' for 'Toggle Sidebar'. Easier to remember.

Overview

Key Sequence Shortcut

Key Sequence Shortcut is an obsidian plugin, allow binding key sequences to an obsidian command. For example

  • If we assume "t" stands for "toggle", we can bind "tl" to "Toggle Preview", "tb" to "Toggle Sidebar".
  • If we assume "x" stands for "text", we can bind "xl" to "Toggle Bulllet List", "xc" to "Toggle Check list status"

A key sequence is easier to memorize than typical key shortcut like "Ctrl-j".

Install

Install by search "Key Sequence Shortcut" in Obsidian "Commnuity plugins" option.

Usage

  • Command "Open Key Sequence Menu" (bind to Ctrl-m). Type "xl" will execute editor:toggle-bullet-list, no need to type "Enter".
  • Configuration
    • The default configuration file is "kssrc.md" at workspace root folder. Can be customized.
      • Comment line: use double quote to start a comment line
      • Normal line: key-sequence<TAB>command-id<TAB>description. The last part "<TAB>description" is optional.
    • We can easily find command id by running command "Insert Command Id and Name" (bind to Ctrl-*)
    • Key Sequence Shortcut will run corresponding command as long at user input matches any configuration item, so "xh" will hide key sequences like "xha", "xhb". Please avoid to have one key sequence to be the prefix of other key sequences.
  • Run command "Reload Key Sequence Shortcut Config File" to reload after configuration file change

Configuration example

" p for project
pf	darlal-switcher-plus:switcher-plus:open	"Quick Switcher++: Open"

" x for text
xh	editor:set-heading
xl	editor:toggle-bullet-list
xc	editor:toggle-checklist-status
xq	editor:toggle-blockquote
xw	editor:insert-wikilink
xe	editor:insert-embed
xi	editor:indent-list
xu	editor:unindent-list

" xx for refactor
xxh	editor:rename-heading

" e for editor
em	obsidian-mark-and-select:set-mark
es	obsidian-mark-and-select:select-from-mark
"	following two commands only available on mobile
er	editor:redo
eu	editor:undo

Acknowledgement

This plugin is inspired by Vim multi-key shortcut and VSpaceCode. Text editing will never been so much fun without such key sequence shortcut.

In the Obsidian world, I love vimrc-support plugin so much and I am using it literally everyday. It already support key sequence shortcut in editor VIM mode. Then why do I create Key Sequence Shortcut plugin? Because many situations there are no VIM mode, below are some pain points:

  • Users who don't like VIM mode
  • On Obsidian Mobile (I have too many buttons in Mobile toolbar!)
  • On desktop
    • When I switch to Markdown preview mode, I lose the VIM editor mode and can't switch back with key sequence.
Comments
  • [Feature Request] Add alias (description) as the third field

    [Feature Request] Add alias (description) as the third field

    Because in the dialog, the QuickAdd commands are hard to read:

    image

    Could it be posibble there's a third field, and in dialog shows this field? For example:

    • config:
    adm	quickadd:choice:27316daa-cd2d-4763-ab0f-162d67212a11quickadd:choice:31fbd691-2f4a-471f-ae5e-3c583b0538ba "Insert Admonitions via QuickAdd#1"
    
    • in selection dialog shows(If there's no the third field, uses the 2nd field instead):

    adm: Insert Admonitions via QuickAdd#1 mv: file-explorer:move-file

    May i use Chinese next time? Thanks.

    opened by emisjerry 6
  • [Feature Request] Using with slash command

    [Feature Request] Using with slash command

    Could it be posibble that we can use these shortcuts with Slash command, which without selection dialog?

    For example:

    /xh -> will trigger editor:set-heading /xl -> will trigger editor:toggle-bullet-list

    opened by emisjerry 5
  • FR: Can the plugin suppose the first alphabet ignore?

    FR: Can the plugin suppose the first alphabet ignore?

    Thanks for you plugin. It helps me a lot and make me have a high efficiency on my phone. And I have a problem about it. My keyboard apply "A letter of alphabet capital letter" on phone, So I have to switch capital letter when I use Key sequence shortcut. Can the plugin ignore the first alphabet? Thank you and hope your reply!

    opened by YIRU69 4
  • Handle shift key on its own as part of a sequence

    Handle shift key on its own as part of a sequence

    I'd like to press shift twice to bring up global search (like in IntelliJ and JetBrains products). This plugin looks like it could solve it, but I can't seem to find the right config for it if it exists.

    opened by NomarCub 1
  • FR: Option to initiate sequence without suggestion modal

    FR: Option to initiate sequence without suggestion modal

    Scenario: Power user with thumb key on custom keyboard dedicated to this plugin, for maximum speed. All command sequences are super easy to remember, like tbl = toggle block quote, etc. So the modal with command suggestions just flashes by every time and it's of no use to me anymore in 99% of the cases.

    Feature request: Adding a key mapping option to initiate a sequence without the suggestion modal. Thanks!

    opened by Gattomarino 0
  • Insensitivity to the selected keyboard layout

    Insensitivity to the selected keyboard layout

    Is it possible to make the keys you press when the palette is open to be insensitive to the selected keyboard layout?

    I use two keyboard layouts: Russian and English. This fact gives me a hard time when using this plugin, because if you open the palette when the Russian keyboard layout is active, the keyboard shortcuts recorded for the English layout does not work. I made sure that you can duplicate the commands for each keyboard layout, but it's confusing and takes a while to figure out which keys you should press depending on the selected layout and the combinations offered in the palette.

    opened by tonygrr 0
  • [FR] show/hide all shortcuts on empty prompt

    [FR] show/hide all shortcuts on empty prompt

    Motivation

    When I hit my shortcut to bring up the key sequence prompt, it's easy to be distracted by all the options that show up in the menu.

    Suggested change

    Add a toggle to the settings menu that would disable these suggestions on an as-yet empty string/before typing any characters. or perhaps a 3 way slider (or however's easiest to represent the ternary), the middle option of which would be to only show available single-character shortcuts.

    Notes

    I suspect this one's simple, so I might make a PR for it in the next few weeks.

    opened by ChasKane 0
  • FR: use a delimiter other than `tab`

    FR: use a delimiter other than `tab`

    reason being that you cannot properly enter a tab in Obsidian – it will indent the line instead of inserting the needed tab. And having to open the document somewhere else is quite clunky. Maybe use | or ;?

    opened by chrisgrieser 0
  • [Bug?] Cannot execute the command

    [Bug?] Cannot execute the command "reload app without save"

    There is no response when executing the command "reload app without save". I guess it would be hard to achieve but if it is possible to support this command. Thanks for reading.

    opened by XMB-7 0
  • FR: support using a slash to open the KSS command palette when switching off the core plugin

    FR: support using a slash to open the KSS command palette when switching off the core plugin "Slash commands"

    Like what Notion does and what Obsidian also has achieved via a core plugin called "Slash commands". Is it possible that when I switch off this core plugin, I was allowed to just type in a slash to popup the KSS command palette? Meanwhile, hoping the corresponding hotkey like "ctrl+shift+p" that I've set also takes effect. BTW, thanks a lot for your effort on this awesome plugin. 图片

    opened by XMB-7 0
Releases(2.0.2)
Owner
Yu Wang
Yu Wang
Sharing short code samples, logs or links is now easier than ever!

Pastebin Sharing short code samples, logs or links is now easier than ever. Explore the docs » • Report Bug • Request Feature • About The Project With

Prasoon Soni 4 Nov 26, 2022
Replace ansi escape sequences with tokens indicating what they are

Replace ansi escape sequences with tokens indicating what they are

Lily Scott 3 Mar 7, 2022
Codebraid Preview provides a Markdown preview for Pandoc documents within VS Code.

Codebraid Preview provides a Markdown preview for Pandoc documents within VS Code. Most Markdown previews don't support all of Pandoc's extensions to Markdown syntax. Codebraid Preview supports 100% of Pandoc features—because the preview is generated by Pandoc itself! There is also full bidirectional scroll sync and document export.

Geoffrey Poore 12 Dec 28, 2022
Get an isolated preview database for every Netlify Preview Deployment

Netlify Preview Database Plugin Create an isolated preview database for each preview deployment in Netlify Quickstart • Website • Docs • Discord • Twi

Snaplet 10 Nov 16, 2022
Tool to sign data with a Cardano-Secret-Key // verify data with a Cardano-Public-Key // generate CIP-8 & CIP-36 data

Tool to sign data with a Cardano-Secret-Key // verify data with a Cardano-Public-Key // generate CIP-8 & CIP-36 data

Martin Lang 11 Dec 21, 2022
A plugin for Obsidian (https://obsidian.md) that adds a button to its search view for copying the Obsidian search URL.

Copy Search URL This plugin adds a button to Obsidian's search view. Clicking it will copy the Obsidian URL for the current search to the clipboard. T

Carlo Zottmann 6 Dec 26, 2022
This plugin allows side-by-side notetaking with videos. Annotate your notes with timestamps to directly control the video and remember where each note comes from.

Obsidian Timestamp Notes Use Case Hello Obsidian users! Like all of you, I love using Obsidian for taking notes. My usual workflow is a video in my br

null 74 Jan 2, 2023
Add grouped tabsets, which remember the active tab across multiple HTML documents.

Grouped Tabsets See the extension in action. This quarto extension provides support for "grouped" tabsets in Quarto HTML documents. Consider the case

null 13 Sep 30, 2022
Memento mori (Latin for 'remember that you [have to] die'). Self-filling calendar.

Memento mori Latin for 'Remember your death', Memento Mori is a powerful concept that's been used for centuries to help people focus on what truly mat

Roni Laukkarinen 6 Nov 8, 2022
A utility package for making discord-bot commands much easier to write with discord.js.

Cordcommand About A utility package for making discord-bot commands much easier to write with discord.js. Usage Example // initiate discord.js client

NLP practitioners 17 Dec 13, 2022
All terminal commands in one place (you can Contribute to it by putting latest commands and adding Readme)

Terminal-Commands All basic terminal commands in one place Show some ❤ by some repositories You can contribute to this readme If you to contribute wit

Shehzad Iqbal 7 Dec 15, 2022
Add a table of contents to the sidebar of your GitHub issues and pull requests.

github-sidebar-jump-extension Getting started ?? Build locally Checkout the repository to your local machine Run npm install to install all required d

Jason Barry 11 Sep 7, 2022
A userscript to spice your GitHub sidebar with an easy-to-use Table of Contents!

GitHub Sidebar ToC "... finally using that wasted sidebar space" – radiantly Installation You will need a userscript manager like Violentmonkey. Insta

Joshua T. 3 Mar 12, 2022
A serendipity engine on the Twitter sidebar.

Threadhelper Get Threadhelper in the Chrome Webstore | Our Vision A serendipity engine on the Twitter sidebar. ThreadHelper is the Twitter extension t

Threadhelper 17 Nov 24, 2022
WordPress Gutenberg plugin to display the attributes for the currently selected block in the Document sidebar.

Block X-ray Attributes Stable Tag: 1.2.0 Requires at least: 5.5 Tested up to: 5.9 Requires PHP: 7.2 License: GPL v2 or later Tags: block attributes, g

Sal Ferrarello 38 Mar 18, 2022
Generate the VitePress sidebar through the folder structure

⚡ VitePress Plugin: Auto Sidebar Generate the VitePress sidebar through the folder structure. ✨ Release Notes Features Small library TypeScript Suppor

Jonathan Schneider 8 Dec 28, 2022
Toggle the theme in Obsidian's panels

Obsidian Theme Toggler Toggle the theme individually for each of Obsidian's panels. What the plugin does It adds a theme toggle button to each pane in

Lars Magnus Klavenes 13 Nov 28, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022