Skip to content

๐Ÿ”ฎ๐Ÿ“ Obsidian plugin that adds classic hotkey/shortcuts commands from popular IDEs like Visual Studio Code or JetBrains Family.

License

Notifications You must be signed in to change notification settings

KrazyManJ/obsidian-keyshots

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

213 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Obsidian Plugin Downloads Release date GitHub Release Date License Build Status

Keyshots is an Obsidian plugin that adds classic hotkey/shortcuts commands from popular IDEs like Visual Studio Code or JetBrains Family.

๐ŸŒ  Visual examples

Keyshots adds actions like move line up or down...

...add caret cursor up or down...

...insert lines above or below...

...duplicate line up or down...

...duplicate text or selection...

...toggle readable line length inside editor...

...toggle line numbers inside editor...

...encode or decode URI text...

...transform selected texts to lowercase, uppercase or titlecase...

...join selected lines to one line...

...split selections on new line and trim selection...

...sort selected lines with alphanumeric comparison...

...transform selections to or from snakecase...

...and much more commands to explore! (And more are comming soon)

โŒจ๏ธ List of Keyshots commands with IDE Mappings

Here is a full list of all Keyshots commands with mappings of hotkeys that are available. If any of hotkey for IDE action is missing, Keyshots mappings hotkey is used instead (This behavior can be changed in settings).

Hotkeys Keyshots Default Mappings Visual Studio Code JetBrains IDEs Microsoft Visual Studio
Duplicate line up (Visual Studio Code) Shift + Alt + โ†‘ Shift + Alt + โ†‘
Duplicate line down (Visual Studio Code) Shift + Alt + โ†“ Shift + Alt + โ†“
Duplicate selection or line (JetBrains IDEs) Ctrl + Alt + D Ctrl + D Ctrl + D
Insert line above Ctrl + Shift + Enter Ctrl + Shift + Enter Ctrl + Alt + Enter Ctrl + Enter
Insert line below Shift + Enter Ctrl + Enter Shift + Enter Shift + Enter
Join selected lines Ctrl + Shift + J Ctrl + J Ctrl + Shift + J
Move selected lines down Alt + โ†“ Alt + โ†“ Shift + Alt + โ†“ Alt + โ†“
Move selected lines up Alt + โ†‘ Alt + โ†‘ Shift + Alt + โ†‘ Alt + โ†‘
Reverse selected lines Alt + R
Shuffle selected lines Ctrl + Shift + Alt + S
Sort selected lines Ctrl + Shift + S
Indent Alt + ]
Unindent Alt + [
Better insert callout Shift + Alt + C
Insert code block Ctrl + Shift + `
Insert ordinal numbering Shift + Alt + N
Insert Table Shift + Alt + T
Change Keyshots preset Ctrl + Shift + P
Open Keyshots settings tab Ctrl + Alt + ,
Switch Keyshots case sensitivity Ctrl + Alt + I
Switch 'inline title' setting Ctrl + Alt + T
Switch 'line numbers' setting Ctrl + Alt + N
Switch 'readable line length' setting Ctrl + Alt + R
Reopen current note Alt + Q
Open developer tools F12
Toggle focus mode Ctrl + Alt + F
Duplicate tab Ctrl + Alt + D
Close all foldable callouts Shift + Alt + L
Open all foldable callouts Shift + Alt + O
Toggle all callouts fold state Shift + Alt + K
Toggle case (JetBrains) Ctrl + Shift + U Ctrl + Shift + U
Transform selections to lowercase Alt + U Ctrl + Shift + U
Replace by Regular Expression (Regex) Ctrl + Alt + H
Toggle selections kebabcase Alt + -
Toggle keyboard input (<kbd>) Ctrl + Shift + K
Toggle selections snakecase Shift + Alt + -
Toggle underline Alt + N
Toggle selections URI encoded/decoded string Ctrl + Alt + U
Transform selections to titlecase (capitalize) Alt + C
Trim selections Alt + T
Add caret cursor down Ctrl + Alt + โ†“ Ctrl + Alt + โ†“ Shift + Alt + โ†“
Add caret cursor up Ctrl + Alt + โ†‘ Ctrl + Alt + โ†‘ Shift + Alt + โ†‘
Select all word instances Ctrl + Shift + L Ctrl + Shift + L Ctrl + Shift + Alt + J Shift + Alt + ;
Select multiple word instances Ctrl + D Ctrl + D Alt + J Shift + Alt + .
Search by Regular Expression (Regex) Ctrl + Alt + S
Split selections by lines Ctrl + Alt + L
Expand line selections Alt + E Ctrl + L Ctrl + W Shift + Alt + =
Split selections on new line Alt + S
Go to next fold Ctrl + Alt + ]
Go to previous fold Ctrl + Alt + [
Go to parent fold Ctrl + Alt + P

โœŒ๏ธโŒจ๏ธ Double-Key commands

Double key commands are feature used in JetBrains IDEs, that are doing certain actions after specific key is pressed twice.

Now Keyshots has two double-key commands:

  • Pressing and holding last key and then press โ†‘ or โ†“ will add caret cursor just like Add caret cursor up or Add caret cursor down do
  • If you have internal plugin Quick Switcher enabled, then this shortcut will open quick switcher window just like Ctrl + O does

If you do not like them, then you can disable them in settings.

๐ŸŽ›๏ธ Settings

Adds ability to choose default hotkeys mappings by IDEs presets. You can also configure behavior of some commands.

You can choose from these IDEs presets:

  • Clear (everything blank; set in default when keyshots are installed)
  • Visual Studio Code
  • JetBrains IDEs Family (IntelliJ IDEA, PyCharm, WebStorm, ... )
  • Microsoft Visual Studio
  • Keyshots default hotkeys mappings

You can change it also via modal window inside obsidian that you can open with command "Change Keyshots preset" with Ctrl + Shift + P shortcut.

โš ๏ธ Possible conflicts:

Some IDE commands have hotkey, that is already set to another Obsidian action and that results into conflict.

Here is list of all possible conflicts:

Hotkey Visual Studio Code JetBrains IDEs Microsoft Visual Studio Obsidian Action
Ctrl + L Expand line selections Toggle checkbox status
Ctrl + Enter Insert line below Insert line above Open link under cursor in new tab
Ctrl + W Expand line selections Close current tab
Ctrl + Alt + Enter Insert line above Open link under cursor to the right

My conflicts handling

For default Keyshots mappings I will take care of all conflicts with Obsidian hotkeys. However, mind that I can take care of obsidian hotkeys only meaning that plugins hotkeys are irrelevant and impossible to handle due to unlimited plugin amount.

Also, obsidian team recommends to don't set default hotkeys for commands and that is why Keyshots installs with "clear" preset!

About

๐Ÿ”ฎ๐Ÿ“ Obsidian plugin that adds classic hotkey/shortcuts commands from popular IDEs like Visual Studio Code or JetBrains Family.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •