Merge remote-tracking branch 'zyx-i/persistent-awesome' into develop

This commit is contained in:
Kim Silkebækken 2013-04-08 11:36:44 +02:00
commit e6ae8ca49f
6 changed files with 47 additions and 15 deletions

View File

@ -1 +1 @@
EBUILD powerline-9999.ebuild 4091 SHA256 d1d13b09e3ebefdaa1b90c50ccceb563bb444ca0f484e6448a993d2612dfbb78 SHA512 47f211249bb85608cb9c5b8e72daba5c36971e294e27843396cbf517bc792db64a4f80e843f5c883f8411ed4c9cef5618f9d617b305303a31a4590636879dcd3 WHIRLPOOL 2fc50e1da46d56d160140d3a87a4d9421bf63d67c792bfd88486e0dc72d379045ed79d152aa060a014e7f6bf4eb232642463014de9523909946bd8b2cbf83371
EBUILD powerline-9999.ebuild 4107 SHA256 721f3360196aa4caa3656ff6e051add2c70cbfc37e965fce9830ecb668148b81 SHA512 27660689e5a0cf86d17268a18fdd917abfb8b2d88b33049fe66f3394c9a85211f24e50af8df1f39d93d11e8bfd442e4636ed92821441daddb56ae9d34162296a WHIRLPOOL 602a2d0d36b1e80da9d1f00c019872369010cd413c4761c1f92a8f53ee5bfb63122d8c13e896700406bf71d99db5994bcd3c7ae46c07218d173bd7084f1a13f1

View File

@ -105,11 +105,11 @@ src_install() {
doins init.lua
rm init.lua
exeinto /usr/share/awesome/lib/powerline
doexe powerline/bindings/awesome/powerline.sh
doexe powerline/bindings/awesome/powerline-awesome.py
else
rm powerline/bindings/awesome/powerline.lua
fi
rm powerline/bindings/awesome/powerline.sh
rm powerline/bindings/awesome/powerline-awesome.py
# There are no standard location for this, thus using /usr/share/powerline
if use tmux ; then
elog ""

View File

@ -0,0 +1,38 @@
#!/usr/bin/env python
# vim:fileencoding=utf-8:noet
from powerline import Powerline
import sys
from time import sleep
from powerline.lib.monotonic import monotonic
from subprocess import Popen, PIPE
powerline = Powerline('wm', renderer_module='pango_markup')
powerline.update_renderer()
try:
interval = float(sys.argv[1])
except IndexError:
interval = 2
def read_to_log(pl, client):
for line in client.stdout:
if line:
pl.info(line, prefix='awesome-client')
for line in client.stderr:
if line:
pl.error(line, prefix='awesome-client')
if client.wait():
pl.error('Client exited with {0}', client.returncode, prefix='awesome')
while True:
start_time = monotonic()
s = powerline.render(side='right')
request = "powerline_widget:set_markup('" + s.replace('\\', '\\\\').replace("'", "\\'") + "')\n"
client = Popen(['awesome-client'], shell=False, stdout=PIPE, stderr=PIPE, stdin=PIPE)
client.stdin.write(request.encode('utf-8'))
client.stdin.close()
read_to_log(powerline.pl, client)
sleep(max(interval - (monotonic() - start_time), 0.1))

View File

@ -7,5 +7,5 @@ powerline_widget:set_align('right')
function powerline(mode, widget) end
bindings_path = string.gsub(debug.getinfo(1).source:match('@(.*)$'), '/[^/]+$', '')
powerline_cmd = bindings_path .. '/powerline.sh'
awful.util.spawn_with_shell('ps ax -u $USER | grep "' .. powerline_cmd .. '" | grep -v grep || (' .. powerline_cmd .. ')')
powerline_cmd = bindings_path .. '/powerline-awesome.py'
awful.util.spawn_with_shell('ps -C powerline-awesome.py || ' .. powerline_cmd)

View File

@ -1,10 +0,0 @@
#!/bin/sh
SLEEP=2
[[ "$1" != "" ]] && SLEEP="$1"
while true; do
PL_AWESOME_RIGHT=$(powerline wm right -r pango_markup)
echo "powerline_widget:set_markup('$PL_AWESOME_RIGHT')" | awesome-client
sleep $SLEEP
done

View File

@ -3,6 +3,8 @@
from powerline.renderer import Renderer
from powerline.colorscheme import ATTR_BOLD, ATTR_ITALIC, ATTR_UNDERLINE
from xml.sax.saxutils import escape as _escape
class PangoMarkupRenderer(Renderer):
'''Powerline Pango markup segment renderer.'''
@ -30,5 +32,7 @@ class PangoMarkupRenderer(Renderer):
awesome_attr += ['underline="single"']
return '<span ' + ' '.join(awesome_attr) + '>' + contents + '</span>'
escape = staticmethod(_escape)
renderer = PangoMarkupRenderer