A programmable keyboard for Android that lets you send phrases, lenny faces, macros, or data from the Internet in a single tap!
kboard includes a VIM-like syntax for adding special macro keys, to perform tasks like cursor movements, copy/pasting and text manipulation.
A command key has the following format:
/<friendly label>!<comma separated commands>
This creates a key titled "Italicise", which does the following:
dw deletes the previous word and adds it to the buffer,
i inserts the text in the brackets (which would be the deleted word wrapped in underscores.
Most commands can be preceded by a number, indicating how many times it will be run.
ddelete previous character
dwdelete previous word
3dwdelete previous three words
dt(char)deletes (backwards) up to and including the specified character
ds- deletes either the selected text, or if nothing is selected then deletes everything.
ppaste from buffer
pcpaste from clipboard
i(text)output the content of the brackets ($0 gets replaced * with the last deleted/copied content)
iraw(text)as i, but does not adhere to settings such as autospace or Passive Aggressive
upper(text)as i, but in upper case
lower(text)as i, but lower case
jmove cursor back by a character
kmove cursor forward by a character
bmove cursor back by a word
wmove cursor forward by a word
strigger a send command
e(...)execute the command in the brackets
rndoutput a random kboard key
rnd(word1;word2;...)output a random word from the comma separated list
rndeoutput a random emoji
fr(from;to)replace all instances of
fancy(style)outputs buffer text with funky unicode characters (circle, darkcircle,square,darksquare,double,monospace,fancy,fancybold)
curl(URL)requests data from a URL and outputs it.
Examples of use
/Italics!i(__),j - this writes the two underscores then moves the cursor between them
/Repeat word x4!dw,4p - repeats the previous word 4 times
/darkcircle!ds,fancy(darkcircle) - replaces selection or everything with 🅣🅔🅧🅣 🅛🅘🅚🅔 🅣🅗🅘🅢. Choose from
Warning: weird unicode characters look cool but break accessibility software, so please don't use in public places!
/exec!dt(!),e($0) - this is meta, it enables you to write and execute commands inline in a text field by writing e.g.
!10e(^, i(* ), ^) and hitting the exec key
/bullets!10e(^, i(* ), ^) - prepends "* " the the previous 10 lines
/emojigame!10rnde - outputs 10 random emoji
/feeling lucky!rnd,s - sends a random kboard key
/birthday!dw,rnd(Happy Birthday name;Hey name, happy birthday.;hb2u;Have a great day name),fr(name,$0) - write a name, then press this key to send a random birthday message to this name
/bdaysend!birthday,s - Can also have commands that refer to other command keys you've made'
/uuid!curl(https://httpbin.org/uuid) - Can make arbitrary GET requests to URLS
curl commands allows you to create your own HTTP endpoints to output anything you like!
Here are some examples of how it can be used:
An endpoint that searches the Youtube API, and returns the URL for the first video found.
Outputs a cat fact from a Cat Fact API
Outputs a random lame joke.