abacus/abacus-ui/README.org

48 lines
2.1 KiB
Org Mode
Raw Normal View History

* Abacus UI
Abacus UI is the desktop GUI for [[../][Abacus]].
For General information visit [[../][Abacus]]
For information on the scripting visit [[../abacus-core/][Abacus Core]]
* Blocks
The editor is separated into multiple /BLOCKS/. These blocks can be used to perform separate, related calculations. Each block can have a single output, which is the returned value from the block.
All blocks share the same global scope, meaning variables, functions, etc defined in a block are available to subsequent blocks.
* Modal editing
Abacus's editor is a modal editor that tries to follow VIM keybinds. The editor has two functional modes:
** Normal mode
In normal mode the cursor is a block and functional keybinds can be used for movement.
*** Normal mode keybinds
| Key | Action |
| i | Enter insert mode |
| h | Cursor left |
| j | Cursor down |
| k | Cursor up |
| l | Cursor right |
| A | Cursor to end of line and enter insert mode |
| I | Cursor to beginning of line and enter insert mode |
| O | Insert new line below and enter insert mode |
| o | Insert new line above and enter insert mode |
| b | Scan backward a word |
| w | Scan forward a word |
| v | Mark selection |
| x | Delete current character or selection |
** Insert mode
In insert mode the cursor is a line and text can be edited. To return to normal mode use the ESC key.
* General Keybinds
These keybinds can be used in any mode
| Key | Action |
| CTRL+C | Copy current selection to clipboard |
| CTRL+V | Paste clipboard at cursor |
| CTRL+N | Create a new block |
| CTRL+ENTER | Run all blocks |
| SHIFT+ENTER | Run the current block |