24 local function update_progress_display() |
24 local function update_progress_display() |
25 anim_frame = (anim_frame%anim_max) + 1; |
25 anim_frame = (anim_frame%anim_max) + 1; |
26 write("\n\027[K0% [", ("="):rep(floor(percent_complete/2)), percent_complete ~= 100 and ">" or "", (" "):rep((50-floor(percent_complete/2))-1), "] 100%"); |
26 write("\n\027[K0% [", ("="):rep(floor(percent_complete/2)), percent_complete ~= 100 and ">" or "", (" "):rep((50-floor(percent_complete/2))-1), "] 100%"); |
27 write("\n\027[K", anim[anim_frame], " ", percent_complete, "% complete"); --; ETA ", ceil((now()-start_time)/(bytes_completed/bytes_total)/60), "min"); |
27 write("\n\027[K", anim[anim_frame], " ", percent_complete, "% complete"); --; ETA ", ceil((now()-start_time)/(bytes_completed/bytes_total)/60), "min"); |
28 write("\027[3A\n"); |
28 write("\027[3A\n"); |
|
29 needs_update = false; |
29 end |
30 end |
30 return { refresh = update_progress_display, update = update_data }; |
31 return { refresh = update_progress_display, update = update_data }; |
31 end |
32 end |
32 |
33 |
33 return _M; |
34 return _M; |