Sat, 10 Apr 2021 00:25:44 +0200
clix.raw: Handle (ignore, successfully) read timeouts on stdin
So that net.server doesn't get upset if you're not typing something
regularly.
local t_insert, t_concat = table.insert, table.concat; local vcard_to_text = require"util.vcard".to_text; return function (opts, arg) if opts.short_help then print("Fetch someones vCard or set your own"); return; end if ((#arg == 0 and not opts.set) or opts.help) then return 0; end local function on_connect(conn) conn:add_plugin("vcard"); if not opts.set then -- get conn:get_vcard(arg[1], function(vCard) print(vCard and vcard_to_text(vCard) or "No vCard returned") conn:close(); end); else conn:set_vcard(opts.stdin and io.stdin:read"*a" or (opts.file and io.open(opts.file):read"*a") or arg[1], function() conn:close() end) end end clix_connect(opts, on_connect); end