diff options
| author | Inqiyad Sabr <sabr@ariamath.xyz> | 2025-10-20 11:55:26 +0600 |
|---|---|---|
| committer | Inqiyad Sabr <sabr@ariamath.xyz> | 2025-10-20 11:55:26 +0600 |
| commit | 658b660be1c6bd0eb2b75d51de36422a2a306dc8 (patch) | |
| tree | 2643d593fd2c502e1b62332b1694b43bb605a333 | |
| parent | ea5380fccb9f962203726540d69cb490048de7c0 (diff) | |
Changed every global variable to explicit variables
| -rw-r--r-- | battery.c | 80 | ||||
| -rw-r--r-- | cmus.c | 4 | ||||
| -rw-r--r-- | cpu.c | 22 | ||||
| -rw-r--r-- | datetime.c | 16 | ||||
| -rw-r--r-- | modules.h | 1 |
5 files changed, 63 insertions, 60 deletions
@@ -1,49 +1,45 @@ #include <stdio.h> -#include <string.h> #include "block.h" -#define DIR "/sys/class/power_supply/BAT0" -#define EN DIR"/energy_now" -#define EF DIR"/energy_full" -#define ST DIR"/status" -FILE *en; -FILE *ef; -FILE *st; -int c, state, bat_delay = 6; -float en_n, ef_n; -float p; -char pch[13], icon[5]; +#define BATDIR "/sys/class/power_supply/BAT0" +#define bat_val(f, n)\ + while((c = fgetc(f)) != '\n') n = 10 * n + (c - '0') +#define bat_open(f,F) if (!f) f = fopen(BATDIR"/"F,"r") +#define EN fenergy_now +#define EF fenergy_full +#define ST fbat_status +FILE *EN, *EF, *ST; +float bat_p; +int bat_state, bat_delay = 6; +char bat_str[13]; void battery(void) { if (bat_delay++ < 6) goto show_stat; else bat_delay = 0; - if (!en) en = fopen(EN,"r"); - if (!ef) ef = fopen(EF,"r"); - if (!st) st = fopen(ST,"r"); - if (en && ef && st) { - rewind(en); - rewind(ef); - rewind(st); + bat_open(EN,"energy_now"); + bat_open(EF,"energy_full"); + bat_open(ST,"status"); + if (fenergy_now) { + int c, en_n, ef_n; + rewind(EN); rewind(EF); rewind(ST); en_n = ef_n = 0; - while((c = fgetc(en)) != '\n') - en_n = 10 * en_n + (c - '0'); - while((c = fgetc(ef)) != '\n') - ef_n = 10 * ef_n + (c - '0'); - p = en_n * 100 / ef_n; - state = fgetc(st); - switch(state) { - case 'N': strncpy(icon,"",4); break; - case 'C': strncpy(icon,"",5); break; - case 'D': if (p > 0 && p <= 10) strncpy(icon," ",5); - else if (p > 10 && p <= 30) strncpy(icon," ",5); - else if (p > 30 && p <= 50) strncpy(icon," ",5); - else if (p > 50 && p <= 79) strncpy(icon," ",5); - else if (p > 79) strncpy(icon," ",5); - } snprintf(pch,13,"%s %02.2f%%",icon,p); - } -show_stat: - if (state == 'D') - block(pch,"#222222","#83a59899","#83a59899"); - else if (p < 30) - block(pch,"#222222","#ea544399","#ea544399"); - else if (state == 'N' || state == 'C') - block(pch,"#222222","#dfb24999","#dfb24999"); + bat_val(fenergy_now, en_n); + bat_val(fenergy_full, ef_n); + bat_p = (float)en_n * 100 / ef_n; + char *icon; + bat_state = fgetc(fbat_status); + switch(bat_state) { + case 'N': icon = ""; break; + case 'C': icon = ""; break; + case 'D': if (bat_p > 79) icon = " "; + else if (bat_p > 50) icon = " "; + else if (bat_p > 30) icon = " "; + else if (bat_p > 10) icon = " "; + else icon = " "; + } snprintf(bat_str,13,"%s %02.2f%%",icon,bat_p); + } show_stat: + if (bat_state == 'D' && bat_p >= 30) + block(bat_str,"#222222","#83a59899","#83a59899"); + else if (bat_p < 30) + block(bat_str,"#222222","#ea544399","#ea544399"); + else if (bat_state == 'N' || bat_state == 'C') + block(bat_str,"#222222","#dfb24999","#dfb24999"); } @@ -1,5 +1,7 @@ #include <stdio.h> #include "block.h" +#define FG "#222222" +#define BG "#95b18b99" FILE *cmus_stat; char cmus_str[64]; void cmus(void) { @@ -12,5 +14,5 @@ void cmus(void) { rewind(cmus_stat); cmus_str[len] = '\0'; } - block(cmus_str,"#222222","#95b18b99","#95b18b99"); + block(cmus_str,FG,BG,BG); } @@ -2,37 +2,37 @@ #include "block.h" #define ICON_CPU " " FILE *proc_stat; -int stat[8], cpu_delay = 6; -double prev_idle, prev_total, total, idle, usage_p; -char usage_str[11]; +int cpu_stat[8], cpu_delay = 6; +char cpu_str[11]; void cpu(void) { if (cpu_delay++ < 6) goto show_stat; else cpu_delay = 0; + double prev_idle, prev_total, total, idle, usage_p; prev_idle = idle; prev_total = total; if (!proc_stat) proc_stat = fopen("/proc/stat","r"); if (proc_stat) { int c, i; fseek(proc_stat,5,0); - for (i = 0;i < 8;i++) stat[i] = 0; + for (i = 0;i < 8;i++) cpu_stat[i] = 0; for (i = 0; i < 8;) { c = fgetc(proc_stat); if (c != ' ') - stat[i] = 10 * stat[i] + (c - '0'); + cpu_stat[i] = 10 * cpu_stat[i] + (c - '0'); else i++; } - total = stat[0]+stat[1]+stat[2]; - idle = stat[3]+stat[4]; - total += stat[5]+stat[6]+stat[7]; + total = cpu_stat[0]+cpu_stat[1]+cpu_stat[2]; + idle = cpu_stat[3]+cpu_stat[4]; + total += cpu_stat[5]+cpu_stat[6]+cpu_stat[7]; } usage_p = (idle + total) - (prev_idle + prev_total); usage_p -= (idle - prev_idle); usage_p *= 100; usage_p /= (idle + total) - (prev_idle + prev_total); - snprintf(usage_str,11,ICON_CPU"%02.2f%%",usage_p); + snprintf(cpu_str,11,ICON_CPU"%02.2f%%",usage_p); show_stat: if (usage_p < 60) - block(usage_str,"#222222","#acae3299","#acae3299"); + block(cpu_str,"#222222","#acae3299","#acae3299"); else - block(usage_str,"#222222","#ea544399","#ea544399"); + block(cpu_str,"#222222","#ea544399","#ea544399"); } @@ -2,13 +2,17 @@ #include "block.h" #define ICON_TIME " " #define ICON_DATE " " -char ct[15]; -char cd[29]; +#define FG "#222222" +#define BG "#ca91a099" +#define CD current_date +#define CT current_time +char CD[15]; +char CT[29]; void datetime(void) { time_t t = time(NULL); struct tm * lt = localtime(&t); - strftime(ct,sizeof(ct),ICON_TIME"%H:%M:%S",lt); - block(ct,"#222222","#ca91a099","#ca91a099"); - strftime(cd,sizeof(cd),ICON_DATE"%Y-%m-%d %a",lt); - block(cd,"#222222","#ca91a099","#ca91a099"); + strftime(CD,sizeof(CD),ICON_TIME"%H:%M:%S",lt); + block(CD,FG,BG,BG); + strftime(CT,sizeof(CT),ICON_DATE"%Y-%m-%d %a",lt); + block(CT,FG,BG,BG); } @@ -12,6 +12,7 @@ void battery(void); #ifndef CPU_H #define CPU_H void cpu(void); +// cmus #endif #ifndef CMUS_H #define CMUS_H |