| 1 | #! /usr/bin/awk -f |
| 2 | |
| 3 | BEGIN { |
| 4 | aliases["@energy"] = "bar_make_status_energy()" |
| 5 | aliases["@memory"] = "bar_make_status_mem()" |
| 6 | aliases["@processes"] = "bar_make_status_procs()" |
| 7 | aliases["@cpu"] = "bar_make_status_cpu()" |
| 8 | aliases["@disk"] = "bar_make_status_disk()" |
| 9 | aliases["@net"] = "bar_make_status_net()" |
| 10 | aliases["@bluetooth"] = "bar_make_status_bluetooth()" |
| 11 | aliases["@backlight"] = "bar_make_status_screen_brightness()" |
| 12 | aliases["@volume"] = "bar_make_status_volume()" |
| 13 | aliases["@mpd"] = "bar_make_status_mpd()" |
| 14 | aliases["@weather"] = "bar_make_status_weather()" |
| 15 | aliases["@datetime"] = "bar_make_status_datetime()" |
| 16 | out = "function bar_make_status( position, bar, sep, i, j) {\n" |
| 17 | n = split(Status_Bar, s, ",") |
| 18 | for (i=1; i<=n; i++) { |
| 19 | alias = s[i] |
| 20 | function_call = aliases[alias] |
| 21 | if (function_call) { |
| 22 | out = out " position[++i] = " function_call ";\n" |
| 23 | } else { |
| 24 | printf("Unexpected status bar component alias: \"%s\"\n", alias) \ |
| 25 | > "/dev/stderr" |
| 26 | exit(1) |
| 27 | } |
| 28 | } |
| 29 | out = out "\ |
| 30 | bar = \"\";\ |
| 31 | sep = \"\";\ |
| 32 | for (j = 1; j <= i; j++) {\ |
| 33 | bar = bar sep position[j];\ |
| 34 | sep = \" \";\ |
| 35 | }\ |
| 36 | return bar;\ |
| 37 | }"; |
| 38 | print out |
| 39 | } |