diff options
| -rwxr-xr-x | telem.lua | 42 | 
1 files changed, 31 insertions, 11 deletions
| @@ -161,16 +161,23 @@ function do_board()  end  function do_go() -	io.write("Go to which board? ") +	io.write("Go to which board? (use name or index) ")  	local board = string.upper(io.read())  	if board == "" then  		do_list() -	elseif board_names[board] == nil then +	elseif board_names[board] ~= nil then +		current_board = board +	elseif tonumber(board) == nil then  		print("No such board!  Hit `l` to list boards.")  	else -		current_board = board -		current_board_threads = get_threads(current_board) +		local index = tonumber(board) +		if index < 0 or index > #boards then +			print("No such board!  Hit `l` to list boards.") +		else +			current_board = boards[index].name +		end  	end +	current_board_threads = get_threads(current_board)  end  function do_help() @@ -183,15 +190,22 @@ end  function do_list()  	update_boards() -	for _,board in ipairs(boards) do +	print(string.format("%s %s %s %s", stringx.ljust("ID",3), +		stringx.ljust("Board name", 20), +		stringx.ljust("Board topic" ,50), "Thread count") +	) +	print(string.rep("-",79)) +	for i,board in ipairs(boards) do  		local threads = -3 -- Don't want to count "topic" file or "." or ".."  		for thread in lfs.dir(board.directory) do  			threads = threads +1  		end -		print(string.format("%s %s [%3d threads]", +		print(string.format("%3d %s %s [%3d threads]", i,  			stringx.ljust(board.name,20), -			stringx.ljust(board.topic,50), threads)) +			stringx.ljust(board.topic,50), threads) +		)  	end +	print(string.rep("-",79))  end  function do_messages() @@ -201,14 +215,20 @@ function do_messages()  		print("Empty board!")  		return  	end -	print("ID", "Created", stringx.ljust("author",16), stringx.ljust("Subject", 50)) -	print(string.rep("-",70)) +	-- Headers +	print(string.format("%s %s %s %s", stringx.ljust("ID",3), stringx.ljust("Created", 14), +		stringx.ljust("Author",16), stringx.ljust("Subject",50))) +	-- Separator +	print(string.rep("-",79)) +	-- Messages  	for i, thread in ipairs(current_board_threads) do -		print(tostring(i), os.date("%x %H:%M", thread.timestamp), +		print(string.format("%3d %s %s %s [%3d posts]", i, os.date("%x", thread.timestamp),  			stringx.ljust(thread.author,16),  			stringx.ljust(thread.subject,50), -			"["..tostring(thread.post_count).." posts]") +			thread.post_count))  	end +	-- Separator +	print(string.rep("-",79))  end  function do_new() | 
