mirror of
https://github.com/Llewellynvdm/conky.git
synced 2024-12-27 04:32:55 +00:00
Merge branch 'master' of git.omp.am:/home/omp/git/conky
This commit is contained in:
commit
d224810235
81
src/conky.c
81
src/conky.c
@ -2595,12 +2595,6 @@ static struct text_object *create_plain_text(const char *s)
|
||||
{
|
||||
struct text_object *obj;
|
||||
|
||||
char *esc = strstr(s, "\\#");
|
||||
if (esc) {
|
||||
/* remove extra '\' */
|
||||
strcpy(esc, esc + 1);
|
||||
}
|
||||
|
||||
if (s == NULL || *s == '\0') {
|
||||
return NULL;
|
||||
}
|
||||
@ -2822,12 +2816,6 @@ static int extract_variable_text_internal(struct text_object *retval, const char
|
||||
if (*p == '\n') {
|
||||
line++;
|
||||
}
|
||||
/* handle comments within the TEXT area */
|
||||
if (*p == '#' && (p == orig_p || *(p - 1) != '\\')) {
|
||||
while (*p && *p != '\n') p++;
|
||||
s = p;
|
||||
line++;
|
||||
}
|
||||
if (*p == '$') {
|
||||
*p = '\0';
|
||||
obj = create_plain_text(s);
|
||||
@ -3263,9 +3251,11 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
OBJ(battery_percent) {
|
||||
percent_print(p, p_max_size, get_battery_perct(obj->data.s));
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(battery_bar) {
|
||||
new_bar(p, obj->a, obj->b, get_battery_perct_bar(obj->data.s));
|
||||
}
|
||||
#endif
|
||||
OBJ(battery_short) {
|
||||
get_battery_short_status(p, p_max_size, obj->data.s);
|
||||
}
|
||||
@ -3286,6 +3276,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
percent_print(p, p_max_size,
|
||||
round_to_int(cur->cpu_usage[obj->data.cpu_index] * 100.0));
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(cpugauge)
|
||||
new_gauge(p, obj->a, obj->b,
|
||||
round_to_int(cur->cpu_usage[obj->data.cpu_index] * 255.0));
|
||||
@ -3335,6 +3326,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
OBJ(color9) {
|
||||
new_fg(p, color9);
|
||||
}
|
||||
#endif
|
||||
OBJ(conky_version) {
|
||||
snprintf(p, p_max_size, "%s", VERSION);
|
||||
}
|
||||
@ -3489,10 +3481,11 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
get_obsd_product(p, p_max_size);
|
||||
}
|
||||
#endif /* __OpenBSD__ */
|
||||
|
||||
#ifdef X11
|
||||
OBJ(font) {
|
||||
new_font(p, obj->data.s);
|
||||
}
|
||||
#endif
|
||||
/* TODO: move this correction from kB to kB/s elsewhere
|
||||
* (or get rid of it??) */
|
||||
OBJ(diskio) {
|
||||
@ -3507,6 +3500,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
human_readable((obj->data.diskio->current_read / update_interval) * 1024LL,
|
||||
p, p_max_size);
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(diskiograph) {
|
||||
new_graph(p, obj->a, obj->b, obj->c, obj->d,
|
||||
obj->data.diskio->current, obj->e, 1, obj->showaslog);
|
||||
@ -3519,6 +3513,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
new_graph(p, obj->a, obj->b, obj->c, obj->d,
|
||||
obj->data.diskio->current_write, obj->e, 1, obj->showaslog);
|
||||
}
|
||||
#endif
|
||||
OBJ(downspeed) {
|
||||
human_readable(obj->data.net->recv_speed, p, 255);
|
||||
}
|
||||
@ -3526,10 +3521,12 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
spaced_print(p, p_max_size, "%.1f", 8,
|
||||
obj->data.net->recv_speed / 1024.0);
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(downspeedgraph) {
|
||||
new_graph(p, obj->a, obj->b, obj->c, obj->d,
|
||||
obj->data.net->recv_speed / 1024.0, obj->e, 1, obj->showaslog);
|
||||
new_graph(p, obj->a, obj->b, obj->c, obj->d,
|
||||
obj->data.net->recv_speed / 1024.0, obj->e, 1, obj->showaslog);
|
||||
}
|
||||
#endif
|
||||
OBJ(else) {
|
||||
/* Since we see you, you're if has not jumped.
|
||||
* Do Ninja jump here: without leaving traces.
|
||||
@ -3633,6 +3630,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
free_text_objects(&subroot);
|
||||
free(tmp_info);
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(execgauge) {
|
||||
double barnum;
|
||||
|
||||
@ -3719,6 +3717,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
}
|
||||
new_gauge(p, obj->a, obj->b, round_to_int(obj->f));
|
||||
}
|
||||
#endif
|
||||
OBJ(execi) {
|
||||
if (current_update_time - obj->data.execi.last_update
|
||||
>= obj->data.execi.interval
|
||||
@ -3814,6 +3813,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
timed_thread_unlock(mail->p_timed_thread);
|
||||
}
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(fs_bar) {
|
||||
if (obj->data.fs != NULL) {
|
||||
if (obj->data.fs->size == 0) {
|
||||
@ -3825,6 +3825,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
OBJ(fs_free) {
|
||||
if (obj->data.fs != NULL) {
|
||||
human_readable( (obj->data.fs->free ? obj->data.fs->free :
|
||||
@ -3859,6 +3860,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
? obj->data.fs->free : obj->data.fs->avail), p, 255);
|
||||
}
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(fs_bar_free) {
|
||||
if (obj->data.fs != NULL) {
|
||||
if (obj->data.fs->size == 0) {
|
||||
@ -3870,6 +3872,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
OBJ(fs_used_perc) {
|
||||
if (obj->data.fs != NULL) {
|
||||
int val = 0;
|
||||
@ -3906,9 +3909,11 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
OBJ(tab) {
|
||||
new_tab(p, obj->data.pair.a, obj->data.pair.b);
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(hr) {
|
||||
new_hr(p, obj->data.i);
|
||||
}
|
||||
#endif
|
||||
OBJ(nameserver) {
|
||||
if (cur->nameserver_info.nscount > obj->data.i)
|
||||
snprintf(p, p_max_size, "%s",
|
||||
@ -4162,6 +4167,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
if (cur->memmax)
|
||||
percent_print(p, p_max_size, cur->mem * 100 / cur->memmax);
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(memgauge){
|
||||
new_gauge(p, obj->data.pair.a, obj->data.pair.b,
|
||||
cur->memmax ? (cur->mem * 255) / (cur->memmax) : 0);
|
||||
@ -4175,7 +4181,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
cur->memmax ? (cur->mem * 100.0) / (cur->memmax) : 0.0,
|
||||
100, 1, obj->showaslog);
|
||||
}
|
||||
|
||||
#endif
|
||||
/* mixer stuff */
|
||||
OBJ(mixer) {
|
||||
percent_print(p, p_max_size, mixer_get_avg(obj->data.l));
|
||||
@ -4186,6 +4192,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
OBJ(mixerr) {
|
||||
percent_print(p, p_max_size, mixer_get_right(obj->data.l));
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(mixerbar) {
|
||||
new_bar(p, obj->data.mixerbar.w, obj->data.mixerbar.h,
|
||||
mixer_to_255(obj->data.mixerbar.l,mixer_get_avg(obj->data.mixerbar.l)));
|
||||
@ -4198,6 +4205,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
new_bar(p, obj->data.mixerbar.w, obj->data.mixerbar.h,
|
||||
mixer_to_255(obj->data.mixerbar.l,mixer_get_right(obj->data.mixerbar.l)));
|
||||
}
|
||||
#endif
|
||||
OBJ(if_mixer_mute) {
|
||||
if (!mixer_is_mute(obj->data.ifblock.i)) {
|
||||
DO_JUMP;
|
||||
@ -4292,12 +4300,14 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
OBJ(text) {
|
||||
snprintf(p, p_max_size, "%s", obj->data.s);
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(shadecolor) {
|
||||
new_bg(p, obj->data.l);
|
||||
}
|
||||
OBJ(stippled_hr) {
|
||||
new_stippled_hr(p, obj->data.pair.a, obj->data.pair.b);
|
||||
}
|
||||
#endif
|
||||
OBJ(swap) {
|
||||
human_readable(cur->swap * 1024, p, 255);
|
||||
}
|
||||
@ -4311,10 +4321,12 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
percent_print(p, p_max_size, cur->swap * 100 / cur->swapmax);
|
||||
}
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(swapbar) {
|
||||
new_bar(p, obj->data.pair.a, obj->data.pair.b,
|
||||
cur->swapmax ? (cur->swap * 255) / (cur->swapmax) : 0);
|
||||
}
|
||||
#endif
|
||||
OBJ(sysname) {
|
||||
snprintf(p, p_max_size, "%s", cur->uname_s.sysname);
|
||||
}
|
||||
@ -4375,10 +4387,12 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
spaced_print(p, p_max_size, "%.1f", 8,
|
||||
obj->data.net->trans_speed / 1024.0);
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(upspeedgraph) {
|
||||
new_graph(p, obj->a, obj->b, obj->c, obj->d,
|
||||
obj->data.net->trans_speed / 1024.0, obj->e, 1, obj->showaslog);
|
||||
}
|
||||
#endif
|
||||
OBJ(uptime_short) {
|
||||
format_seconds_short(p, p_max_size, (int) cur->uptime);
|
||||
}
|
||||
@ -4462,10 +4476,12 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
OBJ(mpd_percent) {
|
||||
percent_print(p, p_max_size, (int)(mpd_get_info()->progress * 100));
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(mpd_bar) {
|
||||
new_bar(p, obj->data.pair.a, obj->data.pair.b,
|
||||
(int) (mpd_get_info()->progress * 255.0f));
|
||||
}
|
||||
#endif
|
||||
OBJ(mpd_smart) {
|
||||
struct mpd_s *mpd = mpd_get_info();
|
||||
int len = obj->data.i;
|
||||
@ -4824,6 +4840,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
OBJ(entropy_poolsize) {
|
||||
snprintf(p, p_max_size, "%d", cur->entropy.poolsize);
|
||||
}
|
||||
#ifdef X11
|
||||
OBJ(entropy_bar) {
|
||||
double entropy_perc;
|
||||
|
||||
@ -4831,6 +4848,7 @@ static void generate_text_internal(char *p, int p_max_size,
|
||||
(double) cur->entropy.poolsize;
|
||||
new_bar(p, obj->a, obj->b, (int) (entropy_perc * 255.0f));
|
||||
}
|
||||
#endif
|
||||
#ifdef IBM
|
||||
OBJ(smapi) {
|
||||
char *s;
|
||||
@ -6702,6 +6720,29 @@ static FILE *open_config_file(const char *f)
|
||||
return fopen(f, "r");
|
||||
}
|
||||
|
||||
void remove_comments(char *string) {
|
||||
char *curplace, *curplace2;
|
||||
char *newend = NULL;
|
||||
|
||||
for(curplace = string; *curplace != 0; curplace++) {
|
||||
if(*curplace == '\\' && *(curplace + 1) == '#') {
|
||||
//strcpy can't be used for overlapping strings
|
||||
for (curplace2 = curplace+1; *curplace2 != 0; curplace2++) {
|
||||
*(curplace2 - 1) = *curplace2;
|
||||
}
|
||||
*(curplace2 - 1) = 0;
|
||||
} else if(*curplace == '#' && !newend) {
|
||||
newend = curplace;
|
||||
} else if(*curplace == '\n' && newend) {
|
||||
*newend = '\n';
|
||||
newend++;
|
||||
}
|
||||
}
|
||||
if(newend) {
|
||||
*newend = 0;
|
||||
}
|
||||
}
|
||||
|
||||
static int do_config_step(int *line, FILE *fp, char *buf, char **name, char **value)
|
||||
{
|
||||
char *p, *p2;
|
||||
@ -6709,15 +6750,10 @@ static int do_config_step(int *line, FILE *fp, char *buf, char **name, char **va
|
||||
if (fgets(buf, CONF_BUFF_SIZE, fp) == NULL) {
|
||||
return CONF_BREAK;
|
||||
}
|
||||
remove_comments(buf);
|
||||
|
||||
p = buf;
|
||||
|
||||
/* break at comment, unless preceeded by \ */
|
||||
p2 = strchr(p, '#');
|
||||
if (p2 && (p2 == p || *(p2 - 1) != '\\')) {
|
||||
*p2 = '\0';
|
||||
}
|
||||
|
||||
/* skip spaces */
|
||||
while (*p && isspace((int) *p)) {
|
||||
p++;
|
||||
@ -7332,6 +7368,7 @@ static void load_config_file(const char *f)
|
||||
if (fgets(buf, CONF_BUFF_SIZE, fp) == NULL) {
|
||||
break;
|
||||
}
|
||||
remove_comments(buf);
|
||||
|
||||
/* Remove \\-\n. */
|
||||
bl = strlen(buf);
|
||||
|
@ -204,9 +204,9 @@ static struct special_t *new_special(char *buf, enum special_types t)
|
||||
return &specials[special_count++];
|
||||
}
|
||||
|
||||
#ifdef X11
|
||||
void new_gauge(char *buf, int w, int h, int usage)
|
||||
{
|
||||
#ifdef X11
|
||||
struct special_t *s = 0;
|
||||
if ((output_methods & TO_X) == 0)
|
||||
return;
|
||||
@ -216,12 +216,10 @@ void new_gauge(char *buf, int w, int h, int usage)
|
||||
s->arg = (usage > 255) ? 255 : ((usage < 0) ? 0 : usage);
|
||||
s->width = w;
|
||||
s->height = h;
|
||||
#endif
|
||||
}
|
||||
|
||||
void new_bar(char *buf, int w, int h, int usage)
|
||||
{
|
||||
#ifdef X11
|
||||
struct special_t *s = 0;
|
||||
|
||||
if ((output_methods & TO_X) == 0)
|
||||
@ -232,12 +230,10 @@ void new_bar(char *buf, int w, int h, int usage)
|
||||
s->arg = (usage > 255) ? 255 : ((usage < 0) ? 0 : usage);
|
||||
s->width = w;
|
||||
s->height = h;
|
||||
#endif
|
||||
}
|
||||
|
||||
void new_font(char *buf, char *args)
|
||||
{
|
||||
#ifdef X11
|
||||
if ((output_methods & TO_X) == 0)
|
||||
return;
|
||||
|
||||
@ -258,11 +254,6 @@ void new_font(char *buf, char *args)
|
||||
selected_font = s->font_added = 0;
|
||||
selected_font = tmp;
|
||||
}
|
||||
#else
|
||||
(void)buf;
|
||||
(void)args;
|
||||
return;
|
||||
#endif
|
||||
}
|
||||
|
||||
static void graph_append(struct special_t *graph, double f, char showaslog)
|
||||
@ -298,7 +289,6 @@ static void graph_append(struct special_t *graph, double f, char showaslog)
|
||||
void new_graph(char *buf, int w, int h, unsigned int first_colour,
|
||||
unsigned int second_colour, double i, int scale, int append, char showaslog)
|
||||
{
|
||||
#ifdef X11
|
||||
struct special_t *s = 0;
|
||||
|
||||
if ((output_methods & TO_X) == 0)
|
||||
@ -341,22 +331,18 @@ void new_graph(char *buf, int w, int h, unsigned int first_colour,
|
||||
if (append) {
|
||||
graph_append(s, i, showaslog);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void new_hr(char *buf, int a)
|
||||
{
|
||||
#ifdef X11
|
||||
if ((output_methods & TO_X) == 0)
|
||||
return;
|
||||
|
||||
new_special(buf, HORIZONTAL_LINE)->height = a;
|
||||
#endif
|
||||
}
|
||||
|
||||
void new_stippled_hr(char *buf, int a, int b)
|
||||
{
|
||||
#ifdef X11
|
||||
struct special_t *s = 0;
|
||||
|
||||
if ((output_methods & TO_X) == 0)
|
||||
@ -366,28 +352,24 @@ void new_stippled_hr(char *buf, int a, int b)
|
||||
|
||||
s->height = b;
|
||||
s->arg = a;
|
||||
#endif
|
||||
}
|
||||
|
||||
void new_fg(char *buf, long c)
|
||||
{
|
||||
#ifdef X11
|
||||
if ((output_methods & TO_X) == 0)
|
||||
return;
|
||||
|
||||
new_special(buf, FG)->arg = c;
|
||||
#endif
|
||||
}
|
||||
|
||||
void new_bg(char *buf, long c)
|
||||
{
|
||||
#ifdef X11
|
||||
if ((output_methods & TO_X) == 0)
|
||||
return;
|
||||
|
||||
new_special(buf, BG)->arg = c;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
void new_outline(char *buf, long c)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user