This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
LDDestroier's profile picture

Workspace - Desktop grid multitasking in ComputerCraft!

Started by LDDestroier, 23 April 2019 - 07:43 PM
LDDestroier #1
Posted 23 April 2019 - 09:43 PM
Ever use a Linux desktop and really like the way you could switch between different virtual desktops, or maybe you just don't like clicking through menus when multitasking?

look let's just get this over with I haven't eaten anything all day


INTRODUCING

Workspace

The Spiffiest Task Selector



wget https://github.com/LDDestroier/CC/raw/master/workspace.lua
pastebin get s0ehEQvA workspace.lua
std ld workspace


Workspace is a multitasking wrapper for ComputerCraft that lets you switch tasks by switching between different "virtual desktops" instead of clicking through a menu, as you would with "bg" or most CC operating systems.
Whenever a program exits, the workspace becomes "inactive", taking up no resources at all. Terminate in an inactive workspace to exit.

Push CTRL + SHIFT + ArrowKey to change your workspace.
Push CTRL + SHIFT + TAB + ArrowKey to swap the current workspace with another.
Push CTRL + SHIFT + [W or A or S or D] to add a new workspace relative to the currently focused workspace.
Push CTRL + SHIFT + P to toggle pausing a workspace.
Push CTRL + SHIFT + Q to delete the current workspace.

The grid is 3x3 by default.
Edited on 21 June 2019 - 03:14 AM
EveryOS #2
Posted 02 May 2019 - 07:56 PM
Tried it on my Mimic fork. When typing a command, the switcher will randomly appear. Other than that, it looks cool.
LDDestroier #3
Posted 20 June 2019 - 10:48 PM
Substantial update! You can now pause each workspace to save on processing power! This also pauses any timer events that are queued by the paused workspace, which was the hardest part to get down, so everything should run smoothly.
LDDestroier #4
Posted 04 September 2019 - 11:54 PM
Update:
  • Each instance can now have its own palette, which the native terminal will change to depending on the focused instance.
  • Problems with apps like Enchat3 involving several manually queued events (os.queueEvent) have been fixed.