man keyjawn

Everything the keyboard does, section by section. The lite version includes the core keyboard features. The full version adds voice, clipboard, SCP, slash commands, and swipe gestures.

keyjawn --terminal-keys

A dedicated row above the QWERTY layout with the keys terminals need: Esc, Tab, Ctrl, and arrow keys < >.

Always visible. No toggling layers or long-pressing to find them. Ctrl uses a three-state toggle: tap once to arm it for one keypress, long-press to lock it on, tap again to turn it off. Hold arrow keys to repeat.

Esc Tab Ctrl < >

keyjawn --number-row

A dedicated 0-9 row above the QWERTY keys. Long-press any number for its shifted symbol. Small hint labels on each key show you what you'll get.

No switching layers to type a number. No memorizing which symbol lives where. Every key shows both values up front.

1 2 3 4 5 6 7 8 9 0

keyjawn --alt-keys

Long-press any letter for accented characters and symbol variants. Keys with a single alt character fire immediately. Keys with multiple options show a popup where you slide to pick.

Examples: long-press a for accented variants, n for the tilde variant, e for accented forms.

a
aaaa

keyjawn --voice

Tap the mic in the extra row. A waveform animation shows audio level while you speak. Text appears at your cursor as the speech recognizer processes it -- streaming partial results, not waiting for you to finish.

When 90% of what you type into an AI agent is natural language, speaking is faster than typing on a phone keyboard. Tap stop or the mic again to finish.

Full version only. Requires microphone permission.

fix the auth bug in login.ts

keyjawn --clipboard

Tap the clipboard button in the extra row to see your recent clipboard history. Tap any entry to paste it at your cursor. No more switching apps to re-copy something you already copied.

Full version only.

git commit -m "fix auth"
ssh pi@192.168.1.50
export API_KEY=sk-...

keyjawn --scp-upload

Configure your SSH hosts in settings. Tap the upload button in the extra row. Pick a photo from your gallery. KeyJawn SCPs it to your server and types the remote file path at your cursor.

Useful for sharing screenshots with Claude Code without leaving the terminal. One tap to upload, path auto-inserted.

Full version only. Credentials stored with AndroidX EncryptedSharedPreferences.

# you tap upload, pick a photo
scp photo_001.jpg pi@server:~/uploads/
# path typed at cursor:
~/uploads/photo_001.jpg_

keyjawn --slash-commands

On the symbols layer, the / key opens a command picker instead of typing a literal slash. Select a command to insert it. Dismiss without selecting to type / normally.

Built for the slash command patterns every LLM CLI uses: /help, /clear, /compact, and others.

Full version only.

/help
/clear
/compact
/review
/init

keyjawn --themes

Four color themes to match your setup: Dark (the default), Light for outdoor use, OLED black for true-black displays, and Terminal green for the classic look.

Themes apply to every element -- keys, backgrounds, hints, accent colors. Pick one in settings and the keyboard changes on the next open.

Full version only.

Dark A
Light A
OLED A
Term A

keyjawn --custom-commands

Create your own slash command sets alongside the built-in ones. Add commands for tools you use, group them by project, toggle sets on and off.

Built-in sets cover Claude Code, OpenClaw, and Gemini CLI patterns. Custom sets let you add whatever commands your workflow needs.

Full version only.

my-project custom
/deploy-staging
/run-tests
/check-logs

keyjawn --swipe

Swipe across the keyboard area for quick actions:

  • Swipe left -- delete word
  • Swipe right -- space
  • Swipe up -- switch to symbols layer
  • Swipe down -- switch to letters layer

Full version only.

delete word
space
symbols
letters

keyjawn --quick-key

The bottom-right key (next to the spacebar) is configurable. Long-press it to pick from /, ., ,, ?, !, and more. It remembers your choice.

Set it to whatever character you type most often. Default is / for terminal users.

/ . , ? !

keyjawn --colors

Each function key in the extra row has a distinct background color. At a glance, you can tell Esc from Tab from Ctrl from the arrow cluster. No reading labels in the heat of a terminal session.

Arrow keys share one color. Clipboard, upload, and mic each get their own. Ctrl stays neutral until armed or locked, then shifts to active/locked colors.

ESC Tab Clip Ctrl Arrows Upload Mic

keyjawn --autocorrect

Off by default -- because autocorrect in a terminal is a disaster. Long-press the spacebar to toggle autocorrect per app. When enabled, the spacebar label changes to show you it's active.

Turn it on for Slack, leave it off for Termux. KeyJawn remembers the setting for each app.

Full version only.

Termux off
Slack on
Cockpit off

keyjawn --shift

Single-tap Shift for one uppercase letter -- it auto-returns to lowercase after. Double-tap for caps lock. The shift key changes appearance to show you which state you're in.

Shift tap once = one capital
SHIFT double-tap = caps lock