* Add native support for pulseaudio.
This adds ability to get Pulseaudio current volume without calling an
external program. Also it provides a few other parameters like card's
current profile similarly to pavucontrol. Currently it only queries the
default sink (and associated card).
* Switch to pulse async API.
This us by far the most efficient as conky subscribe to a few pulseaudio
notifications. Whenever pulseaudio server changes (volume or default
sink or default card), conky's callback updates the results.
Rewrite the gtksourceview highlighting file to make better use
of available syntax options. This allows us to separate various
contexts, and means we don't have to keep track of all conky
keywords.
Overview of changes:
* Use separate contexts for config block and "lit string".
* (lit string is the lua lit string [[ .. ]], we assume that
this is used to contain text sections or template blocks)
* Use "sub-string" highlighting to highlight parts of identifiers
separately.
* Added conky.text comments (from '#' to EOL).
* Remove lists of keywords and instead rely on syntax implications.
* Uses separate contexts for config 'key=val' and text '${var}'s.
* Match escape sequences more precisely.
* Lua and conky escape sequences matched separately; lua in normal
strings and conky in literal strings. See escapes note.
* Transition from camelCase to hyphen-separated names
* Reword README to reflect changes
Escapes note:
We also match conky template escape sequences when in lua literal
strings as it would be too messy to separate `conky.text` and
`templateN = ` literal strings.
We currently don't match time format escape sequences as this would
require knowing which text variable we are in. This is only possible
if we duplicate the `bracket-var` context (less painful than
duplicating the `lua-literal-string` context).
Signed-off-by: Matt Sturgeon <matt@sturgeon.me.uk>
This adds support for reading log entries from the Systemd journal. A
new command, called simply 'journal', is added which takes a number of
lines as a parameter and optionally which journal (user or system) to
read from.
Obviously, libsystemd is required to build journal support. Tested on
Arch Linux (Systemd v229).
Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
I removed the code for automatic killing of stuck children, because (by admission of the person
who wrote it) it wasn't working. I also removed the $pre_exec variable, because one can use lua
to generate the config on the startup, if one wants to.
the way it is implemented now just wont work with the new config file. And i don't think that
many people used it anyway. Maybe add a replacement later?
Additionally, add a nvidia_display variable. This enables the $nvidia variable to be used without
out_to_x yes (X11 support still has to be built in, you just don't have to use it).
Warning: Altough the current version works (for me),
the syntax of the configoptions and vars will probably change
over time. Contact me if you have ideas.
The following is a example of how you can use it now:
mysql_host someserver.com
mysql_db my_database
mysql_user loginname
mysql_password "s3cr3t"
TEXT
${mysql select var1 from some_table}${mysql select var2 from some_table}
I've added $memwithbuffers to complement $mem, $memeasyfree, etc. This
variable indicates the used system memory, regardless of buffers/caches. If
the "no_buffers" option is set to "no", it will be the same as $mem. The
reason I find this change useful is that I like to display both the total
used system memory and the memory being used by applications.
I've also included a memwithbuffersbar, which is the same as membar except
that it uses $memwithbuffers as the size instead of $mem.
Signed-off-by: Pavel Labath <pavelo@centrum.sk>
The problem with the original commit was that some session-managers set
stdin to /dev/null for the processes they launch, therefore the variable
wasn't very effective.
This commit change the variable conky_user_time to user_time.
This variable has a mandatory argument, a console identifier
(eg. tty7, pts/0, etc.).
Once called, this will list how long the user for the given console has been
logged in for.
This commit also allows multiple user_time to be specified for different
consoles, as well as correctly handle a conky restart.