progressbar

一个易于使用的 C 语言库,用于显示文本进度条。「An easy-to-use C library for displaying text progress bars.」

Github星跟蹤圖

What is this thing?

progressbar is a C-class (it's a convention, dammit) for displaying attractive
progress bars on the command line. It's heavily influenced by the ruby ProgressBar
gem, whose api and behaviour it imitates.

Ok, what the hell is a C-class, and how do I use one?

progressbar is implemented in pure C99, but using a vaguely object-oriented convention.

Example usage:

progressbar *progress = progressbar_new("Loading",100);
for(int i=0; i < 100; i++)
{
  // Do some stuff
  progressbar_inc(progress);
}
progressbar_finish(progress);

Example output (from progressbar_demo.c):

demo output

Additional examples can be found in test/progressbar_demo.c

Why did you do this?

One of the things I miss most when I'm writing C instead of Ruby is the
how ridiculously easy it is to write user-friendly, informative CLI apps
in Ruby. A big part of that, at least for me, is the ProgressBar gem --
and since most of the time when I'm writing C I'm doing so because I need
a tool to handle some long-running, processor-intensive task, I'd really
like to have a way of seeing at a glance how much time is remaining and
how far along we've gotten. Enter progressbar!

Can I use it?

Of course, if you're so inclined. progressbar is licensed under a simplified BSD license,
so feel free to take it and run with it. Details can be found in the LICENSE file.

Why doesn't it compile?

If progressbar fails to build because termcap.h isn't found, you're probably missing the ncurses dev libraries.

gcc -c -std=c99 -Iinclude lib/progressbar.c
lib/progressbar.c:13:45: fatal error: termcap.h: No such file or directory
compilation terminated.

主要指標

概覽
名稱與所有者doches/progressbar
主編程語言C
編程語言Makefile (語言數: 4)
平台
許可證BSD 3-Clause "New" or "Revised" License
所有者活动
創建於2010-05-06 21:56:40
推送於2023-05-02 18:11:31
最后一次提交2020-12-23 12:56:56
發布數0
用户参与
星數471
關注者數21
派生數55
提交數84
已啟用問題?
問題數6
打開的問題數2
拉請求數23
打開的拉請求數3
關閉的拉請求數5
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?