MOUSELESS

The Mouseless Roam extension aims to create a fully keyboard accessible experience in Roam! The name of the script is mouseless.

Installation

You could use the Copy Extension button below to individually install this extension. To install, just paste anywhere in your Roam graph and click "Yes, I Know What I'm Doing".

Manual Installation

If instead you prefer to manually install, first create a block with the text {{[[roam/js]]}} on any page in your Roam DB. Then, copy and paste this code block as a child of the block.

var existing = document.getElementById("mouseless");
if (!existing) {
  var extension = document.createElement("script");
  extension.src = "https://roamjs.com/mouseless.js";
  extension.id = "mouseless";
  extension.async = true;
  extension.type = "text/javascript";
  document.getElementsByTagName("head")[0].appendChild(extension);
}

Usage

The script is not configurable.

The biggest hurdle to transitioning to a mouseless experience in any application is remembering what keyboard shortcut maps to what. This extension adds a "master" keyboard short cut in CTRL+? on both Windows and Mac. Once triggered, a help modal will appear where you could start typing your desired action to discover or remind yourself of what the key mapping is. Hit ESC to exit the modal back to the previously focused location.

The extension also adds the following shortcuts that were previously unsupported:

  • Ctrl-Shift-S - Add Shortcut To Page
  • Ctrl-Shift-C - Copy Current Block Ref

The dialog also allows triggering these actions directly by navigating with the arrow keys and hitting enter.

More shortcuts will be added over time as I find moments where I use my mouse.

There will undoubtedly be commands that the dialog will be missing, especially as time goes on. Feel free to ping me if so!

Playground

Hit CTRL+SHIFT+? to render the Mouseless Help Dialog!

Demo

Other Extensions