53 lines
965 B
Lua
53 lines
965 B
Lua
local _VERSION = '1.0.1';
|
|
|
|
local command = ...;
|
|
|
|
local function printUsage()
|
|
print('events usage:');
|
|
print();
|
|
print('\t\t\tevents');
|
|
print('\t\t\tevents version');
|
|
print('\t\t\tevents help');
|
|
end
|
|
|
|
local function valueToString(value)
|
|
if type(value) == 'string' then
|
|
return value;
|
|
end
|
|
|
|
return textutils.serialize(value, { compact = true });
|
|
end
|
|
|
|
if command == 'version' or command == '-version' or command == '--version' then
|
|
print('events v' .. _VERSION);
|
|
return;
|
|
end
|
|
|
|
if command == 'help' or command == '-help' or command == '--help' then
|
|
printUsage();
|
|
return;
|
|
end
|
|
|
|
if command ~= nil and command ~= '' then
|
|
printUsage();
|
|
return;
|
|
end
|
|
|
|
print('Listening events... Press Ctrl+T to stop.');
|
|
|
|
while true do
|
|
local event = table.pack(os.pullEventRaw());
|
|
|
|
if event[1] == 'terminate' then
|
|
return;
|
|
end
|
|
|
|
local parts = {};
|
|
|
|
for i = 1, event.n do
|
|
parts[i] = valueToString(event[i]);
|
|
end
|
|
|
|
print(table.concat(parts, ' '));
|
|
end
|