1
0
mirror of https://github.com/Llewellynvdm/conky.git synced 2024-12-25 12:10:03 +00:00

Patch to add $battery_short variable.

This commit is contained in:
Swoög 2009-02-17 21:49:45 -07:00 committed by Brenden Matthews
parent b4cd98868f
commit b516e19440
8 changed files with 72 additions and 16 deletions

View File

@ -1,3 +1,6 @@
2009-02-17
* Added $battery_short patch, sf.net id #2300911 (thanks Swoog)
2009-02-15
* Added out_to_x

8
README
View File

@ -583,6 +583,14 @@ conky(1) conky(1)
is BAT0).
1mbattery_short (num)0m
Battery status and remaining percentage capacity of ACPI or APM
battery. ACPI battery number can be given as argument (default
is BAT0). This mode display a short status, which means that C
is displayed instead of charging and D is displayed instead of
discharging.
1mbattery_bar (height),(width) (num)0m
Battery percentage remaining of ACPI battery in a bar. ACPI bat
tery number can be given as argument (default is BAT0).

View File

@ -529,6 +529,11 @@ The current volume fetched from Audacious
\fB\*(T<\fBbattery\fR\*(T>\fR \*(T<\fB(num)\fR\*(T>
Battery status and remaining percentage capacity of ACPI or APM battery. ACPI battery number can be given as argument (default is BAT0).
.TP
\fB\*(T<\fBbattery_short\fR\*(T>\fR \*(T<\fB(num)\fR\*(T>
Battery status and remaining percentage capacity of ACPI or APM battery. ACPI battery number can be given as argument (default is BAT0).
This mode display a short status, which means that C is displayed instead of charging and D is displayed instead of discharging.
.TP
\fB\*(T<\fBbattery_bar\fR\*(T>\fR \*(T<\fB(height),(width) (num)\fR\*(T>
Battery percentage remaining of ACPI battery in a bar. ACPI battery number can be given as argument (default is BAT0).

View File

@ -251,6 +251,17 @@
<para></para></listitem>
</varlistentry>
<varlistentry>
<term>
<command><option>battery_short</option></command>
<option>(num)</option>
</term>
<listitem>
Battery status and remaining percentage capacity of ACPI or APM battery. ACPI battery number can be given as argument (default is BAT0).
This mode display a short status, which means that C is displayed instead of charging and D is displayed instead of discharging.
<para></para></listitem>
</varlistentry>
<varlistentry>
<term>
<command><option>battery_bar</option></command>
@ -2026,19 +2037,19 @@
The following list shows sample usage of the templates defined above,
with the equivalent syntax when not using any template at all:
<table>
<tgroup cols="2">
<thead>
<row rowsep="1"><entry>using template</entry><entry>same without template</entry></row>
</thead>
<tbody>
<row><entry>${template0 node name}</entry><entry>$nodename</entry></row>
<row><entry>${template1 root /}</entry><entry>root: ${fs_free /} / ${fs_size /}</entry></row>
<row>
<entry><programlisting>${template1 ${template2\ disk\ root} /}</programlisting></entry>
<entry><programlisting>disk root: ${fs_free /} / ${fs_size /}</programlisting></entry>
</row>
</tbody>
</tgroup>
<tgroup cols="2">
<thead>
<row rowsep="1"><entry>using template</entry><entry>same without template</entry></row>
</thead>
<tbody>
<row><entry>${template0 node name}</entry><entry>$nodename</entry></row>
<row><entry>${template1 root /}</entry><entry>root: ${fs_free /} / ${fs_size /}</entry></row>
<row>
<entry><programlisting>${template1 ${template2\ disk\ root} /}</programlisting></entry>
<entry><programlisting>disk root: ${fs_free /} / ${fs_size /}</programlisting></entry>
</row>
</tbody>
</tgroup>
</table>
<para></para></listitem>
</varlistentry>
@ -2503,8 +2514,8 @@
Prints the song name in either the form "artist - title" or file name, depending on whats available
<para></para></listitem>
</varlistentry>
<varlistentry>
<term>
<varlistentry>
<term>
<command><option>if_xmms2_connected</option></command>
</term>
<listitem>
@ -2518,7 +2529,7 @@
<option>api_userid api_key character_id</option>
</term>
<listitem>
Fetches your currently training skill from the Eve Online API servers (http://www.eve-online.com/) and displays the skill along with the remaining training time.
Fetches your currently training skill from the Eve Online API servers (http://www.eve-online.com/) and displays the skill along with the remaining training time.
<para></para></listitem>
</varlistentry>

View File

@ -92,5 +92,6 @@ void get_acpi_fan(char *, size_t);
void get_battery_stuff(char *buf, unsigned int n, const char *bat, int item);
int get_battery_perct(const char *bat);
int get_battery_perct_bar(const char *bat);
void get_battery_short_status(char *buf, unsigned int n, const char *bat);
#endif /* _COMMON_H */

View File

@ -1438,6 +1438,9 @@ static void free_text_objects(struct text_object *root)
case OBJ_battery:
free(data.s);
break;
case OBJ_battery_short:
free(data.s);
break;
case OBJ_battery_time:
free(data.s);
break;
@ -1733,6 +1736,15 @@ static struct text_object *construct_text_object(const char *s,
END OBJ(battery, 0)
char bat[64];
if (arg) {
sscanf(arg, "%63s", bat);
} else {
strcpy(bat, "BAT0");
}
obj->data.s = strndup(bat, text_buffer_size);
END OBJ(battery_short, 0)
char bat[64];
if (arg) {
sscanf(arg, "%63s", bat);
} else {
@ -3834,6 +3846,9 @@ static void generate_text_internal(char *p, int p_max_size,
OBJ(battery_bar) {
new_bar(p, obj->a, obj->b, get_battery_perct_bar(obj->data.s));
}
OBJ(battery_short) {
get_battery_short_status(p, p_max_size, obj->data.s);
}
#endif /* __OpenBSD__ */
OBJ(buffers) {

View File

@ -1842,6 +1842,18 @@ void set_return_value(char *buffer, unsigned int n, int item, int idx)
}
}
void get_battery_short_status(char *buffer, unsigned int n, const char *bat)
{
get_battery_stuff(buffer, n, bat, BATTERY_STATUS);
if (0 == strncmp("charging", buffer, 8)) {
buffer[0] = 'C';
memmove(buffer + 1, buffer + 8, n - 8);
} else if (0 == strncmp("discharging", buffer, 11)) {
buffer[0] = 'D';
memmove(buffer + 1, buffer + 11, n - 11);
}
}
int get_battery_perct(const char *bat)
{
static int rep = 0;

View File

@ -56,6 +56,7 @@ enum text_object_type {
OBJ_battery_time,
OBJ_battery_percent,
OBJ_battery_bar,
OBJ_battery_short,
#endif /* !__OpenBSD__ */
OBJ_buffers,
OBJ_cached,