CCR Languages Quick Reference
A quick reference guide for the language-specific commands included with Caster. Use the "enable <language>"
command to activate a particular module.
- Bash
- C++
- C#
- VoiceDevCommands
- Haxe
- HTML
- Java
- Javascript
- LaTeX
- Matlab
- Markdown
- Prolog
- Python
- R
- Rust
- SQL
- VHDL
Bash
Command | Output | Command | Output |
---|---|---|---|
add comment | # |
lodge and | && |
breaker | break |
lodge not | ! |
case of | TOKEN) ;; |
lodge or | | | |
continue | continue |
print to console | echo |
default | *) ;; |
push | TOKEN+=() |
do loop | until [ ]; do |
return | return |
end switch | esac |
she bang | #!/bin/bash |
for each | for TOKEN in TOKEN; do |
shell iffae | elif [[ ]]; |
for loop | for (( i=0; i<=TOKEN; i++ )); do |
shells | else |
function | TOKEN(){} |
sue iffae | [[ ]] |
iffae | if [[ ]]; |
switch | case TOKEN in |
import | . /path/to/functions |
value false | false |
key do | do |
value not | -z "$var" |
key done | done |
value true | true |
key fee | fi |
while loop | while [ ]; do |
length of | ${#TOKEN[@]} |
C++
Command | Output | Command | Output |
---|---|---|---|
([global] scope / name) | :: |
integer | int |
(pointer / D reference) | * |
lodge and | && |
(reference to / address of) | & |
lodge not | ! |
Vic | vector |
lodge or | | | |
add comment | // |
long comment | /**/ |
array | Brackets |
member | -> |
big integer | Integer |
new new | new |
breaker | break; |
print to console | cout << |
case of | case : |
private | private |
character | char |
public | public |
class | class TOKEN{} |
pushback | push_back |
constant | const |
return | return |
convert to floating point | (double) |
shells | else{} |
convert to integer | (int) |
standard | std |
convert to string | std::to_string() |
static | static |
default | default: |
static cast double | static_cast<double>() |
do loop | do {} |
static cast integer | static_cast<int>() |
double | double |
string | string |
final | final |
switch | switch(){ case : break; default: break;} |
for each | for_each (TOKEN, TOKEN, TOKEN); |
ternary | ()?; |
for loop | for (int i=0; i<TOKEN; i++) |
value false | false |
function | TOKEN TOKEN(){} |
value not | null |
iffae | if(){} |
value true | true |
import | #include |
while loop | while () |
C#
Command | Output | Command | Output |
---|---|---|---|
(lambda/goes to) | => |
internal | internal |
add comment | // |
list | List<> |
array | Brackets |
lodge and | && |
big integer | Integer |
lodge not | ! |
breaker | break; |
lodge or | | | |
case of | case : |
long comment | /**/ |
cast double | (double) |
new new | new |
cast integer | (int) |
print to console | Console.WriteLine() |
character | char |
private | private |
class | class TOKEN{} |
public | public |
constant | const |
return | return |
convert to floating point | Convert.ToDouble() |
shells | else{ } |
convert to integer | Convert.ToInt32() |
static | static |
convert to string | Convert.ToString() |
string | string |
default | default: |
struct | struct TOKEN {} |
do loop | do { } |
switch | switch(){ case : break; default: break; } |
double | double |
ternary | ()?t:f |
enum | enum TOKEN {} |
using | using |
for each | foreach (TOKEN in Collection) |
value false | false |
for loop | for (int i=0; i<TOKEN; i++) |
value not | null |
function | TOKEN TOKEN(){} |
value true | true |
iffae | if(){ } |
var | var TOKEN = TOKEN; |
integer | int |
while loop | while () |
interface | interface TOKEN {} |
VoiceDevCommands
Command | Output |
---|---|
dev key |
Key(""), |
dev text |
Text("") |
dev pause |
+ Pause("") |
dev function |
Function() |
dev repeat |
* Repeat(extra='n'), |
dev choice |
Choice("", {}) |
dev mouse [<mouse_button>] |
Mouse("left") |
dev mouse current [position] |
Mouse("[1003, 537]") |
dev bring app |
BringApp() |
dev descript |
rdescript="MyGrammar: " |
dev mimic [<text>] |
Mimic("") |
dev split dictation [<text>] |
"this", "is", "an", "example" |
dev execute |
.execute() |
command [<spec>] key |
"example": Key(""), |
command [<spec>] key repeat |
"example [<n>]": Key("") * Repeat(extra="n"), |
command [<spec>] text |
"example": Text(""), |
command [<spec>] [bring] app |
"example": BringApp(), |
command [<spec>] function |
"example": Function() |
command [<spec>] mimic [<text>] |
"example": Mimic("test"), |
command [<spec>] playback [<text>] |
"example": Playback([(["test", "command"], 0.0), , |
command [<spec>] mouse [<mouse_button>] |
"example": Mouse("[693, 468], left, |
commander [<spec>] key |
"example": R(Key(""), rdescript="MyGrammar: ", |
commander [<spec>] key repeat |
"example [<n>]": R(Key(""), rdescript="MyGrammar: " * Repeat(extra='n'), |
commander [<spec>] text |
"example": R(Text(""), rdescript="MyGrammar: ", |
commander [<spec>] [bring] app |
"example": R(BringApp(), rdescript="MyGrammar: ", |
commander [<spec>] function |
"example": R(Function(), rdescript="MyGrammar: ", |
commander [<spec>] mimic [<text>] |
"example": R(Mimic("test"), rdescript="MyGrammar: ", |
commander [<spec>] mouse [<mouse_button>] |
"example": R(Mouse("[1244, 690], left, rdescript="" , |
Go
Command | Output | Command | Output | |
---|---|---|---|---|
iffae | if { } |
shells | else { } |
|
switch | switch { } |
case of | case : |
|
breaker | break |
default | default: |
|
while loop | for { } |
for loop | for i := 0; i<; i++ { } |
|
for each | for i := range { } |
convert to integer | strconv.Atoi() |
|
convert to string | strconv.Itoa() |
lodge and | && |
|
lodge or | | | | lodge not | ! |
|
print to console | fmt.Println() |
import | import ( ) |
|
function | func |
class | type struct { } |
|
add comment | // |
long comment | /**/ |
|
value not | nil |
return | return |
|
value true | true |
value false | false |
|
(inter / integer) | | | boolean | |
|||
string | string |
assign | := |
|
(function / funk) main | func main() { } |
make map | make(map[]) |
|
package | package |
`` |
Haxe
Command | Output | Command | Output |
---|---|---|---|
add comment | // |
integer | Int |
anon funk | -> |
lodge and | && |
array of | Array<TOKEN>() |
lodge not | ! |
boolean | Bool |
lodge or | | | |
breaker | break; |
long comment | /**/ |
case of | case : |
map of | Map<TOKEN, TOKEN>() |
class | class |
new new | new |
convert to floating point | Std.parseFloat() |
print to console | trace() |
convert to integer | Std.int() |
private | private |
convert to string | Std.string() |
public | public |
default | default: |
return | return |
do loop | do TOKEN while( ) |
safe cast | cast (TOKEN, TOKEN) |
double | Float |
shells | else |
dynamic | Dynamic |
static | static |
far / variable | var |
string | String |
for each | for (TOKEN in TOKEN) |
switch | switch(){ case : TOKEN; default: TOKEN; } |
for loop | for (i in 0...TOKEN) |
this | this |
function | function |
value false | false |
get class | Type.getClass() |
value not | null |
get name | Type.getClassName() |
value true | true |
iffae | if() |
void | Void |
import | import |
while loop | while () |
instance of | Std.is() |
HTML
Command | Output | Command | Output |
---|---|---|---|
DOC TYPE | <!DOCTYPE html> |
list item / LI | <li></li> |
H 1 / heading one | <h1></h1> |
main | <main> </main> |
H 2 / heading to | <h2></h2> |
make link | <a href=''></a> |
H 3 / heading three | <h3></h3> |
map | <map> </map> |
H 4 / heading for | <h4></h4> |
mark / highlight | <mark></mark> |
H 5 / heading five | <h5></h5> |
menu | <menu> |
H 6 / heading six | <h6></h6> |
menu item | <menuitem> |
H are / HR | <hr> |
meta | <meta > |
H group / headings group | <hgroup></hgroup> |
meter | <meter > |
HTML | <html> </html> |
meter close | </meter> |
abbreviation | <abbr></abbr> |
navigation / navigate | <nav></nav> |
address | <address> </address> |
noscript | <noscript> </noscript> |
anchor | <a></a> |
object/ embedded object | <object > |
area | <area /> |
opt group | <optgroup> </optgroup> |
article | <article > |
option | <option > |
audio | <audio> |
option close | </option> |
base | <base > |
optional break | <option <br> > |
body | <body> </body> |
ordered list / OL | <ol> </ol> |
bold | <b></b> |
output | <output > |
break / be are / BR | <br> |
output close | </output> |
button | <button></button> |
override | <bdo></bdo> |
canvas | <canvas > |
paragraph | <p> </p> |
canvas close | </canvas> |
parameter | <param > |
checkbox | <input type="checkbox"> |
pre-format | <pre> </pre> |
close article | </article> |
progress | <progress > |
close tag | / |
quote | <q></q> |
code | <code></code> |
ruby / pronounce asian | <ruby></ruby> |
content | <content> |
sample output | <samp></samp> |
data | <data></data> |
script | <script></script> |
data list | <datalist> </datalist> |
section | <section></section> |
decorator | <decorator> |
select | <select> </select> |
defining instance | <dfn></dfn> |
semantics / italics | <i></i> |
deleted text / deleted / replaced | <del></del> |
shadow | <shadow> |
description / DD | <dd> |
source | <source > |
details | <details> |
span | <span></span> |
dialog | <dialog> |
strong | <strong></strong> |
division | <div></div> |
style | <style > |
element | <element> |
style close | </style> |
embedded | <embed > |
subscript | <sub></sub> |
embraces pronunciation / RT | <rt></rt> |
summary | <summary> |
emphasis / EM | <em></em> |
superscript | <sup></sup> |
fall-back parenthesis / RP | <rp></rp> |
table | <table> |
field set | <fieldset> </fieldset> |
table body | <tbody> |
field set close | </fieldset> |
table caption / tee caption | <caption> |
fig caption | <figcaption> |
table cell / TD / tee D | <td></td> |
figure | <figure> |
table column group / tee group | <colgroup> |
footer | <footer> </footer> |
table column / tee column | <col> |
form | <form> </form> |
table foot | <tfoot> |
head | <head> </head> |
table head / thead | <thead> |
header | <header> </header> |
table header / TH | <th> |
image | <img></img> |
table macro | <table> <tr> <td></td> </tr> </table> |
inline frame | <iframe > |
table row / tee are | <tr></tr> |
inline frame close | </iframe> |
template | <template> |
input | <input > |
text area | <textarea > |
inserted text / inserted | <ins></ins> |
text area close | </textarea> |
isolate / bi-directional isolation | <bdi></bdi> |
title | <title></title> |
keyboard input | <kbd></kbd> |
track | <track > |
keygen | <keygen > |
underline | <u></u> |
label | <label> |
unordered list / UL | <ul> </ul> |
label close | </label> |
variable | <var></var> |
legend | <legend> |
video | <video > |
link | <link > |
video close | </video> |
list element / DL | <dl> |
small | <small></small> |
time | <time></time> |
Java
Command | Output | Command | Output |
---|---|---|---|
add comment | // |
iterate and remove | for (Iterator<TOKEN> iterator = TOKEN.iterator(); iterator.hasNext();) { String string = iterator.next(); if (CONDITION) { iterator.remove(); } } |
array list | ArrayList |
lodge and | && |
arrow | -> |
lodge not | ! |
big double | Double |
lodge or | | | |
big integer | Integer |
long comment | /**/ |
boolean | boolean |
new new | new |
breaker | break; |
print to console | java.lang.System.out.println() |
case of | case : |
private | private |
cast to double | (double)() |
public | public |
Javascript
Command | Output | Command | Output |
---|---|---|---|
Let | let |
lodge and | && |
add comment | // |
lodge not | ! |
anon funk | () => { } |
lodge or | | | |
breaker | break; |
long comment | /**/ |
case of | case : |
new new | new |
catch | catch(e) { } |
print to console | console.log() |
const | const |
push | push |
continue | continue |
return | return |
convert to floating point | parseFloat() |
self | self |
convert to integer | parseInt() |
shell iffae | else if () |
convert to string | ""+ |
shells | else { } |
default | default: |
switch | switch() { } |
do loop | do { } |
this | this |
document | document |
throw | throw |
for each | for (TOKEN in TOKEN) |
timeout | setTimeout() |
for loop | for (var i=0; i<TOKEN; i++) |
timer | setInterval() |
function | function TOKEN() { }; |
try | try { } |
has own property | hasOwnProperty() |
value false | false |
iffae | if () { } |
value not | null |
index of | indexOf() |
value true | true |
inner HTML | innerHTML |
var | var |
instance of | instanceof |
while loop | while () |
length | length |
LaTeX
Commands are designed to follow LaTeX syntax as closely as possible, for example insert document class
produces \documentclass{}
. See lines 69- of caster/lib/ccr/latex/latex.py for a full list of available inputs.
Command | Output | Command | Output |
---|---|---|---|
[use] package [<packages>] |
\usepackage{<packages>} |
insert quote | ``'' |
[use] package bib latex |
\usepackage[style=authoryear]{biblatex} |
math fraction | \frac{}{} |
add comment | % |
subscript | _{} |
begin <element> |
\begin{<element>} \end{<element>} |
superscript | ^{} |
insert <command> |
\<command>{} |
symbol [<big>] <symbol> |
\<symbol> |
insert <commandnoarg> |
\<commandnoarg> |
Matlab
Command | Output | Command | Output |
---|---|---|---|
add comment | % |
lodge not | ~ |
assign | = |
lodge or | | | |
breaker | break |
long comment | %[%]] |
class | classdef |
print to console | disp() |
convert to floating point | str2num() |
return | return |
convert to integer | str2num() |
section | %% |
convert to string | num2str() |
shell iffae / LFA | elseif |
for each | for m = 1: |
shells | else |
for loop | for |
sprint F | sprintf() |
function | function [] = |
value false | false |
iffae | if |
value not | NaN |
import | library() |
value true | true |
length of | length() |
while loop | while |
lodge and | && |
Markdown
Command | Command |
---|---|
heading [<num>] [<dict>] |
table row <n> |
table (break / split) <n> |
insert header |
insert list |
insert numbered list |
insert [block] quote |
insert link |
insert image |
insert reference |
insert equation |
insert math |
insert (italics / italic text) |
insert bold [text] |
insert strike through [text] |
insert horizontal rule |
insert R code |
insert in-line code |
insert code [block] |
|
Prolog
Command | Output | Command | Output |
---|---|---|---|
Anonymous | _ |
Rule | () :-. |
Close Block comment | *\ |
comment | % |
Fail | Fail |
cut | ! |
Not | \+ |
iffae | ( ; ) |
Open Block comment | /* |
implies | :- |
Or | ; |
Python
Command | Output | Command | Output |
---|---|---|---|
[dot] (pie / pi) | .py |
lodge not | ! |
add comment | # |
lodge or | or |
breaker | break |
long comment | '''''' |
class | class |
long not | not |
convert to character | chr() |
make assertion | assert |
convert to floating point | float() |
open file | open('filename', 'r') as f: |
convert to integer | int() |
print to console | print() |
convert to string | str() |
read lines | content = f.readlines() |
for each | for in : |
return | return |
for loop | for i in range(0, ): |
self | self |
from | from |
shell iffae / LFA | elif : |
function | def |
shells | else: |
global | global |
sue iffae | if |
identity is | is |
sue shells | else |
iffae | if : |
try catch | try: except Exception: |
import | import |
value false | False |
it are in | in |
value not | None |
jason | json |
value true | True |
length of | len() |
while loop | while : |
list comprehension | [x for x in TOKEN if TOKEN] |
with | with |
lodge and | and |
R
Command | Output | Command | Output |
---|---|---|---|
<function> |
<function>() |
lodge not | ! |
NA | NA |
lodge or | | | |
add comment | # |
print to console | print() |
assign | <- |
return | return() |
breaker | break |
see as vee | csv |
contained in | %in% |
shells | else |
dot (our/are) | .R |
slurp / chain | %>% |
for each | for ( in ): |
tell (slurp / chain) | {end of line} %>% {newline} |
for loop | for (i in 1:) |
tell add | {end of line} + {newline} |
function | function() |
tidy verse | tidyverse |
graph <ggfun> |
<ggfun>() |
value false | FALSE |
iffae | if () |
value not | NULL |
import | library() |
value true | TRUE |
lodge and | && |
while loop | while () |
Core/TidyVerse Functions
If you are having trouble with over-recognition (R commands appearing where you don't want them) due to the large number of commands, consider adding a prefix to the <function>
command - line 93 - in lib/ccr/r/r.py to increase phonetic distinctness.
Command | Output | Command | Output |
---|---|---|---|
(LM / linear model) | lm() |
library | library() |
arrange | arrange() |
list | list() |
as character | as.character() |
mean | mean() |
as data frame | as.data.frame() |
mutate | mutate() |
as double | as.double() |
names | names() |
as factor | as.factor() |
paste | paste0() |
as numeric | as.numeric() |
read CSV | read_csv() |
bind rows | bind_rows() |
rename | rename() |
case when | case_when() |
select | select() |
count | count() |
starts with | starts_with() |
drop NA | drop_na() |
string contains | str_contains() |
filter | filter() |
string detect | str_detect() |
full join | full_join() |
string replace | str_replace() |
gather | gather() |
string replace all | str_replace_all() |
group by | group_by() |
sum | sum() |
head | head() |
summarise | summarise() |
inner join | inner_join() |
tail | tail() |
install packages | install.packages() |
trim white space | trimws() |
is NA | is.na() |
ungroup | ungroup() |
left join | left_join() |
vector | c() |
length | length() |
Graph Plotting Functions
Should all be prefixed with graph
Command | Output | Command | Output |
---|---|---|---|
path [plot] | geom_path() |
density [plot] | geom_density() |
line [plot] | geom_line() |
smooth [plot] | geom_smooth() |
column [plot] | geom_col() |
histogram [plot] | geom_histogram() |
point [plot] | geom_point() |
ex label | xlab() |
save | ggsave() |
ex limit | xlim() |
facet grid | facet_grid() |
plot | ggplot() |
why label | ylab() |
labels | labs() |
theme minimal | theme_minimal() |
Pacman Functions
Should all be prefixed with pack
Command | Output | Command | Output |
---|---|---|---|
install version | p_install_version() |
load | p_load() |
nstall | p_install() |
install hub | p_install_gh() |
unload | p_unload() |
update | p_update() |
install temp | p_temp() |
Rust
Command | Output | Command | Output |
---|---|---|---|
[unsigned] integer [<ibits>] |
[u32] i32 |
lodge and | && |
add comment | // |
lodge not | ! |
array [of] size <n> |
[TOKEN; 0..1000] |
lodge or | | | |
bind [mute] |
let [mut ] |
long comment | /// |
boolean | bool |
macro assertion | assert_eq!() |
brace pan |
|
macro format string | format!() |
breaker | break; |
macro panic | panic!() |
case of | => |
macro vector | vec![] |
class | + |
namespace | :: |
convert to floating point | parse::<f64>().unwrap() |
of type | : |
convert to integer | parse::<i32>().unwrap() |
print to console | println!() |
convert to string | to_string() |
refer to [mute] |
&[mut ] |
default | _ |
return | return |
do loop | while {TOKEN;TOKEN}{} |
shells | else {} |
enumerate for each [<a> <b>] |
for (i, j) in TOKEN.enumerate() {} |
static | static |
enumerate for loop [of <a> [in <n>]] |
for (i, TOKEN) in (0..1).enumerate(){} |
string | String |
float [<fbits>] |
f32 |
switch | match |
for each | for TOKEN in TOKEN {} |
ternary | if TOKEN == TOKEN { TOKEN } else { TOKEN } |
for loop [of <a> [in <n>]] |
for i in 0..1 {} |
value false | false |
function [<return>] |
fn TOKEN(TOKEN) [-> TOKEN {}] |
value not | None |
iffae | if {} |
value some | Some() |
import | use |
value true | true |
infinite loop | loop {} |
while loop | while TOKEN {} |
lifetime | '' |
SQL
Command | Output | Command | Output |
---|---|---|---|
alias as | AS |
it are in | IN |
ascending | ASC |
join | JOIN |
between | BETWEEN |
left join | LEFT JOIN |
delete | DELETE |
like | LIKE '%' |
descending | DESC |
lodge and | AND |
equals / equal to | = |
lodge or | OR |
from | FROM |
not equals / not equal to | <> |
full join | FULL JOIN |
on columns | ON |
fun average | AVG() |
order by | ORDER BY |
fun count | COUNT() |
over partition by | OVER (PARTITION BY ) |
fun max | MAX() |
right join | RIGHT JOIN |
fun min | MIN() |
select | SELECT |
group by | GROUP BY |
select (all / every) | SELECT * |
inner join | INNER JOIN |
union | UNION |
insert into | INSERT INTO |
update | UPDATE TOKEN SET |
is not null | IS NOT NULL |
using | USING () |
is null | IS NULL |
where | WHERE |
VHDL
Command | Output | Command | Output |
---|---|---|---|
Architecture | architecture TOKEN is begin TOKEN end architecture; |
conditional component | TOKEN: if () GENERATE TOKEN : TOKEN port mapping ();end generate TOKEN; |
Assignment | <= |
convert to integer | to_integer() |
Association | => |
converts to integer specific | conv_integer(,) |
Concatenate | & |
converts to signed | signed() |
Down To | downto |
converts to unsigned specific | conv_unsigned(,) |
Input | in |
entity | entity TOKEN is port (TOKEN: in std_logic; ); end entity; |
Not Equal | /= |
for loop | for in to loop |
Output | out |
generate | GENERATE |
Signal | signal : |
generate components | TOKEN: for TOKEN in to GENERATE TOKEN : TOKEN port mapping ();end generate TOKEN; |
Standard Logic | std_logic |
iffae | if () then end if; |
Standard Logic Vector | std_logic_vector |
integer | integer TOKEN to TOKEN |
Up To | upto |
length | length' |
X NOR | xnor |
lodge not | not |
XOR | xor |
lodge or | or |
add comment | -- |
not and | nand |
alternate | elsif TOKEN then |
process | TOKEN: process() begin TOKEN end process; |
binary [<amount>] <digit> |
01 |
shells | else |
case of | case TOKEN is |
switch | case TOKEN is when 'TOKEN' => TOKEN end case; |
type | type : |
when | when |
VHDL Components
Command | Output |
---|---|
component | TOKEN: TOKEN ( port map( TOKEN <= TOKEN, ) ); |
component declaration | component TOKEN is port (TOKEN: in std_logic; ); end component; |
component declaration | component TOKEN is port (TOKEN: in std_logic; ); end component; |