ec5c35ec9f
This is a first step to decouple formatting from information because of two reasons: 1. The components should only gather and return the values by design 2. Fine grained user control should be a focus Scaling will be implemented in a different way in a later commit.
15 lines
437 B
C
15 lines
437 B
C
/* See LICENSE file for copyright and license details. */
|
|
extern char buf[1024];
|
|
|
|
#define LEN(x) (sizeof (x) / sizeof *(x))
|
|
|
|
extern char *argv0;
|
|
|
|
void warn(const char *, ...);
|
|
void die(const char *, ...);
|
|
|
|
int esnprintf(char *str, size_t size, const char *fmt, ...);
|
|
const char *bprintf(const char *fmt, ...);
|
|
const char *fmt_human_2(size_t num);
|
|
const char *fmt_human_10(size_t num);
|
|
int pscanf(const char *path, const char *fmt, ...);
|