Hardware CapsLock as Control key in iOS SSH client using blink.sh

I’ve been searching for a way to use CapsLock as another Control key on iOS for as long as there has been hardware keyboard support in iOS. (Emacs habits never die!)1 I have legacy USB and bluetooth keyboards that I’d like this to work with.

Blink shell (homepage) has a software setting that allows the “CapsLock as Control” behavior. It also has useful features like support for the mosh shell (improvement on ssh sessions over flaky connections) and color themes and great font support, including included Powerline-compatible fonts.

Settings in blink.sh

blink app is strange since it presents you with a prompt similar to what you’d encounter in a terminal shell: blink>. To bring up app settings, the command is config.

Bring up config

The keyboard-related settings are easy enough to find.

Settings dialog <> Keyboard settings <>

Since the app uses a software method to emulate the key-remapping behavior, the CapsLock indicator on actual keyboard still will toggle its light with each press. Also note that this behavior only works within the app, and doesn’t work across iOS apps or system :frowning:

Available in the App Store

Blink shell is available for a reasonable price in the App Store—it is well worth the value! It is also open-source, so it’s possible to file issues or build your own version from its open-source repo on GitHub.

  1. Many of Emacs functions and commands are bound to the Control. Using the location of the CapsLock key as another Ctrl key reduces strain in the keyboard hand. 

Published on May 23, 2018