nagydani / loveputer

A console-based Lua-programmable computer for children based on löve2d framework.
GNU General Public License v3.0
3 stars 2 forks source link
android cli education lua

loveputer

A console-based Lua-programmable computer for children based on [LÖVE2D] framework.

Principles

Usage

Rather than the default LÖVE storage locations (save directory, cache, etc), the application uses a folder under Documents to store projects. Ideally, this is located on removable storage to enable sharing programs the user writes.

For simplicity and security reasons, the user is only allowed to access files inside a project. To interact with the filesystem, a project must be selected first.

Keys

Command Keymap
Clear terminal Ctrl+L
Quit project Ctrl+Shift+Q
Reset application to initial state Ctrl+Shift+R
Exit application Ctrl+Esc
Input
Move cursor
Go back in command history PageUp
Go forward in command history PageDown
Move in history (if in first/last line)
Jump to start Home
Jump to end End
Insert newline Shift+Enter
Evaluate input Enter
Editor
       same as Input, except for:
Scroll up PageUp
Scroll down PageDown
Move selection (if in first/last line)
Replace selection with input Enter
       additionally
Delete selected (line) Ctrl+Delete
Ctrl+Y
Replace input with selected content Esc
Insert selected content into input Shift+Esc
Scroll to start Ctrl+PageUp
Scroll to end Ctrl+PageDown
Move selection to start Ctrl+Home
Move selecion to end Ctrl+End
Quit editor (save work) Ctrl+Shift+Q

Projects

A project is a folder in the application's storage which contains at least a main.lua file. Projects can be loaded and ran. At any time, pressing Ctrl-Shift-Q quits and returns to the console

Once a project is open, file operations are available on it's contents.