Menu

Tree [13d608] main /
 History

HTTPS access


File Date Author Commit
 gradle 2020-09-12 Caleb L. Power Caleb L. Power [187c0b] added basic program stub with nominal logging a...
 src 2020-11-21 Caleb L. Power Caleb L. Power [6f0997] updated license to Apache 2.0 in accordance wit...
 .gitignore 2020-10-09 Caleb L. Power Caleb L. Power [0268b1] Hotfix/junkfile cleanup (#21)
 CODEOWNERS 2020-09-06 Caleb L. Power Caleb L. Power [fa0ffe] added CODEOWNERS file
 LICENSE 2020-11-21 Caleb L. Power Caleb L. Power [6f0997] updated license to Apache 2.0 in accordance wit...
 NOTICE 2020-11-21 Caleb L. Power Caleb L. Power [6f0997] updated license to Apache 2.0 in accordance wit...
 README.md 2020-11-21 Ren Jian Lee Ren Jian Lee [13d608] changes to readme
 build.gradle 2020-09-21 Caleb L. Power Caleb L. Power [fa0085] implemented dispatcher api in its entirety
 gradle.properties 2020-09-12 Caleb L. Power Caleb L. Power [187c0b] added basic program stub with nominal logging a...
 gradlew 2020-09-26 rlee38 rlee38 [bf4089] Feature/ui (#14)
 gradlew.bat 2020-09-12 Caleb L. Power Caleb L. Power [187c0b] added basic program stub with nominal logging a...
 settings.gradle 2020-09-12 Caleb L. Power Caleb L. Power [187c0b] added basic program stub with nominal logging a...
 typingModeSchema.png 2020-11-21 Ren Jian Lee Ren Jian Lee [5908dc] typing modes in readme

Read Me

V2C Desktop Controller for Linux

Copyright (c) 2020 V2C Development Team. All rights reserved.

License

This repository is subject to the Apache License, Version 2.0.


Build

You need Java 11. This project can be tested and compiled with the following command.

chmod u+x ./gradlew

./gradlew clean shadowJar

Execution

To run it, just do java -jar build\libs\v2c-desktop-controller-linux.jar.

You can optionally specify some command-line arguments.

Short Param Long Param Description Default Comment
-p --port The port number 5698 You do not have to provide a port by default.
-u --u Enables UI Disabled Left for future reference, not currently implemented.

Command Mode

target desktop

To enter Command Mode

alteration command


Typing Mode

target desktop (you only need to target once)

To enter Typing Mode

alteration typing

  • Features
    • alteration select - begin cursor selection at selected location
    • move- use to move in selected text.
      • SAMPLE DIRECTIVE "target desktop alteration select please move 5 right done alteration copy please type enter enter enter done alteration paste"
      • Behavior: the above sample should select 5 characters from your cursor location, copy them, enter three newlines and paste them at the newline
    • undo - directive to undo the previous token in typing or streaming mode
      • SAMPLE DIRECTIVE 2 (immediately following other sample): "please type undo undo undo done. type undo done"
      • behavior: jon is removed, one character at a time, as it was entered via keypress. "is " is removed on the last one, as it is a printed token.
    • alteration copy - copy currently selected text
      • SAMPLE DIRECTIVE "target desktop alteration select please move 5 right done alteration copy please type enter enter enter done alteration paste"
      • Behavior: the above sample should select 5 characters from your cursor location, copy them, enter three newlines and paste them at the newline
    • alteration paste - paste from clipboard
      • SAMPLE DIRECTIVE "target desktop alteration select please move 5 right done alteration copy please type enter enter enter done alteration paste"
      • Behavior: the above sample should select 5 characters from your cursor location, copy them, enter three newlines and paste them at the newline
    • Alteration alt - hold down, or release the alt button if it is held.
    • Alteration tab - hit the tab key.
    • USE ALT + TAB IN CONJUNCTION TO NAVIGATE WINDOWS
    • SAMPLE DIRECTIVE "target desktop alteration alt alteration tab alteration tab alteration alt.
    • Behavior: should switch windows
  • Some example commands would be as follows
    • "type"
    • please type Juliet Oscar November done
    • "type newline done"
    • "type alpha bravo Charlie cancel type Charlie bravo alpha done"
    • "please type the letters delta Oscar November echo done"
    • "please type shift one (to type an exclamation) shift J (to type a capital J) done"
      • If you say type shift too quickly it will send typeshift, and not recognize the token. You will still be in the initial state in the DFA, so all is good once you say it right.
    • move cursor
    • "move 3 up done"
      • Current build can only handle number literals, if you have “three” instead of “3”, it will not crash, but will return an error message in the desktop log.
    • "please move 2 right cancel move 1 right done"
    • "please move 4 spaces left"
    • backspace
    • "please backspace 3 spaces done//same issue in current build, must get number literals for recognizer. Plans to handle strings like “three” in works for Robot/hyperviser(ENUM)"
    • "backspace 3 cancel backspace 4 done"
    • "backspace 3 times done"
    • "backspace 2 spaces cancel backspace 1 done"

Typing Mode Schema

Typing Mode Schema


Streaming Mode

target desktop

To enter Streaming Mode

alteration streaming

Behavior:

  • same as typing mode, except if your word is not a keypress it will type that word
  • Features
    • alteration select - begin cursor selection at selected location
    • move- use to move in selected text.
      • SAMPLE DIRECTIVE "target desktop alteration select please move 5 right done alteration copy please type enter enter enter done alteration paste"
      • Behavior: the above sample should select 5 characters from your cursor location, copy them, enter three newlines and paste them at the newline
    • undo - directive to undo the previous token in typing or streaming mode
      • SAMPLE DIRECTIVE "target desktop alteration streaming please type my name is john undo juliet oscar november done"
      • Behaviour: my name is John is typed, John is removed, jon is typed.
      • SAMPLE DIRECTIVE 2 (immediately following other sample): "please type undo undo undo done. type undo done"
      • behavior: jon is removed, one character at a time, as it was entered via keypress. "is " is removed on the last one, as it is a printed token.
    • MODE NOTE: streaming mode, it will remove a character or token(printed word). typing mode only types characters, so it works like a single backspace essentially.
    • alteration copy - copy currently selected text
      • SAMPLE DIRECTIVE "target desktop alteration select please move 5 right done alteration copy please type enter enter enter done alteration paste"
      • Behavior: the above sample should select 5 characters from your cursor location, copy them, enter three newlines and paste them at the newline
    • alteration paste - paste from clipboard
      • SAMPLE DIRECTIVE "target desktop alteration select please move 5 right done alteration copy please type enter enter enter done alteration paste"
      • Behavior: the above sample should select 5 characters from your cursor location, copy them, enter three newlines and paste them at the newline
    • Alteration alt - hold down, or release the alt button if it is held.
    • Alteration tab - hit the tab key.
    • USE ALT + TAB IN CONJUNCTION TO NAVIGATE WINDOWS
    • SAMPLE DIRECTIVE "target desktop alteration alt alteration tab alteration tab alteration alt.
    • Behavior: should switch windows
  • Some example commands would be as follows
    • "type"
    • please type Juliet Oscar November done
    • "type newline done"
    • "type alpha bravo Charlie cancel type Charlie bravo alpha done"
    • "please type the letters delta Oscar November echo done"
    • "please type shift one (to type an exclamation) shift J (to type a capital J) done"
      • If you say type shift too quickly it will send typeshift, and not recognize the token. You will still be in the initial state in the DFA, so all is good once you say it right.
    • move cursor
    • "move 3 up done"
      • Current build can only handle number literals, if you have “three” instead of “3”, it will not crash, but will return an error message in the desktop log.
    • "please move 2 right cancel move 1 right done"
    • "please move 4 spaces left"
    • backspace
    • "please backspace 3 spaces done//same issue in current build, must get number literals for recognizer. Plans to handle strings like “three” in works for Robot/hyperviser(ENUM)"
    • "backspace 3 cancel backspace 4 done"
    • "backspace 3 times done"
    • "backspace 2 spaces cancel backspace 1 done"