Load rc on "init" event
to keep rc load order consistent, move before boot fs event
registrations.
This change allows rc scripts and autoruns to consistently have term io
available
removing more in place of an alias to less
updating man docs to describe value of more over less in low mem cases
adding (END) to less status when the end of a buffer is reached
io.dup dups a handle, used now by all process creation and redirection
stop sharing cursors with spawned shell procs
write cursor echo to the stdin stream
close#2886
Support for the block property system in the geolyzer (closes#2746, #2184)
* works correctly with Beetroot
* supports chorus
* geolyzer.analyze() returns the properties table
* geolyzer.analyze() returns metadata again
* fix warning EventHandlerVanilla.scala: method getBlockHardness in class Block is deprecated
1. as always, code cleanup and memory savings
2. allow force (-f) option with cp
3. cursor library, separating logic from tty [ the cursor library is robust and heavily tested, but the api is not finalized and is considered beta ]
4. fix autorun on ro fs
5. /bin/ls: run all filesystem calls in lua, safe from c-boundaries
6. vt100: small fix with clear line (1-off error)
the cursor lib will probably become an official api, but not yet, still in beta
an application can define its own cursor, can handle the following methods
Here is a rough draft of the api, when it is official there will be an ocdoc article covering this
echo
Echo does not change the input buffer, does not move the relative cursor position to the input, in is only used for updating the UI. Echo will receive the following
"": scroll if needed
nil: initialize blink if needed
boolean: toggle blink if true, force blink off if false
string: write string to output stream
keyboard.keys.right and keyboard.keys.left: move the visual cursor left or right. scroll if necessary
move
number: Intended to move the logical cursor relative to its current input. Should call echo for visual movement
update
string: add (prepend, insert, or append) text to the input buffer
number: remove (backspace, delete) text from the input buffer
should call move if the cursor moves due to the text changes
handle
(name, char, code): called in response to event signals when waiting for input. Typically this is used to handle key_down, touch, drag, and clipboard
return nil if the cursor is closing
return false if the input is interrupted
return true if the input is not done
return <string> as the result of the input when completed
* works correctly with Beetroot
* supports chorus
* geolyzer.analyze() returns the properties table
* geolyzer.analyze() returns metadata again
* fix warning EventHandlerVanilla.scala: method getBlockHardness in class Block is deprecated